diff options
15 files changed, 92 insertions, 35 deletions
diff --git a/org.eclipse.om2m.commons/.classpath b/org.eclipse.om2m.commons/.classpath index 9bd862c3..b4928f13 100644 --- a/org.eclipse.om2m.commons/.classpath +++ b/org.eclipse.om2m.commons/.classpath @@ -4,6 +4,6 @@ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="src" path="src/main/java"/>
<classpathentry kind="src" path="src/main/resources"/>
- <classpathentry exported="true" kind="lib" path="libs/javax.persistence.jar"/>
+ <classpathentry kind="lib" path="libs/javax.persistence.jar"/>
<classpathentry kind="output" path="target/classes"/>
</classpath>
diff --git a/org.eclipse.om2m.commons/META-INF/MANIFEST.MF b/org.eclipse.om2m.commons/META-INF/MANIFEST.MF index 8e6f496d..30dc7f49 100644 --- a/org.eclipse.om2m.commons/META-INF/MANIFEST.MF +++ b/org.eclipse.om2m.commons/META-INF/MANIFEST.MF @@ -8,8 +8,6 @@ Export-Package: org.eclipse.om2m.commons.constants,org.eclipse.om2m.co mmons.entities,org.eclipse.om2m.commons.exceptions,org.eclipse.om2m.c ommons.obix,org.eclipse.om2m.commons.obix.io,org.eclipse.om2m.commons .resource,org.eclipse.om2m.commons.utils -Bundle-ClassPath: ., - libs/javax.persistence.jar -Import-Package: org.apache.commons.logging - - +Bundle-ClassPath: . +Import-Package: javax.persistence, + org.apache.commons.logging diff --git a/org.eclipse.om2m.commons/build.properties b/org.eclipse.om2m.commons/build.properties index b4cde02c..3b1ab3ba 100644 --- a/org.eclipse.om2m.commons/build.properties +++ b/org.eclipse.om2m.commons/build.properties @@ -20,5 +20,4 @@ source.. = src/main/java
output.. = bin/
bin.includes = META-INF/,\
- .,\
- libs/javax.persistence.jar
+ .
diff --git a/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/AccessControlContextEntity.java b/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/AccessControlContextEntity.java index dfd8353a..5564fb79 100644 --- a/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/AccessControlContextEntity.java +++ b/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/AccessControlContextEntity.java @@ -39,7 +39,7 @@ import org.eclipse.om2m.commons.resource.LocationRegion; public class AccessControlContextEntity { @Id @GeneratedValue(strategy=GenerationType.AUTO) - private String accessControlContextId; + private long accessControlContextId; protected List<String> accessControlWindow; diff --git a/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/AccessControlOriginatorEntity.java b/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/AccessControlOriginatorEntity.java index 1b4ea207..45172d66 100644 --- a/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/AccessControlOriginatorEntity.java +++ b/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/AccessControlOriginatorEntity.java @@ -19,10 +19,14 @@ *******************************************************************************/ package org.eclipse.om2m.commons.entities; +import javax.persistence.Column; import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; import javax.persistence.Id; import org.eclipse.om2m.commons.constants.DBEntities; +import org.eclipse.om2m.commons.constants.ShortName; /** * Access Control Originator JPA Entity @@ -32,6 +36,10 @@ import org.eclipse.om2m.commons.constants.DBEntities; public class AccessControlOriginatorEntity { @Id + @GeneratedValue(strategy=GenerationType.AUTO) + private long id; + + @Column(name= ShortName.ORIGINATOR) protected String originatorID; public AccessControlOriginatorEntity() { diff --git a/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/AccessControlRuleEntity.java b/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/AccessControlRuleEntity.java index 25cc5799..341ee5d1 100644 --- a/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/AccessControlRuleEntity.java +++ b/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/AccessControlRuleEntity.java @@ -29,10 +29,14 @@ import javax.persistence.FetchType; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.JoinTable; import javax.persistence.ManyToMany; +import javax.persistence.ManyToOne; import javax.persistence.OneToMany; import org.eclipse.om2m.commons.constants.DBEntities; +import org.eclipse.om2m.commons.constants.ShortName; /** * Access control rule JPA entity @@ -44,7 +48,15 @@ public class AccessControlRuleEntity { @Id @GeneratedValue(strategy=GenerationType.AUTO) @Column(name=DBEntities.ACCESSCONTROLRULE_ID) - private String accessControlRuleId; + private long accessControlRuleId; + + public long getAccessControlRuleId() { + return accessControlRuleId; + } + + public void setAccessControlRuleId(long accessControlRuleId) { + this.accessControlRuleId = accessControlRuleId; + } @ManyToMany(fetch = FetchType.LAZY, cascade = { CascadeType.PERSIST }) // TODO force names for join table @@ -60,6 +72,22 @@ public class AccessControlRuleEntity { @OneToMany(fetch = FetchType.LAZY, cascade = { CascadeType.ALL }) protected List<AccessControlContextEntity> accessControlContexts; + + @ManyToOne(targetEntity=AccessControlPolicyEntity.class) + @JoinTable( + name=DBEntities.ACPACR_PRIVILEGES, + inverseJoinColumns={@JoinColumn(name=DBEntities.ACP_JOIN_ID,referencedColumnName=ShortName.RESOURCE_ID)}, + joinColumns={@JoinColumn(name=DBEntities.ACRID_COLUMN,referencedColumnName=DBEntities.ACCESSCONTROLRULE_ID)} + ) + protected List<AccessControlPolicyEntity> accessControlPolicies; + + public List<AccessControlPolicyEntity> getAccessControlPolicies() { + return accessControlPolicies; + } + + public void setAccessControlPolicies(List<AccessControlPolicyEntity> accessControlPolicies) { + this.accessControlPolicies = accessControlPolicies; + } /** * @return the accessControlOriginators diff --git a/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/CSEBaseEntity.java b/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/CSEBaseEntity.java index 81f5d910..86e44467 100644 --- a/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/CSEBaseEntity.java +++ b/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/CSEBaseEntity.java @@ -418,6 +418,9 @@ public class CSEBaseEntity extends ResourceEntity { * @return the childNodes */ public List<NodeEntity> getChildNodes() { + if (childNodes == null) { + childNodes = new ArrayList<NodeEntity>(); + } return childNodes; } diff --git a/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/CustomAttributeEntity.java b/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/CustomAttributeEntity.java index c6dc55d7..f4d81938 100644 --- a/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/CustomAttributeEntity.java +++ b/org.eclipse.om2m.commons/src/main/java/org/eclipse/om2m/commons/entities/CustomAttributeEntity.java @@ -19,9 +19,9 @@ import org.eclipse.om2m.commons.constants.ShortName; public class CustomAttributeEntity {
@Id
- @GeneratedValue(strategy=GenerationType.TABLE, generator=DBEntities.CUSTOM_ATTRIBUTE_ENTITY)
+ @GeneratedValue(strategy=GenerationType.AUTO)
@Column(name=ShortName.RESOURCE_ID)
- protected String resourceID;
+ protected long resourceID;
@Column(name= ShortName.CUSTOM_ATTRIBUTE_NAME)
protected String customAttributeName;
@@ -70,11 +70,11 @@ public class CustomAttributeEntity { this.parentFlexContainer = parentFlexContainer;
}
- public String getResourceID() {
+ public long getResourceID() {
return resourceID;
}
- public void setResourceID(String resourceID) {
+ public void setResourceID(long resourceID) {
this.resourceID = resourceID;
}
diff --git a/org.eclipse.om2m.core/META-INF/MANIFEST.MF b/org.eclipse.om2m.core/META-INF/MANIFEST.MF index 59027188..3e7fa7ef 100644 --- a/org.eclipse.om2m.core/META-INF/MANIFEST.MF +++ b/org.eclipse.om2m.core/META-INF/MANIFEST.MF @@ -4,10 +4,12 @@ Bundle-Name: org.eclipse.om2m Core Plugin Bundle-SymbolicName: org.eclipse.om2m.core;singleton:=true
Bundle-Version: 1.0.0.qualifier
Bundle-Activator: org.eclipse.om2m.core.Activator
-Require-Bundle: org.eclipse.om2m.commons
+Require-Bundle: org.eclipse.om2m.commons,
+ org.eclipse.om2m.persistence.service
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Bundle-ClassPath: .
-Import-Package: org.apache.commons.logging,
+Import-Package: javax.persistence;version="1.0.0.SNAPSHOT",
+ org.apache.commons.logging,
org.eclipse.om2m.binding.service,
org.eclipse.om2m.core.service,
org.eclipse.om2m.datamapping.service,
diff --git a/org.eclipse.om2m.datamapping.jaxb/.classpath b/org.eclipse.om2m.datamapping.jaxb/.classpath index 98ddc48e..16c46d5e 100644 --- a/org.eclipse.om2m.datamapping.jaxb/.classpath +++ b/org.eclipse.om2m.datamapping.jaxb/.classpath @@ -1,7 +1,8 @@ -<?xml version="1.0" encoding="UTF-8"?> -<classpath> - <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/> - <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> - <classpathentry kind="src" path="src/main/java/"/> - <classpathentry kind="output" path="target/classes"/> -</classpath> +<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry exported="true" kind="lib" path="eclipselink.jar"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src/main/java/"/>
+ <classpathentry kind="output" path="target/classes"/>
+</classpath>
diff --git a/org.eclipse.om2m.datamapping.jaxb/META-INF/MANIFEST.MF b/org.eclipse.om2m.datamapping.jaxb/META-INF/MANIFEST.MF index 03486fa9..dc71e5f4 100644 --- a/org.eclipse.om2m.datamapping.jaxb/META-INF/MANIFEST.MF +++ b/org.eclipse.om2m.datamapping.jaxb/META-INF/MANIFEST.MF @@ -5,10 +5,13 @@ Bundle-SymbolicName: org.eclipse.om2m.datamapping.jaxb Bundle-Version: 1.0.0.qualifier Bundle-Activator: org.eclipse.om2m.datamapping.jaxb.Activator Bundle-RequiredExecutionEnvironment: JavaSE-1.7 -Require-Bundle: org.eclipse.om2m.commons Import-Package: org.apache.commons.logging, + org.eclipse.om2m.commons.constants, + org.eclipse.om2m.commons.resource, org.eclipse.om2m.datamapping.service, - org.eclipse.persistence.internal.jaxb, - org.eclipse.persistence.jaxb, org.osgi.framework, org.osgi.util.tracker +Bundle-ClassPath: ., + eclipselink.jar +Export-Package: org.eclipse.persistence.internal.jaxb, + org.eclipse.persistence.jaxb diff --git a/org.eclipse.om2m.datamapping.jaxb/build.properties b/org.eclipse.om2m.datamapping.jaxb/build.properties index a25b4640..fe4d0a2b 100644 --- a/org.eclipse.om2m.datamapping.jaxb/build.properties +++ b/org.eclipse.om2m.datamapping.jaxb/build.properties @@ -19,4 +19,5 @@ ############################################################################### source.. = src/main/java/ bin.includes = META-INF/,\ - . + .,\ + eclipselink.jar diff --git a/org.eclipse.om2m.datamapping.jaxb/eclipselink.jar b/org.eclipse.om2m.datamapping.jaxb/eclipselink.jar Binary files differnew file mode 100644 index 00000000..325e2a3f --- /dev/null +++ b/org.eclipse.om2m.datamapping.jaxb/eclipselink.jar diff --git a/org.eclipse.om2m.persistence.eclipselink/src/main/java/org/eclipse/om2m/persistence/eclipselink/internal/dao/AccessControlOriginatorDAO.java b/org.eclipse.om2m.persistence.eclipselink/src/main/java/org/eclipse/om2m/persistence/eclipselink/internal/dao/AccessControlOriginatorDAO.java index 31290286..ff5bb9ef 100644 --- a/org.eclipse.om2m.persistence.eclipselink/src/main/java/org/eclipse/om2m/persistence/eclipselink/internal/dao/AccessControlOriginatorDAO.java +++ b/org.eclipse.om2m.persistence.eclipselink/src/main/java/org/eclipse/om2m/persistence/eclipselink/internal/dao/AccessControlOriginatorDAO.java @@ -19,6 +19,9 @@ *******************************************************************************/ package org.eclipse.om2m.persistence.eclipselink.internal.dao; +import java.util.List; + +import org.eclipse.om2m.commons.constants.DBEntities; import org.eclipse.om2m.commons.entities.AccessControlOriginatorEntity; import org.eclipse.om2m.persistence.eclipselink.internal.DBTransactionJPAImpl; import org.eclipse.om2m.persistence.service.DBTransaction; @@ -30,19 +33,29 @@ import org.eclipse.om2m.persistence.service.DBTransaction; public class AccessControlOriginatorDAO extends AbstractDAO<AccessControlOriginatorEntity> { @Override - public AccessControlOriginatorEntity find(DBTransaction dbTransaction, - Object id) { + public AccessControlOriginatorEntity find(DBTransaction dbTransaction, Object id) { DBTransactionJPAImpl transaction = (DBTransactionJPAImpl) dbTransaction; - return transaction.getEm().find(AccessControlOriginatorEntity.class, id); + + + List<AccessControlOriginatorEntity> acoes = transaction.getEm().createQuery("select a from " + + DBEntities.ACCESSCONTROLORIGINATOR_ENTITY + " a where a.originatorID =\'" + id + "\'") + .getResultList(); + + for (AccessControlOriginatorEntity acoe : acoes) { + } + if (acoes.size() > 0) { + + return acoes.get(0); + } else { + return null; + } + } @Override - public void delete(DBTransaction dbTransaction, - AccessControlOriginatorEntity resource) { + public void delete(DBTransaction dbTransaction, AccessControlOriginatorEntity resource) { DBTransactionJPAImpl transaction = (DBTransactionJPAImpl) dbTransaction; transaction.getEm().remove(resource); } - - } diff --git a/org.eclipse.om2m.persistence.service/META-INF/MANIFEST.MF b/org.eclipse.om2m.persistence.service/META-INF/MANIFEST.MF index afe142fb..b863de4f 100644 --- a/org.eclipse.om2m.persistence.service/META-INF/MANIFEST.MF +++ b/org.eclipse.om2m.persistence.service/META-INF/MANIFEST.MF @@ -4,6 +4,7 @@ Bundle-Name: Service Bundle-SymbolicName: org.eclipse.om2m.persistence.service Bundle-Version: 1.0.0.qualifier Bundle-RequiredExecutionEnvironment: JavaSE-1.7 -Require-Bundle: org.eclipse.om2m.commons Export-Package: org.eclipse.om2m.persistence.service,org.eclipse.om2m. persistence.service.util +Import-Package: javax.persistence;version="1.0.0.SNAPSHOT" +Require-Bundle: org.eclipse.om2m.commons;bundle-version="1.0.0" |