felix and more: osgi @ apache

Post on 01-Nov-2014

4.357 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Short overview of some OSGi open source projects developed in the Apache Software Foundation: Apache Felix (and its subprojects) and Apache Ace. Presented at Devoxx 2009 in Antwerp, Belgium, by Filippo Diotalevi, Marcel Offermans and Angelo Van Der Sijpt

TRANSCRIPT

SummaryIntroductions

Felix and More: - Felix Framework- Apache Felix Karaf- Apache Felix WebConsole- Dependency Injection Frameworks- Apache Ace

Open Discussion

OSGi (general)

A dynamic module system for Java

OSGi (general)1999 - OSGi Alliance founded, JSR 8

2000 - R1 published

2003 - Eclipse choose OSGi for the plugin

architecture

2007 - R4.1 published (JSR 291)

2009 - R4.2 published

2010 - Enterprise OSGi

OSGi

OSGi

Building with components

OSGi

OSGi

Communicating with services

OSGi (general)

!"#$%&'&($

!"#"$%&'()"*$+",-&./

012&$3'"4/56'7

1/,)'&(8

+69)*/

:&3/$,8,*/

1/'#&,/;).9*/ ;).9*/ ;).9*/

)$*+"&$

:6< 1(6'/

=)>*&?- )?/)?/

=)>*&?-

?("'(

/.9

&.?("**/9&.?("**

?("'@.<?("'(

?(6==&.< ?(6=

",@#/'/?6*#/9

).&.?("**/9

).&.?("**

,-./($;).9*/ ;).9*/ ;).9*/ ;).9*/

/A=6'(?

&4=6'(?

/A=6'(?

&4=6'(?

/A=6'(?

/A=6'(?

B'/3?

=)>*&?-)?/

6'<C"=",-/C)@*$DCE

6'<C"=",-/C)@*$DCD6'<C"=",-/C*6<$FCG

6'<C"=",-/C9>$DCH

;).9*/ ;).9*/ ;).9*/ ;).9*/

Apache Felix

•Implement the OSGi specifications•A home for many OSGi related

extensions

Apache Felix

•Implement the OSGi specifications•A home for many OSGi related

extensions

Shell, TUI

Service Component RuntimeRemote Shell

Preferences

Maven OBR, OSGi, SCR

DependencyManager

iPOJO

GogoFileInstallKaraf

EventAdminConfigurationAdmin

Web ConsoleUPnP

Sigil HTTP

Apache Felix - Framework

Apache Felix Karaf

Hot Deployment

Logging System

Powerful Shell Console

Security Framework

Dynamic Configuration

Provisioning

Remote Access

Managing Multiple Instances

Apache Felix Karaf

(almost) Complete PDF

manual available in Karaf 1.1.0

Base platform of ServiceMix 4

Works out-of-the-box with Felix and Equinox

OSGi platform for any application (web, enterprise, desktop)

Apache Felix Web Management Console

Dependency Injection Frameworks

?bundleContext.getService(..)

ServiceListener

ServiceTracker

tracking services

Dependency Injection Frameworks

OSGi Declarative Service Specification Apache Felix SCR

Apache Felix IPOJO

Peaberry (Google Guice extension)http://code.google.com/p/peaberry/

Spring DM (Spring extension)http://www.springsource.org/osgi

Dependency Injection Frameworks

Blueprint, dependency injectiona-la-Spring

Apache Geronimo Blueprint (may change in the future...)

Deployment

!"#$"%&%'()

!"#$"%&%'(*

!"#$"%&%'(!

!"#$%&'(

!"#$%&')

!"#$%&'*

Deployment

!"#$"%&%'()

!"#$"%&%'(*

!"#$"%&%'(!

!"#$%&'(

!"#$%&')

!"#$%&'*

!"#$%&'"()

Keeping the history

now

!"#$"%&%'()

!"#$"%&%'(*

!"#$"%&%'(!

!"#$%&'(

!"#$%&')

!"#$%&'*

last year!"#$"%&%'()

!"#$"%&%'(*

+,-.&'()

+,-.&'(!

last month!"#$"%&%'()

!"#$"%&%'(*

+,-.&'()

+,-.&'(*

+,-.&'(!

last week

!"#$"%&%'()

!"#$"%&%'(*

!"#$"%&%'(!

!"#$%&'(

!"#$%&')

!"#$%&'*

Keeping the history

now

!"#$"%&%'()

!"#$"%&%'(*

!"#$"%&%'(!

!"#$%&'(

!"#$%&')

!"#$%&'*

Topology

!"#$%!

!"#$%!

!"#$%!

&%!'(#)*#(+,-,(&,&$.

-%#+%#

/(0*(&%&!.#%*(-,!(#1

/2,%&!0"&"$%0%&!.

"$%&!

0"&"$%0%&!."$%&!

0"&"$%0%&!."$%&!

Deployment Repository

!"#$"%&%'()&*(+"%(',*-&'(

.,*-&'/0

1"#$"%&%'/02

3

4

5

!"#$"%&%'()

1"#$"%&%'/0 !"#$"%&%'() !"#$"%&%'(!

1"#$"%&%'/0 !"#$"%&%'(! !"#$"%&%'(*

1"#$"%&%'/1 !"#$"%&%'(*

.,*-&'/61"#$"%&%'/62

3

!"#$"%&%'(*

1"#$"%&%'/0 !"#$"%&%'() !"#$"%&%'(*

Questions?

top related