felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rob Walker (JIRA)" <j...@apache.org>
Subject [jira] Commented: (FELIX-383) getResource()/getResources() called on "/"
Date Wed, 03 Oct 2007 17:45:50 GMT

    [ https://issues.apache.org/jira/browse/FELIX-383?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12532174
] 

Rob Walker commented on FELIX-383:
----------------------------------

A good analysis ... and not wishing to complicate things - isn't there a 3rd possibility here:

 - "resourceAB.txt" exists in the main bundle JAR, as well as (or instead of) an inner JAR.Presumably
this would always take precedence if it occured in more than 1 place.

I wonder also if Classloader.getResource() has any convention we can follow here - strikes
me that it must also deal with a case where a resource may occur at the same path in multiple
JARs, and my guess is it searches them in classpath order if so.

In which case, I think my vote is with option (2) also



> getResource()/getResources() called on "/"
> ------------------------------------------
>
>                 Key: FELIX-383
>                 URL: https://issues.apache.org/jira/browse/FELIX-383
>             Project: Felix
>          Issue Type: Improvement
>          Components: Framework
>    Affects Versions: 1.0.0
>            Reporter: Costin Leau
>
> Moving from an email conversation to a JIRA issue to allow easier tracking.
> >> getResource/getResources called on "/".
> >> >>
> >> >> bundle.getResource("/") returns null while bundle.getResources("/")
> >> >> returns an empty enumeration.
> >> >>
> >> >> On equinox they return an actual URL to the root of the bundle,
> >> >> respectively a list of URLs on root for all attached bundles. I'm not
> >> >> sure what's the exact behaviour in this area as the spec seems to be
> >> >> unclear on it and that's why I'm asking.
> >> >>
> >> >> For practical reasons, getResource on root is useful when doing pattern
> >> >> matching against a classpath resource - i.e. /org/**/MyClass.class
> >> >>   
> > > 
> > > This is still in my inbox from before...I did some initial
> > > experimentation with it and was never happy enough with it to commit it.
> > > I know it seems like an easy thing, but it really isn't since a bundle
> > > with a class path with embedded JARs and directories doesn't really have
> > > a single "/" root. This is something that I will still give more thought
> > > to...I assume that your situation could be resolved by just treating "/"
> > > as the root of the physical bundle, right? Or are you expecting to find
> > > content from embedded class path entries too?
> > > 
> For getResource() only one classpath has to be chosen and the root of
> the physical bundle seems like a good choice since that one will always
> be present.
> Things are different when using getResources() since there, the embedded
> libraries and fragments root folders can be returned for example.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message