Author: qmathe
Date: Sat Mar 29 15:30:35 2008
New Revision: 2985

URL: http://svn.gna.org/viewcvs/etoile?rev=2985&view=rev
Log:
Part 1 of the refactoring of serialization backends to restrict their role to 
the encoding of data structures to a given format: binary, XML, PList etc.
Their other responsabilities like additional serialization infos, mapping of 
multiple serialization streams like versions to URLs will be handled by 
ETSerializer, and the URL protocol in use will be in charge of interpreting 
these URLs as it wants.

* ETSerializerBackendBinaryFile
Moved ivars version and filename to ETSerializer.
(-setVersion:, -newVersion:): Removed by moving this responsibility to 
ETSerializer.
(-deserializer): Modified to use URLs instead of paths.
(-initWithURL:): Modified to handle ivar initialization previously done in 
-setFile: and keep track of the serialization destination as an URL instead of 
a 
path. Moved the mappping of versions to paths to 
-[ETSerializer initWithBackend:forURL].
(-closeFile): Moved ivar deallocation into -dealloc.

* ETSerializer
New ivars version and filename taken from the backend.
(-setVersion:, -newVersion:): Rewritten to include the versioning logic 
directly instead of delegating it to the backend.
(-initWithBackend:forURL:): New designated initializer that supercedes 
-initWithURL:.
(+serializerWithBackend:forURL:): Modified to use the new designated 
initializer.

* ETSerializerBackend, ETSerializerNullBackend, ETSerializerBackendExample
(-setVersion:, -newVersion:): Removed.
(-setFile:): Added as a temporary refactoring hack.

Modified:
    /   (props changed)
    branches/qmathe/EtoileSerialize/Headers/ETSerializer.h
    branches/qmathe/EtoileSerialize/Headers/ETSerializerBackendBinaryFile.h
    branches/qmathe/EtoileSerialize/Sources/ETSerializer.m
    branches/qmathe/EtoileSerialize/Sources/ETSerializerBackendBinaryFile.m
    branches/qmathe/EtoileSerialize/Sources/ETSerializerBackendExample.m
    branches/qmathe/EtoileSerialize/Sources/ETSerializerNullBackend.m


_______________________________________________
Etoile-cvs mailing list
[email protected]
https://mail.gna.org/listinfo/etoile-cvs

Reply via email to