directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Emmanuel Lecharny <elecha...@gmail.com>
Subject Re: [ApacheDS][API] OSGI, MANIFEST.MF files and Bundle-SymbolicName
Date Tue, 18 Oct 2011 12:40:16 GMT
On 10/18/11 2:31 PM, Pierre-Arnaud Marcelot wrote:
> Hi guys,
>
> A quick follow up on the work currently being done on ApacheDS around OSGI.
>
> Göktürk is doing a really good job in moving ApacheDS code base towards OSGI.
>
> Unfortunately, at the moment, Studio is broken (code base still compiles but it can't
be launched) due to the recent changes.
> The cause of this issue is a change in the way we name our OSGI bundles (the 'Bundle-SymbolicName'
property in the 'MANIFEST.MF' file).
>
> When we moved the LDAP API (Shared) to OSGI a few months back with Alex, at first, we
used a concatenation of the groupId and the artifactId:
> <Bundle-SymbolicName>${project.groupId}.${project.artifactId}</Bundle-SymbolicName>
>
> That generated for example the following bundle symbolic name: org.apache.directory.shared.shared-asn1-api
>
> We decided quickly to change the policy for two reasons:
> - get rid of the duplicated 'shared' keyword
> - follow the current naming policy of Apache Directory Studio (inherited from Eclipse)
which does not use any '-' character (but a '.' instead).
>
> In the end, it gave the following bundle symbolic name for the same example: org.apache.directory.shared.asn1.api.
> Something that we thought was shorter, clearer and shared across both our projects (Studio
and LDAP API).
>
> Recent modifications brought back the concatenation naming scheme and that's what has
broken Studio.
> I currently have a fix in my workspace about that (which reverts the bundle symbolic
name to what was previously used), but I'd rather have a common discussion about what naming
scheme the community as a whole decides to use, before committing it.
>
> What's your take on this?
>
> Also, one other thing. In order to be able to run ApacheDS projects from the workspace
inside a launched Eclipse instance (especially when running Studio within Eclipse), we need
to have the 'MANIFEST.MF' file generated inside a 'META-INF' folder at the root of each ApacheDS
module (this 'META-INF' folder being added to svn:ignore of course).
>
> This is what we had done when we moved the LDAP API (Shared) to OSGI a few months back
with Alex, and it has been working very fine since then, especially the integration with Studio.
>
> So, all LDAP API modules are fine about that and I'd like to do the same thing for all
ApacheDS modules.
>
> Is there any objection to that?

I'm fine with both proposals. I don't think that keeping a dot-notation 
should be an issue for symbolic names, except that we must be careful 
not to have any collision.



-- 
Regards,
Cordialement,
Emmanuel Lécharny
www.iktek.com


Mime
View raw message