Here it is!

/jacob

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]

Sent: 4. marts 2004 12:56
To: [EMAIL PROTECTED]
Subject: RE: structure of History and how to clean up

Jacob,

At first go, I don't see what the cause could be.
Could you send me your (impersonalized) Domain.xml, please?

Regards,
Peter

> -----Original Message-----
> From: Jacob Lund [mailto:[EMAIL PROTECTED]
> Sent: Thursday, March 04, 2004 11:09
> To: 'Slide Developers Mailing List'
> Subject: RE: structure of History and how to clean up
> 
> 
> Hi Peter!
> 
> I can get most of it working except the history part. If I change
> historypath in my domain.xml to:
> <parameter name="historypath">/history/${store}</parameter>
> 
> Then the server fails when I try to set versioning on a resource:
> 
> /files/project2/MySqlSchema.sql
> java.lang.NullPointerException
>         at java.lang.StringBuffer.replace(StringBuffer.java:717)
>         at
> org.apache.slide.webdav.util.HistoryPathHandler.getResolvedHistoryPat
> hHandler(HistoryPathHandler.java:73)
>         at
> org.apache.slide.webdav.util.HistoryPathHandler.getResolvedHistoryPat
> hHandler(HistoryPathHandler.java:56)
>         at
> org.apache.slide.webdav.util.UriHandler.createNextHistoryUri(UriHandl
> er.java:102)
>         at
> org.apache.slide.webdav.util.VersioningHelper.versionControl(Versioni
> ngHelper.java:297)
>         at
> org.apache.slide.webdav.method.PutMethod.executeRequest(PutMethod.jav
> a:380)
>         at
> org.apache.slide.webdav.method.AbstractWebdavMethod.run(AbstractWebda
> vMethod.java:315)
> 
> Did I miss something?
> 
> /jacob
> 
> -----Original Message-----
> From: [EMAIL PROTECTED] 
> [mailto:[EMAIL PROTECTED]
> 
> Sent: 3. marts 2004 16:18
> To: [EMAIL PROTECTED]
> Subject: RE: structure of History and how to clean up
> 
> Hi Jacob,
> 
> you *can* configure Slide s.t. history data of project1 is 
> separated from
> history data of project2. You *can* configure your stores 
> s.t. for each
> project data and history data are stored together in one DB.
> 
> Is that what you need?
> 
> If yes, proceed as follows (all in Domain.xml):
> 
> 1) Set historypath parameter (at the end of Domain.xml) to be
> /history/${store}
> 2) Configure a default store (e.g. TX filesystem store) with 
> scope matching
> "/"
> 3) Configure the project1 store (e.g. MySQL store) with scope matching
> "/files/project1" and database="DB1"
> 4) Configure the history1 store with scope matching 
> "/history/project1" and
> database="DB1"
> 5) Configure the project2 store with scope matching 
> "/files/project2" and
> database="DB2"
> 6) Configure the history2 store with scope matching 
> "/history/project2" and
> database="DB2"
> 7) Initialize all of the nodes /files, /files/project1, 
> /files/project2,
> /history, /history/project1, /history/project2 (within the 
> <data> element)
> 
> If needed, proceed in the same manner with workspace and 
> workingresource
> data.
> 
> Regards,
> Peter 
> 
> > -----Original Message-----
> > From: Jacob Lund [mailto:[EMAIL PROTECTED]
> > Sent: Wednesday, March 03, 2004 14:11
> > To: 'Slide Developers Mailing List'
> > Subject: structure of History and how to clean up
> > 
> > 
> > Hi!
> > 
> > One of my concerns with slide in production is the handling 
> of history
> > versions.
> > 
> > How do I clean up in my history files?
> > 
> > I would really like to keep the collection hierarchy between 
> > /files and
> > /history. That way I would be able to separate a collection 
> > and its history
> > versions in the same database.
> > 
> > E.G.: /files/project1 and /history/project1 are directed to the same
> > database in domain.xml. When project1 is no longer necessary 
> > I can simply
> > delete this part and both files and history will be cleaned up.
> > 
> > Another way could be the possibility of defining a separate 
> > history uri to
> > each store.
> > 
> > I do not believe that this would be a problem with respect to 
> > the deltaV
> > standard.
> > 
> > /Jacob 
> > 
> > 
> > 
> ---------------------------------------------------------------------
> > 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]
> 
> 
> ---------------------------------------------------------------------
> 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]
<?xml version="1.0"?>
<slide logger="org.apache.slide.util.logger.SimpleLogger" logger-level="6" default="slide">
	<namespace name="slide">
		<definition>
			<store name="tx">
				<nodestore classname="org.apache.slide.store.txfile.TxXMLFileDescriptorsStore">
					<parameter name="rootpath">e:/tomcat4/store/store/metadata</parameter>
					<parameter name="workpath">e:/tomcat4/store/work/metadata</parameter>
					<parameter name="url-encode-path">true</parameter>
				</nodestore>
				<securitystore>
					<reference store="nodestore"/>
				</securitystore>
				<lockstore>
					<reference store="nodestore"/>
				</lockstore>
				<revisiondescriptorsstore>
					<reference store="nodestore"/>
				</revisiondescriptorsstore>
				<revisiondescriptorstore>
					<reference store="nodestore"/>
				</revisiondescriptorstore>
				<contentstore classname="org.apache.slide.store.txfile.TxFileContentStore">
					<parameter name="rootpath">e:/tomcat4/store/store/content</parameter>
					<parameter name="workpath">e:/tomcat4/store/work/content</parameter>
					<parameter name="url-encode-path">false</parameter>
				</contentstore>
			</store>
			<store name="project1">
				<nodestore classname="org.apache.slide.store.impl.rdbms.JDBCStore">
					<parameter name="adapter">org.apache.slide.store.impl.rdbms.SQLServerRDBMSAdapter</parameter>
					<parameter name="driver">com.microsoft.jdbc.sqlserver.SQLServerDriver</parameter>
					<parameter name="url">jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=sl;SelectMethod=cursor</parameter>
					<parameter name="user">sl</parameter>
					<parameter name="password">sl</parameter>
					<parameter name="dbcpPooling">true</parameter>
					<parameter name="maxPooledConnections">10</parameter>
					<parameter name="isolation">READ_COMMITTED</parameter>
					<parameter name="SendStringParametersAsUnicode">false</parameter>
				</nodestore>
				<securitystore>
					<reference store="nodestore"/>
				</securitystore>
				<lockstore>
					<reference store="nodestore"/>
				</lockstore>
				<revisiondescriptorsstore>
					<reference store="nodestore"/>
				</revisiondescriptorsstore>
				<revisiondescriptorstore>
					<reference store="nodestore"/>
				</revisiondescriptorstore>
				<contentstore>
					<reference store="nodestore"/>
				</contentstore>
			</store>
			<scope match="/" store="tx"/>
			<scope match="/files/project1" store="project1"/>
			<scope match="/history/project1" store="project1"/>
		</definition>
		<configuration>
			<!-- Actions mapping -->
			<read-object>/actions/read</read-object>
			<create-object>/actions/write</create-object>
			<remove-object>/actions/write</remove-object>
			<grant-permission>/actions/write-acl</grant-permission>
			<revoke-permission>/actions/write-acl</revoke-permission>
			<read-permissions>/actions/read-acl</read-permissions>
			<read-own-permissions>/actions/read-current-user-privilege-set</read-own-permissions>
			<lock-object>/actions/write</lock-object>
			<kill-lock>/actions/unlock</kill-lock>
			<read-locks>/actions/read</read-locks>
			<read-revision-metadata>/actions/read</read-revision-metadata>
			<create-revision-metadata>/actions/write-properties</create-revision-metadata>
			<modify-revision-metadata>/actions/write-properties</modify-revision-metadata>
			<remove-revision-metadata>/actions/write-properties</remove-revision-metadata>
			<read-revision-content>/actions/read</read-revision-content>
			<create-revision-content>/actions/write-content</create-revision-content>
			<modify-revision-content>/actions/write-content</modify-revision-content>
			<remove-revision-content>/actions/write-content</remove-revision-content>
			<bind-member>/actions/bind</bind-member>
			<unbind-member>/actions/unbind</unbind-member>
			<!-- Paths configuration -->
			<userspath>/users</userspath>
			<groupspath>/groups</groupspath>
			<actionspath>/actions</actionspath>
			<filespath>/files</filespath>
			<parameter name="dav">true</parameter>
			<parameter name="standalone">true</parameter>
			<parameter name="acl_inheritance_type">path</parameter>
			<!-- Nested roles: 0 means no nesting (default), 1 means one sublevel, etc. -->
			<parameter name="nested_roles_maxdepth">1</parameter>
		</configuration>
		<data>
			<objectnode classname="org.apache.slide.structure.SubjectNode" uri="/">
				<permission action="all" subject="/groups/root" inheritable="true"/>
				<permission action="/actions/read-acl" subject="all" inheritable="true" negative="true"/>
				<permission action="/actions/write-acl" subject="all" inheritable="true" negative="true"/>
				<permission action="/actions/unlock" subject="all" inheritable="true" negative="true"/>
				<permission action="/actions/read" subject="all" inheritable="true"/>
				<!-- /users -->
				<objectnode classname="org.apache.slide.structure.SubjectNode" uri="/users">
					<permission action="all" subject="self" inheritable="true"/>
					<permission action="all" subject="unauthenticated" inheritable="true" negative="true"/>
					<!-- /users/root represents the administrator -->
					<objectnode classname="org.apache.slide.structure.SubjectNode" uri="/users/root">
						<revision>
							<property namespace="http://jakarta.apache.org/slide/"; name="password"/>
						</revision>
					</objectnode>
					<!-- /users/john and /users/john2 represent authenticated users -->
					<objectnode classname="org.apache.slide.structure.SubjectNode" uri="/users/john">
						<revision>
							<property namespace="http://jakarta.apache.org/slide/"; name="password"/>
						</revision>
					</objectnode>
					<objectnode classname="org.apache.slide.structure.SubjectNode" uri="/users/john2">
						<revision>
							<property namespace="http://jakarta.apache.org/slide/"; name="password"/>
						</revision>
					</objectnode>
					<!-- /users/guest represents an authenticated or unauthenticated guest user -->
					<objectnode classname="org.apache.slide.structure.SubjectNode" uri="/users/guest">
						<revision>
							<property namespace="http://jakarta.apache.org/slide/"; name="password"/>
						</revision>
					</objectnode>
				</objectnode>
				<!-- /roles -->
				<objectnode classname="org.apache.slide.structure.SubjectNode" uri="/groups">
					<permission action="all" subject="self" inheritable="true"/>
					<permission action="all" subject="unauthenticated" inheritable="true" negative="true"/>
					<objectnode classname="org.apache.slide.structure.SubjectNode" uri="/groups/root">
						<revision>
							<property name="group-member-set"><![CDATA[<D:href xmlns:D='DAV:'>/users/root</D:href>]]></property>
						</revision>
					</objectnode>
					<objectnode classname="org.apache.slide.structure.SubjectNode" uri="/groups/user">
						<revision>
							<property name="group-member-set"><![CDATA[<D:href xmlns:D='DAV:'>/users/john</D:href><D:href xmlns:D='DAV:'>/users/john2</D:href><D:href xmlns:D='DAV:'>/users/root</D:href>]]></property>
						</revision>
					</objectnode>
					<objectnode classname="org.apache.slide.structure.SubjectNode" uri="/groups/guest">
						<revision>
							<property name="group-member-set"><![CDATA[<D:href xmlns:D='DAV:'>/users/guest</D:href>]]></property>
						</revision>
					</objectnode>
				</objectnode>
				<!-- action -->
				<objectnode classname="org.apache.slide.structure.ActionNode" uri="/actions">
					<objectnode classname="org.apache.slide.structure.ActionNode" uri="/actions/read">
						<revision>
							<property name="privilege-member-set"><![CDATA[<D:href xmlns:D='DAV:'>/actions/read-acl</D:href> <D:href xmlns:D='DAV:'>/actions/read-current-user-privilege-set</D:href>]]></property>
						</revision>
					</objectnode>
					<objectnode classname="org.apache.slide.structure.ActionNode" uri="/actions/read-acl">
						<revision>
							<property name="privilege-member-set"/>
						</revision>
					</objectnode>
					<objectnode classname="org.apache.slide.structure.ActionNode" uri="/actions/read-current-user-privilege-set">
						<revision>
							<property name="privilege-member-set"/>
						</revision>
					</objectnode>
					<objectnode classname="org.apache.slide.structure.ActionNode" uri="/actions/write">
						<revision>
							<property name="privilege-member-set"><![CDATA[<D:href xmlns:D='DAV:'>/actions/write-acl</D:href> <D:href xmlns:D='DAV:'>/actions/write-properties</D:href> <D:href xmlns:D='DAV:'>/actions/write-content</D:href>]]></property>
						</revision>
					</objectnode>
					<objectnode classname="org.apache.slide.structure.ActionNode" uri="/actions/write-acl">
						<revision>
							<property name="privilege-member-set"/>
						</revision>
					</objectnode>
					<objectnode classname="org.apache.slide.structure.ActionNode" uri="/actions/write-properties">
						<revision>
							<property name="privilege-member-set"/>
						</revision>
					</objectnode>
					<objectnode classname="org.apache.slide.structure.ActionNode" uri="/actions/write-content">
						<revision>
							<property name="privilege-member-set"><![CDATA[<D:href xmlns:D='DAV:'>/actions/bind</D:href> <D:href xmlns:D='DAV:'>/actions/unbind</D:href>]]></property>
						</revision>
					</objectnode>
					<objectnode classname="org.apache.slide.structure.ActionNode" uri="/actions/bind">
						<revision>
							<property name="privilege-member-set"/>
						</revision>
					</objectnode>
					<objectnode classname="org.apache.slide.structure.ActionNode" uri="/actions/unbind">
						<revision>
							<property name="privilege-member-set"/>
						</revision>
					</objectnode>
					<objectnode classname="org.apache.slide.structure.ActionNode" uri="/actions/unlock">
						<revision>
							<property name="privilege-member-set"/>
						</revision>
					</objectnode>
				</objectnode>
				<objectnode classname="org.apache.slide.structure.SubjectNode" uri="/files">
					<permission action="all" subject="unauthenticated" inheritable="true"/>
					<permission action="/actions/write" subject="/groups/user" inheritable="true"/>
					<permission action="/actions/read-acl" subject="owner" inheritable="true"/>
				</objectnode>
				<objectnode classname="org.apache.slide.structure.SubjectNode" uri="/files/project1">
					<permission action="all" subject="unauthenticated" inheritable="true"/>
					<permission action="/actions/write" subject="/groups/user" inheritable="true"/>
					<permission action="/actions/read-acl" subject="owner" inheritable="true"/>
				</objectnode>
				<!-- DeltaV: default history and workspace paths -->
				<objectnode classname="org.apache.slide.structure.SubjectNode" uri="/history">
					<permission action="all" subject="unauthenticated" inheritable="true"/>
				</objectnode>
				<objectnode classname="org.apache.slide.structure.SubjectNode" uri="/history/project1">
					<permission action="all" subject="unauthenticated" inheritable="true"/>
				</objectnode>
				<objectnode classname="org.apache.slide.structure.SubjectNode" uri="/workspace">
					<permission action="all" subject="unauthenticated" inheritable="true"/>
				</objectnode>
				<objectnode classname="org.apache.slide.structure.SubjectNode" uri="/workingresource">
					<permission action="all" subject="unauthenticated" inheritable="true"/>
				</objectnode>
			</objectnode>
		</data>
	</namespace>
	<parameter name="historypath">/history/${store}</parameter>
	<parameter name="workspacepath">/workspace</parameter>
	<parameter name="workingresourcepath">/workingresource</parameter>
	<parameter name="auto-version">checkout-checkin</parameter>
	<parameter name="auto-version-control">false</parameter>
	<parameter name="versioncontrol-exclude"/>
	<parameter name="checkout-fork">forbidden</parameter>
	<parameter name="checkin-fork">forbidden</parameter>
</slide>

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

Reply via email to