[jira] [Commented] (FELIX-4168) Adapter services don't call callbacks for existing services when adding a required dependency after setup

2014-10-26 Thread Angelo van der Sijpt (JIRA)

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

Angelo van der Sijpt commented on FELIX-4168:
-

Fine with me, thanks!

> Adapter services don't call callbacks for existing services when adding a 
> required dependency after setup
> -
>
> Key: FELIX-4168
> URL: https://issues.apache.org/jira/browse/FELIX-4168
> Project: Felix
>  Issue Type: Bug
>  Components: Dependency Manager
>Affects Versions: dependencymanager-3.1.0
>Reporter: Angelo van der Sijpt
> Attachments: FELIX_4168AdapterWithDynamicallyAddedDependencies.java
>
>
> I have the following scenario,
> - an adapter service comes up for some underlying service;
> - some time during start (either during init(), start(), or add()), I add a 
> required service dependency, with callbacks;
> - the service on which we depend, is already available.
> I would expect the callbacks get called during startup of the component. 
> However, this doesn't happen.
> I have been able to localize this a little further,
> - this only happens when the service is already available (i.e., services 
> that show up later work fine),
> - the service does not get pulled because of the new dependency (which is 
> should),
> - it doesn't matter which callback function I register the depencies from,
> - it can be solved partially by setting the required dependencies to be 
> instanceBound(), but then still the service doesn't get pulled before a 
> service becomes available.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


Re: [VOTE] Accept PojoSR code donation

2014-03-11 Thread Angelo van der Sijpt
+1

Nice one!

On 11 Mar 2014, at 15:29, Marcel Offermans  wrote:

> +1
> 
> On Mar 5, 2014 3:49 PM, Guillaume Nodet  wrote:
> Karl Pauls is willing to donate PojoSR (https://code.google.com/p/pojosr/)
> to Felix.
> 
> This vote is about officially accepting the donation.
> 
> [ ] +1  Accept PojoSR code into Felix
> [ ] -1 Do not
> 
> Cheers,
> Guillaume Nodet



[jira] [Commented] (FELIX-4168) Adapter services don't call callbacks for existing services when adding a required dependency after setup

2013-07-18 Thread Angelo van der Sijpt (JIRA)

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

Angelo van der Sijpt commented on FELIX-4168:
-

I agree that some additional documentation on the sure of instanceBound is 
helpful, probably located somewhere near the description of callback methods. I 
now use setInstanceBound(true), and that works fine.

That said, I don't think we should make an exception for dependencies which are 
already available: I like the peace of mind that when I declare my dependencies 
correctly, the system will always behave in the same way.

> Adapter services don't call callbacks for existing services when adding a 
> required dependency after setup
> -
>
> Key: FELIX-4168
> URL: https://issues.apache.org/jira/browse/FELIX-4168
> Project: Felix
>  Issue Type: Bug
>  Components: Dependency Manager
>Affects Versions: dependencymanager-3.1.0
>Reporter: Angelo van der Sijpt
> Attachments: FELIX_4168AdapterWithDynamicallyAddedDependencies.java
>
>
> I have the following scenario,
> - an adapter service comes up for some underlying service;
> - some time during start (either during init(), start(), or add()), I add a 
> required service dependency, with callbacks;
> - the service on which we depend, is already available.
> I would expect the callbacks get called during startup of the component. 
> However, this doesn't happen.
> I have been able to localize this a little further,
> - this only happens when the service is already available (i.e., services 
> that show up later work fine),
> - the service does not get pulled because of the new dependency (which is 
> should),
> - it doesn't matter which callback function I register the depencies from,
> - it can be solved partially by setting the required dependencies to be 
> instanceBound(), but then still the service doesn't get pulled before a 
> service becomes available.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (FELIX-4168) Adapter services don't call callbacks for existing services when adding a required dependency after setup

2013-07-17 Thread Angelo van der Sijpt (JIRA)

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

Angelo van der Sijpt commented on FELIX-4168:
-

Your comment makes a lot of sense to me. So yes, as far as I'm concerned, we 
can close this issue with "Angelo, RTFM." 

> Adapter services don't call callbacks for existing services when adding a 
> required dependency after setup
> -
>
> Key: FELIX-4168
> URL: https://issues.apache.org/jira/browse/FELIX-4168
> Project: Felix
>  Issue Type: Bug
>  Components: Dependency Manager
>Affects Versions: dependencymanager-3.1.0
>Reporter: Angelo van der Sijpt
> Attachments: FELIX_4168AdapterWithDynamicallyAddedDependencies.java
>
>
> I have the following scenario,
> - an adapter service comes up for some underlying service;
> - some time during start (either during init(), start(), or add()), I add a 
> required service dependency, with callbacks;
> - the service on which we depend, is already available.
> I would expect the callbacks get called during startup of the component. 
> However, this doesn't happen.
> I have been able to localize this a little further,
> - this only happens when the service is already available (i.e., services 
> that show up later work fine),
> - the service does not get pulled because of the new dependency (which is 
> should),
> - it doesn't matter which callback function I register the depencies from,
> - it can be solved partially by setting the required dependencies to be 
> instanceBound(), but then still the service doesn't get pulled before a 
> service becomes available.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (FELIX-4168) Adapter services don't call callbacks for existing services when adding a required dependency after setup

2013-07-15 Thread Angelo van der Sijpt (JIRA)

 [ 
https://issues.apache.org/jira/browse/FELIX-4168?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Angelo van der Sijpt updated FELIX-4168:


Attachment: FELIX_4168AdapterWithDynamicallyAddedDependencies.java

I added a testcase which shows the initial issue. However, I suspect there is a 
little more going on than this.

> Adapter services don't call callbacks for existing services when adding a 
> required dependency after setup
> -
>
> Key: FELIX-4168
> URL: https://issues.apache.org/jira/browse/FELIX-4168
> Project: Felix
>  Issue Type: Bug
>  Components: Dependency Manager
>Affects Versions: dependencymanager-3.1.0
>Reporter: Angelo van der Sijpt
> Attachments: FELIX_4168AdapterWithDynamicallyAddedDependencies.java
>
>
> I have the following scenario,
> - an adapter service comes up for some underlying service;
> - some time during start (either during init(), start(), or add()), I add a 
> required service dependency, with callbacks;
> - the service on which we depend, is already available.
> I would expect the callbacks get called during startup of the component. 
> However, this doesn't happen.
> I have been able to localize this a little further,
> - this only happens when the service is already available (i.e., services 
> that show up later work fine),
> - the service does not get pulled because of the new dependency (which is 
> should),
> - it doesn't matter which callback function I register the depencies from,
> - it can be solved partially by setting the required dependencies to be 
> instanceBound(), but then still the service doesn't get pulled before a 
> service becomes available.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Created] (FELIX-4168) Adapter services don't call callbacks for existing services when adding a required dependency after setup

2013-07-15 Thread Angelo van der Sijpt (JIRA)
Angelo van der Sijpt created FELIX-4168:
---

 Summary: Adapter services don't call callbacks for existing 
services when adding a required dependency after setup
 Key: FELIX-4168
 URL: https://issues.apache.org/jira/browse/FELIX-4168
 Project: Felix
  Issue Type: Bug
  Components: Dependency Manager
Affects Versions: dependencymanager-3.1.0
Reporter: Angelo van der Sijpt
 Attachments: FELIX_4168AdapterWithDynamicallyAddedDependencies.java

I have the following scenario,

- an adapter service comes up for some underlying service;
- some time during start (either during init(), start(), or add()), I add a 
required service dependency, with callbacks;
- the service on which we depend, is already available.

I would expect the callbacks get called during startup of the component. 
However, this doesn't happen.

I have been able to localize this a little further,
- this only happens when the service is already available (i.e., services that 
show up later work fine),
- the service does not get pulled because of the new dependency (which is 
should),
- it doesn't matter which callback function I register the depencies from,
- it can be solved partially by setting the required dependencies to be 
instanceBound(), but then still the service doesn't get pulled before a service 
becomes available.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Closed] (FELIX-3913) Felix Event Admin documentation does not state its configuration PID

2013-03-27 Thread Angelo van der Sijpt (JIRA)

 [ 
https://issues.apache.org/jira/browse/FELIX-3913?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Angelo van der Sijpt closed FELIX-3913.
---


Right, the PID looks okay.

However, did you notice there is still some work to be done on the rest of that 
section? (For instance, the table still needs to be ported.)

> Felix Event Admin documentation does not state its configuration PID
> 
>
> Key: FELIX-3913
> URL: https://issues.apache.org/jira/browse/FELIX-3913
> Project: Felix
>  Issue Type: Bug
>  Components: Event Admin
>            Reporter: Angelo van der Sijpt
>Assignee: Felix Meschberger
>Priority: Trivial
> Attachments: 
> FELIX-3913-Included-the-Event-Admin-PID-in-its-documentation.patch
>
>
> The documentation for Event Admin on 
> http://felix.apache.org/site/apache-felix-event-admin.html states that it can 
> be configured using a Configuration Admin, but omits the PID of the service 
> to configure.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (FELIX-3913) Felix Event Admin documentation does not state its configuration PID

2013-02-22 Thread Angelo van der Sijpt (JIRA)

 [ 
https://issues.apache.org/jira/browse/FELIX-3913?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Angelo van der Sijpt updated FELIX-3913:


Attachment: 
FELIX-3913-Included-the-Event-Admin-PID-in-its-documentation.patch

I've included a patch for the site which includes this information.

> Felix Event Admin documentation does not state its configuration PID
> 
>
> Key: FELIX-3913
> URL: https://issues.apache.org/jira/browse/FELIX-3913
> Project: Felix
>  Issue Type: Bug
>  Components: Event Admin
>        Reporter: Angelo van der Sijpt
>Priority: Trivial
> Attachments: 
> FELIX-3913-Included-the-Event-Admin-PID-in-its-documentation.patch
>
>
> The documentation for Event Admin on 
> http://felix.apache.org/site/apache-felix-event-admin.html states that it can 
> be configured using a Configuration Admin, but omits the PID of the service 
> to configure.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Created] (FELIX-3913) Felix Event Admin documentation does not state its configuration PID

2013-02-22 Thread Angelo van der Sijpt (JIRA)
Angelo van der Sijpt created FELIX-3913:
---

 Summary: Felix Event Admin documentation does not state its 
configuration PID
 Key: FELIX-3913
 URL: https://issues.apache.org/jira/browse/FELIX-3913
 Project: Felix
  Issue Type: Bug
  Components: Event Admin
Reporter: Angelo van der Sijpt
Priority: Trivial


The documentation for Event Admin on 
http://felix.apache.org/site/apache-felix-event-admin.html states that it can 
be configured using a Configuration Admin, but omits the PID of the service to 
configure.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (FELIX-3856) Provide documentation for filter indices

2013-02-08 Thread Angelo van der Sijpt (JIRA)

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

Angelo van der Sijpt commented on FELIX-3856:
-

Right, 
http://felix.apache.org/documentation/subprojects/apache-felix-dependency-manager/apache-felix-dependency-manager-reference-guide.html
 looks better. It also (now) is the first hit in Google.

> Provide documentation for filter indices
> 
>
> Key: FELIX-3856
> URL: https://issues.apache.org/jira/browse/FELIX-3856
> Project: Felix
>  Issue Type: Improvement
>  Components: Dependency Manager
>        Reporter: Angelo van der Sijpt
>Assignee: Marcel Offermans
> Attachments: FELIX-3856-Filter-indices-documentation.patch, 
> Felix-3856-Filter-indices-for-aspects-and-adapters.patch
>
>
> The current Dependency Manager Reference Guide ( 
> http://felix.apache.org/site/apache-felix-dependency-manager-reference-guide.html
>  ) is rather mute on the subject of filter indices, only stating they are an 
> experimental feature.
> Now the indices will make it into the upcoming release, we will have to 
> provide some guidelines for users of this feature.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (FELIX-3856) Provide documentation for filter indices

2013-02-08 Thread Angelo van der Sijpt (JIRA)

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

Angelo van der Sijpt commented on FELIX-3856:
-

I've noticed the changes have been committed quite a while ago, but the 
generated page ( 
http://felix.apache.org/site/apache-felix-dependency-manager-reference-guide.html
 ) still lists filters as 'experimental'. Is something up with the mirroring or 
generation?

> Provide documentation for filter indices
> 
>
> Key: FELIX-3856
> URL: https://issues.apache.org/jira/browse/FELIX-3856
> Project: Felix
>  Issue Type: Improvement
>  Components: Dependency Manager
>Reporter: Angelo van der Sijpt
>Assignee: Marcel Offermans
> Attachments: FELIX-3856-Filter-indices-documentation.patch, 
> Felix-3856-Filter-indices-for-aspects-and-adapters.patch
>
>
> The current Dependency Manager Reference Guide ( 
> http://felix.apache.org/site/apache-felix-dependency-manager-reference-guide.html
>  ) is rather mute on the subject of filter indices, only stating they are an 
> experimental feature.
> Now the indices will make it into the upcoming release, we will have to 
> provide some guidelines for users of this feature.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


Re: [VOTE] Release Felix Dependency Manager Core, Annotation, Runtime version 3.1.0 and Compat, Shell version 3.0.1

2013-01-24 Thread Angelo van der Sijpt
+1 (extremely non-binding)

I verified it with an Android project with lots of services, and the indexing 
speedup is significant.

Angelo


On Jan 24, 2013, at 9:57 AM, Guillaume Nodet  wrote:

> +1
> 
> 
> On Wed, Jan 23, 2013 at 4:14 PM, Marcel Offermans <
> marcel.offerm...@luminis.nl> wrote:
> 
>> Hello everybody,
>> 
>> After contributions from various people, and testing several new major
>> features, it is time to vote on a new release of the Dependency Manager
>> bundles. We resolved the following Jira issues this release:
>> 
>> FELIX-303 - Support for compositions
>> FELIX-1201 - Issue with DM and CM
>> FELIX-1278 - DM/ AutoConfig is active event if setCallbacks method has
>> been invoked
>> FELIX-1464 - issue when using a negation in ldap service dependency filter
>> FELIX-1546 - DM/Temporal Dependency/Bound Service Replacement features
>> FELIX-2078 - Not all callbacks invoked when declaring a service as
>> required and starting it after dependencies
>> FELIX-2344 - DM / callback method is not invoked when an extra dependency
>> is defined within an "init" component method.
>> FELIX-2348 - DM/ ResourceAdapter NPE
>> FELIX-2369 - DM/ Service start method is invoked even if an extra required
>> dependency is unavailable
>> FELIX-2816 - dependency manager calls init() twice
>> FELIX-2947 - Filter indices must use service trackers that track all
>> services and aspects.
>> FELIX-2953 - Make the cache that InvocationUtil uses configurable.
>> FELIX-2954 - DM/ annotated component factory does not allow to provide a
>> component instance explicitly
>> FELIX-2955 - IllegalStateException when doing a 'dm notavail' shell
>> command.
>> FELIX-2956 - DM/ json should be embedded in the annotation scanner plugin
>> FELIX-2964 - DM/ NPE on some dependency manager adapters, when
>> "auto-configuration" mode is disabled.
>> FELIX-2970 - DM/ Factory Configuration Adapter Service does not copy
>> adapter dependencies
>> FELIX-2976 - InvocationUtil cache is not used properly for determining
>> that methods do not exist in a class
>> FELIX-2987 - DependencyManager ConfigurationDependency update isn't
>> propagated to super classes
>> FELIX-3005 - Compatibility API does not add components in DependencyManager
>> FELIX-3008 - NPE in ServiceRegistryCache when dependency manager bundle is
>> not started first
>> FELIX-3042 - [PATCH] Add a convenience clear() method on DependencyManager
>> FELIX-3057 - getServiceReferences() should not return an empty array
>> FELIX-3186 - Adapter services do not get their adapted services
>> transparently replaced when an aspect is added to them.
>> FELIX-3201 - Offer more functional callback methods for services that have
>> aspects on them.
>> FELIX-3218 - ServiceTracker performance is not optimal with a service
>> dependency that results in n-thousands of injected services.
>> FELIX-3264 - Dependency manager shell should not print the state of
>> optional dependencies when not all required ones are available
>> FELIX-3292 - Allow passing of resource properties to a resource handler
>> for use with resource adapters.
>> FELIX-3337 - DependencyManager/Updated configuration dependency does not
>> propagate to provided service properties
>> FELIX-3402 - DependencyManager stop can trigger IndexOutOfBoundsException
>> FELIX-3423 - AdapterImpl copies the DependencyManager.ASPECT service
>> property when adapting an aspect.
>> FELIX-3424 - Add support for changed callbacks on Aspect services.
>> FELIX-3425 - Provide a filter index for adapter services.
>> FELIX-3475 - DependencyManager compatibility bundle -
>> ServiceDependencyImpl does not override toString
>> FELIX-3564 - Memory leak in Filterindex / ServiceRegistryCache
>> FELIX-3592 - ServiceDependencyImpl does not copy the swapped callback in
>> it's constructor.
>> FELIX-3617 - Missing toString methods in DependencyManager compat bundle
>> FELIX-3682 - Dependency Manager Annotation-3.0.0 module doesn't expose
>> OSGI meta information in MANIFEST.MF
>> FELIX-3828 - Aspect and Adapter filter indices to not handle components
>> that have been bound with multiple interfaces correctly.
>> 
>> Staging repository:
>> https://repository.apache.org/content/repositories/orgapachefelix-161/
>> 
>> You can use this UNIX script to download the release and verify the
>> signatures:
>> http://svn.apache.org/repos/asf/felix/trunk/check_staged_release.sh
>> 
>> Usage:
>> sh check_staged_release.sh 161 /tmp/felix-staging
>> 
>> Please vote to approve this release:
>> 
>> [ ] +1 Approve the release
>> [ ] -1 Veto the release (please provide specific comments)
>> 
>> This vote will be open for 72 hours.
>> 
>> Greetings, Marcel
>> 
>> 
> 
> 
> -- 
> 
> Guillaume Nodet
> 
> Blog: http://gnodet.blogspot.com/
> 
> FuseSource, Integration everywhere
> http://fusesource.com




Re: Releasing the dependency manager...

2013-01-23 Thread Angelo van der Sijpt
Hi,

Over the past few days, I have been updating the documentation for filter 
indices. If you agree, could you commit that for me?
See https://issues.apache.org/jira/browse/FELIX-3856 .

Thanks!

Angelo

On Jan 23, 2013, at 2:05 PM, Pierre De Rop  wrote:

> Hello Marcel,
> 
> I have finished to commit some fixes in the annotation side, and I think
> you can now cut a release.
> Mainly, I did the following:
> 
> [FELIX-3863] - Generate DependencyManager Annotation MetaData In Project
> Folder
> [FELIX-3865] - Update DependencyManager annotation plugin with latest bndlb
> 1.50
> [FELIX-3866] - Added support for "swap" attribute in AspectService and
> AdpaterService annotations.
> 
> thanks;
> 
> kind regards;
> /Pierre
> 
> 
> On Mon, Jan 21, 2013 at 1:49 PM, Marcel Offermans <
> marcel.offerm...@luminis.nl> wrote:
> 
>> Hello Pierre,
>> 
>> Sure, no rush, check the code. As far as I could see, the changes we made
>> so far are all backward compatible, so I don't expect you have to change
>> anything there. Aligning the annotations is something I did not do or look
>> at, so if you could do that, that would be great. Just let me know when
>> you're done. :)
>> 
>> Greetings, Marcel
>> 
>> On Jan 21, 2013, at 11:59 , Pierre De Rop  wrote:
>> 
>>> Hi Marcel,
>>> 
>>> oops, I missed your post three days ago. If this not too late, can you
>>> please give me one day in order to check the DM annotation side ? I'm not
>>> sure but may be I should align the DM annotations to the latest bnd
>>> version. I will check this today.
>>> 
>>> thanks
>>> 
>>> /Pierre
>>> 
>>> 
>>> On Fri, Jan 18, 2013 at 9:44 AM, Jan Willem Janssen <
>>> janwillem.jans...@luminis.eu> wrote:
>>> 
 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1
 
 On 1/18/13 8:59 AM, Marcel Offermans wrote:
> Just a quick heads-up to the list that I want to release a new
> version of the dependency manager soon. The codebase has been
> stable and tested by several committers here for some time now, and
> there have been some new and interesting improvements. So, unless
> someone has showstopping bugs they have not reported yet, I'm going
> to proceed.
 
 I do not have any showstoppers for releasing a new version of Felix
 DM, so, go for it! ;)
 
 - --
 Met vriendelijke groeten | Kind regards
 
 Jan Willem Janssen | Software Architect
 +31 631 765 814
 
 /My world is:/
 
 Luminis Technologies B.V.
 IJsselburcht 3
 6825 BS  Arnhem
 +31 88 586 46 30
 
 http://www.luminis-technologies.com
 http://www.luminis.eu
 
 KvK (CoC) 09 16 28 93
 BTW (VAT) NL8169.78.566.B.01
 -BEGIN PGP SIGNATURE-
 Version: GnuPG/MacGPG2 v2.0.17 (Darwin)
 Comment: GPGTools - http://gpgtools.org
 Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
 
 iQIcBAEBAgAGBQJQ+Qt6AAoJEKF/mP2eHDc4ZoAP/iRoFd7XBlwx3gaIzKEHpYde
 LTzB8deRvFYc4H82RvePdoJ0L5VCWFvcm04frMgAXd/NrEmBZDpZeoJzp76qCaqb
 NnGRwEqjEf4zVWeW2JQU9KLV59UEjdQt+BzUV1m1aiSzZ4Hkimp+VW732DQ5ViYJ
 uOvZWeNYz0MKya2lrphbIRoiOJJOc1F6fDOZ5+1oFIWTeKn91h/gZwrJGkz7Tx0M
 GeZZsFO1JLVRjPKYld/pdJvFOQgXs7wgRZVFqcE+2Tfea6s1nHZ70j7U9HWP4eC/
 D1ijp3bmavJd9zpIaMdPniSgn0V7nMGu54ju6/rN3kk4N8biRNo4YK+oP+PwOjiz
 l9pP+quCzt6TuCEqGDaqR+lE5Wo3nr2x1B5fU981ZHqdsnkFUCeYzkmvDFJfA7oq
 NB61Uu6lto54JNukHb3skCnxAOfEK7QvBXsZ5XQOGwjKfj6kXDH10lr8zMNB9y5y
 TGbrx57IYjmmMqly3JTh4Lpm9eo0tj6Y7XdocA0nMZhuD6wRBx0dGXGnV4Pc03bc
 MThPpHNQHBgsi92x1k+d8t6sQjQwa7jmnZXzf6IspxwLUMtlQWVy1xeHRQPbRDwS
 VldX1pn62tz8J3N6iuMwD/A0Or7oG+QMUk5LW21uxmTA+7tPDWppyq/KTyWsdQYE
 r2a1RpSCb9n5J+rXoUya
 =YLvg
 -END PGP SIGNATURE-
 
 
>> 
>> 




[jira] [Updated] (FELIX-3856) Provide documentation for filter indices

2013-01-21 Thread Angelo van der Sijpt (JIRA)

 [ 
https://issues.apache.org/jira/browse/FELIX-3856?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Angelo van der Sijpt updated FELIX-3856:


Attachment: Felix-3856-Filter-indices-for-aspects-and-adapters.patch

Added a second patch with documentation for aspect- and adapter indices.

> Provide documentation for filter indices
> 
>
> Key: FELIX-3856
> URL: https://issues.apache.org/jira/browse/FELIX-3856
> Project: Felix
>  Issue Type: Improvement
>  Components: Dependency Manager
>            Reporter: Angelo van der Sijpt
> Attachments: FELIX-3856-Filter-indices-documentation.patch, 
> Felix-3856-Filter-indices-for-aspects-and-adapters.patch
>
>
> The current Dependency Manager Reference Guide ( 
> http://felix.apache.org/site/apache-felix-dependency-manager-reference-guide.html
>  ) is rather mute on the subject of filter indices, only stating they are an 
> experimental feature.
> Now the indices will make it into the upcoming release, we will have to 
> provide some guidelines for users of this feature.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (FELIX-3856) Provide documentation for filter indices

2013-01-20 Thread Angelo van der Sijpt (JIRA)

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

Angelo van der Sijpt commented on FELIX-3856:
-

I know of their existence, but I don't know how they work. If you can give me a 
quick explanation, I'll make into a nice piece of prose with some examples.

> Provide documentation for filter indices
> 
>
> Key: FELIX-3856
> URL: https://issues.apache.org/jira/browse/FELIX-3856
> Project: Felix
>  Issue Type: Improvement
>  Components: Dependency Manager
>    Reporter: Angelo van der Sijpt
> Attachments: FELIX-3856-Filter-indices-documentation.patch
>
>
> The current Dependency Manager Reference Guide ( 
> http://felix.apache.org/site/apache-felix-dependency-manager-reference-guide.html
>  ) is rather mute on the subject of filter indices, only stating they are an 
> experimental feature.
> Now the indices will make it into the upcoming release, we will have to 
> provide some guidelines for users of this feature.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (FELIX-3856) Provide documentation for filter indices

2013-01-19 Thread Angelo van der Sijpt (JIRA)

 [ 
https://issues.apache.org/jira/browse/FELIX-3856?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Angelo van der Sijpt updated FELIX-3856:


Attachment: FELIX-3856-Filter-indices-documentation.patch

This patch contains the filter index documentation.

> Provide documentation for filter indices
> 
>
> Key: FELIX-3856
> URL: https://issues.apache.org/jira/browse/FELIX-3856
> Project: Felix
>  Issue Type: Improvement
>  Components: Dependency Manager
>            Reporter: Angelo van der Sijpt
> Attachments: FELIX-3856-Filter-indices-documentation.patch
>
>
> The current Dependency Manager Reference Guide ( 
> http://felix.apache.org/site/apache-felix-dependency-manager-reference-guide.html
>  ) is rather mute on the subject of filter indices, only stating they are an 
> experimental feature.
> Now the indices will make it into the upcoming release, we will have to 
> provide some guidelines for users of this feature.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Created] (FELIX-3856) Provide documentation for filter indices

2013-01-19 Thread Angelo van der Sijpt (JIRA)
Angelo van der Sijpt created FELIX-3856:
---

 Summary: Provide documentation for filter indices
 Key: FELIX-3856
 URL: https://issues.apache.org/jira/browse/FELIX-3856
 Project: Felix
  Issue Type: Improvement
  Components: Dependency Manager
Reporter: Angelo van der Sijpt


The current Dependency Manager Reference Guide ( 
http://felix.apache.org/site/apache-felix-dependency-manager-reference-guide.html
 ) is rather mute on the subject of filter indices, only stating they are an 
experimental feature.

Now the indices will make it into the upcoming release, we will have to provide 
some guidelines for users of this feature.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


Re: Releasing the dependency manager...

2013-01-18 Thread Angelo van der Sijpt
Hi Marcel,

No bugs for me, and I am rather excited about the upcoming indexing.
Will this be in as an official feature in this release? If so, I will see to it 
that I update the documentation around that (as I promised) as soon as possible.

Angelo

On Jan 18, 2013, at 8:59 AM, Marcel Offermans  
wrote:

> Just a quick heads-up to the list that I want to release a new version of the 
> dependency manager soon. The codebase has been stable and tested by several 
> committers here for some time now, and there have been some new and 
> interesting improvements. So, unless someone has showstopping bugs they have 
> not reported yet, I'm going to proceed.
> 
> Greetings, Marcel
> 
> 




Re: [VOTE] Accept the UserAdmin donation by Jan Willem Janssen

2012-08-03 Thread Angelo van der Sijpt
Looking good!
+1

Angelo

On Aug 3, 2012, at 6:37 PM, Stuart McCulloch wrote:

> On 3 Aug 2012, at 16:57, Marcel Offermans wrote:
> 
>> A little while ago, Jan Willem Janssen donated a complete implementation of 
>> the UserAdmin compendium service [1] to our project. I would like to start a 
>> formal vote on accepting this code.
>> 
>> Please vote:
>> 
>> [   ] +1 Accept this donation.
>> [   ] 0 Don't care.
>> [   ] -1 Don't accept this donation (please motivate your vote).
> 
> +1
> 
>> Greetings, Marcel
>> 
>> [1] https://issues.apache.org/jira/browse/FELIX-3600
> 
> 




[jira] [Created] (FELIX-3365) Deployment Admin should remove stale resource processors

2012-02-28 Thread Angelo van der Sijpt (Created) (JIRA)
Deployment Admin should remove stale resource processors


 Key: FELIX-3365
 URL: https://issues.apache.org/jira/browse/FELIX-3365
 Project: Felix
  Issue Type: Improvement
  Components: Deployment Admin
Affects Versions: deploymentadmin-0.9.0
Reporter: Angelo van der Sijpt


Deployment Admin's installation process is according to spec, which means that 
stale resources processors will never be removed ( see 
https://www.osgi.org/bugzilla/show_bug.cgi?id=139 ). In advance of this spec 
change, we should include a step in Deployment Admin that removes stale 
customizer bundles, just after we have called commit() on all resource 
processors.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Closed] (FELIX-3313) dropped() should not be called when updating a resource

2012-01-24 Thread Angelo van der Sijpt (Closed) (JIRA)

 [ 
https://issues.apache.org/jira/browse/FELIX-3313?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Angelo van der Sijpt closed FELIX-3313.
---

Resolution: Invalid

Turns out this behavior is not caused by the way the DeploymentAdmin 
implementation works (this looks correct in that sense), but by the way ACE 
generates its deployment packages, see ACE-214 .

> dropped() should not be called when updating a resource
> ---
>
> Key: FELIX-3313
> URL: https://issues.apache.org/jira/browse/FELIX-3313
> Project: Felix
>  Issue Type: Bug
>  Components: Deployment Admin
>            Reporter: Angelo van der Sijpt
>
> When resources are being handled by ResourceProcessors, the dropped() method 
> is always called for resources that were present in a previous deployment 
> package. This should _only_ happen if the resources is no longer present in 
> the current deployment package (see compendium 114.8, steps 10 and 11).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Closed] (FELIX-3272) Add property to allow foreign resource processors

2012-01-23 Thread Angelo van der Sijpt (Closed) (JIRA)

 [ 
https://issues.apache.org/jira/browse/FELIX-3272?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Angelo van der Sijpt closed FELIX-3272.
---


Looks just like my patch, thanks!

> Add property to allow foreign resource processors
> -
>
> Key: FELIX-3272
> URL: https://issues.apache.org/jira/browse/FELIX-3272
> Project: Felix
>  Issue Type: Improvement
>  Components: Deployment Admin
>Affects Versions: deploymentadmin-0.9.0
>        Reporter: Angelo van der Sijpt
>Assignee: Marcel Offermans
> Attachments: FELIX-3272.patch
>
>
> DeploymentAdmin is built in such a way, that a deployment package is 
> self-contained. However, in my case, I want to use a ResourceProcessor that 
> is already on the system to process a configuration resource; if I do this, 
> this will give me a DeploymentException.CODE_FOREIGN_CUSTOMIZER.
> Just like system property 
> org.apache.felix.deploymentadmin.stopunaffectedbundle can customize the 
> behavior of deployment admin, I propose a new property: 
> org.apache.felix.deploymentadmin.allowforeigncustomizers , which allows 
> ResourceProcessors that are already on the system to process resources in a 
> deployment package. This should not be default behavior, so a system property 
> should be in order.
> I will attach a patch for this shortly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Created] (FELIX-3313) dropped() should not be called when updating a resource

2012-01-23 Thread Angelo van der Sijpt (Created) (JIRA)
dropped() should not be called when updating a resource
---

 Key: FELIX-3313
 URL: https://issues.apache.org/jira/browse/FELIX-3313
 Project: Felix
  Issue Type: Bug
  Components: Deployment Admin
Reporter: Angelo van der Sijpt


When resources are being handled by ResourceProcessors, the dropped() method is 
always called for resources that were present in a previous deployment package. 
This should _only_ happen if the resources is no longer present in the current 
deployment package (see compendium 114.8, steps 10 and 11).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (FELIX-3272) Add property to allow foreign resource processors

2011-12-14 Thread Angelo van der Sijpt (Updated) (JIRA)

 [ 
https://issues.apache.org/jira/browse/FELIX-3272?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Angelo van der Sijpt updated FELIX-3272:


Attachment: FELIX-3272.patch

Patch implementing the proposed solution.

> Add property to allow foreign resource processors
> -
>
> Key: FELIX-3272
> URL: https://issues.apache.org/jira/browse/FELIX-3272
> Project: Felix
>  Issue Type: Improvement
>  Components: Deployment Admin
>Affects Versions: deploymentadmin-0.9.0
>        Reporter: Angelo van der Sijpt
> Attachments: FELIX-3272.patch
>
>
> DeploymentAdmin is built in such a way, that a deployment package is 
> self-contained. However, in my case, I want to use a ResourceProcessor that 
> is already on the system to process a configuration resource; if I do this, 
> this will give me a DeploymentException.CODE_FOREIGN_CUSTOMIZER.
> Just like system property 
> org.apache.felix.deploymentadmin.stopunaffectedbundle can customize the 
> behavior of deployment admin, I propose a new property: 
> org.apache.felix.deploymentadmin.allowforeigncustomizers , which allows 
> ResourceProcessors that are already on the system to process resources in a 
> deployment package. This should not be default behavior, so a system property 
> should be in order.
> I will attach a patch for this shortly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Created] (FELIX-3272) Add property to allow foreign resource processors

2011-12-14 Thread Angelo van der Sijpt (Created) (JIRA)
Add property to allow foreign resource processors
-

 Key: FELIX-3272
 URL: https://issues.apache.org/jira/browse/FELIX-3272
 Project: Felix
  Issue Type: Improvement
  Components: Deployment Admin
Affects Versions: deploymentadmin-0.9.0
Reporter: Angelo van der Sijpt


DeploymentAdmin is built in such a way, that a deployment package is 
self-contained. However, in my case, I want to use a ResourceProcessor that is 
already on the system to process a configuration resource; if I do this, this 
will give me a DeploymentException.CODE_FOREIGN_CUSTOMIZER.

Just like system property org.apache.felix.deploymentadmin.stopunaffectedbundle 
can customize the behavior of deployment admin, I propose a new property: 
org.apache.felix.deploymentadmin.allowforeigncustomizers , which allows 
ResourceProcessors that are already on the system to process resources in a 
deployment package. This should not be default behavior, so a system property 
should be in order.

I will attach a patch for this shortly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




Re: [VOTE] framework 4.0.2 and related subproject releases

2011-11-21 Thread Angelo van der Sijpt
+1

Looks good to me, actually fixes a bug we ran into hours after this vote
going up. Kudos for the negative response time!

Angelo

On Mon, Nov 21, 2011 at 1:35 PM, Felix Meschberger wrote:

> +1
>
> Regards
> Felix
>
> Am 20.11.2011 um 22:08 schrieb Karl Pauls:
>
> > I would like to call a vote on the following subproject releases:
> >
> > framework  4.0.2
> > framework.security 2.0.1
> > main 4.0.2
> > main.distribution 4.0.2
> >
> >
> > Staging repositories:
> > https://repository.apache.org/content/repositories/orgapachefelix-225/
> >
> > You can use this UNIX script to download the release and verify the
> signatures:
> > http://svn.apache.org/repos/asf/felix/trunk/check_staged_release.sh
> >
> > Usage:
> > sh check_staged_release.sh 225 /tmp/felix-staging
> >
> > Please vote to approve this release:
> >
> > [ ] +1 Approve the release
> > [ ] -1 Veto the release (please provide specific comments)
>
>


Filter specification bug (was: Re: [VOTE] Felix framework 2.0.0 and related subprojects releases)

2009-09-09 Thread Angelo van der Sijpt


On Sep 9, 2009, at 8:02 PM, Stuart McCulloch wrote:


2009/9/10 Angelo van der Sijpt 



On Sep 9, 2009, at 7:00 PM, Richard S. Hall wrote:

On 9/9/09 12:54, Angelo van der Sijpt wrote:



+1 (very non-authoritive)

We checked the new release against our OSGi testing framework (
http://opensource.luminis.net/wiki/display/OSGITEST/OSGi+testing+framework
), and found nothing bad.

It's a shame about the new OSGi-provided filter implementation,  
by the

way...



Why is that?



In some corner cases, the OSGi implementation might conclude that a  
filter
is invalid, while it is actually permitted by the production rules.  
For
instance, (!ab=a) states an attribute name of '!ab', which is not  
disallowed
by spec, and solved correctly by Felix' filter implementation. The  
provided
one assumes that any ! after a ( will signal a negation, and  
complain that

it requires a ( .



have you raised a bug for this over at
https://www.osgi.org/bugzilla/enter_bug.cgi ?


Bug filed as https://www.osgi.org/bugzilla/show_bug.cgi?id=57 .

Angelo


Re: [VOTE] Felix framework 2.0.0 and related subprojects releases

2009-09-09 Thread Angelo van der Sijpt

On 9 Sep 2009, at 20:38, Karl Pauls wrote:

> On Wed, Sep 9, 2009 at 6:54 PM, Angelo van der
> Sijpt wrote:
>> +1 (very non-authoritive)
>>
>> We checked the new release against our OSGi testing framework 
>> (http://opensource.luminis.net/wiki/display/OSGITEST/OSGi+testing+framework
>>  ), and found nothing bad.
>
>
> I would have been surprised as I did run it as well :-)

Ah, nice. This might also be a good time to introduce our graduate  
student, who will be extending the testing framework, and adding cool  
features like automated reporting and multi-framework support!

>
> regards,
>
> Karl
>

Angelo


Re: [VOTE] Felix framework 2.0.0 and related subprojects releases

2009-09-09 Thread Angelo van der Sijpt


On Sep 9, 2009, at 7:00 PM, Richard S. Hall wrote:


On 9/9/09 12:54, Angelo van der Sijpt wrote:

+1 (very non-authoritive)

We checked the new release against our OSGi testing framework 
(http://opensource.luminis.net/wiki/display/OSGITEST/OSGi+testing+framework
  ), and found nothing bad.

It's a shame about the new OSGi-provided filter implementation, by  
the

way...



Why is that?


In some corner cases, the OSGi implementation might conclude that a  
filter is invalid, while it is actually permitted by the production  
rules. For instance, (!ab=a) states an attribute name of '!ab', which  
is not disallowed by spec, and solved correctly by Felix' filter  
implementation. The provided one assumes that any ! after a ( will  
signal a negation, and complain that it requires a ( .




We are not required to use it, we were just tired of maintaining our  
own.


-> richard


Angelo




Angelo


On 7 Sep 2009, at 01:53, Karl Pauls wrote:



I would like to call a vote on the following subproject releases:

org.osgi.core 1.4.0 *
org.osgi.compendium 1.4.0 *
shell 1.4.0 
shell.tui 1.4.0
bundlerepository 1.4.1
framework  2.0.0
main 2.0.0

Staging repository:
https://repository.apache.org/content/repositories/felix-staging-044//

You can use this UNIX script to download the release and verify the
signatures:
http://svn.apache.org/repos/asf/felix/trunk/check_staged_release.sh

Usage:
sh check_staged_release.sh 44 /tmp/felix-staging

Additionally, a convenience binary release is provided at:

http://people.apache.org/~pauls/2.0.0/

Please vote to approve this release:

[ ] +1 Approve the release
[ ] -1 Veto the release (please provide specific comments)

* The core and compendium subprojects are being released because
framework depends on them, but they will not be published.







Re: [VOTE] Felix framework 2.0.0 and related subprojects releases

2009-09-09 Thread Angelo van der Sijpt
+1 (very non-authoritive)

We checked the new release against our OSGi testing framework 
(http://opensource.luminis.net/wiki/display/OSGITEST/OSGi+testing+framework 
  ), and found nothing bad.

It's a shame about the new OSGi-provided filter implementation, by the  
way...

Angelo


On 7 Sep 2009, at 01:53, Karl Pauls wrote:

> I would like to call a vote on the following subproject releases:
>
> org.osgi.core 1.4.0 *
> org.osgi.compendium 1.4.0 *
> shell 1.4.0   
> shell.tui 1.4.0
> bundlerepository 1.4.1
> framework  2.0.0
> main 2.0.0
>
> Staging repository:
> https://repository.apache.org/content/repositories/felix-staging-044//
>
> You can use this UNIX script to download the release and verify the  
> signatures:
> http://svn.apache.org/repos/asf/felix/trunk/check_staged_release.sh
>
> Usage:
> sh check_staged_release.sh 44 /tmp/felix-staging
>
> Additionally, a convenience binary release is provided at:
>
> http://people.apache.org/~pauls/2.0.0/
>
> Please vote to approve this release:
>
> [ ] +1 Approve the release
> [ ] -1 Veto the release (please provide specific comments)
>
> * The core and compendium subprojects are being released because
> framework depends on them, but they will not be published.



[jira] Commented: (FELIX-1146) ConfigAdmin can deliver updates to a managed service factory more than once

2009-08-25 Thread Angelo van der Sijpt (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-1146?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12747313#action_12747313
 ] 

Angelo van der Sijpt commented on FELIX-1146:
-

I have not been able to reproduce the issue with 1.2.0, so this looks fine to 
me! Thanks for the fix!

> ConfigAdmin can deliver updates to a managed service factory more than once
> ---
>
> Key: FELIX-1146
> URL: https://issues.apache.org/jira/browse/FELIX-1146
> Project: Felix
>  Issue Type: Bug
>  Components: Configuration Admin
>Affects Versions: configadmin-1.0.8
>    Reporter: Angelo van der Sijpt
>Assignee: Felix Meschberger
>Priority: Minor
> Fix For: configadmin-1.2.0
>
> Attachments: Activator.java, ActivatorWithDependencyManager.java
>
>
> When the update of a ManagedServiceFactoryConfiguration, and the registration 
> of that ManagedServiceFactory are close together or 'crossing', it is 
> possible that the update is delivered twice to the factory.
> This seems to happen because of the following interleaving, with line numbers 
> from current trunk, rev 763614
> Some notes:
> - I would have preferred to add some ascii art MSC, but unfortunately Jira 
> does not allow this
> - Time order is top to bottom; I left out many methods for clarity
> User thread:
> - createFactoryConfiguration(user code)
> - config.update(user code)
> - factory.addPID(ConfigurationImpl.java:329)
> (preempted)
> Managed Service Factory Tracker thread:
> - ManagedServiceFactoryTracker.addingService(ConfigurationManager.java:1505)
> - cm.configure(ConfigurationManager.java:1512)
> - updateThread.schedule(ConfigurationManager.java:622) (Schedules a 
> ManagedServiceFactoryUpdate task)
> - schedule(UpdateThread.java:109)
> Update thread:
> - task.run(UpdateThread.java:89)
> - ManagedServiceFactoryUpdate.run, 
> cfg.isDelivered()(ConfigurationManager:1096) (is false now)
> - cfg.setDelivered( true )(ConfigurationManager:1129)
> User thread:
> - setDelivered( false )(ConfigurationImpl:338)
> - updateThread.schedule(ConfigurationManager:482)
> - schedule(UpdateThread.java:109) (Schedules a 'regular' UpdateTask)
> Update thread:
> - task.run(UpdateThread.java:89)
> - UpdateConfiguration.run, config.isDelivered() (is false now, so the 
> configuration is delivered twice!)
> In short, there is a possibility in which the ManagedServiceFactoryUpdate 
> task and ConfigurationImpl influence the setDelivered in such a way, that 
> they interfere with eachother.
> I do not have a contained testcase at the moment, nor an easy fix. Sorry 
> about that...

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



[jira] Updated: (FELIX-1146) ConfigAdmin can deliver updates to a managed service factory more than once

2009-06-21 Thread Angelo van der Sijpt (JIRA)

 [ 
https://issues.apache.org/jira/browse/FELIX-1146?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Angelo van der Sijpt updated FELIX-1146:


Attachment: ActivatorWithDependencyManager.java
Activator.java

I created a minimal example that shows the described behavior. I also found out 
that this behavior is more easily reproducable when using the dependency 
manager (I didn't have the time to find out why).

ActivatorWithDependencyManager.java contains a bundle activator that, when used 
as an activator for a bundle, will demonstrate the problem. Activator.java 
contains the same situation, just using basic service primitives.

> ConfigAdmin can deliver updates to a managed service factory more than once
> ---
>
> Key: FELIX-1146
> URL: https://issues.apache.org/jira/browse/FELIX-1146
> Project: Felix
>  Issue Type: Bug
>  Components: Configuration Admin
>Affects Versions: configadmin-1.0.8
>    Reporter: Angelo van der Sijpt
>Priority: Minor
> Attachments: Activator.java, ActivatorWithDependencyManager.java
>
>
> When the update of a ManagedServiceFactoryConfiguration, and the registration 
> of that ManagedServiceFactory are close together or 'crossing', it is 
> possible that the update is delivered twice to the factory.
> This seems to happen because of the following interleaving, with line numbers 
> from current trunk, rev 763614
> Some notes:
> - I would have preferred to add some ascii art MSC, but unfortunately Jira 
> does not allow this
> - Time order is top to bottom; I left out many methods for clarity
> User thread:
> - createFactoryConfiguration(user code)
> - config.update(user code)
> - factory.addPID(ConfigurationImpl.java:329)
> (preempted)
> Managed Service Factory Tracker thread:
> - ManagedServiceFactoryTracker.addingService(ConfigurationManager.java:1505)
> - cm.configure(ConfigurationManager.java:1512)
> - updateThread.schedule(ConfigurationManager.java:622) (Schedules a 
> ManagedServiceFactoryUpdate task)
> - schedule(UpdateThread.java:109)
> Update thread:
> - task.run(UpdateThread.java:89)
> - ManagedServiceFactoryUpdate.run, 
> cfg.isDelivered()(ConfigurationManager:1096) (is false now)
> - cfg.setDelivered( true )(ConfigurationManager:1129)
> User thread:
> - setDelivered( false )(ConfigurationImpl:338)
> - updateThread.schedule(ConfigurationManager:482)
> - schedule(UpdateThread.java:109) (Schedules a 'regular' UpdateTask)
> Update thread:
> - task.run(UpdateThread.java:89)
> - UpdateConfiguration.run, config.isDelivered() (is false now, so the 
> configuration is delivered twice!)
> In short, there is a possibility in which the ManagedServiceFactoryUpdate 
> task and ConfigurationImpl influence the setDelivered in such a way, that 
> they interfere with eachother.
> I do not have a contained testcase at the moment, nor an easy fix. Sorry 
> about that...

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



[jira] Created: (FELIX-1146) ConfigAdmin can deliver updates to a managed service factory more than once

2009-05-12 Thread Angelo van der Sijpt (JIRA)
ConfigAdmin can deliver updates to a managed service factory more than once
---

 Key: FELIX-1146
 URL: https://issues.apache.org/jira/browse/FELIX-1146
 Project: Felix
  Issue Type: Bug
  Components: Configuration Admin
Affects Versions: configadmin-1.0.8
Reporter: Angelo van der Sijpt
Priority: Minor


When the update of a ManagedServiceFactoryConfiguration, and the registration 
of that ManagedServiceFactory are close together or 'crossing', it is possible 
that the update is delivered twice to the factory.

This seems to happen because of the following interleaving, with line numbers 
from current trunk, rev 763614
Some notes:
- I would have preferred to add some ascii art MSC, but unfortunately Jira does 
not allow this
- Time order is top to bottom; I left out many methods for clarity

User thread:
- createFactoryConfiguration(user code)
- config.update(user code)
- factory.addPID(ConfigurationImpl.java:329)
(preempted)

Managed Service Factory Tracker thread:
- ManagedServiceFactoryTracker.addingService(ConfigurationManager.java:1505)
- cm.configure(ConfigurationManager.java:1512)
- updateThread.schedule(ConfigurationManager.java:622) (Schedules a 
ManagedServiceFactoryUpdate task)
- schedule(UpdateThread.java:109)

Update thread:
- task.run(UpdateThread.java:89)
- ManagedServiceFactoryUpdate.run, cfg.isDelivered()(ConfigurationManager:1096) 
(is false now)
- cfg.setDelivered( true )(ConfigurationManager:1129)

User thread:
- setDelivered( false )(ConfigurationImpl:338)
- updateThread.schedule(ConfigurationManager:482)
- schedule(UpdateThread.java:109) (Schedules a 'regular' UpdateTask)

Update thread:
- task.run(UpdateThread.java:89)
- UpdateConfiguration.run, config.isDelivered() (is false now, so the 
configuration is delivered twice!)

In short, there is a possibility in which the ManagedServiceFactoryUpdate task 
and ConfigurationImpl influence the setDelivered in such a way, that they 
interfere with eachother.

I do not have a contained testcase at the moment, nor an easy fix. Sorry about 
that...

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



[jira] Closed: (FELIX-915) PackageAdmin returns null on getBundle(...) with system classes

2009-02-03 Thread Angelo van der Sijpt (JIRA)

 [ 
https://issues.apache.org/jira/browse/FELIX-915?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Angelo van der Sijpt closed FELIX-915.
--


Working correctly now, thanks!

> PackageAdmin returns null on getBundle(...) with system classes
> ---
>
> Key: FELIX-915
> URL: https://issues.apache.org/jira/browse/FELIX-915
> Project: Felix
>  Issue Type: Bug
>  Components: Framework
>Affects Versions: felix-1.4.1
>        Reporter: Angelo van der Sijpt
>Assignee: Richard S. Hall
>Priority: Minor
> Fix For: felix-1.6.0
>
>
> When calling getBundle(clazz) on the PackageAdmin with a class from one of 
> the system packages, the system bundle should be returned. In stead, 
> PackageAdmin now returns null.
> This applies not only to the 'standard' system classes (e.g., BundleContext 
> or PackageAdmin), but also to packages in 
> org.osgi.framework.system.packages.extra.

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



[jira] Closed: (FELIX-609) PreferencesService might return invalid Preferences object for a user

2009-02-03 Thread Angelo van der Sijpt (JIRA)

 [ 
https://issues.apache.org/jira/browse/FELIX-609?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Angelo van der Sijpt closed FELIX-609.
--


It has been a while, but yes, the trunk behavior is now OK.

> PreferencesService might return invalid Preferences object for a user
> -
>
> Key: FELIX-609
> URL: https://issues.apache.org/jira/browse/FELIX-609
> Project: Felix
>  Issue Type: Bug
>  Components: Preferences Service
>            Reporter: Angelo van der Sijpt
>Assignee: Marcel Offermans
>
> When a Preferences object has been obtained for a given user, it can be 
> removed using removeNode(). A following call to getUserPreferences(...) will 
> then return the old, now invalid, Preferences object, leading to an 
> IllegalStateException when trying to add new data to the node. From this 
> moment on, it is not possible to obtain a valid Preferences object for this 
> user.
> The spec does not provide a definite answer about this case; 106.4 comes 
> closest with "getUserPreferences(String) - Return a Preferences object 
> associated with the user name that is given as argument. If the user does not 
> exist, a new root is created atomically." Intuitively, one might expect that 
> removeNode() restores the PreferencesService to the same state it was before 
> getUserPreferences(...) was called.
> The invalid Preferences object is caused by caching behavior in 
> PreferencesServicesImpl's getUserPreferences(...), which checks whether a 
> user's root node has already been created; if so, it will be returned, if 
> not, it will be created. 
> 91PreferencesImpl result = (PreferencesImpl) this.trees.get(name);
> 92// if the tree does not exist yet, create it
> 93if (result == null) {
> 94result = new PreferencesImpl(new 
> PreferencesDescription(this.bundleId, name), this.storeManager);
> 95this.trees.put(name, result);
> 96}
> The most plausible solution is to add an extra clause to the if-statement on 
> line 93, stating something like 
> 93if (result == null || !result.isValid()) {
> provided that isValid() will then return the valid field of PreferencesImpl.
> An alternative would be to detect the removal of a node which does not have a 
> parent (is a root node), and then remove it from the PreferencesServiceImpl's 
> trees; this is not that complicated, but requires some extra code.

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



[jira] Created: (FELIX-915) PackageAdmin returns null on getBundle(...) with system classes

2009-02-03 Thread Angelo van der Sijpt (JIRA)
PackageAdmin returns null on getBundle(...) with system classes
---

 Key: FELIX-915
 URL: https://issues.apache.org/jira/browse/FELIX-915
 Project: Felix
  Issue Type: Bug
  Components: Framework
Affects Versions: felix-1.4.1
Reporter: Angelo van der Sijpt
Priority: Minor


When calling getBundle(clazz) on the PackageAdmin with a class from one of the 
system packages, the system bundle should be returned. In stead, PackageAdmin 
now returns null.
This applies not only to the 'standard' system classes (e.g., BundleContext or 
PackageAdmin), but also to packages in org.osgi.framework.system.packages.extra.

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



Re: brain teaser - embedded felix / class cast exception

2008-07-08 Thread Angelo van der Sijpt

Hi,

On 8 Jul 2008, at 19:19, Dieter Wimberger wrote:

I guess that 7.0 is the output from the felix classloader. When  
allowing parent delegation (what Sahoo suggested), then you get the  
result you were looking for.


The 7.0 is indeed the name of the classloader of bundle ID 7 (the 0 is  
the version; if the bundle gets updated, this number will be  
incremented), which has to be the bundle that exports the  
CacheServiceMain object.



On 8 Jul 2008, at 18:47, Sahoo wrote:
My parent is what creates the Felix container, so it is  
technically not

in a bundle, but I loaded the same class code in it's jar (since I'm
going to be using it, of course) -- although, design wise, I'm  
using the
<> not the <>, but I short circuited the  
interface just

to get to the bottom of the riddle...
This seems to be the problem. Felix does not use the class that's  
loaded by your code, which is running outside Felix. To fix it, you  
have to make both Felix and your code use the same class. Since  
your code runs before Felix and you probably don't want to use  
reflection to use that class, the only option that I can think of  
is to configure Felix to use your class by adding org.craig.cache  
to the list of packages exported by the parent class loader. The  
property name in config.property is:  
org.osgi.framework.system.packages. See OSGi documentation for more  
details about this property.



True: Felix is a bundle too (that is why you can get its  
BundleContext), the system bundle to be precise. This system bundle  
does import the package from bundle 7 as soon as that class would get  
used. You can get the service reference for the class you want because  
it is possible to resolve the package import from the system bundle  
(that is, if it would not be possible because of e.g. versioning, you  
would not get the service reference).


If you really want to use the service outside of the Felix instance,  
Sahoo's suggestion of delegating to the system classloader seems the  
best way to go.
Still, I think I would package whatever it is you want to be using  
service with as a bundle, and run all code from inside that bundle.


If neither of these is an option, reflection might help you out. For  
instance, if you have a service MyService of which you are sure the  
definitions are identical, but just not loaded by the same  
classloader, you can use a proxy like such:


final Object object =  
bc.getService(bc.getServiceReference(MyService.class.getName()));


MyService service = (MyService)  
Proxy.newProxyInstance(MyService.class.getClassLoader(), new Class[]  
{ MyService.class },

new InvocationHandler() {
public Object invoke(Object proxy, Method method,  
Object[] args) throws Throwable {
Method bridge =  
object.getClass().getDeclaredMethod(method.getName(),  
method.getParameterTypes());

return bridge.invoke(object, args);
}
});


Hope this helps,

Angelo


[jira] Updated: (FELIX-609) PreferencesService might return invalid Preferences object for a user

2008-06-17 Thread Angelo van der Sijpt (JIRA)

 [ 
https://issues.apache.org/jira/browse/FELIX-609?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Angelo van der Sijpt updated FELIX-609:
---

Description: 
When a Preferences object has been obtained for a given user, it can be removed 
using removeNode(). A following call to getUserPreferences(...) will then 
return the old, now invalid, Preferences object, leading to an 
IllegalStateException when trying to add new data to the node. From this moment 
on, it is not possible to obtain a valid Preferences object for this user.

The spec does not provide a definite answer about this case; 106.4 comes 
closest with "getUserPreferences(String) - Return a Preferences object 
associated with the user name that is given as argument. If the user does not 
exist, a new root is created atomically." Intuitively, one might expect that 
removeNode() restores the PreferencesService to the same state it was before 
getUserPreferences(...) was called.

The invalid Preferences object is caused by caching behavior in 
PreferencesServicesImpl's getUserPreferences(...), which checks whether a 
user's root node has already been created; if so, it will be returned, if not, 
it will be created. 

91PreferencesImpl result = (PreferencesImpl) this.trees.get(name);
92// if the tree does not exist yet, create it
93if (result == null) {
94result = new PreferencesImpl(new 
PreferencesDescription(this.bundleId, name), this.storeManager);
95this.trees.put(name, result);
96}

The most plausible solution is to add an extra clause to the if-statement on 
line 93, stating something like 
93if (result == null || !result.isValid()) {
provided that isValid() will then return the valid field of PreferencesImpl.

An alternative would be to detect the removal of a node which does not have a 
parent (is a root node), and then remove it from the PreferencesServiceImpl's 
trees; this is not that complicated, but requires some extra code.

  was:
When a Preferences object has been obtained for a given user, it can be removed 
using removeNode(). A following call to getUserPreferences(...) will then 
return the old, now invalid, Preferences object, leading to an 
IllegalStateException when trying to add new data to the node. From this moment 
on, it is not possible to obtain a valid Preferences object for this user.

The spec does not provide a definite answer about this case; 106.4 comes 
closest with "getUserPreferences(String) - Return a Preferences object 
associated with the user name that is given as argument. If the user does not 
exist, a new root is created atomically." Intuitively, one might expect that 
removeNode() restores the PreferencesService to the same state it was before 
getUserPreferences(...) was called.

The invalid Preferences object is caused by caching behavior in 
PreferencesServicesImpl's getUserPreferences(...), which checks whether a 
user's root node has already been created; if so, it will be returned, if not, 
it will be created. 

91PreferencesImpl result = (PreferencesImpl) this.trees.get(name);
92// if the tree does not exist yet, create it
93if (result == null) {
94result = new PreferencesImpl(new 
PreferencesDescription(this.bundleId, name), this.storeManager);
95this.trees.put(name, result);
96}

The most plausible solution is to add an extra clause to the if-statement on 
line 93, stating something like 
93if (result == null || result.isValid()) {
provided that isValid() will then return the valid field of PreferencesImpl.

An alternative would be to detect the removal of a node which does not have a 
parent (is a root node), and then remove it from the PreferencesServiceImpl's 
trees; this is not that complicated, but requires some extra code.


Typo.

> PreferencesService might return invalid Preferences object for a user
> -
>
> Key: FELIX-609
> URL: https://issues.apache.org/jira/browse/FELIX-609
> Project: Felix
>  Issue Type: Bug
>      Components: Preferences Service
>Reporter: Angelo van der Sijpt
>
> When a Preferences object has been obtained for a given user, it can be 
> removed using removeNode(). A following call to getUserPreferences(...) will 
> then return the old, now invalid, Preferences object, leading to an 
> IllegalStateException when trying to add new data to the node. From this 
> moment on, it is not possible to obtain a valid Preferences object for this 
> user.
> The spec does not provide a definite answer about this case; 106.4 comes 
> closest with "getUserPreferences(String) - Return a Preferences object 
> associated with the user name tha

[jira] Created: (FELIX-609) PreferencesService might return invalid Preferences object for a user

2008-06-16 Thread Angelo van der Sijpt (JIRA)
PreferencesService might return invalid Preferences object for a user
-

 Key: FELIX-609
 URL: https://issues.apache.org/jira/browse/FELIX-609
 Project: Felix
  Issue Type: Bug
  Components: Preferences Service
Reporter: Angelo van der Sijpt


When a Preferences object has been obtained for a given user, it can be removed 
using removeNode(). A following call to getUserPreferences(...) will then 
return the old, now invalid, Preferences object, leading to an 
IllegalStateException when trying to add new data to the node. From this moment 
on, it is not possible to obtain a valid Preferences object for this user.

The spec does not provide a definite answer about this case; 106.4 comes 
closest with "getUserPreferences(String) - Return a Preferences object 
associated with the user name that is given as argument. If the user does not 
exist, a new root is created atomically." Intuitively, one might expect that 
removeNode() restores the PreferencesService to the same state it was before 
getUserPreferences(...) was called.

The invalid Preferences object is caused by caching behavior in 
PreferencesServicesImpl's getUserPreferences(...), which checks whether a 
user's root node has already been created; if so, it will be returned, if not, 
it will be created. 

91PreferencesImpl result = (PreferencesImpl) this.trees.get(name);
92// if the tree does not exist yet, create it
93if (result == null) {
94result = new PreferencesImpl(new 
PreferencesDescription(this.bundleId, name), this.storeManager);
95this.trees.put(name, result);
96}

The most plausible solution is to add an extra clause to the if-statement on 
line 93, stating something like 
93if (result == null || result.isValid()) {
provided that isValid() will then return the valid field of PreferencesImpl.

An alternative would be to detect the removal of a node which does not have a 
parent (is a root node), and then remove it from the PreferencesServiceImpl's 
trees; this is not that complicated, but requires some extra code.

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



[jira] Commented: (FELIX-471) FilterImpl.toString() does not add escape characters

2008-01-25 Thread Angelo van der Sijpt (JIRA)

[ 
https://issues.apache.org/jira/browse/FELIX-471?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12562403#action_12562403
 ] 

Angelo van der Sijpt commented on FELIX-471:


Works fine, thanks.

> FilterImpl.toString() does not add escape characters
> 
>
> Key: FELIX-471
> URL: https://issues.apache.org/jira/browse/FELIX-471
> Project: Felix
>  Issue Type: Bug
>  Components: Framework
>        Reporter: Angelo van der Sijpt
>Assignee: Karl Pauls
> Attachments: FELIX-471.patch
>
>
> FilterImpl.toString() is not a complete representation of the filter string 
> that was used to create it: four characters ( '(', ')', '/' and '*' ) should 
> be preceded by a '\' if they are to be used in a value.
> For example,
>   new FilterImpl("(b=\(*)").toString();
> should return '(b=\(*)', but it returns '(b=(*)'. So, it can happen that a 
> correct Filter f, when used in
>   new FilterImpl(f.toString());
> causes an InvalidSyntaxException.
> (see 
> http://www2.osgi.org/javadoc/r4/org/osgi/framework/Filter.html#toString() for 
> what toString() should do).
> See the attached patch for a proposed solution.

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



[jira] Closed: (FELIX-471) FilterImpl.toString() does not add escape characters

2008-01-25 Thread Angelo van der Sijpt (JIRA)

 [ 
https://issues.apache.org/jira/browse/FELIX-471?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Angelo van der Sijpt closed FELIX-471.
--


> FilterImpl.toString() does not add escape characters
> 
>
> Key: FELIX-471
> URL: https://issues.apache.org/jira/browse/FELIX-471
> Project: Felix
>  Issue Type: Bug
>  Components: Framework
>            Reporter: Angelo van der Sijpt
>Assignee: Karl Pauls
> Attachments: FELIX-471.patch
>
>
> FilterImpl.toString() is not a complete representation of the filter string 
> that was used to create it: four characters ( '(', ')', '/' and '*' ) should 
> be preceded by a '\' if they are to be used in a value.
> For example,
>   new FilterImpl("(b=\(*)").toString();
> should return '(b=\(*)', but it returns '(b=(*)'. So, it can happen that a 
> correct Filter f, when used in
>   new FilterImpl(f.toString());
> causes an InvalidSyntaxException.
> (see 
> http://www2.osgi.org/javadoc/r4/org/osgi/framework/Filter.html#toString() for 
> what toString() should do).
> See the attached patch for a proposed solution.

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



[jira] Updated: (FELIX-471) FilterImpl.toString() does not add escape characters

2008-01-24 Thread Angelo van der Sijpt (JIRA)

 [ 
https://issues.apache.org/jira/browse/FELIX-471?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Angelo van der Sijpt updated FELIX-471:
---

Attachment: FELIX-471.patch

> FilterImpl.toString() does not add escape characters
> 
>
> Key: FELIX-471
> URL: https://issues.apache.org/jira/browse/FELIX-471
> Project: Felix
>  Issue Type: Bug
>  Components: Framework
>            Reporter: Angelo van der Sijpt
> Attachments: FELIX-471.patch
>
>
> FilterImpl.toString() is not a complete representation of the filter string 
> that was used to create it: four characters ( '(', ')', '/' and '*' ) should 
> be preceded by a '\' if they are to be used in a value.
> For example,
>   new FilterImpl("(b=\(*)").toString();
> should return '(b=\(*)', but it returns '(b=(*)'. So, it can happen that a 
> correct Filter f, when used in
>   new FilterImpl(f.toString());
> causes an InvalidSyntaxException.
> (see 
> http://www2.osgi.org/javadoc/r4/org/osgi/framework/Filter.html#toString() for 
> what toString() should do).
> See the attached patch for a proposed solution.

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



[jira] Created: (FELIX-471) FilterImpl.toString() does not add escape characters

2008-01-24 Thread Angelo van der Sijpt (JIRA)
FilterImpl.toString() does not add escape characters


 Key: FELIX-471
 URL: https://issues.apache.org/jira/browse/FELIX-471
 Project: Felix
  Issue Type: Bug
  Components: Framework
Reporter: Angelo van der Sijpt


FilterImpl.toString() is not a complete representation of the filter string 
that was used to create it: four characters ( '(', ')', '/' and '*' ) should be 
preceded by a '\' if they are to be used in a value.

For example,
  new FilterImpl("(b=\(*)").toString();
should return '(b=\(*)', but it returns '(b=(*)'. So, it can happen that a 
correct Filter f, when used in
  new FilterImpl(f.toString());
causes an InvalidSyntaxException.
(see http://www2.osgi.org/javadoc/r4/org/osgi/framework/Filter.html#toString() 
for what toString() should do).

See the attached patch for a proposed solution.

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



[jira] Closed: (FELIX-411) Preferences service throws ClassCastException

2007-10-26 Thread Angelo van der Sijpt (JIRA)

 [ 
https://issues.apache.org/jira/browse/FELIX-411?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Angelo van der Sijpt closed FELIX-411.
--


Works like a charm. Thanks!

Angelo

> Preferences service throws ClassCastException
> -
>
> Key: FELIX-411
> URL: https://issues.apache.org/jira/browse/FELIX-411
> Project: Felix
>  Issue Type: Bug
>  Components: Preferences Service
>            Reporter: Angelo van der Sijpt
>Assignee: Carsten Ziegeler
>
> The preferences admin throws a ClassCastException when writing its cache. The 
> exception is
> java.lang.ClassCastException: [Lorg.apache.felix.prefs.PreferencesImpl; 
> cannot be cast to org.apache.felix.prefs.PreferencesImpl
> at 
> org.apache.felix.prefs.impl.PreferencesManager.save(PreferencesManager.java:179)
> ...
> This seems to have to do with the implementation of PreferencesImpl: in its 
> constructor, all preferences are loaded. The system preferences are stored,
> 61this.systemTree = prefs[i];
> but the user preferences are stored incorrectly:
> 63this.trees.put(prefs[i].getDescription().getIdentifier(), prefs);
> The full array of prefs is stored, not just prefs[i]; this causes the 
> classcastexception.
> A possible fix could be
> 63this.trees.put(prefs[i].getDescription().getIdentifier(), prefs[i]);

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



[jira] Created: (FELIX-411) Preferences service throws ClassCastException

2007-10-25 Thread Angelo van der Sijpt (JIRA)
Preferences service throws ClassCastException
-

 Key: FELIX-411
 URL: https://issues.apache.org/jira/browse/FELIX-411
 Project: Felix
  Issue Type: Bug
  Components: Preferences Service
Reporter: Angelo van der Sijpt


The preferences admin throws a ClassCastException when writing its cache. The 
exception is
java.lang.ClassCastException: [Lorg.apache.felix.prefs.PreferencesImpl; cannot 
be cast to org.apache.felix.prefs.PreferencesImpl
at 
org.apache.felix.prefs.impl.PreferencesManager.save(PreferencesManager.java:179)
...

This seems to have to do with the implementation of PreferencesImpl: in its 
constructor, all preferences are loaded. The system preferences are stored,
61this.systemTree = prefs[i];
but the user preferences are stored incorrectly:
63this.trees.put(prefs[i].getDescription().getIdentifier(), prefs);
The full array of prefs is stored, not just prefs[i]; this causes the 
classcastexception.

A possible fix could be
63this.trees.put(prefs[i].getDescription().getIdentifier(), prefs[i]);



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