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 2013/03/27 17:50:51 UTC
svn commit: r1461703 - in
/rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model:
Page.java PageList.java PageUser.java Region.java RegionWidget.java
marshall/ marshall/XmlMapAdapter.java
Author: mfranklin
Date: Wed Mar 27 16:50:51 2013
New Revision: 1461703
URL: http://svn.apache.org/r1461703
Log:
Created web model for RAVE-924
Added:
rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/Page.java
rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/PageList.java
rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/PageUser.java
rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/Region.java
rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/RegionWidget.java
rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/marshall/
rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/marshall/XmlMapAdapter.java
Added: rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/Page.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/Page.java?rev=1461703&view=auto
==============================================================================
--- rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/Page.java (added)
+++ rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/Page.java Wed Mar 27 16:50:51 2013
@@ -0,0 +1,145 @@
+package org.apache.rave.rest.model;
+
+import javax.xml.bind.annotation.*;
+import java.util.ArrayList;
+import java.util.List;
+
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "Page", propOrder = {
+ "id", "name", "ownerId", "pageType", "pageLayoutCode", "subPages", "regions", "members"
+})
+@XmlRootElement(name = "Page")
+public class Page {
+ @XmlAttribute(name="id")
+ private String id;
+ @XmlElement(name="name")
+ private String name;
+ @XmlElement(name="ownerId")
+ private String ownerId;
+ @XmlElement(name="pageType")
+ private String pageType;
+ @XmlElement(name="pageLayoutCode")
+ private String pageLayoutCode;
+ @XmlElementWrapper(name = "subPages")
+ @XmlElement(name="Page")
+ private List<Page> subPages;
+ @XmlElementWrapper(name = "regions")
+ @XmlElement(name="Region")
+ private List<Region> regions;
+ @XmlElementWrapper(name = "members")
+ @XmlElement(name="PageUser")
+ private List<PageUser> members;
+
+ public Page() { }
+
+ public Page(org.apache.rave.model.Page source) {
+ this.id = source.getId();
+ this.name = source.getName();
+ this.ownerId = source.getOwnerId();
+ this.pageType = source.getPageType().toString();
+ this.pageLayoutCode = source.getPageLayout().getCode();
+ this.subPages = createSubPages(source);
+ this.regions = createRegions(source);
+ this.members = createPageUsers(source);
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getOwnerId() {
+ return ownerId;
+ }
+
+ public void setOwnerId(String ownerId) {
+ this.ownerId = ownerId;
+ }
+
+ public String getPageType() {
+ return pageType;
+ }
+
+ public void setPageType(String pageType) {
+ this.pageType = pageType;
+ }
+
+ public String getPageLayoutCode() {
+ return pageLayoutCode;
+ }
+
+ public void setPageLayoutCode(String pageLayoutCode) {
+ this.pageLayoutCode = pageLayoutCode;
+ }
+
+ public List<Page> getSubPages() {
+ return subPages;
+ }
+
+ public void setSubPages(List<Page> subPages) {
+ this.subPages = subPages;
+ }
+
+ public List<Region> getRegions() {
+ return regions;
+ }
+
+ public void setRegions(List<Region> regions) {
+ this.regions = regions;
+ }
+
+ public List<PageUser> getMembers() {
+ return members;
+ }
+
+ public void setMembers(List<PageUser> members) {
+ this.members = members;
+ }
+
+ private List<Page> createSubPages(org.apache.rave.model.Page source) {
+ List<Page> created = null;
+ List<org.apache.rave.model.Page> subPages = source.getSubPages();
+ if(subPages != null) {
+ created = new ArrayList<Page>();
+ for(org.apache.rave.model.Page subPage : subPages) {
+ created.add(new Page(subPage));
+ }
+ }
+ return created;
+ }
+
+ private List<Region> createRegions(org.apache.rave.model.Page source) {
+ List<Region> created = null;
+ List<org.apache.rave.model.Region> regions = source.getRegions();
+ if(regions != null) {
+ created = new ArrayList<Region>();
+ for(org.apache.rave.model.Region region : regions) {
+ created.add(new Region(region));
+ }
+ }
+ return created;
+ }
+
+ private List<PageUser> createPageUsers(org.apache.rave.model.Page source) {
+ List<PageUser> created =null;
+ List<org.apache.rave.model.PageUser> members = source.getMembers();
+ if(members != null) {
+ created = new ArrayList<PageUser>();
+ for(org.apache.rave.model.PageUser member : members) {
+ created.add(new PageUser(member));
+ }
+ }
+ return created;
+ }
+}
Added: rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/PageList.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/PageList.java?rev=1461703&view=auto
==============================================================================
--- rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/PageList.java (added)
+++ rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/PageList.java Wed Mar 27 16:50:51 2013
@@ -0,0 +1,26 @@
+package org.apache.rave.rest.model;
+
+
+import javax.xml.bind.annotation.*;
+import java.util.ArrayList;
+import java.util.List;
+
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "Pages", propOrder = {
+ "pages"
+})
+@XmlRootElement(name = "Pages")
+public class PageList {
+
+ @XmlElement(name = "Page")
+ private List<Page> pages;
+
+ public List<Page> getPages() {
+ if(pages == null) pages = new ArrayList<Page>();
+ return pages;
+ }
+
+ public void setPages(List<Page> pages) {
+ this.pages = pages;
+ }
+}
Added: rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/PageUser.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/PageUser.java?rev=1461703&view=auto
==============================================================================
--- rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/PageUser.java (added)
+++ rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/PageUser.java Wed Mar 27 16:50:51 2013
@@ -0,0 +1,38 @@
+package org.apache.rave.rest.model;
+
+import javax.xml.bind.annotation.*;
+
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "PageUser", propOrder = {
+ "editor", "personId"
+})
+@XmlRootElement(name = "PageUser")
+public class PageUser {
+ @XmlElement(name="editor")
+ boolean editor;
+ @XmlElement(name="personId")
+ String personId;
+
+ public PageUser() { }
+
+ public PageUser(org.apache.rave.model.PageUser member) {
+ this.editor = member.isEditor();
+ this.personId = member.getUserId();
+ }
+
+ public boolean isEditor() {
+ return editor;
+ }
+
+ public void setEditor(boolean editor) {
+ this.editor = editor;
+ }
+
+ public String getPersonId() {
+ return personId;
+ }
+
+ public void setPersonId(String personId) {
+ this.personId = personId;
+ }
+}
Added: rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/Region.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/Region.java?rev=1461703&view=auto
==============================================================================
--- rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/Region.java (added)
+++ rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/Region.java Wed Mar 27 16:50:51 2013
@@ -0,0 +1,52 @@
+package org.apache.rave.rest.model;
+
+import javax.xml.bind.annotation.*;
+import java.util.ArrayList;
+import java.util.List;
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "Region", propOrder = {
+ "locked", "regionWidgets"
+})
+@XmlRootElement(name = "Region")
+public class Region {
+ @XmlElement(name = "locked")
+ private boolean locked;
+ @XmlElementWrapper(name = "regionWidgets")
+ @XmlElement(name="RegionWidget")
+ private List<RegionWidget> regionWidgets;
+
+ public Region() { }
+
+ public Region(org.apache.rave.model.Region source) {
+ this.locked = source.isLocked();
+ this.regionWidgets = createRegionWidgets(source);
+ }
+
+ public boolean isLocked() {
+ return locked;
+ }
+
+ public void setLocked(boolean locked) {
+ this.locked = locked;
+ }
+
+ public List<RegionWidget> getRegionWidgets() {
+ return regionWidgets;
+ }
+
+ public void setRegionWidgets(List<RegionWidget> regionWidgets) {
+ this.regionWidgets = regionWidgets;
+ }
+
+ private List<RegionWidget> createRegionWidgets(org.apache.rave.model.Region source) {
+ List<RegionWidget> created = null;
+ List<org.apache.rave.model.RegionWidget> widgets = source.getRegionWidgets();
+ if(widgets != null) {
+ created = new ArrayList<RegionWidget>();
+ for(org.apache.rave.model.RegionWidget widget : widgets) {
+ created.add(new RegionWidget(widget));
+ }
+ }
+ return created;
+ }
+}
Added: rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/RegionWidget.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/RegionWidget.java?rev=1461703&view=auto
==============================================================================
--- rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/RegionWidget.java (added)
+++ rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/RegionWidget.java Wed Mar 27 16:50:51 2013
@@ -0,0 +1,134 @@
+package org.apache.rave.rest.model;
+
+import org.apache.rave.model.RegionWidgetPreference;
+import org.apache.rave.rest.model.marshall.XmlMapAdapter;
+
+import javax.xml.bind.annotation.*;
+import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "RegionWidget", propOrder = {
+ "id", "type", "widgetId", "widgetUrl", "regionId", "collapsed", "locked", "hideChrome", "userPrefs"
+})
+@XmlRootElement(name = "RegionWidget")
+public class RegionWidget {
+
+ @XmlAttribute(name="id")
+ private String id;
+ @XmlAttribute(name="type")
+ private String type;
+ @XmlElement(name = "widgetId")
+ private String widgetId;
+ @XmlElement(name = "widgetUrl")
+ private String widgetUrl;
+ @XmlElement(name = "regionId")
+ private String regionId;
+ @XmlElement(name = "collapsed")
+ private boolean collapsed;
+ @XmlElement(name = "locked")
+ private boolean locked;
+ @XmlElement(name = "hideChrome")
+ private boolean hideChrome;
+ @XmlElement(name = "userPrefs")
+ @XmlJavaTypeAdapter(value = XmlMapAdapter.class, type=Map.class)
+ private Map<String, String> userPrefs;
+
+ public RegionWidget() { }
+
+ public RegionWidget(org.apache.rave.model.RegionWidget widget) {
+ this.id = widget.getId();
+ this.widgetId = widget.getWidgetId();
+ this.regionId = widget.getRegion().getId();
+ this.collapsed = widget.isCollapsed();
+ this.locked = widget.isLocked();
+ this.hideChrome = widget.isHideChrome();
+ this.userPrefs = createPrefs(widget);
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getType() {
+ return type;
+ }
+
+ public void setType(String type) {
+ this.type = type;
+ }
+
+ public String getWidgetId() {
+ return widgetId;
+ }
+
+ public void setWidgetId(String widgetId) {
+ this.widgetId = widgetId;
+ }
+
+ public String getWidgetUrl() {
+ return widgetUrl;
+ }
+
+ public void setWidgetUrl(String widgetUrl) {
+ this.widgetUrl = widgetUrl;
+ }
+
+ public String getRegionId() {
+ return regionId;
+ }
+
+ public void setRegionId(String regionId) {
+ this.regionId = regionId;
+ }
+
+ public boolean isCollapsed() {
+ return collapsed;
+ }
+
+ public void setCollapsed(boolean collapsed) {
+ this.collapsed = collapsed;
+ }
+
+ public boolean isLocked() {
+ return locked;
+ }
+
+ public void setLocked(boolean locked) {
+ this.locked = locked;
+ }
+
+ public boolean isHideChrome() {
+ return hideChrome;
+ }
+
+ public void setHideChrome(boolean hideChrome) {
+ this.hideChrome = hideChrome;
+ }
+
+ public Map getUserPrefs() {
+ return userPrefs;
+ }
+
+ public void setUserPrefs(Map userPrefs) {
+ this.userPrefs = userPrefs;
+ }
+
+ private Map<String, String> createPrefs(org.apache.rave.model.RegionWidget widget) {
+ Map<String, String> created = null;
+ List<RegionWidgetPreference> preferences = widget.getPreferences();
+ if(preferences != null) {
+ created = new HashMap<String, String>();
+ for(RegionWidgetPreference pref : preferences) {
+ created.put(pref.getName(), pref.getValue());
+ }
+ }
+ return created;
+ }
+}
Added: rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/marshall/XmlMapAdapter.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/marshall/XmlMapAdapter.java?rev=1461703&view=auto
==============================================================================
--- rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/marshall/XmlMapAdapter.java (added)
+++ rave/trunk/rave-components/rave-core-api/src/main/java/org/apache/rave/rest/model/marshall/XmlMapAdapter.java Wed Mar 27 16:50:51 2013
@@ -0,0 +1,104 @@
+package org.apache.rave.rest.model.marshall;
+
+import javax.xml.bind.annotation.*;
+import javax.xml.bind.annotation.adapters.XmlAdapter;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Provides marshalling utility for Map to XML and vice versa
+ */
+public class XmlMapAdapter<E, T> extends XmlAdapter<XmlMapAdapter.EntryList<E, T>, Map<E, T>> {
+
+ @Override
+ public Map<E, T> unmarshal(EntryList<E, T> entryList) throws Exception {
+ Map<E, T> map = null;
+ if (entryList != null) {
+ map = new HashMap<E, T>();
+ for (Entry<E, T> entry : entryList.getEntries()) {
+ map.put(entry.getKey(), entry.getValue());
+ }
+ }
+ return map;
+ }
+
+ @Override
+ public EntryList<E, T> marshal(Map<E, T> map) throws Exception {
+ EntryList<E, T> list = null;
+ if(map != null) {
+ list = new EntryList<E, T>();
+ List<Entry<E, T>> entryList = list.getEntries();
+ for(Map.Entry<E, T> entry : map.entrySet()) {
+ entryList.add(new Entry<E, T>(entry));
+ }
+ }
+ return list;
+ }
+
+ @XmlAccessorType(XmlAccessType.FIELD)
+ @XmlType(name = "entry", propOrder = {
+ "key", "value"
+ })
+ public static class Entry<E, T> {
+
+ @XmlElement(name = "key")
+ private E key;
+ @XmlElement(name = "value")
+ private T value;
+
+ public Entry() {
+ }
+
+ public Entry(Map.Entry<E, T> e) {
+ key = e.getKey();
+ value = e.getValue();
+ }
+
+ public E getKey() {
+ return key;
+ }
+
+ public void setKey(E key) {
+ this.key = key;
+ }
+
+ public T getValue() {
+ return value;
+ }
+
+ public void setValue(T value) {
+ this.value = value;
+ }
+ }
+
+ @XmlAccessorType(XmlAccessType.FIELD)
+ @XmlType(name = "map", propOrder = {
+ "entries"
+ })
+ @XmlRootElement(name = "map")
+ public static class EntryList<E, T> {
+
+ @XmlElement(name = "entry")
+ private List<Entry<E, T>> entries = new ArrayList<Entry<E, T>>();
+
+ public EntryList() {
+ }
+
+ public EntryList(Map<E, T> map) {
+ for (Map.Entry<E, T> e : map.entrySet()) {
+ entries.add(new Entry<E, T>(e));
+ }
+ }
+
+ public List<Entry<E, T>> getEntries() {
+ return entries;
+ }
+
+ public void setEntries(List<Entry<E, T>> entries) {
+ this.entries = entries;
+ }
+ }
+}
+