Sure. The refactoring covers three areas:

- It covers all modifications proposed in [1] with a few changes:
  The lightweight versions of updateProperties, setContentStream and 
deleteContentStream could not be attached to the Session interface because they 
need access to the change token.
  CmisObject respectively Document now contain two versions of those 
operations; one that loads and returns the new object and one that doesn't.
  
- Introduction of the transient object interfaces and implementations. That's 
by far the biggest change.
  There is also a very short FIT test.

- Some code clean up.
  * Classnames that referred to a persistent/transient session concept have 
been changed to something neutral.
  * All non-transient classes should now be Serializable. (That was 
inconsistent before.)
  * Code blocks that were almost identical in different places have been moved 
to and centralized in SessionImpl (create*, applyAcl, applyPolicies, etc.).
  * All classes I had to touch now follow the style guide we agreed on in 
April. (... well, I hope ...)

Florian


[1] 
http://mail-archives.apache.org/mod_mbox/incubator-chemistry-dev/201010.mbox/%[email protected]%3e




On 15/11/2010 16:04, Florent Guillaume wrote:
> Hi,
> 
> Could you give a very quick high-level view of what the refactoring
> was about (besides TransientCmisObject)?
> I'm asking because it's hard to follow with just the diffs in svn for
> these kinds of changes.
> 
> Florent
> 
> On Fri, Nov 12, 2010 at 3:54 PM, Florian Müller
> <[email protected]>  wrote:
>> Hi all,
>>
>> I'm still working on the API refactoring but there is now enough code to get
>> idea how it might look like:
>> http://svn.apache.org/viewvc/incubator/chemistry/opencmis/branches/client-api-refactoring/
>>
>> Please have a look and provide feedback. I don't want implement everything
>> and find out later that I missed something or that you don't like it.
>>
>>
>> Cheers,
>>
>> Florian
>>
> 
> 
> 

Reply via email to