Hi Stefan

I guess a good first step would be to go with b)

Carsten


2014-08-13 23:51 GMT+02:00 Stefan Seifert <[email protected]>:

> today i had a deeper look at the current implementation of
> resourceresolver-mock [1].
> nice work, simulates an simple in-memory resource tree without any
> underlying JCR. data can be written using Sling CRUD API.
>
> unfortunately currently no support for binary data exists, and i'm unsure
> what's the best way to implement it:
>
> a) in JCR resource implementation binary data can be read and written via
> InputStream objects in the ValueMap - that's gets converted internaly to a
> JCR BinaryValue, that means the InputStream can be read again many times,
> not only once. read is not done via ValueMap, but via adapting the property
> resource to InputStream.
> this does not work in resourceresolver-mock because a) only a simple map
> is used for storage and b) Resources for properties are not supported at
> all.
>
> b) the resourceresolver-mock could be somehow extended to detect
> InputStream values and apply a special treatment, mimicking the behavior of
> the JCR ValueMap implementation
>
> c) or the generic ValueMapDecorator implementation is extended to support
> such binary data handling
>
> my goal is to be able to use the resourceresolver-mock implementation in
> unit tests to test code that reads and writes data using Sling CRUD API
> including binary data.
>
> stefan
>
> [1]
> http://svn.apache.org/repos/asf/sling/trunk/testing/resourceresolver-mock
>
>


-- 
Carsten Ziegeler
Adobe Research Switzerland
[email protected]

Reply via email to