Modularity with OSGi

1,071 views

Published on

High level presentation about OSGi and modularity.

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,071
On SlideShare
0
From Embeds
0
Number of Embeds
31
Actions
Shares
0
Downloads
13
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Modularity with OSGi

  1. 1. OSGi & Modularity 2011-06-23 IBM Montpellier by Peter Kriensdinsdag 28 juni 2011 1
  2. 2. dinsdag 28 juni 2011 2
  3. 3. dinsdag 28 juni 2011 2
  4. 4. dinsdag 28 juni 2011 2
  5. 5. Productivity Application Complexitydinsdag 28 juni 2011 3
  6. 6. Productivity Assembly Application Complexitydinsdag 28 juni 2011 3
  7. 7. Productivity Structured Programming Assembly Application Complexitydinsdag 28 juni 2011 3
  8. 8. Productivity Structured Object Oriented Programming Programming Assembly Application Complexitydinsdag 28 juni 2011 3
  9. 9. Productivity Service Oriented Programming? Structured Object Oriented Programming Programming Assembly Application Complexitydinsdag 28 juni 2011 3
  10. 10. dinsdag 28 juni 2011 4
  11. 11. Applicationdinsdag 28 juni 2011 4
  12. 12. Extensions Application Application Convenience Foundation Basic Something Core Java VMdinsdag 28 juni 2011 4
  13. 13. minilang party pos. product workeffort workflow … accounting assetmaint content Extensionsbi ebay ecommerce googlebase guiapp hhfacility manufact. marketing minerva oagis order Application Application layer common catalina base datafile entity widget … Application Convenience resolver rome serializer servlets tomcat xalan bsf mail mx4j naming jetty poi wsdl4j bsh Foundation Basic Something jenks jpos18 jython looks lucene xerces velocity jakarta jcl json jdbm jdom xmlapis ws-commons Core Libs log4j barcode4j axis batik commons xmlrpc geronimo httpunit freemarker ezmorph fop derby xmlgraphics .. Java VM Java VM rt jce jsse plugin sunjce_prov. dnsns ..dinsdag 28 juni 2011 4
  14. 14. minilang party pos. product workeffort workflow … accounting assetmaint content Extensionsbi ebay ecommerce googlebase guiapp hhfacility manufact. marketing minerva oagis order Application Application layer common catalina base datafile entity widget … Application Convenience resolver rome serializer servlets tomcat xalan bsf mail mx4j naming jetty poi wsdl4j bsh Foundation Basic Something jenks jpos18 jython looks lucene xerces velocity jakarta jcl json jdbm jdom xmlapis ws-commons Core Libs log4j barcode4j axis batik commons xmlrpc geronimo httpunit freemarker ezmorph fop derby xmlgraphics .. Java VM Java VM rt jce jsse plugin sunjce_prov. dnsns ..dinsdag 28 juni 2011 4
  15. 15. Java VM party common resolver axis xerces Begin rt assetmaint catalina mail ezmorph xmlapis jce hhfacility base jenks servlets xmlrpc Here jsse pos. datafile jakarta jetty xmlgraphics plugin content entity log4j looks sunjce_prov. manufact. widget httpunit jdbm dnsns product … mx4j bsf .. bi rome batik bsh marketing workflow jpos18 fop velocity workeffort ecommerce jcl tomcat ws-commons ebay oagis barcode4j poi geronimo minerva … freemarker lucene .. minilang googlebase serializer jdom json accounting order naming commons xalan guiapp ofbiz jython derby wsdl4jdinsdag 28 juni 2011 5
  16. 16. Java VM party common resolver axis xerces Begin rt assetmaint catalina mail ezmorph xmlapis jce hhfacility base jenks servlets xmlrpc Here jsse pos. datafile jakarta jetty xmlgraphics plugin content entity log4j looks sunjce_prov. manufact. widget httpunit jdbm dnsns product … mx4j bsf .. bi rome batik bsh Class marketing workflow jpos18 fop velocity Not workeffort ecommerce jcl tomcat ws-commons Found ebay oagis barcode4j poi geronimo Exception minerva … freemarker lucene .. minilang googlebase serializer jdom json accounting order naming commons xalan guiapp ofbiz jython derby wsdl4jdinsdag 28 juni 2011 5
  17. 17. dinsdag 28 juni 2011 6
  18. 18. dinsdag 28 juni 2011 7
  19. 19. dinsdag 28 juni 2011 8
  20. 20. dinsdag 28 juni 2011 8
  21. 21. dinsdag 28 juni 2011 9
  22. 22. low coupling,dinsdag 28 juni 2011 9
  23. 23. low coupling, high cohesion &dinsdag 28 juni 2011 9
  24. 24. low coupling, high cohesion & encapsulationdinsdag 28 juni 2011 9
  25. 25. dinsdag 28 juni 2011 10
  26. 26. Applications S (bundles) E Service C U Life Cycle R I Module T Y Execution Environment OS + Hardwaredinsdag 28 juni 2011 11
  27. 27. Code protected boolean report(Reporter reporter) { if (reporter.getWarnings().size() > 0) { System.err.println("Warnings"); for (Iterator<String> e = reporter. getWarnings().iterator(); e.hasNext();) { System.err.println(" " + e.next()); } } return false; }dinsdag 28 juni 2011 12
  28. 28. Functions protected boolean report(Reporter reporter) { if (reporter.getWarnings().size() > 0) { System.err.println("Warnings"); for (Iterator<String> e = reporter. getWarnings().iterator(); e.hasNext();) { System.err.println(" " + e.next()); } } return false; }dinsdag 28 juni 2011 13
  29. 29. Classes protected boolean report(Reporter reporter) { if (reporter.getWarnings().size() > 0) { System.err.println("Warnings"); for (Iterator<String> e = reporter. getWarnings().iterator(); e.hasNext();) { System.err.println(" " + e.next()); } } return false; }dinsdag 28 juni 2011 14
  30. 30. Classes Class D Class C Class B Class Adinsdag 28 juni 2011 14
  31. 31. Packages Class D Class C Class B Class Adinsdag 28 juni 2011 15
  32. 32. Packages Class D Class Cdinsdag 28 juni 2011 15
  33. 33. Bundles Bundle A Bundle B p q-1.4 Bundle A .dinsdag 28 juni 2011 16
  34. 34. Bundles Bundle A Bundle B p p q-1.4 q-[1.2,1.8) Bundle A r r . import private exportdinsdag 28 juni 2011 17
  35. 35. Bundles Bundle A Bundle B imports p p q-1.4 q-[1.2,1.8) Bundle A r r . import private exportdinsdag 28 juni 2011 17
  36. 36. Bundles Bundle A Bundle B imports p p q-1.4 exports q-[1.2,1.8) Bundle A r r . import private exportdinsdag 28 juni 2011 17
  37. 37. MANAGE- System MENT bundle BUNDLE Bundle X-v2 X Bundle Bundle B Adinsdag 28 juni 2011 18
  38. 38. Services interface Foo { void foo(); } void foo() { … … s.foo() } …dinsdag 28 juni 2011 19
  39. 39. dinsdag 28 juni 2011 20
  40. 40. dinsdag 28 juni 2011 20
  41. 41. dinsdag 28 juni 2011 20
  42. 42. dinsdag 28 juni 2011 21
  43. 43. dinsdag 28 juni 2011 21
  44. 44. bundle A-1.2 c b bundle C-1.0 bundle a B-4.1dinsdag 28 juni 2011 21
  45. 45. dinsdag 28 juni 2011 22
  46. 46. dinsdag 28 juni 2011 22
  47. 47. The Component Frameworkdinsdag 28 juni 2011 22
  48. 48. dinsdag 28 juni 2011 23
  49. 49. Q&Adinsdag 28 juni 2011 24
  50. 50. Thanks!dinsdag 28 juni 2011 25

×