On Thu, Mar 11, 2010 at 10:07, Jeremy Hughes <[email protected]> wrote:
> I was wondering about this change. AIUI the Export-Service and
> Import-Service are deprecated and adding them means a duplication of
> meta-data. I haven't yet seen what is making use of them - I guess
> it's to populate an OBR repository.xml. Because it's non-standard (not
> in the blueprint spec) whatever is expecting those exports/imports to
> be there, if it didn't find any, it would need to look for
> blueprint.xml files and services imported/exported there just in case
> the tool that generated the bundle didn't include export/import
> service headers.

I don't think this would be a good idea to have a generic osgi tool do that.
I think the real problem would be that it would not catch pure osgi
bundle (those who don't
use blueprint at all, such as the aries-transaction-manager for example).
In such cases, the only way is to rely on those headers, so it makes
sense to not bloat
all osgi tools and instead leverage those headers imho.

I'm not sure in which way the metadata in those headers is limited.
And if it is, we should
extend it imho.  And there will always be cases where you can't know
the whole data
unless in the real environment (imagine if one of the service property
is computed at runtime,
or if the exact class exported isn't easily determined and you export
all its interfaces ...).
So I think you can know the intent, but not always the end result.

Anyway, if you prefer enhancing OBR, maven-bundle-plugin, bnd and
bindex to natively support
introspecting blueprint bundles, declarative services, iPojo in
addition to those headers (which are
still the only way if you use the plain OSGI api), you're welcome to
do so.  Once your patches
are in, I'll happily remove those bits ;-)

> I'm more -0 for this change, because it doesn't hurt, but a consumer
> of the gen'd headers can't be guaranteed that they fully represent
> what's in the blueprint.xml files.
>
> Cheers,
> Jeremy
>
> On 10 March 2010 21:18,  <[email protected]> wrote:
>> Author: gnodet
>> Date: Wed Mar 10 21:18:42 2010
>> New Revision: 921573
>>
>> URL: http://svn.apache.org/viewvc?rev=921573&view=rev
>> Log:
>> ARIES-197: remove the obr.xml files and use the latest plugin snapshot which 
>> is able to introspect the blueprint bundles
>>
>> Removed:
>>    incubator/aries/trunk/application/application-converters/obr.xml
>>    incubator/aries/trunk/application/application-install/obr.xml
>>    incubator/aries/trunk/application/application-management/obr.xml
>>    incubator/aries/trunk/application/application-obr-resolver/obr.xml
>>    incubator/aries/trunk/application/application-runtime/obr.xml
>>    incubator/aries/trunk/application/application-utils/obr.xml
>>    incubator/aries/trunk/blueprint/blueprint-bundle/obr.xml
>>    incubator/aries/trunk/transaction/transaction-blueprint/obr.xml
>>    incubator/aries/trunk/transaction/transaction-manager/obr.xml
>>    incubator/aries/trunk/web/web-urlhandler/obr.xml
>> Modified:
>>    incubator/aries/trunk/application/application-management/pom.xml
>>    incubator/aries/trunk/application/application-obr-resolver/pom.xml
>>    incubator/aries/trunk/application/application-runtime/pom.xml
>>    incubator/aries/trunk/application/application-utils/pom.xml
>>    incubator/aries/trunk/blueprint/blueprint-bundle/pom.xml
>>    incubator/aries/trunk/blueprint/blueprint-core/pom.xml
>>    incubator/aries/trunk/parent/default-parent/pom.xml
>>    incubator/aries/trunk/transaction/transaction-blueprint/pom.xml
>>    incubator/aries/trunk/transaction/transaction-testbundle/pom.xml
>>    incubator/aries/trunk/web/web-urlhandler/pom.xml
>>
>> Modified: incubator/aries/trunk/application/application-management/pom.xml
>> URL: 
>> http://svn.apache.org/viewvc/incubator/aries/trunk/application/application-management/pom.xml?rev=921573&r1=921572&r2=921573&view=diff
>> ==============================================================================
>> --- incubator/aries/trunk/application/application-management/pom.xml 
>> (original)
>> +++ incubator/aries/trunk/application/application-management/pom.xml Wed Mar 
>> 10 21:18:42 2010
>> @@ -77,16 +77,6 @@
>>                 <configuration>
>>                     <instructions>
>>                         
>> <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
>> -                        <Import-Service>
>> -                            
>> org.apache.aries.application.ApplicationMetadataFactory,
>> -                            
>> org.apache.aries.application.DeploymentMetadataFactory,
>> -                            
>> org.apache.aries.application.management.AriesApplicationResolver,
>> -                            
>> org.apache.aries.application.management.LocalPlatform,
>> -                            
>> org.apache.aries.application.management.ApplicationContextManager
>> -                        </Import-Service>
>> -                        <Export-Service>
>> -                            
>> org.apache.aries.application.management.AriesApplicationManager
>> -                        </Export-Service>
>>                         
>> <_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))</_versionpolicy>
>>                         
>> <_removeheaders>Ignore-Package,Include-Resource,Private-Package,Bundle-DocURL</_removeheaders>
>>                     </instructions>
>>
>> Modified: incubator/aries/trunk/application/application-obr-resolver/pom.xml
>> URL: 
>> http://svn.apache.org/viewvc/incubator/aries/trunk/application/application-obr-resolver/pom.xml?rev=921573&r1=921572&r2=921573&view=diff
>> ==============================================================================
>> --- incubator/aries/trunk/application/application-obr-resolver/pom.xml 
>> (original)
>> +++ incubator/aries/trunk/application/application-obr-resolver/pom.xml Wed 
>> Mar 10 21:18:42 2010
>> @@ -56,12 +56,6 @@
>>                 <configuration>
>>                     <instructions>
>>                         
>> <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
>> -                        <Import-Service>
>> -                            org.osgi.service.obr.RepositoryAdmin
>> -                        </Import-Service>
>> -                        <Export-Service>
>> -                            
>> org.apache.aries.application.management.AriesApplicationResolver
>> -                        </Export-Service>
>>                         
>> <_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))</_versionpolicy>
>>                         
>> <_removeheaders>Ignore-Package,Include-Resource,Private-Package,Bundle-DocURL</_removeheaders>
>>                     </instructions>
>>
>> Modified: incubator/aries/trunk/application/application-runtime/pom.xml
>> URL: 
>> http://svn.apache.org/viewvc/incubator/aries/trunk/application/application-runtime/pom.xml?rev=921573&r1=921572&r2=921573&view=diff
>> ==============================================================================
>> --- incubator/aries/trunk/application/application-runtime/pom.xml (original)
>> +++ incubator/aries/trunk/application/application-runtime/pom.xml Wed Mar 10 
>> 21:18:42 2010
>> @@ -77,11 +77,6 @@
>>                 <configuration>
>>                     <instructions>
>>                         
>> <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
>> -                        <Export-Service>
>> -                            
>> org.apache.aries.application.management.ApplicationContextManager,
>> -                            
>> org.apache.aries.application.management.LocalPlatform,
>> -                            
>> org.apache.aries.application.management.AriesApplicationResolver
>> -                        </Export-Service>
>>                         
>> <_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))</_versionpolicy>
>>                         
>> <_removeheaders>Ignore-Package,Include-Resource,Private-Package,Bundle-DocURL</_removeheaders>
>>                     </instructions>
>>
>> Modified: incubator/aries/trunk/application/application-utils/pom.xml
>> URL: 
>> http://svn.apache.org/viewvc/incubator/aries/trunk/application/application-utils/pom.xml?rev=921573&r1=921572&r2=921573&view=diff
>> ==============================================================================
>> --- incubator/aries/trunk/application/application-utils/pom.xml (original)
>> +++ incubator/aries/trunk/application/application-utils/pom.xml Wed Mar 10 
>> 21:18:42 2010
>> @@ -68,12 +68,6 @@
>>     <build>
>>         <resources>
>>             <resource>
>> -                <directory>${basedir}</directory>
>> -                <includes>
>> -                    <include>obr.xml</include>
>> -                </includes>
>> -            </resource>
>> -            <resource>
>>                 <targetPath>OSGI-INF/blueprint</targetPath>
>>                 <filtering>false</filtering>
>>                 
>> <directory>${basedir}/src/main/resources/OSGI-INF/blueprint</directory>
>> @@ -101,10 +95,6 @@
>>                             
>> org.apache.aries.application.utils.manifest;version="${pom.version}",
>>                             
>> org.apache.aries.application.utils.management;version="${pom.version}"
>>                         </Export-Package>
>> -                        <Export-Service>
>> -                            
>> org.apache.aries.application.ApplicationMetadataFactory,
>> -                            
>> org.apache.aries.application.DeploymentMetadataFactory
>> -                        </Export-Service>
>>                         
>> <_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))</_versionpolicy>
>>                         
>> <_removeheaders>Ignore-Package,Include-Resource,Private-Package,Bundle-DocURL</_removeheaders>
>>                     </instructions>
>>
>> Modified: incubator/aries/trunk/blueprint/blueprint-bundle/pom.xml
>> URL: 
>> http://svn.apache.org/viewvc/incubator/aries/trunk/blueprint/blueprint-bundle/pom.xml?rev=921573&r1=921572&r2=921573&view=diff
>> ==============================================================================
>> --- incubator/aries/trunk/blueprint/blueprint-bundle/pom.xml (original)
>> +++ incubator/aries/trunk/blueprint/blueprint-bundle/pom.xml Wed Mar 10 
>> 21:18:42 2010
>> @@ -69,7 +69,7 @@
>>                 <artifactId>maven-bundle-plugin</artifactId>
>>                 <configuration>
>>                     <instructions>
>> -                        
>> <Bundle-SymbolicName>${pom.groupId}</Bundle-SymbolicName>
>> +                        
>> <Bundle-SymbolicName>${pom.groupId};blueprint.graceperiod:=false</Bundle-SymbolicName>
>>                         
>> <Bundle-Activator>org.apache.aries.blueprint.container.BlueprintExtender</Bundle-Activator>
>>                         <Import-Package>
>>                             !org.apache.aries.blueprint*,
>> @@ -102,10 +102,11 @@
>>                             OSGI-INF*
>>                         </Private-Package>
>>                         <Export-Service>
>> -                            org.apache.aries.blueprint.ParserService,
>> -                            
>> org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace=http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0,
>> -                            
>> org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace=http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.0.0
>> +                            org.apache.aries.blueprint.ParserService
>>                         </Export-Service>
>> +                        <Import-Service>
>> +                            
>> org.osgi.service.cm.ConfigurationAdmin;availability:=optional
>> +                        </Import-Service>
>>                         <!-- include the right NOTICE with attribution to 
>> the OSGi alliance -->
>>                         
>> <Include-Resource>{maven-resources},META-INF/NOTICE=../NOTICE</Include-Resource>
>>                         
>> <_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))</_versionpolicy>
>>
>> Modified: incubator/aries/trunk/blueprint/blueprint-core/pom.xml
>> URL: 
>> http://svn.apache.org/viewvc/incubator/aries/trunk/blueprint/blueprint-core/pom.xml?rev=921573&r1=921572&r2=921573&view=diff
>> ==============================================================================
>> --- incubator/aries/trunk/blueprint/blueprint-core/pom.xml (original)
>> +++ incubator/aries/trunk/blueprint/blueprint-core/pom.xml Wed Mar 10 
>> 21:18:42 2010
>> @@ -105,7 +105,11 @@
>>                           org.apache.aries.util.tracker;resolution:=optional,
>>                           org.osgi.service.event*;resolution:=optional,
>>                           org.osgi.service.framework;resolution:=optional,
>> -                          *</Import-Package>
>> +                          *
>> +                        </Import-Package>
>> +                        <Export-Service>
>> +                            org.apache.aries.blueprint.ParserService
>> +                        </Export-Service>
>>                         
>> <_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))</_versionpolicy>
>>                         
>> <_removeheaders>Ignore-Package,Include-Resource,Private-Package,Bundle-DocURL</_removeheaders>
>>                     </instructions>
>>
>> Modified: incubator/aries/trunk/parent/default-parent/pom.xml
>> URL: 
>> http://svn.apache.org/viewvc/incubator/aries/trunk/parent/default-parent/pom.xml?rev=921573&r1=921572&r2=921573&view=diff
>> ==============================================================================
>> --- incubator/aries/trunk/parent/default-parent/pom.xml (original)
>> +++ incubator/aries/trunk/parent/default-parent/pom.xml Wed Mar 10 21:18:42 
>> 2010
>> @@ -151,14 +151,6 @@
>>     <build>
>>         <resources>
>>             <resource>
>> -                <directory>${project.basedir}</directory>
>> -                <filtering>false</filtering>
>> -                <includes>
>> -                    <include>obr.xml</include>
>> -                </includes>
>> -            </resource>
>> -
>> -            <resource>
>>                 <directory>${project.basedir}/src/main/resources</directory>
>>                 <filtering>false</filtering>
>>                 <includes>
>> @@ -231,7 +223,7 @@
>>                 <plugin>
>>                     <groupId>org.apache.felix</groupId>
>>                     <artifactId>maven-bundle-plugin</artifactId>
>> -                    <version>2.0.1</version>
>> +                    <version>2.1.0-SNAPSHOT</version>
>>                     <extensions>true</extensions>
>>                 </plugin>
>>
>>
>> Modified: incubator/aries/trunk/transaction/transaction-blueprint/pom.xml
>> URL: 
>> http://svn.apache.org/viewvc/incubator/aries/trunk/transaction/transaction-blueprint/pom.xml?rev=921573&r1=921572&r2=921573&view=diff
>> ==============================================================================
>> --- incubator/aries/trunk/transaction/transaction-blueprint/pom.xml 
>> (original)
>> +++ incubator/aries/trunk/transaction/transaction-blueprint/pom.xml Wed Mar 
>> 10 21:18:42 2010
>> @@ -92,13 +92,6 @@
>>                             org.apache.aries.transaction.parsing
>>                         </Private-Package>
>>                         
>> <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
>> -                        <Import-Service>
>> -                           javax.transaction.TransactionManager
>> -                        </Import-Service>
>> -                        <Export-Service>
>> -                            org.apache.aries.blueprint.Interceptor,
>> -                            org.apache.aries.blueprint.NamespaceHandler
>> -                        </Export-Service>
>>                     </instructions>
>>                 </configuration>
>>             </plugin>
>>
>> Modified: incubator/aries/trunk/transaction/transaction-testbundle/pom.xml
>> URL: 
>> http://svn.apache.org/viewvc/incubator/aries/trunk/transaction/transaction-testbundle/pom.xml?rev=921573&r1=921572&r2=921573&view=diff
>> ==============================================================================
>> --- incubator/aries/trunk/transaction/transaction-testbundle/pom.xml 
>> (original)
>> +++ incubator/aries/trunk/transaction/transaction-testbundle/pom.xml Wed Mar 
>> 10 21:18:42 2010
>> @@ -44,11 +44,13 @@
>>             <plugin>
>>                 <groupId>org.apache.felix</groupId>
>>                 <artifactId>maven-bundle-plugin</artifactId>
>> -                <version>2.0.1</version>
>>                 <extensions>true</extensions>
>>                 <configuration>
>>                     <instructions>
>>                          
>> <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
>> +
>> +                                               
>> <nsh_interface>org.apache.aries.blueprint.NamespaceHandler</nsh_interface>
>> +                                               
>> <nsh_namespace>osgi.service.blueprint.namespace</nsh_namespace>
>>                     </instructions>
>>                 </configuration>
>>             </plugin>
>>
>> Modified: incubator/aries/trunk/web/web-urlhandler/pom.xml
>> URL: 
>> http://svn.apache.org/viewvc/incubator/aries/trunk/web/web-urlhandler/pom.xml?rev=921573&r1=921572&r2=921573&view=diff
>> ==============================================================================
>> --- incubator/aries/trunk/web/web-urlhandler/pom.xml (original)
>> +++ incubator/aries/trunk/web/web-urlhandler/pom.xml Wed Mar 10 21:18:42 2010
>> @@ -61,10 +61,6 @@
>>                         <Export-Package>
>>                             
>> org.apache.aries.web.converter;version="${pom.version}",
>>                         </Export-Package>
>> -                        <Export-Service>
>> -                            
>> org.apache.aries.web.converter.WarToWabConverter,
>> -                            
>> org.osgi.service.url.URLStreamHandlerService;url.handler.protocol=webbundle
>> -                        </Export-Service>
>>                         
>> <_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))</_versionpolicy>
>>                         
>> <_removeheaders>Ignore-Package,Include-Resource,Private-Package,Bundle-DocURL</_removeheaders>
>>                     </instructions>
>>
>>
>>
>



-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
------------------------
Open Source SOA
http://fusesource.com

Reply via email to