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/07/03 18:46:28 UTC
[34/50] git commit: Updated Page template objects to support
properties
Updated Page template objects to support properties
git-svn-id: https://svn.apache.org/repos/asf/rave/trunk@1558686 13f79535-47bb-0310-9956-ffa450edef68
Project: http://git-wip-us.apache.org/repos/asf/rave/repo
Commit: http://git-wip-us.apache.org/repos/asf/rave/commit/bf379713
Tree: http://git-wip-us.apache.org/repos/asf/rave/tree/bf379713
Diff: http://git-wip-us.apache.org/repos/asf/rave/diff/bf379713
Branch: refs/heads/angular
Commit: bf379713f103c439315af313f90a1c73a4436e4a
Parents: ff8c5d0
Author: Matthew B. Franklin <mf...@apache.org>
Authored: Thu Jan 16 03:32:52 2014 +0000
Committer: Matthew B. Franklin <mf...@apache.org>
Committed: Thu Jan 16 03:32:52 2014 +0000
----------------------------------------------------------------------
.../org/apache/rave/model/PageTemplate.java | 17 +++++++++++++++++
.../portal/model/impl/PageTemplateImpl.java | 10 ++++++++++
.../rave/portal/model/JpaPageTemplate.java | 20 ++++++++++++++++++++
3 files changed, 47 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/rave/blob/bf379713/rave-components/rave-core-api/src/main/java/org/apache/rave/model/PageTemplate.java
----------------------------------------------------------------------
diff --git a/rave-components/rave-core-api/src/main/java/org/apache/rave/model/PageTemplate.java b/rave-components/rave-core-api/src/main/java/org/apache/rave/model/PageTemplate.java
index 05bc36b..d383e15 100644
--- a/rave-components/rave-core-api/src/main/java/org/apache/rave/model/PageTemplate.java
+++ b/rave-components/rave-core-api/src/main/java/org/apache/rave/model/PageTemplate.java
@@ -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);
}
http://git-wip-us.apache.org/repos/asf/rave/blob/bf379713/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/PageTemplateImpl.java
----------------------------------------------------------------------
diff --git a/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/PageTemplateImpl.java b/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/PageTemplateImpl.java
index 398975c..18a44a5 100644
--- a/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/PageTemplateImpl.java
+++ b/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/PageTemplateImpl.java
@@ -24,6 +24,7 @@ import org.apache.rave.model.PageTemplateRegion;
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 PageTemplate {
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 PageTemplate {
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;
http://git-wip-us.apache.org/repos/asf/rave/blob/bf379713/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/JpaPageTemplate.java
----------------------------------------------------------------------
diff --git a/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/JpaPageTemplate.java b/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/JpaPageTemplate.java
index 66dc464..706ddb5 100644
--- a/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/JpaPageTemplate.java
+++ b/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/model/JpaPageTemplate.java
@@ -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 BasicEntity, Serializable, PageTemplate
@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 BasicEntity, Serializable, PageTemplate
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;
+ }
}