You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by an...@apache.org on 2005/11/18 18:20:58 UTC

svn commit: r345525 - in /lenya/trunk/src: java/org/apache/lenya/cms/migration/ java/org/apache/lenya/cms/repo/ modules/jackrabbit/repository/repository/nodetypes/ modules/jcr/java/src/org/apache/lenya/cms/jcr/

Author: andreas
Date: Fri Nov 18 09:20:39 2005
New Revision: 345525

URL: http://svn.apache.org/viewcvs?rev=345525&view=rev
Log:
Initialize all mandatory JCR properties. The migrate-14 target works now.

Modified:
    lenya/trunk/src/java/org/apache/lenya/cms/migration/Migrate14.java
    lenya/trunk/src/java/org/apache/lenya/cms/repo/ContentNode.java
    lenya/trunk/src/modules/jackrabbit/repository/repository/nodetypes/custom_nodetypes.xml
    lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRContentNode.java
    lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRContentNodeBuilder.java
    lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRDocument.java
    lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRDocumentBuilder.java

Modified: lenya/trunk/src/java/org/apache/lenya/cms/migration/Migrate14.java
URL: http://svn.apache.org/viewcvs/lenya/trunk/src/java/org/apache/lenya/cms/migration/Migrate14.java?rev=345525&r1=345524&r2=345525&view=diff
==============================================================================
--- lenya/trunk/src/java/org/apache/lenya/cms/migration/Migrate14.java (original)
+++ lenya/trunk/src/java/org/apache/lenya/cms/migration/Migrate14.java Fri Nov 18 09:20:39 2005
@@ -254,7 +254,7 @@
         String language = suffix.substring(0, suffix.length() - ".xml".length());
         System.out.println(" language [" + language + "]");
 
-        Document document = contentNode.addDocument(language);
+        Document document = contentNode.addDocument(language, "Label");
 
         try {
             Transformer transformer = TransformerFactory.newInstance().newTransformer();

Modified: lenya/trunk/src/java/org/apache/lenya/cms/repo/ContentNode.java
URL: http://svn.apache.org/viewcvs/lenya/trunk/src/java/org/apache/lenya/cms/repo/ContentNode.java?rev=345525&r1=345524&r2=345525&view=diff
==============================================================================
--- lenya/trunk/src/java/org/apache/lenya/cms/repo/ContentNode.java (original)
+++ lenya/trunk/src/java/org/apache/lenya/cms/repo/ContentNode.java Fri Nov 18 09:20:39 2005
@@ -30,10 +30,11 @@
     /**
      * Adds a document.
      * @param language The language of the document.
+     * @param label The label.
      * @return the added document.
      * @throws RepositoryException if the language version already exists.
      */
-    Document addDocument(String language) throws RepositoryException;
+    Document addDocument(String language, String label) throws RepositoryException;
 
     /**
      * @param document The document.

Modified: lenya/trunk/src/modules/jackrabbit/repository/repository/nodetypes/custom_nodetypes.xml
URL: http://svn.apache.org/viewcvs/lenya/trunk/src/modules/jackrabbit/repository/repository/nodetypes/custom_nodetypes.xml?rev=345525&r1=345524&r2=345525&view=diff
==============================================================================
--- lenya/trunk/src/modules/jackrabbit/repository/repository/nodetypes/custom_nodetypes.xml (original)
+++ lenya/trunk/src/modules/jackrabbit/repository/repository/nodetypes/custom_nodetypes.xml Fri Nov 18 09:20:39 2005
@@ -105,9 +105,9 @@
   <!--
   document node in content subtree
   -->
-  <nodeType name="lnt:document" isMixin="false" hasOrderableChildNodes="false" primaryItemName="jcr:content">
+  <nodeType name="lnt:document" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
     <supertypes>
-      <supertype>nt:file</supertype>
+      <supertype>nt:hierarchyNode</supertype>
       <supertype>mix:versionable</supertype>
       <supertype>mix:lockable</supertype>
     </supertypes>
@@ -121,7 +121,7 @@
         <requiredPrimaryType>lnt:resource</requiredPrimaryType>
       </requiredPrimaryTypes>
     </childNodeDefinition>
-    <childNodeDefinition name="lenya:meta" defaultPrimaryType="lnt:meta" autoCreate="true" mandatory="true"
+    <childNodeDefinition name="lenya:meta" defaultPrimaryType="lnt:meta" autoCreate="true" mandatory="false"
       onParentVersion="COPY" protected="false" sameNameSiblings="true">
       <requiredPrimaryTypes>
         <requiredPrimaryType>lnt:meta</requiredPrimaryType>

Modified: lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRContentNode.java
URL: http://svn.apache.org/viewcvs/lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRContentNode.java?rev=345525&r1=345524&r2=345525&view=diff
==============================================================================
--- lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRContentNode.java (original)
+++ lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRContentNode.java Fri Nov 18 09:20:39 2005
@@ -60,7 +60,7 @@
             List documents = new ArrayList();
             for (NodeIterator i = getNode().getNodes(JCRDocumentBuilder.NODE_NAME); i.hasNext();) {
                 Node node = i.nextNode();
-                documents.add(getDocument(node.getProperty(JCRDocumentBuilder.LANGUAGE_ATTRIBUTE)
+                documents.add(getDocument(node.getProperty(JCRDocumentBuilder.LANGUAGE_PROPERTY)
                         .getString()));
             }
             return (Document[]) documents.toArray(new Document[documents.size()]);
@@ -70,8 +70,8 @@
 
     }
 
-    public Document addDocument(String language) throws RepositoryException {
-        BuilderParameters params = builder.createParameters(this, language);
+    public Document addDocument(String language, String label) throws RepositoryException {
+        BuilderParameters params = builder.createParameters(this, language, label);
         return (Document) this.documentManager.getNode(language, params, true);
     }
 
@@ -84,7 +84,7 @@
     }
 
     public Document getDocument(String language) throws RepositoryException {
-        BuilderParameters params = builder.createParameters(this, language);
+        BuilderParameters params = builder.createParameters(this, language, null);
         return (Document) this.documentManager.getNode(language, params, false);
     }
 

Modified: lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRContentNodeBuilder.java
URL: http://svn.apache.org/viewcvs/lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRContentNodeBuilder.java?rev=345525&r1=345524&r2=345525&view=diff
==============================================================================
--- lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRContentNodeBuilder.java (original)
+++ lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRContentNodeBuilder.java Fri Nov 18 09:20:39 2005
@@ -38,6 +38,7 @@
     protected static final String NODE_TYPE = "lnt:contentNode";
     protected static final String ID_PROPERTY = "lenya:id";
     protected static final String DOCUMENT_TYPE_PROPERTY = "lenya:documentType";
+    protected static final String VISIBLE_IN_NAV_PROPERTY = "lenya:visibleInNav";
 
     /**
      * Ctor.
@@ -67,6 +68,7 @@
                 contentNode = content.addNode(NODE_NAME, NODE_TYPE);
                 contentNode.setProperty(ID_PROPERTY, params.getId());
                 contentNode.setProperty(DOCUMENT_TYPE_PROPERTY, params.getDocumentType());
+                contentNode.setProperty(VISIBLE_IN_NAV_PROPERTY, true);
                 jcrContentNode = new JCRContentNode(session, params.getContent(), contentNode);
             } else {
                 throw new RepositoryException("The node already exists!");

Modified: lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRDocument.java
URL: http://svn.apache.org/viewcvs/lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRDocument.java?rev=345525&r1=345524&r2=345525&view=diff
==============================================================================
--- lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRDocument.java (original)
+++ lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRDocument.java Fri Nov 18 09:20:39 2005
@@ -42,7 +42,7 @@
 
     public String getLanguage() throws RepositoryException {
         try {
-            return getNode().getProperty(JCRDocumentBuilder.LANGUAGE_ATTRIBUTE).getString();
+            return getNode().getProperty(JCRDocumentBuilder.LANGUAGE_PROPERTY).getString();
         } catch (Exception e) {
             throw new RepositoryException(e);
         }
@@ -50,7 +50,7 @@
 
     public void setLanguage(String language) throws RepositoryException {
         try {
-            getNode().getProperty(JCRDocumentBuilder.LANGUAGE_ATTRIBUTE).setValue(language);
+            getNode().getProperty(JCRDocumentBuilder.LANGUAGE_PROPERTY).setValue(language);
         } catch (Exception e) {
             throw new RepositoryException(e);
         }

Modified: lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRDocumentBuilder.java
URL: http://svn.apache.org/viewcvs/lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRDocumentBuilder.java?rev=345525&r1=345524&r2=345525&view=diff
==============================================================================
--- lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRDocumentBuilder.java (original)
+++ lenya/trunk/src/modules/jcr/java/src/org/apache/lenya/cms/jcr/JCRDocumentBuilder.java Fri Nov 18 09:20:39 2005
@@ -31,11 +31,14 @@
 public class JCRDocumentBuilder extends AbstractNodeWrapperBuilder implements
         ResolvingNodeWrapperBuilder {
 
-    protected static final String LANGUAGE_ATTRIBUTE = "xml:lang";
+    protected static final String LANGUAGE_PROPERTY = "xml:lang";
     protected static final String NODE_NAME = "lenya:document";
     protected static final String NODE_TYPE = "lnt:document";
     protected static final String RESOURCE_NODE_NAME = "lenya:resource";
     protected static final String RESOURCE_NODE_TYPE = "lnt:resource";
+    protected static final String META_NODE_NAME = "lenya:meta";
+    protected static final String META_NODE_TYPE = "lnt:meta";
+    protected static final String LABEL_PROPERTY = "lenya:label";
 
     /**
      * Parameters.
@@ -43,15 +46,18 @@
     public static class JCRDocumentBuilderParameters implements BuilderParameters {
 
         private String language;
+        private String label;
         private JCRContentNode contentNode;
 
         /**
          * Ctor.
          * @param contentNode The content node.
          * @param language The language.
+         * @param label The label.
          */
-        public JCRDocumentBuilderParameters(JCRContentNode contentNode, String language) {
+        public JCRDocumentBuilderParameters(JCRContentNode contentNode, String language, String label) {
             this.contentNode = contentNode;
+            this.label = label;
             this.language = language;
         }
 
@@ -68,16 +74,24 @@
         public String getLanguage() {
             return this.language;
         }
+        
+        /**
+         * @return The label.
+         */
+        public String getLabel() {
+            return this.label;
+        }
 
     }
 
     /**
      * @param contentNode The content node.
      * @param language The language.
+     * @param label The label.
      * @return The parameters object.
      */
-    public BuilderParameters createParameters(JCRContentNode contentNode, String language) {
-        return new JCRDocumentBuilderParameters(contentNode, language);
+    public BuilderParameters createParameters(JCRContentNode contentNode, String language, String label) {
+        return new JCRDocumentBuilderParameters(contentNode, language, label);
     }
 
     public NodeWrapper addNode(JCRSession session, BuilderParameters parameters)
@@ -93,13 +107,17 @@
 
             if (documentNode == null) {
                 documentNode = contentNodeNode.addNode(NODE_NAME, NODE_TYPE);
-                documentNode.setProperty(LANGUAGE_ATTRIBUTE, params.getLanguage());
+                documentNode.setProperty(LANGUAGE_PROPERTY, params.getLanguage());
+                documentNode.setProperty(LABEL_PROPERTY, "Label");
+                
                 Node resourceNode = documentNode.addNode(RESOURCE_NODE_NAME, RESOURCE_NODE_TYPE);
                 resourceNode.setProperty("jcr:mimeType", params.getContentNode()
                         .getDocumentType()
                         .getMimeType());
                 resourceNode.setProperty("jcr:data", "");
                 resourceNode.setProperty("jcr:lastModified", new GregorianCalendar());
+                
+//                documentNode.addNode(META_NODE_NAME, META_NODE_TYPE);
             } else {
                 throw new RepositoryException("The node already exists!");
             }
@@ -158,7 +176,7 @@
 
     public String getKey(Node node) throws RepositoryException {
         try {
-            return node.getProperty(LANGUAGE_ATTRIBUTE).getString();
+            return node.getProperty(LANGUAGE_PROPERTY).getString();
         } catch (javax.jcr.RepositoryException e) {
             throw new RepositoryException(e);
         }



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org