Hallo Stefan,

> One query I have is, what happens if the server starts up a 
> second time and the content of the file or the referenced 
> collection is changed? Is it updated, are new subdirectories 
> added or how do you handle this? 

They way I coded it now, no update takes place on the 2nd server startup. Of cource, 
if you added <objectnode> entries between the 1st and the 2nd run, the new nodes 
*will* be initialized on the 2nd startup. But if you only changed the content of the 
referenced file or directory (even by adding more files to the dir), this will be 
ignored on the 2nd run.

BTW, I noticed that attribute initialization *does* take new attributes into account, 
even if the resource already exits (i.e. update takes place). What is your opinion? My 
feeling is that repository initialization should only create but not update resources.

Regards,
Peter


> -----Original Message-----
> From: Stefan L�tzkendorf [mailto:[EMAIL PROTECTED] 
> Sent: Freitag, 1. Oktober 2004 17:16
> To: Slide Developers Mailing List
> Subject: Re: Initializing files at startup
> 
> Hallo Peter,
> installing a webdav server with some inital template data 
> would be intresting in some of our projects too.
> 
> One query I have is, what happens if the server starts up a 
> second time and the content of the file or the referenced 
> collection is changed? Is it updated, are new subdirectories 
> added or how do you handle this?
> 
> Regards, Stefan
> 
> 
> 
> [EMAIL PROTECTED] wrote:
> 
> > Hi,
> > 
> > to initialize data in a repository during server start-up, 
> I can add 
> > <objectnode> elements in Domain.xml. For instance, I could add an 
> > element <objectnode classname="..." uri=/files/foo"/> inside 
> > <objectnode classname="..." uri=/files"/> to have a folder 
> "/files/foo" initialized.
> > Also, to an <objectnode> element, I could add a <revision> element 
> > containing  <property> elements in order to initialize 
> properties. All 
> > this is *not* new.
> > 
> > But, what I *cannot* do, so far, is to initialize content of files. 
> > And that is precisely what one of my customers using Tamino WebDAV 
> > Server
> > (TWS) would like to do. He wants to install a WebDAV 
> repository with 
> > certain initial content, but he doesn't want the installation 
> > procedure to require a running server for doing the initialization. 
> > Also, doing the initialization in the underlying database is not a 
> > good idea (because must know schema of the metadata).
> > 
> > So, yesterday, I invented a new <content> element which I 
> can add to 
> > <revision> elements in order to initialize content. This 
> can be done 
> > in
> > 3 ways, as shown in the following examples: 
> > 
> > 1) The initial content of /files/sample.xml is specified directly in
> > Domain.xml:
> > 
> >         <objectnode 
> classname="org.apache.slide.structure.SubjectNode"
> > uri="/files">
> >           <objectnode 
> classname="org.apache.slide.structure.SubjectNode"
> > uri="/files/sample.xml">
> >             <revision>
> >  
> > <content><![CDATA[<sequence>tralala</sequence>]]></content>
> >             </revision>
> >           </objectnode>
> >         </objectnode>
> > 
> > 2) The initial content of /files/sample.xml is taken from the file 
> > referenced to by the 'file' attribute of the <content> element:
> > 
> >         <objectnode 
> classname="org.apache.slide.structure.SubjectNode"
> > uri="/files">
> >           <objectnode 
> classname="org.apache.slide.structure.SubjectNode"
> > uri="/files/sample.xml">
> >             <revision>
> >               <content file="../etc/init_data/sample.xml"/>
> >             </revision>
> >           </objectnode>
> >         </objectnode>
> > 
> > 3) The initial content of the /files directory is taken from the 
> > folder referenced to by the 'dir' attribute of the 
> <content> element 
> > (and it can be a whole structure of folders and files):
> > 
> >         <objectnode 
> classname="org.apache.slide.structure.SubjectNode"
> > uri="/files">
> >           <revision>
> >             <content dir="../etc/init_data"/>
> >           </revision>
> >         </objectnode>
> > 
> > As my customer's TWS is based on Slide 2.0, I coded this 
> feature into 
> > my local copy of the SLIDE_2_0_RELEASE_BRANCH and it works 
> quite good 
> > so far (see attached .diff file).
> > 
> > My questions:
> > - what do you think about this feature?
> > - ideas how to improve it?
> > - shall I check-in and also merge into SLIDE_2_1_RELEASE_BRANCH? (I 
> > think it is a low impact add-on)
> > 
> > Thanks in advance!
> > 
> > Regards,
> > Peter
> > 
> > 
> > 
> > 
> > 
> > 
> ----------------------------------------------------------------------
> > --
> > 
> > 
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> 
> --
> Stefan L�tzkendorf  -- [EMAIL PROTECTED]
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to