that's what is called a DTO

Le 14 juin 2017 15:27, "Sven Van Caekenberghe" <s...@stfx.eu> a écrit :

>
> > On 14 Jun 2017, at 15:01, Christophe Demarey <
> christophe.dema...@inria.fr> wrote:
> >
> > +1
> > It is exactly what i've done with Cargo. Define your own specific object
> for serialization / deserialization. It is the simplest way to have a human
> readable conf file (e.g. urls, pathes default serialization is not what you
> expect)
>
> Maybe Steph can have a look at your approach.
>
> > Christophe
> > ----- Sven Van Caekenberghe <s...@stfx.eu> a écrit :
> >> STON cannot be used to write partial, manual output because it needs to
> see the full object graph (like FUEL does).
> >>
> >> If I would want to use STON for prettier looking config files, I would
> make an object just for that external representation, converting it where
> necessary to better internal objects (like from String to FileReference).
> >>
> >>> On 5 Jun 2017, at 08:58, Stephane Ducasse <stepharo.s...@gmail.com>
> wrote:
> >>>
> >>> Sven I know what Ston is :)
> >>>
> >>> Now Pillar dev used Ston as input and it works. Then with some hooks
> they let the user convert the strings
> >>> into specific objects and this is ok.
> >>> Now I want to add export in Ston and for configurations I need to
> control for the application and not as a ston object the value saved.
> >>> For example a file reference should not be just a file reference in
> Ston but
> >>> a string relative the the baseDirectory of the configuration.
> >>>
> >>> So I thought that I can build a hook and control the call to Ston
> (convert the object before to the correct values) and export.
> >>> It should be working now doing this I found myself redoing the output
> of Ston.
> >>> So I will do it. Then I thought that may be I could reuse this logic.
> >>>
> >>> Stef
> >>>
> >>>
> >>>
> >>> On Sun, Jun 4, 2017 at 11:49 PM, Sven Van Caekenberghe <s...@stfx.eu>
> wrote:
> >>> Stef,
> >>>
> >>> STON is like FUEL, it can write any object to a stream and read it
> back. Although you can customise how this is done, only one way of doing so
> is supported (i.e. you cannot change the format for each application).
> >>>
> >>> People have used STON for various applications now, including for
> configuration stuff (because it is a textual format that is easy to read).
> >>>
> >>> I would suggest you just try to see what your config looks like once
> you have the objects in Pharo.
> >>>
> >>>  STON toStringPretty: myConfig.
> >>>
> >>> Then we can see how to tune the representation.
> >>>
> >>> Sven
> >>>
> >>>> On 4 Jun 2017, at 22:58, Stephane Ducasse <stepharo.s...@gmail.com>
> wrote:
> >>>>
> >>>> Hi sven
> >>>>
> >>>> I'm working on a new configuration frameworks similar to the one use
> pillar.conf.
> >>>>
> >>>> So basically I have
> >>>>
> >>>> ston := '{
> >>>>           "newLine":#unix,
> >>>>              "separateOutputFiles":true
> >>>>              }'.
> >>>> and I want to recreate it.
> >>>>
> >>>> So I did
> >>>>
> >>>> Object >> toConfigurationString
> >>>>
> >>>>      ^ STON toString: self
> >>>>
> >>>> SimpleConfiguration >> exportStream
> >>>>
> >>>>      ^ String streamContents: [ :str |
> >>>>              str << '{' .
> >>>>              self propertiesKeysAndValuesDo: [ :key :value|
> >>>>                      str << key toConfigurationString.
> >>>>                      str << ':'.
> >>>>                      str << value toConfigurationString.
> >>>>                      str << ','.
> >>>>                      str lf.
> >>>>                      ].
> >>>>              str << '}'.
> >>>>              str contents
> >>>>              ]
> >>>>
> >>>> The idea is that for special configuration values people should be
> able to define
> >>>> how to go from the object to configuration.
> >>>> For example for some FileReference I want to have just the path up to
> the baseDirectory.
> >>>>
> >>>> Now I wonder if I could not better reuse ston.
> >>>> I saw the stonOn:
> >>>> but I did not look further because I was wondering how the writer
> where passed.
> >>>>
> >>>> Any feedback is welcome.
> >>>>
> >>>> Stef (now bed time).
> >>>>
> >>>
> >>>
> >>>
> >>
> >>
> >
> >
>
>
>

Reply via email to