You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rave.apache.org by mf...@apache.org on 2014/01/16 04:32:53 UTC

svn commit: r1558686 - in /rave/trunk/rave-components: rave-core-api/src/main/java/org/apache/rave/model/ rave-core/src/main/java/org/apache/rave/portal/model/impl/ rave-jpa/src/main/java/org/apache/rave/portal/model/

Author: mfranklin
Date: Thu Jan 16 03:32:52 2014
New Revision: 1558686

URL: http://svn.apache.org/r1558686
Log:
Updated Page template objects to support properties

Modified:
    rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/model/PageTemplate.java
    rave/trunk/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/PageTemplateImpl.java
    rave/trunk/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/JpaPageTemplate.java

Modified: rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/model/PageTemplate.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/model/PageTemplate.java?rev=1558686&r1=1558685&r2=1558686&view=diff
==============================================================================
--- rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/model/PageTemplate.java (original)
+++ rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/model/PageTemplate.java Thu Jan 16 03:32:52 2014
@@ -20,6 +20,7 @@ package org.apache.rave.model;
 
 import javax.xml.bind.annotation.XmlTransient;
 import java.util.List;
+import java.util.Map;
 
 @XmlTransient
 public interface PageTemplate {
@@ -61,4 +62,20 @@ public interface PageTemplate {
     List<PageTemplate> getSubPageTemplates();
 
     void setSubPageTemplates(List<PageTemplate> subPageTemplates);
+
+    /**
+     * Generic property bag for extension of the page template object.
+     *
+     * Rave makes no attempt to understand the shape of the property bag.
+     *
+     * @return a valid Map of String to Object.
+     */
+    Map<String, Object> getProperties();
+
+    /**
+     * Overrides the current properties with a new set.
+     *
+     * @param properties a non-null map of string to JSON serializable object
+     */
+    void setProperties(Map<String, Object> properties);
 }

Modified: rave/trunk/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/PageTemplateImpl.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/PageTemplateImpl.java?rev=1558686&r1=1558685&r2=1558686&view=diff
==============================================================================
--- rave/trunk/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/PageTemplateImpl.java (original)
+++ rave/trunk/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/PageTemplateImpl.java Thu Jan 16 03:32:52 2014
@@ -24,6 +24,7 @@ import org.apache.rave.model.PageTemplat
 import org.apache.rave.model.PageType;
 
 import java.util.List;
+import java.util.Map;
 
 public class PageTemplateImpl implements PageTemplate {
     private String id;
@@ -36,6 +37,7 @@ public class PageTemplateImpl implements
     private List<PageTemplateRegion> pageTemplateRegions;
     private long renderSequence;
     private boolean defaultTemplate;
+    private Map<String, Object> properties;
 
     public PageTemplateImpl() {
 
@@ -125,6 +127,14 @@ public class PageTemplateImpl implements
         this.defaultTemplate = defaultTemplate;
     }
 
+    public Map<String, Object> getProperties() {
+        return properties;
+    }
+
+    public void setProperties(Map<String, Object> properties) {
+        this.properties = properties;
+    }
+
     @Override
     public boolean equals(Object o) {
         if (this == o) return true;

Modified: rave/trunk/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/JpaPageTemplate.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/JpaPageTemplate.java?rev=1558686&r1=1558685&r2=1558686&view=diff
==============================================================================
--- rave/trunk/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/JpaPageTemplate.java (original)
+++ rave/trunk/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/JpaPageTemplate.java Thu Jan 16 03:32:52 2014
@@ -19,6 +19,7 @@
 
 package org.apache.rave.portal.model;
 
+import com.fasterxml.jackson.annotation.JsonIgnore;
 import org.apache.rave.model.PageLayout;
 import org.apache.rave.model.PageTemplate;
 import org.apache.rave.model.PageTemplateRegion;
@@ -30,6 +31,7 @@ import javax.persistence.*;
 import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
 
 @Entity
 @Table(name="page_template")
@@ -88,6 +90,14 @@ public class JpaPageTemplate implements 
     @Column(name = "default_template")
     private boolean defaultTemplate;
 
+    @Lob @JsonIgnore
+    @Column(name = "serialized_data")
+    private String serializedData;
+
+    //It will be the responsibility of the repository to ensure that this property is set when the page is retrieved from the database
+    @Transient
+    private Map<String, Object> properties;
+
     @Override
     public Long getEntityId() {
         return entityId;
@@ -210,4 +220,14 @@ public class JpaPageTemplate implements 
     public String getId() {
         return this.getEntityId() == null ? null : this.getEntityId().toString();
     }
+
+    @Override
+    public Map<String, Object> getProperties() {
+        return properties;
+    }
+
+    @Override
+    public void setProperties(Map<String, Object> properties) {
+        this.properties = properties;
+    }
 }