From: <ro...@us...> - 2009-03-03 13:37:28
|
Revision: 42 http://cse-ip.svn.sourceforge.net/cse-ip/?rev=42&view=rev Author: roekens Date: 2009-03-03 13:36:45 +0000 (Tue, 03 Mar 2009) Log Message: ----------- fix to define property order in xml conversion. still buggy due to inheritance Modified Paths: -------------- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Account.java cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Attribute.java cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Category.java cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Course.java cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Entity.java cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Group.java cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Role.java cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/TestXmlConversion.java Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Account.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Account.java 2009-03-03 12:45:56 UTC (rev 41) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Account.java 2009-03-03 13:36:45 UTC (rev 42) @@ -16,6 +16,7 @@ import javax.xml.bind.annotation.XmlElementWrapper; import javax.xml.bind.annotation.XmlID; import javax.xml.bind.annotation.XmlIDREF; +import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; import javax.xml.bind.annotation.XmlType; @@ -25,7 +26,8 @@ @Entity @Embeddable @Table(name = "CDMM_ACCOUNT") -@XmlType(name="Account") +@XmlRootElement +@XmlType(propOrder={"identityString", "groups", "roles"}) public class Account extends de.campussource.cse.cdmm.Entity{ @Id Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Attribute.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Attribute.java 2009-03-03 12:45:56 UTC (rev 41) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Attribute.java 2009-03-03 13:36:45 UTC (rev 42) @@ -10,11 +10,15 @@ import javax.persistence.Table; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlID; +import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; +import javax.xml.bind.annotation.XmlType; @Entity @Embeddable @Table(name = "CDMM_ATTRIBUTE") +@XmlRootElement +@XmlType(propOrder={"identityString", "entity", "name", "value"}) public class Attribute { @Id Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Category.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Category.java 2009-03-03 12:45:56 UTC (rev 41) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Category.java 2009-03-03 13:36:45 UTC (rev 42) @@ -15,6 +15,7 @@ import javax.xml.bind.annotation.XmlElementWrapper; import javax.xml.bind.annotation.XmlID; import javax.xml.bind.annotation.XmlIDREF; +import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; import javax.xml.bind.annotation.XmlType; @@ -24,7 +25,8 @@ @Entity @Embeddable @Table(name = "CDMM_CATEGORY") -@XmlType(name="Category") +@XmlRootElement +@XmlType(propOrder={"identityString", "parents", "children", "courses"}) public class Category extends de.campussource.cse.cdmm.Entity { @Id @@ -120,5 +122,10 @@ public void setParents(List<Category> parents) { this.parents = parents; } + + @XmlTransient + public boolean isRoot(){ + return ((parents==null)||parents.size()==0); + } } Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Course.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Course.java 2009-03-03 12:45:56 UTC (rev 41) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Course.java 2009-03-03 13:36:45 UTC (rev 42) @@ -17,7 +17,9 @@ import javax.xml.bind.annotation.XmlElementWrapper; import javax.xml.bind.annotation.XmlID; import javax.xml.bind.annotation.XmlIDREF; +import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; +import javax.xml.bind.annotation.XmlType; import org.apache.commons.lang.builder.ToStringBuilder; import org.apache.commons.lang.builder.ToStringStyle; @@ -25,6 +27,8 @@ @Entity @Embeddable @Table(name = "CDMM_COURSE") +@XmlRootElement +@XmlType(propOrder={"identityString", "categories", "parent", "workgroups", "roles"}) public class Course extends de.campussource.cse.cdmm.Entity{ @Id Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Entity.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Entity.java 2009-03-03 12:45:56 UTC (rev 41) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Entity.java 2009-03-03 13:36:45 UTC (rev 42) @@ -8,8 +8,12 @@ import javax.persistence.OneToMany; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlElementWrapper; +import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; +import javax.xml.bind.annotation.XmlType; +@XmlRootElement +@XmlType(propOrder={"attributes"}) public class Entity{ @Id Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Group.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Group.java 2009-03-03 12:45:56 UTC (rev 41) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Group.java 2009-03-03 13:36:45 UTC (rev 42) @@ -9,11 +9,10 @@ import javax.persistence.Id; import javax.persistence.ManyToMany; import javax.persistence.Table; -import javax.xml.bind.annotation.XmlAccessorOrder; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlElementWrapper; -import javax.xml.bind.annotation.XmlID; import javax.xml.bind.annotation.XmlIDREF; +import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; import javax.xml.bind.annotation.XmlType; @@ -23,7 +22,8 @@ @Entity @Embeddable @Table(name = "CDMM_GROUP") -@XmlType(name="Group") +@XmlRootElement +@XmlType(propOrder={"members"}) public class Group extends Account{ @Id Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Role.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Role.java 2009-03-03 12:45:56 UTC (rev 41) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Role.java 2009-03-03 13:36:45 UTC (rev 42) @@ -12,7 +12,9 @@ import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlID; import javax.xml.bind.annotation.XmlIDREF; +import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; +import javax.xml.bind.annotation.XmlType; import org.apache.commons.lang.builder.ToStringBuilder; import org.apache.commons.lang.builder.ToStringStyle; @@ -20,6 +22,8 @@ @Entity @Embeddable @Table(name = "CDMM_ROLE") +@XmlRootElement +@XmlType(propOrder={"identityString", "type", "account", "course"}) public class Role extends de.campussource.cse.cdmm.Entity{ @Id Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/TestXmlConversion.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/TestXmlConversion.java 2009-03-03 12:45:56 UTC (rev 41) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/TestXmlConversion.java 2009-03-03 13:36:45 UTC (rev 42) @@ -34,6 +34,25 @@ fail(e.getMessage()); } + EntityContainer container = generateTestStructure(); + + try { + marshaller.marshal(container, System.out); + + Writer writer = new StringWriter(); + marshaller.marshal(container, writer); + writer.close(); + + } catch (JAXBException e) { + fail(e.getMessage()); + } catch (IOException e) { + fail(e.getMessage()); + } + + + } + + private EntityContainer generateTestStructure() { Category categoryA = new Category(); categoryA.setId(createUniqueId()); @@ -46,6 +65,9 @@ Course course = new Course(); course.setId(createUniqueId()); course.setCategories(categories); + + List<Course> cl = new ArrayList<Course>(); cl.add(course); + categoryA.setCourses(cl); Account account = new Account(); account.setId(createUniqueId()); @@ -100,24 +122,7 @@ List<Role> rols = new ArrayList<Role>(); rols.add(role); container.setRoles(rols); - - - - - try { - marshaller.marshal(container, System.out); - - Writer writer = new StringWriter(); - marshaller.marshal(container, writer); - writer.close(); - - } catch (JAXBException e) { - fail(e.getMessage()); - } catch (IOException e) { - fail(e.getMessage()); - } - - + return container; } } \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |