Hi,

As much as I would like to make ResourceMetadata read-only, I am not really 
comfortable ...

How about running this by our users list and see, whether there is some 
feedback ?

Regards
Felix

Am 04.03.2013 um 14:28 schrieb Carsten Ziegeler:

> 2013/3/4 Felix Meschberger <[email protected]>:
>> Hi,
>> 
>> I have been looking into this some time ago. And I am also somewhat unhappy 
>> with the read/write nature of the ResourceMetadata.
>> 
>> While I think in general we can make the ResourceMetadata read-only, we have 
>> a problem with code like:
>> 
>>> resource.getResourceMetadata().setResolutionPathInfo(rpi);
>> 
>> which is in ResourceResolverImpl.resolveInternal (line 805). This would 
>> break.
> 
> Yepp.
> 
>> 
>> We could see, whether it would be possible to make the ResourceMetadata 
>> read-only after resource resolution has completed, e.g. 
>> ResourceMetadata.lock(). But I am not really convinced.
> 
> Yes, that's why I suggest that the resource resolver calls this method
> before returning the resource object.
> 
>> 
>> I am also not sure, what client application we would break with this change ?
> We will never know - so far I don't know any code putting stuff in
> here outside of the resource resolver.
> 
>> 
>> What happens in the Sling Launchpad Testing build if this would be read-only 
>> ?
> 
> I couldn't find a reference to metadata in that module
> 
> Carsten
> 
>> 
>> Regards
>> Felix
>> 
>> 
>> Am 01.03.2013 um 17:48 schrieb Carsten Ziegeler:
>> 
>>> Hi,
>>> 
>>> while looking into some issues, I realized that ResourceMetadata is
>>> not only extending a HashMap (which makes handling easier), but we
>>> have absolutely no information if this map can be changed by client
>>> code or is a read-only map.
>> 
>>> 
>>> I think we should add this to the documentation and make this
>>> read-only. We could either just document it or add a "make read-only"
>>> method to ResourceMetadata which is called by the resource resolver
>>> before the resource object is returned to the client code.
>>> 
>>> But I think we should not allow client code to change/add/remove to
>>> ResourceMetadata.
>>> 
>>> WDYT
>>> 
>>> Regards
>>> Carsten
>>> --
>>> Carsten Ziegeler
>>> [email protected]
>> 
>> 
>> --
>> Felix Meschberger | Principal Scientist | Adobe
>> 
>> 
>> 
>> 
>> 
>> 
>> 
> 
> 
> 
> -- 
> Carsten Ziegeler
> [email protected]


--
Felix Meschberger | Principal Scientist | Adobe







Reply via email to