You are viewing a plain text version of this content. The canonical link for it is here.
Posted to slide-dev@jakarta.apache.org by st...@apache.org on 2004/06/30 16:36:33 UTC
cvs commit: jakarta-slide/proposals/jcrri/work config.xml
stefan 2004/06/30 07:36:33
Modified: proposals/jcrri build.xml
proposals/jcrri/src/org/apache/slide/jcr/core ItemImpl.java
NodeImpl.java RepositoryImpl.java
proposals/jcrri/work config.xml
Added: proposals/jcrri/build .cvsignore
Log:
jcrri
Revision Changes Path
1.6 +1 -1 jakarta-slide/proposals/jcrri/build.xml
Index: build.xml
===================================================================
RCS file: /home/cvs/jakarta-slide/proposals/jcrri/build.xml,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- build.xml 28 May 2004 18:31:33 -0000 1.5
+++ build.xml 30 Jun 2004 14:36:32 -0000 1.6
@@ -14,7 +14,7 @@
<property name="build.compiler" value="modern" />
<property name="deprecation" value="off" />
- <property name="debug" value="off" />
+ <property name="debug" value="on" />
<property name="optimize" value="on" />
<property name="build.classes" value="./build/classes"/>
1.1 jakarta-slide/proposals/jcrri/build/.cvsignore
Index: .cvsignore
===================================================================
*
1.7 +5 -2 jakarta-slide/proposals/jcrri/src/org/apache/slide/jcr/core/ItemImpl.java
Index: ItemImpl.java
===================================================================
RCS file: /home/cvs/jakarta-slide/proposals/jcrri/src/org/apache/slide/jcr/core/ItemImpl.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- ItemImpl.java 29 Jun 2004 17:11:47 -0000 1.6
+++ ItemImpl.java 30 Jun 2004 14:36:32 -0000 1.7
@@ -62,6 +62,9 @@
// jcr:mixinTypes
protected static final QName PROPNAME_MIXINTYPES =
new QName(NamespaceRegistryImpl.NS_JCR_URI, "mixinTypes");
+ // jcr:created
+ protected static final QName PROPNAME_CREATED =
+ new QName(NamespaceRegistryImpl.NS_JCR_URI, "created");
protected static final int STATUS_NORMAL = 0;
protected static final int STATUS_MODIFIED = 1;
1.16 +8 -2 jakarta-slide/proposals/jcrri/src/org/apache/slide/jcr/core/NodeImpl.java
Index: NodeImpl.java
===================================================================
RCS file: /home/cvs/jakarta-slide/proposals/jcrri/src/org/apache/slide/jcr/core/NodeImpl.java,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- NodeImpl.java 24 Jun 2004 16:31:06 -0000 1.15
+++ NodeImpl.java 30 Jun 2004 14:36:32 -0000 1.16
@@ -113,6 +113,12 @@
// jcr:uuid property
genValues = new InternalValue[]{InternalValue.create(new UUID(((NodeState) state).getUUID()))};
}
+ } else if (nt.getQName().equals(NodeTypeRegistry.NT_HIERARCHYNODE)) {
+ // nt:hierarchyNode node type
+ if (name.equals(PROPNAME_CREATED)) {
+ // jcr:created property
+ genValues = new InternalValue[]{InternalValue.create(Calendar.getInstance())};
+ }
} else if (nt.getQName().equals(NodeTypeRegistry.NT_BASE)) {
// nt:base node type
if (name.equals(PROPNAME_PRIMARYTYPE)) {
1.10 +53 -9 jakarta-slide/proposals/jcrri/src/org/apache/slide/jcr/core/RepositoryImpl.java
Index: RepositoryImpl.java
===================================================================
RCS file: /home/cvs/jakarta-slide/proposals/jcrri/src/org/apache/slide/jcr/core/RepositoryImpl.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- RepositoryImpl.java 22 Jun 2004 18:03:07 -0000 1.9
+++ RepositoryImpl.java 30 Jun 2004 14:36:32 -0000 1.10
@@ -36,8 +36,7 @@
import org.apache.slide.jcr.util.UUID;
import javax.jcr.*;
-import java.io.InputStream;
-import java.io.OutputStream;
+import java.io.*;
import java.util.HashMap;
import java.util.Iterator;
@@ -116,11 +115,35 @@
if (uuidFile.exists()) {
try {
// load uuid of the repository's root node
- byte[] bytes = new byte[16];
InputStream in = uuidFile.getInputStream();
- in.read(bytes);
- in.close();
+/*
+ // uuid is stored in binary format (16 bytes)
+ byte[] bytes = new byte[16];
+ try {
+ in.read(bytes);
+ } finally {
+ try {
+ in.close();
+ } catch (IOException ioe) {
+ // ignore
+ }
+ }
rootNodeUUID = new UUID(bytes).toString();
+*/
+ // uuid is stored in text format (36 characters) for better readability
+ char[] chars = new char[36];
+ InputStreamReader reader = new InputStreamReader(in);
+ try {
+ reader.read(chars);
+ } finally {
+ try {
+ reader.close();
+ } catch (IOException ioe) {
+ // ignore
+ }
+ }
+ rootNodeUUID = new UUID(new String(chars)).toString();
+
} catch (Exception e) {
String msg = "failed to load persisted repository state";
log.error(msg, e);
@@ -133,8 +156,29 @@
try {
// persist uuid of the repository's root node
OutputStream out = uuidFile.getOutputStream();
- out.write(rootUUID.getBytes());
- out.close();
+/*
+ // store uuid in binary format
+ try {
+ out.write(rootUUID.getBytes());
+ } finally {
+ try {
+ out.close();
+ } catch (IOException ioe) {
+ // ignore
+ }
+ }
+*/
+ // store uuid in text format for better readability
+ OutputStreamWriter writer = new OutputStreamWriter(out);
+ try {
+ writer.write(rootUUID.toString());
+ } finally {
+ try {
+ writer.close();
+ } catch (IOException ioe) {
+ // ignore
+ }
+ }
} catch (Exception e) {
String msg = "failed to persist repository state";
log.error(msg, e);
1.4 +79 -77 jakarta-slide/proposals/jcrri/work/config.xml
Index: config.xml
===================================================================
RCS file: /home/cvs/jakarta-slide/proposals/jcrri/work/config.xml,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- config.xml 28 May 2004 18:23:49 -0000 1.3
+++ config.xml 30 Jun 2004 14:36:32 -0000 1.4
@@ -13,7 +13,6 @@
class CDATA #REQUIRED>
<!ELEMENT WorkspaceStore (FileSystem)>
<!ELEMENT BLOBStore (FileSystem)>
- <!ELEMENT DynamicWorkspace (FileSystem)>
<!ELEMENT DynamicWorkspace (PersistenceManager,WorkspaceStore,BLOBStore?)>
<!ATTLIST DynamicWorkspace
name CDATA #REQUIRED>
@@ -27,82 +26,85 @@
<Repositories>
- <!-- sample configuration for a repository that stores its state in a local file system -->
- <Repository name="localfs">
- <RepositoryStore>
- <FileSystem class="org.apache.slide.jcr.fs.local.LocalFileSystem">
- <param name="path" value="${factory.home}/repositories/localfs/repository"/>
- </FileSystem>
- </RepositoryStore>
- <!-- main workspace -->
- <StableWorkspace name="default">
- <PersistenceManager class="org.apache.slide.jcr.core.state.xml.XMLPersistenceManager"/>
- <WorkspaceStore>
- <FileSystem class="org.apache.slide.jcr.fs.local.LocalFileSystem">
- <param name="path" value="${factory.home}/repositories/localfs/workspaces/default/data"/>
- </FileSystem>
- </WorkspaceStore>
- <BLOBStore>
- <FileSystem class="org.apache.slide.jcr.fs.local.LocalFileSystem">
- <param name="path" value="${factory.home}/repositories/localfs/workspaces/default/blobs"/>
- </FileSystem>
- </BLOBStore>
- <!-- dynamic workspace based on main workspace -->
- <DynamicWorkspace name="dynWsp">
- <PersistenceManager class="org.apache.slide.jcr.core.state.xml.XMLPersistenceManager"/>
- <WorkspaceStore>
- <FileSystem class="org.apache.slide.jcr.fs.local.LocalFileSystem">
- <param name="path" value="${factory.home}/repositories/localfs/workspaces/dynWsp/data"/>
- </FileSystem>
- </WorkspaceStore>
- </DynamicWorkspace>
- </StableWorkspace>
- </Repository>
+ <!-- sample configuration for a repository that stores its state in a local file system -->
+ <Repository name="localfs">
+ <RepositoryStore>
+ <FileSystem class="org.apache.slide.jcr.fs.local.LocalFileSystem">
+ <param name="path" value="${factory.home}/repositories/localfs/repository"/>
+ </FileSystem>
+ </RepositoryStore>
+ <!-- main workspace -->
+ <StableWorkspace name="default">
+ <PersistenceManager class="org.apache.slide.jcr.core.state.xml.XMLPersistenceManager"/>
+ <WorkspaceStore>
+ <FileSystem class="org.apache.slide.jcr.fs.local.LocalFileSystem">
+ <param name="path" value="${factory.home}/repositories/localfs/workspaces/default/data"/>
+ </FileSystem>
+ </WorkspaceStore>
+ <BLOBStore>
+ <FileSystem class="org.apache.slide.jcr.fs.local.LocalFileSystem">
+ <param name="path" value="${factory.home}/repositories/localfs/workspaces/default/blobs"/>
+ </FileSystem>
+ </BLOBStore>
+ <!-- dynamic workspace based on main workspace -->
+ <DynamicWorkspace name="dynWsp">
+ <PersistenceManager class="org.apache.slide.jcr.core.state.xml.XMLPersistenceManager"/>
+ <WorkspaceStore>
+ <FileSystem class="org.apache.slide.jcr.fs.local.LocalFileSystem">
+ <param name="path" value="${factory.home}/repositories/localfs/workspaces/dynWsp/data"/>
+ </FileSystem>
+ </WorkspaceStore>
+ </DynamicWorkspace>
+ </StableWorkspace>
+ </Repository>
- <!-- sample configuration for a repository that stores its state in a virtual file system -->
- <Repository name="cqfs">
- <RepositoryStore>
- <FileSystem class="org.apache.slide.jcr.fs.cq.CQFileSystem">
- <param name="path" value="${factory.home}/repositories/cqfs/repStore.dat"/>
- <param name="autoRepair" value="false"/>
- </FileSystem>
- </RepositoryStore>
- <!-- main workspace -->
- <StableWorkspace name="default">
- <PersistenceManager class="org.apache.slide.jcr.core.state.xml.XMLPersistenceManager"/>
- <WorkspaceStore>
- <FileSystem class="org.apache.slide.jcr.fs.cq.CQFileSystem">
- <param name="path" value="${factory.home}/repositories/cqfs/workspaces/default/wspStore.dat"/>
- <param name="autoRepair" value="false"/>
- </FileSystem>
- </WorkspaceStore>
- <BLOBStore>
- <FileSystem class="org.apache.slide.jcr.fs.local.LocalFileSystem">
- <param name="path" value="${factory.home}/repositories/cqfs/workspaces/default/blobs"/>
- </FileSystem>
- </BLOBStore>
- </StableWorkspace>
- </Repository>
+ <!-- sample configuration for a repository that stores its state in a virtual file system -->
+ <Repository name="cqfs">
+ <RepositoryStore>
+ <FileSystem class="org.apache.slide.jcr.fs.local.LocalFileSystem">
+ <param name="path" value="${factory.home}/cqfs/repository"/>
+ </FileSystem>
+ <!-- <FileSystem class="org.apache.slide.jcr.fs.cq.CQFileSystem">
+ <param name="path" value="${factory.home}/cqfs/repStore.dat"/>
+ <param name="autoRepair" value="false"/>
+ </FileSystem> -->
+ </RepositoryStore>
+ <!-- main workspace -->
+ <StableWorkspace name="default">
+ <PersistenceManager class="org.apache.slide.jcr.core.state.xml.XMLPersistenceManager"/>
+ <WorkspaceStore>
+ <FileSystem class="org.apache.slide.jcr.fs.cq.CQFileSystem">
+ <param name="path" value="${factory.home}/repositories/cqfs/workspaces/default/wspStore.dat"/>
+ <param name="autoRepair" value="false"/>
+ </FileSystem>
+ </WorkspaceStore>
+ <BLOBStore>
+ <FileSystem class="org.apache.slide.jcr.fs.local.LocalFileSystem">
+ <param name="path" value="${factory.home}/repositories/cqfs/workspaces/default/blobs"/>
+ </FileSystem>
+ </BLOBStore>
+ </StableWorkspace>
+ </Repository>
- <!-- sample configuration for a repository that stores its state on a WebDav server -->
- <Repository name="dav">
- <RepositoryStore>
- <FileSystem class="org.apache.slide.jcr.fs.dav.DavFileSystem">
- <param name="host" value="localhost"/>
- <param name="port" value="8080"/>
- <param name="path" value="/webdav/repository"/>
- </FileSystem>
- </RepositoryStore>
- <!-- main workspace -->
- <StableWorkspace name="default">
- <PersistenceManager class="org.apache.slide.jcr.core.state.xml.XMLPersistenceManager"/>
- <WorkspaceStore>
- <FileSystem class="org.apache.slide.jcr.fs.dav.DavFileSystem">
- <param name="host" value="localhost"/>
- <param name="port" value="8080"/>
- <param name="path" value="/webdav/workspaces/default"/>
- </FileSystem>
- </WorkspaceStore>
- </StableWorkspace>
- </Repository>
+ <!-- sample configuration for a repository that stores its state on a WebDav server -->
+ <Repository name="dav">
+ <RepositoryStore>
+ <FileSystem class="org.apache.slide.jcr.fs.dav.DavFileSystem">
+ <param name="host" value="localhost"/>
+ <param name="port" value="8080"/>
+ <param name="path" value="/webdav/repository"/>
+ </FileSystem>
+ </RepositoryStore>
+ <!-- main workspace -->
+ <StableWorkspace name="default">
+ <PersistenceManager class="org.apache.slide.jcr.core.state.xml.XMLPersistenceManager"/>
+ <WorkspaceStore>
+ <FileSystem class="org.apache.slide.jcr.fs.dav.DavFileSystem">
+ <param name="host" value="localhost"/>
+ <param name="port" value="8080"/>
+ <param name="path" value="/webdav/workspaces/default"/>
+ </FileSystem>
+ </WorkspaceStore>
+ </StableWorkspace>
+ </Repository>
</Repositories>
---------------------------------------------------------------------
To unsubscribe, e-mail: slide-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: slide-dev-help@jakarta.apache.org