Help me obr you are my only hope - osgi users forum uk 16-nov2011

  • 1,762 views
Uploaded on

Presentation by David Savage at UK OSGi Users' Forum UK on Nov 16, 2011 in London. …

Presentation by David Savage at UK OSGi Users' Forum UK on Nov 16, 2011 in London.

Abstract: The OSGi Bundle Repository (OBR) is an upcoming specification that defines a unified way of resolving and accessing bundles to be deployed into an OSGi framework. This talk will explain its origins, history, relationship to the latest framework enhancements, and its various roles and responsibilities. We will conclude with a look at how it relates to other services and possible future extensions.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,762
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
5
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Help Me OBR, You’re My Only Hope David Savage david.savage@paremus.comHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 2. Help Me OBR,You’re My Only Hope A Brief Introduction To The OSGi Bundle RepositoryHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 3. A Long Time Ago... • OSGi Bundle Repository • Motivation, History • Main Aspects • Benefits, Impact on EcosystemHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 4. Common OSGi Pain PointsHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 5. Help Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 6. • Dependency Management: • Development • Deployment • Runtime • Which bundles to install when, why, howHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 7. The Story So Far...Help Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 8. • Informally specified & implemented by Richard Hall ~2004, add-on to FelixHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 9. • Various problems: • Provisioning external runtimes • Distinction between development/ runtimeHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 10. • Others: • P2 • Nimble • Sigil • Maven • IvyHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 11. • Official OBR revived in 2009 by Hal Hildebrand • Specd by David Savage in EEGHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 12. The ProblemHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 13. OBR Is... • Primarily a standardised Model to describe: • Which Bundles are available? • What do they do?Help Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 14. OBR Is Not... • A management agent/deployer: • “calculator only” • A “server” or “database”: • no defined protocolHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 15. Main Aspects • Repository • Resolver • Interchange FormatHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 16. A New Model • Uses 4.3 concept of "wiring" • Implements often requested functionality for introspectionHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 17. Environment <<contains>> <<expressed by>> <<provides>> Resource BundleRevision <<connected by>> <<connected to>> Requirement Capability BundleRequirement Wire BundleCapability BundleWireHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 18. • Resources can be physical or virtual • Resources have Capability Requirement Requirements and CapabilitiesHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 19. • Capabilities have a namespace and a map of attributes Capability Requirement • Requirements have a namespace and a set of directivesHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 20. • A Requirement matches a Capability if the namespaces are equal and the directives match the attributesHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 21. Common Namespaces • Capabilities: • osgi.identity → Unique per resource • osgi.content → Checksums, SCM, etc • Requirements: • osgi.wiring.package → Import-Package • osgi.wiring.bundle → Require-BundleHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 22. Repository • Repository: simple service(s) that provide resources with capabilitiesHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 23. Resolution • Resources + Wiring A B C D = Environment • Environment + Requirements = D B Resolution C AHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 24. An Example osgi.service=servlet.container effective=active Active Servlet Servlet Bundle Container Servlet Container ProviderHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 25. SubsystemsHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 26. Interchange Format • Based on XML Schema • Human-readable Name & URI for repository identity • Version increment (long) • Resource URLs, Size, Checksums..Help Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 27. <?xml version=”1.0”?> <repository name=”example” increment=”1” targetNamespace=”http://www.osgi.org/xmlns/obr/v1.0.0”> <resource> <capability namespace=”osgi.identity”> <attribute name=”osgi.identity” value=”org.foo.mumble” /> <attribute name=”version” type=”version” value=”1.0.0” /> <attribute name=”type” value=”osgi.bundle” /> </capability> <capability namespace=”osgi.content”> <attribute name=”osgi.content” value=”org/foo/ org.foo.mumble-1.0.0.jar” /> <attribute name=”size” type=”long” value=”46725” /> <attribute name=”checksum” value=”1bafd2ece2e88db4cdf835a7f8f0de65fab5b1147977a5dcc59b7c1b8 c6f5080” /> </capability> </resource> </repository>Help Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 28. Leftovers • Limited resolution failure introspection • Repository event model • License handling • Web based service • Deployment model → SubsystemsHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 29. Conclusion • OBR: • Small, robust, reliable • Fixes Things Automatically • Gets The Job Done!Help Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
  • 30. Questions? • Email: david.savage@paremus.com • Twitter: @davemssavage • Blog: http://chronological- thought.blogspot.com • Book: http://www.manning.com/hall/ • Paremus: http://www.paremus.com • OSGi: http://www.osgi.orgHelp Me OBR,You’re My Only Hope www.paremus.com November 2011 Copyright © 2011 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.