On Mon, Oct 10, 2011 at 9:35 PM, Hernán Morales Durand <
[email protected]> wrote:
> Is there any serializer (Fuel/StOMP/Ma object
> serialization/BOSS/SRP/SIXX??) which let me attach an external
> compressor/decompressor for specific Strings to the
> serialization/deserialization process?
In Fuel you can do:
String >> fuelSubstitution
^ ExternalCompressor compress: self
String >> fuelAccept: aVisitor
^ (ExternalCompressor shouldCompressString: self)
ifTrue: [aVisitor visitSubstitution: self]
ifFalse: [super fuelAccept: aVisitor]
But the problem is that if #compress: answers an instance of String, you
should be careful that if #shouldCompressString: asnwers true to the
compressed string, then you will end up in an infinitive loop.
See: http://rmod.lille.inria.fr/web/pier/software/Fuel/Hooks and
FLHookedSubstitutionTest
I think StOMP should support this as well:
http://stomp.smalltalk-users.jp/home/how-to-use-stomp/hook-methods
The previous hook you let you replace the original String with its
compression during serialization. Which make sense because if you are going
to compress it is better to do it during serialization.
With external I mean it could
> be in a separate binary (I could arrange the binding though).
>
I am not sure if I understood.
> Thanks
>
> Hernán
>
>
--
Mariano
http://marianopeck.wordpress.com