junit
diff --git a/src/main/java/org/gcube/informationsystem/base/impl/entities/EntityElementImpl.java b/src/main/java/org/gcube/informationsystem/base/impl/entities/EntityElementImpl.java
index ccf169c..05fa6a4 100644
--- a/src/main/java/org/gcube/informationsystem/base/impl/entities/EntityElementImpl.java
+++ b/src/main/java/org/gcube/informationsystem/base/impl/entities/EntityElementImpl.java
@@ -1,11 +1,12 @@
package org.gcube.informationsystem.base.impl.entities;
import java.io.StringWriter;
+import java.util.UUID;
import org.gcube.com.fasterxml.jackson.annotation.JsonTypeName;
import org.gcube.informationsystem.base.impl.ElementImpl;
import org.gcube.informationsystem.base.reference.entities.EntityElement;
-import org.gcube.informationsystem.model.reference.properties.Header;
+import org.gcube.informationsystem.model.reference.properties.Metadata;
import org.gcube.informationsystem.serialization.ElementMapper;
/**
@@ -19,20 +20,31 @@ public abstract class EntityElementImpl extends ElementImpl implements EntityEle
*/
private static final long serialVersionUID = -4488771434017342703L;
- protected Header header;
+ protected UUID uuid;
+ protected Metadata metadata;
protected EntityElementImpl(){
super();
}
@Override
- public Header getHeader() {
- return header;
+ public UUID getUUID() {
+ return uuid;
+ }
+
+ @Override
+ public void setUUID(UUID uuid) {
+ this.uuid = uuid;
}
@Override
- public void setHeader(Header header){
- this.header = header;
+ public Metadata getMetadata() {
+ return metadata;
+ }
+
+ @Override
+ public void setMetadata(Metadata metadata){
+ this.metadata = metadata;
}
@Override
@@ -43,7 +55,7 @@ public abstract class EntityElementImpl extends ElementImpl implements EntityEle
return stringWriter.toString();
}catch(Exception e){
try {
- ElementMapper.marshal(this.header, stringWriter);
+ ElementMapper.marshal(this.metadata, stringWriter);
return stringWriter.toString();
} catch(Exception e1){
return super.toString();
diff --git a/src/main/java/org/gcube/informationsystem/base/impl/relations/RelationElementImpl.java b/src/main/java/org/gcube/informationsystem/base/impl/relations/RelationElementImpl.java
index 96c9587..c8142f6 100644
--- a/src/main/java/org/gcube/informationsystem/base/impl/relations/RelationElementImpl.java
+++ b/src/main/java/org/gcube/informationsystem/base/impl/relations/RelationElementImpl.java
@@ -1,10 +1,12 @@
package org.gcube.informationsystem.base.impl.relations;
+import java.util.UUID;
+
import org.gcube.com.fasterxml.jackson.annotation.JsonTypeName;
import org.gcube.informationsystem.base.impl.ElementImpl;
import org.gcube.informationsystem.base.reference.entities.EntityElement;
import org.gcube.informationsystem.base.reference.relations.RelationElement;
-import org.gcube.informationsystem.model.reference.properties.Header;
+import org.gcube.informationsystem.model.reference.properties.Metadata;
/**
* @author Luca Frosini (ISTI - CNR)
@@ -17,7 +19,8 @@ public abstract class RelationElementImpl();
}
+ public ContextImpl(UUID uuid) {
+ this(null, uuid);
+ }
+
public ContextImpl(String name) {
this(name, null);
}
@@ -47,9 +52,23 @@ public final class ContextImpl extends EntityElementImpl implements Context {
this();
this.name = name;
if(uuid == null){
- uuid = UUIDManager.generateValidRandomUUID();
+ uuid = UUIDManager.getInstance().generateValidRandomUUID();
}
- this.header = new HeaderImpl(uuid);
+ this.uuid = uuid;
+ this.metadata = new MetadataImpl();
+ }
+
+ /**
+ * @return the uuid
+ */
+ @Override
+ public UUID getUUID() {
+ return uuid;
+ }
+
+ @Override
+ public void setUUID(UUID uuid) {
+ this.uuid = uuid;
}
@Override
@@ -72,8 +91,8 @@ public final class ContextImpl extends EntityElementImpl implements Context {
public void setParent(UUID uuid) {
Context parent = null;
if(uuid!=null) {
- parent = new ContextImpl();
- parent.setHeader(new HeaderImpl(uuid));
+ parent = new ContextImpl(uuid);
+ parent.setMetadata(new MetadataImpl());
}
setParent(parent);
}
@@ -121,8 +140,8 @@ public final class ContextImpl extends EntityElementImpl implements Context {
@Override
public void addChild(UUID uuid) {
- Context child = new ContextImpl();
- child.setHeader(new HeaderImpl(uuid));
+ Context child = new ContextImpl(uuid);
+ child.setMetadata(new MetadataImpl());
addChild(child);
}
diff --git a/src/main/java/org/gcube/informationsystem/model/impl/entities/DummyFacet.java b/src/main/java/org/gcube/informationsystem/model/impl/entities/DummyFacet.java
index 6016911..20890ba 100644
--- a/src/main/java/org/gcube/informationsystem/model/impl/entities/DummyFacet.java
+++ b/src/main/java/org/gcube/informationsystem/model/impl/entities/DummyFacet.java
@@ -5,7 +5,7 @@ package org.gcube.informationsystem.model.impl.entities;
import java.util.UUID;
-import org.gcube.informationsystem.model.impl.properties.HeaderImpl;
+import org.gcube.informationsystem.model.impl.properties.MetadataImpl;
import org.gcube.informationsystem.model.reference.entities.Facet;
import org.gcube.informationsystem.types.reference.Change;
import org.gcube.informationsystem.types.reference.TypeMetadata;
@@ -25,7 +25,8 @@ public class DummyFacet extends FacetImpl implements Facet {
public DummyFacet(UUID uuid) {
super();
- this.header = new HeaderImpl(uuid);
+ this.uuid = uuid;
+ this.metadata = new MetadataImpl();
}
public DummyFacet(){
diff --git a/src/main/java/org/gcube/informationsystem/model/impl/entities/DummyResource.java b/src/main/java/org/gcube/informationsystem/model/impl/entities/DummyResource.java
index 17afe87..683bd41 100644
--- a/src/main/java/org/gcube/informationsystem/model/impl/entities/DummyResource.java
+++ b/src/main/java/org/gcube/informationsystem/model/impl/entities/DummyResource.java
@@ -5,7 +5,7 @@ package org.gcube.informationsystem.model.impl.entities;
import java.util.UUID;
-import org.gcube.informationsystem.model.impl.properties.HeaderImpl;
+import org.gcube.informationsystem.model.impl.properties.MetadataImpl;
import org.gcube.informationsystem.model.reference.entities.Resource;
import org.gcube.informationsystem.types.reference.Change;
import org.gcube.informationsystem.types.reference.TypeMetadata;
@@ -25,7 +25,8 @@ public class DummyResource extends ResourceImpl implements Resource {
public DummyResource(UUID uuid){
super();
- this.header = new HeaderImpl(uuid);
+ this.uuid = uuid;
+ this.metadata = new MetadataImpl();
}
public DummyResource(){
diff --git a/src/main/java/org/gcube/informationsystem/model/impl/entities/EntityImpl.java b/src/main/java/org/gcube/informationsystem/model/impl/entities/EntityImpl.java
index 677d8b4..87a6f43 100644
--- a/src/main/java/org/gcube/informationsystem/model/impl/entities/EntityImpl.java
+++ b/src/main/java/org/gcube/informationsystem/model/impl/entities/EntityImpl.java
@@ -20,7 +20,7 @@ public abstract class EntityImpl extends EntityElementImpl implements Entity {
protected EntityImpl(){
super();
- this.header = null;
+ this.metadata = null;
}
}
diff --git a/src/main/java/org/gcube/informationsystem/model/impl/entities/ResourceImpl.java b/src/main/java/org/gcube/informationsystem/model/impl/entities/ResourceImpl.java
index 0b8c1ba..a961f8c 100644
--- a/src/main/java/org/gcube/informationsystem/model/impl/entities/ResourceImpl.java
+++ b/src/main/java/org/gcube/informationsystem/model/impl/entities/ResourceImpl.java
@@ -177,14 +177,12 @@ public abstract class ResourceImpl extends EntityImpl implements Resource {
throw new RuntimeException(message);
}
- if (relation.getSource().getHeader()!= null &&
- relation.getSource().getHeader().getUUID() != null &&
- this.header !=null &&
- this.header.getUUID() != null &&
- relation.getSource().getHeader().getUUID().compareTo(this.header.getUUID())!=0) {
-
+ if (relation.getSource().getMetadata()!= null &&
+ relation.getSource().getUUID() != null &&
+ this.metadata !=null &&
+ this.uuid != null &&
+ relation.getSource().getUUID().compareTo(this.uuid)!=0) {
throw new RuntimeException(message);
-
}
if(relation.getSource()!=this){
diff --git a/src/main/java/org/gcube/informationsystem/model/impl/properties/VaultImpl.java b/src/main/java/org/gcube/informationsystem/model/impl/properties/EncryptedImpl.java
similarity index 72%
rename from src/main/java/org/gcube/informationsystem/model/impl/properties/VaultImpl.java
rename to src/main/java/org/gcube/informationsystem/model/impl/properties/EncryptedImpl.java
index 7042695..d60787f 100644
--- a/src/main/java/org/gcube/informationsystem/model/impl/properties/VaultImpl.java
+++ b/src/main/java/org/gcube/informationsystem/model/impl/properties/EncryptedImpl.java
@@ -5,13 +5,13 @@ package org.gcube.informationsystem.model.impl.properties;
import org.gcube.com.fasterxml.jackson.annotation.JsonIgnore;
import org.gcube.com.fasterxml.jackson.annotation.JsonTypeName;
-import org.gcube.informationsystem.model.reference.properties.Vault;
+import org.gcube.informationsystem.model.reference.properties.Encrypted;
/**
* @author Luca Frosini (ISTI - CNR)
*/
-@JsonTypeName(value = Vault.NAME)
-public class VaultImpl extends PropertyImpl implements Vault {
+@JsonTypeName(value = Encrypted.NAME)
+public class EncryptedImpl extends PropertyImpl implements Encrypted {
/**
* Generated Serial Version UID
@@ -21,7 +21,7 @@ public class VaultImpl extends PropertyImpl implements Vault {
@JsonIgnore
protected String value;
- public VaultImpl() {
+ public EncryptedImpl() {
super();
}
diff --git a/src/main/java/org/gcube/informationsystem/model/impl/properties/HeaderImpl.java b/src/main/java/org/gcube/informationsystem/model/impl/properties/MetadataImpl.java
similarity index 62%
rename from src/main/java/org/gcube/informationsystem/model/impl/properties/HeaderImpl.java
rename to src/main/java/org/gcube/informationsystem/model/impl/properties/MetadataImpl.java
index 2f3e706..4bee22d 100644
--- a/src/main/java/org/gcube/informationsystem/model/impl/properties/HeaderImpl.java
+++ b/src/main/java/org/gcube/informationsystem/model/impl/properties/MetadataImpl.java
@@ -4,49 +4,30 @@
package org.gcube.informationsystem.model.impl.properties;
import java.util.Date;
-import java.util.UUID;
import org.gcube.com.fasterxml.jackson.annotation.JsonTypeName;
-import org.gcube.informationsystem.model.reference.properties.Header;
+import org.gcube.informationsystem.model.reference.properties.Metadata;
/**
* @author Luca Frosini (ISTI - CNR)
*/
-@JsonTypeName(value=Header.NAME)
-public final class HeaderImpl extends PropertyImpl implements Header {
+@JsonTypeName(value=Metadata.NAME)
+public final class MetadataImpl extends PropertyImpl implements Metadata {
/**
* Generated Serial Version UID
*/
private static final long serialVersionUID = 5102553511155113169L;
- protected UUID uuid;
protected String createdBy;
protected Date creationTime;
protected String lastUpdateBy;
protected Date lastUpdateTime;
- public HeaderImpl() {
+ public MetadataImpl() {
super();
}
- public HeaderImpl(UUID uuid) {
- this.uuid = uuid;
- }
-
- /**
- * @return the uuid
- */
- @Override
- public UUID getUUID() {
- return uuid;
- }
-
- @Override
- public void setUUID(UUID uuid) {
- this.uuid = uuid;
- }
-
@Override
public String getCreatedBy() {
return createdBy;
diff --git a/src/main/java/org/gcube/informationsystem/model/reference/properties/Vault.java b/src/main/java/org/gcube/informationsystem/model/reference/properties/Encrypted.java
similarity index 68%
rename from src/main/java/org/gcube/informationsystem/model/reference/properties/Vault.java
rename to src/main/java/org/gcube/informationsystem/model/reference/properties/Encrypted.java
index 47789e5..22833f9 100644
--- a/src/main/java/org/gcube/informationsystem/model/reference/properties/Vault.java
+++ b/src/main/java/org/gcube/informationsystem/model/reference/properties/Encrypted.java
@@ -3,7 +3,7 @@ package org.gcube.informationsystem.model.reference.properties;
import org.gcube.com.fasterxml.jackson.annotation.JsonGetter;
import org.gcube.com.fasterxml.jackson.annotation.JsonSetter;
import org.gcube.com.fasterxml.jackson.databind.annotation.JsonDeserialize;
-import org.gcube.informationsystem.model.impl.properties.VaultImpl;
+import org.gcube.informationsystem.model.impl.properties.EncryptedImpl;
import org.gcube.informationsystem.types.annotations.ISProperty;
import org.gcube.informationsystem.types.reference.Change;
import org.gcube.informationsystem.types.reference.TypeMetadata;
@@ -12,12 +12,12 @@ import org.gcube.informationsystem.utils.Version;
/**
* @author Luca Frosini (ISTI - CNR)
*/
-@JsonDeserialize(as=VaultImpl.class)
-@TypeMetadata(name = Vault.NAME, description = "This type is used to properly manage values must be stored safely (e.g. encrypted) in the IS.", version = Version.MINIMAL_VERSION_STRING)
+@JsonDeserialize(as=EncryptedImpl.class)
+@TypeMetadata(name = Encrypted.NAME, description = "This type is used to properly manage values must be stored safely (e.g. encrypted) in the IS.", version = Version.MINIMAL_VERSION_STRING)
@Change(version = Version.MINIMAL_VERSION_STRING, description = Version.MINIMAL_VERSION_DESCRIPTION)
-public interface Vault extends Property {
+public interface Encrypted extends Property {
- public static final String NAME = "Vault"; // Vault.class.getSimpleName();
+ public static final String NAME = "Encrypted"; // Encrypted.class.getSimpleName();
public static final String VALUE = "value";
diff --git a/src/main/java/org/gcube/informationsystem/model/reference/properties/Header.java b/src/main/java/org/gcube/informationsystem/model/reference/properties/Metadata.java
similarity index 75%
rename from src/main/java/org/gcube/informationsystem/model/reference/properties/Header.java
rename to src/main/java/org/gcube/informationsystem/model/reference/properties/Metadata.java
index 1b5199e..3b7a298 100644
--- a/src/main/java/org/gcube/informationsystem/model/reference/properties/Header.java
+++ b/src/main/java/org/gcube/informationsystem/model/reference/properties/Metadata.java
@@ -4,12 +4,11 @@
package org.gcube.informationsystem.model.reference.properties;
import java.util.Date;
-import java.util.UUID;
import org.gcube.com.fasterxml.jackson.annotation.JsonFormat;
import org.gcube.com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import org.gcube.informationsystem.base.reference.Element;
-import org.gcube.informationsystem.model.impl.properties.HeaderImpl;
+import org.gcube.informationsystem.model.impl.properties.MetadataImpl;
import org.gcube.informationsystem.types.annotations.Final;
import org.gcube.informationsystem.types.annotations.ISProperty;
import org.gcube.informationsystem.types.reference.Change;
@@ -17,31 +16,28 @@ import org.gcube.informationsystem.types.reference.TypeMetadata;
import org.gcube.informationsystem.utils.Version;
/**
- * https://wiki.gcube-system.org/gcube/Facet_Based_Resource_Model#Header
- *
* @author Luca Frosini (ISTI - CNR)
*/
-@JsonDeserialize(as=HeaderImpl.class)
-@TypeMetadata(name = Header.NAME, description = "This type provides metadata per every IdentifiableElement", version = Version.MINIMAL_VERSION_STRING)
+@JsonDeserialize(as=MetadataImpl.class)
+@TypeMetadata(name = Metadata.NAME, description = "This type provides metadata per every IdentifiableElement", version = Version.MINIMAL_VERSION_STRING)
@Change(version = Version.MINIMAL_VERSION_STRING, description = Version.MINIMAL_VERSION_DESCRIPTION)
@Final
-public interface Header extends Property {
+public interface Metadata extends Property {
- public static final String NAME = "Header"; // Header.class.getSimpleName();
+ public static final String NAME = "Metadata"; // Metadata.class.getSimpleName();
/**
* Used to set Creator when the user is not known
*/
public static final String UNKNOWN_USER = "UNKNOWN_USER";
- public static final String UUID_PROPERTY = "uuid";
public static final String CREATED_BY_PROPERTY = "createdBy";
public static final String CREATION_TIME_PROPERTY = "creationTime";
public static final String LAST_UPDATE_BY_PROPERTY = "lastUpdateBy";
public static final String LAST_UPDATE_TIME_PROPERTY = "lastUpdateTime";
/**
- * Used when requested to include contexts in header.
+ * Used when requested to include contexts in metadata.
* This is not a native property (it is just generated by server for administration clients convenience)
*/
public static final String __CONTEXTS = "contexts";
@@ -59,10 +55,5 @@ public interface Header extends Property {
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = Element.DATETIME_PATTERN)
@ISProperty(name = LAST_UPDATE_TIME_PROPERTY, description = "Last Update time. At creation time it assumes the same value of " + CREATION_TIME_PROPERTY + ". It is represented in the format " + Element.DATETIME_PATTERN, mandatory = true, nullable = false)
public Date getLastUpdateTime();
-
- @ISProperty(name = UUID_PROPERTY, description = "This UUID is be used to identify the Entity or the Relation univocally.", readonly = true, mandatory = true, nullable = false)
- public UUID getUUID();
-
- public void setUUID(UUID uuid);
}
\ No newline at end of file
diff --git a/src/main/java/org/gcube/informationsystem/model/reference/relations/Relation.java b/src/main/java/org/gcube/informationsystem/model/reference/relations/Relation.java
index d033095..33d4ecc 100644
--- a/src/main/java/org/gcube/informationsystem/model/reference/relations/Relation.java
+++ b/src/main/java/org/gcube/informationsystem/model/reference/relations/Relation.java
@@ -37,7 +37,7 @@ public interface Relation extends Relation
public static final String NAME = "Relation"; //Relation.class.getSimpleName();
- public static final String PROPAGATION_CONSTRAINT_PROPERTY = "propagationConstraint";
+ public static final String PROPAGATION_CONSTRAINT_PROPERTY = "@propagationConstraint";
@JsonIgnoreProperties({Resource.CONSISTS_OF_PROPERTY, Resource.IS_RELATED_TO_PROPERTY})
@JsonGetter(value = SOURCE_PROPERTY)
diff --git a/src/main/java/org/gcube/informationsystem/types/impl/TypeImpl.java b/src/main/java/org/gcube/informationsystem/types/impl/TypeImpl.java
index 5816cdf..2f54793 100644
--- a/src/main/java/org/gcube/informationsystem/types/impl/TypeImpl.java
+++ b/src/main/java/org/gcube/informationsystem/types/impl/TypeImpl.java
@@ -8,6 +8,7 @@ import java.util.HashSet;
import java.util.Map;
import java.util.Set;
import java.util.TreeSet;
+import java.util.UUID;
import org.gcube.com.fasterxml.jackson.annotation.JsonGetter;
import org.gcube.com.fasterxml.jackson.annotation.JsonIgnore;
@@ -20,7 +21,7 @@ import org.gcube.informationsystem.base.reference.Element;
import org.gcube.informationsystem.base.reference.entities.EntityElement;
import org.gcube.informationsystem.base.reference.properties.PropertyElement;
import org.gcube.informationsystem.base.reference.relations.RelationElement;
-import org.gcube.informationsystem.model.reference.properties.Header;
+import org.gcube.informationsystem.model.reference.properties.Metadata;
import org.gcube.informationsystem.types.TypeMapper;
import org.gcube.informationsystem.types.annotations.Abstract;
import org.gcube.informationsystem.types.annotations.Final;
@@ -57,8 +58,8 @@ public class TypeImpl implements Type {
DEFAULT_CHANGELOG_MAP_KEY_AS_STRING.put(Version.MINIMAL_VERSION_STRING, Version.MINIMAL_VERSION_DESCRIPTION);
}
-
- protected Header header;
+ protected UUID uuid;
+ protected Metadata metadata;
protected String name;
protected String description;
@@ -186,15 +187,25 @@ public class TypeImpl implements Type {
}
}
-
+
@Override
- public Header getHeader() {
- return header;
+ public UUID getUUID() {
+ return uuid;
}
@Override
- public void setHeader(Header header) {
- this.header = header;
+ public void setUUID(UUID uuid) {
+ this.uuid = uuid;
+ }
+
+ @Override
+ public Metadata getMetadata() {
+ return metadata;
+ }
+
+ @Override
+ public void setMetadata(Metadata metadata) {
+ this.metadata = metadata;
}
@Override
diff --git a/src/main/java/org/gcube/informationsystem/types/impl/entities/EntityTypeImpl.java b/src/main/java/org/gcube/informationsystem/types/impl/entities/EntityTypeImpl.java
index 4aa1c7f..501c134 100644
--- a/src/main/java/org/gcube/informationsystem/types/impl/entities/EntityTypeImpl.java
+++ b/src/main/java/org/gcube/informationsystem/types/impl/entities/EntityTypeImpl.java
@@ -11,7 +11,7 @@ import org.gcube.informationsystem.base.reference.entities.EntityElement;
import org.gcube.informationsystem.contexts.reference.entities.Context;
import org.gcube.informationsystem.model.reference.entities.Facet;
import org.gcube.informationsystem.model.reference.entities.Resource;
-import org.gcube.informationsystem.model.reference.properties.Header;
+import org.gcube.informationsystem.model.reference.properties.Metadata;
import org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate;
import org.gcube.informationsystem.serialization.ElementMapper;
import org.gcube.informationsystem.types.impl.TypeImpl;
@@ -91,16 +91,16 @@ public class EntityTypeImpl extends TypeImpl implements EntityType {
* We need to copy them.
*/
- protected Header header;
+ protected Metadata metadata;
@Override
- public Header getHeader() {
- return header;
+ public Metadata getMetadata() {
+ return metadata;
}
@Override
- public void setHeader(Header header){
- this.header = header;
+ public void setMetadata(Metadata metadata){
+ this.metadata = metadata;
}
@Override
@@ -111,7 +111,7 @@ public class EntityTypeImpl extends TypeImpl implements EntityType {
return stringWriter.toString();
}catch(Exception e){
try {
- ElementMapper.marshal(this.header, stringWriter);
+ ElementMapper.marshal(this.metadata, stringWriter);
return stringWriter.toString();
} catch(Exception e1){
return super.toString();
diff --git a/src/main/java/org/gcube/informationsystem/types/impl/properties/PropertyTypeImpl.java b/src/main/java/org/gcube/informationsystem/types/impl/properties/PropertyTypeImpl.java
index bb5c9bf..cb2740e 100644
--- a/src/main/java/org/gcube/informationsystem/types/impl/properties/PropertyTypeImpl.java
+++ b/src/main/java/org/gcube/informationsystem/types/impl/properties/PropertyTypeImpl.java
@@ -83,7 +83,7 @@ public final class PropertyTypeImpl extends TypeImpl
return stringWriter.toString();
}catch(Exception e){
try {
- ElementMapper.marshal(this.header, stringWriter);
+ ElementMapper.marshal(this.metadata, stringWriter);
return stringWriter.toString();
} catch(Exception e1){
return super.toString();
diff --git a/src/main/java/org/gcube/informationsystem/types/impl/relations/RelationTypeImpl.java b/src/main/java/org/gcube/informationsystem/types/impl/relations/RelationTypeImpl.java
index 8cdea4d..9293b75 100644
--- a/src/main/java/org/gcube/informationsystem/types/impl/relations/RelationTypeImpl.java
+++ b/src/main/java/org/gcube/informationsystem/types/impl/relations/RelationTypeImpl.java
@@ -167,7 +167,7 @@ public class RelationTypeImpl
return stringWriter.toString();
}catch(Exception e){
try {
- ElementMapper.marshal(this.header, stringWriter);
+ ElementMapper.marshal(this.metadata, stringWriter);
return stringWriter.toString();
} catch(Exception e1){
return super.toString();
diff --git a/src/main/java/org/gcube/informationsystem/types/reference/properties/PropertyType.java b/src/main/java/org/gcube/informationsystem/types/reference/properties/PropertyType.java
index 70e805c..32bfe4b 100644
--- a/src/main/java/org/gcube/informationsystem/types/reference/properties/PropertyType.java
+++ b/src/main/java/org/gcube/informationsystem/types/reference/properties/PropertyType.java
@@ -6,7 +6,7 @@ import org.gcube.com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import org.gcube.com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import org.gcube.informationsystem.base.reference.IdentifiableElement;
import org.gcube.informationsystem.base.reference.properties.PropertyElement;
-import org.gcube.informationsystem.model.reference.properties.Header;
+import org.gcube.informationsystem.model.reference.properties.Metadata;
import org.gcube.informationsystem.types.annotations.Final;
import org.gcube.informationsystem.types.annotations.ISProperty;
import org.gcube.informationsystem.types.impl.properties.PropertyTypeImpl;
@@ -27,10 +27,10 @@ public interface PropertyType
extends PropertyElement
public static final String NAME = "PropertyType"; // PropertyTypeDefinition.class.getSimpleName();
- @ISProperty(name=IdentifiableElement.HEADER_PROPERTY, mandatory=true, nullable=false)
- public Header getHeader();
+ @ISProperty(name=IdentifiableElement.METADATA_PROPERTY, mandatory=true, nullable=false)
+ public Metadata getMetadata();
- public void setHeader(Header header);
+ public void setMetadata(Metadata metadata);
/* TypeDefinition is just a Java useful class. The type is not created in the IS. Hence the fields must be redefined */
diff --git a/src/main/java/org/gcube/informationsystem/utils/UUIDManager.java b/src/main/java/org/gcube/informationsystem/utils/UUIDManager.java
index a583580..bb6a8f3 100644
--- a/src/main/java/org/gcube/informationsystem/utils/UUIDManager.java
+++ b/src/main/java/org/gcube/informationsystem/utils/UUIDManager.java
@@ -10,8 +10,17 @@ import java.util.UUID;
*/
public final class UUIDManager {
- public static final Set RESERVED_UUID_STRING;
- public static final Set RESERVED_UUID;
+ private static final Set RESERVED_UUID_STRING;
+ private static final Set RESERVED_UUID;
+
+ private static UUIDManager uuidManager;
+
+ public static UUIDManager getInstance() {
+ if(uuidManager==null) {
+ uuidManager = new UUIDManager();
+ }
+ return uuidManager;
+ }
private UUIDManager() {
@@ -31,27 +40,29 @@ public final class UUIDManager {
}
}
- public static boolean isReservedUUID(UUID uuid) {
+ public boolean isReservedUUID(UUID uuid) {
return RESERVED_UUID.contains(uuid);
}
- public static boolean isReservedUUID(String uuid) {
+ public boolean isReservedUUID(String uuid) {
return RESERVED_UUID_STRING.contains(uuid);
}
- public static Set getAllReservedUUIDAsStrings(){
+ public Set getAllReservedUUIDAsStrings(){
return new TreeSet<>(RESERVED_UUID_STRING);
}
- public static Set getAllReservedUUID(){
+ public Set getAllReservedUUID(){
return new TreeSet<>(RESERVED_UUID);
}
- public static UUID generateValidRandomUUID() {
+ public UUID generateValidRandomUUID() {
UUID generated = UUID.randomUUID();
while(RESERVED_UUID.contains(generated)) {
generated = UUID.randomUUID();
}
return generated;
}
+
+
}
diff --git a/src/main/java/org/gcube/informationsystem/utils/Utility.java b/src/main/java/org/gcube/informationsystem/utils/Utility.java
index 47aeeac..67f0c85 100644
--- a/src/main/java/org/gcube/informationsystem/utils/Utility.java
+++ b/src/main/java/org/gcube/informationsystem/utils/Utility.java
@@ -9,8 +9,7 @@ import java.util.UUID;
import org.gcube.com.fasterxml.jackson.core.JsonProcessingException;
import org.gcube.com.fasterxml.jackson.databind.JsonNode;
import org.gcube.com.fasterxml.jackson.databind.ObjectMapper;
-import org.gcube.informationsystem.model.reference.entities.Entity;
-import org.gcube.informationsystem.model.reference.properties.Header;
+import org.gcube.informationsystem.base.reference.IdentifiableElement;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -22,14 +21,13 @@ public class Utility {
private static Logger logger = LoggerFactory.getLogger(Utility.class);
public static UUID getUUIDFromJsonNode(JsonNode jsonNode){
- JsonNode header = jsonNode.get(Entity.HEADER_PROPERTY);
- UUID uuid = UUID.fromString(header.get(Header.UUID_PROPERTY).asText());
+ UUID uuid = UUID.fromString(jsonNode.get(IdentifiableElement.UUID_PROPERTY).asText());
logger.trace("UUID got from {} is : {} ", jsonNode.toString(), uuid);
return uuid;
}
public static UUID getUUIDFromJSONString(String json) throws JsonProcessingException, IOException {
- logger.trace("Trying to get UUID from {} of {} ", Header.class.getSimpleName(), json);
+ logger.trace("Trying to get UUID of {} ", json);
JsonNode jsonNode = getJSONNode(json);
return getUUIDFromJsonNode(jsonNode);
}
diff --git a/src/test/java/org/gcube/informationsystem/ContextTest.java b/src/test/java/org/gcube/informationsystem/ContextTest.java
index 2f32ff6..d6b405f 100644
--- a/src/test/java/org/gcube/informationsystem/ContextTest.java
+++ b/src/test/java/org/gcube/informationsystem/ContextTest.java
@@ -15,7 +15,7 @@ import org.gcube.common.authorization.utils.secret.SecretUtility;
import org.gcube.common.keycloak.KeycloakClientFactory;
import org.gcube.common.keycloak.model.TokenResponse;
import org.gcube.common.scope.api.ScopeProvider;
-import org.gcube.informationsystem.model.reference.properties.Header;
+import org.gcube.informationsystem.model.reference.properties.Metadata;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.slf4j.Logger;
@@ -112,7 +112,7 @@ public class ContextTest {
}
public static String getUser() {
- String user = Header.UNKNOWN_USER;
+ String user = Metadata.UNKNOWN_USER;
try {
user = SecretManagerProvider.instance.get().getUser().getUsername();
} catch(Exception e) {
diff --git a/src/test/java/org/gcube/informationsystem/model/impl/properties/HeaderTest.java b/src/test/java/org/gcube/informationsystem/model/impl/properties/HeaderTest.java
deleted file mode 100644
index 97b47d5..0000000
--- a/src/test/java/org/gcube/informationsystem/model/impl/properties/HeaderTest.java
+++ /dev/null
@@ -1,67 +0,0 @@
-package org.gcube.informationsystem.model.impl.properties;
-
-import java.io.IOException;
-import java.util.Calendar;
-import java.util.Date;
-import java.util.List;
-import java.util.UUID;
-
-import org.gcube.com.fasterxml.jackson.core.JsonParseException;
-import org.gcube.com.fasterxml.jackson.databind.JsonMappingException;
-import org.gcube.informationsystem.model.reference.properties.Header;
-import org.gcube.informationsystem.model.reference.properties.Property;
-import org.gcube.informationsystem.serialization.ElementMapper;
-import org.junit.Assert;
-import org.junit.Test;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * @author Luca Frosini (ISTI - CNR)
- */
-public class HeaderTest {
-
- private static Logger logger = LoggerFactory.getLogger(HeaderTest.class);
-
- @Test
- public void headerTest() throws Exception {
- HeaderImpl header = new HeaderImpl(UUID.randomUUID());
- Date date = Calendar.getInstance().getTime();
- header.creationTime = date;
- header.lastUpdateTime = date;
- header.createdBy = Header.UNKNOWN_USER;
-
- String json = ElementMapper.marshal(header);
- logger.debug(json);
-
-
- Property property = ElementMapper.unmarshal(Property.class, json);
- Assert.assertTrue(property instanceof Header);
- Assert.assertTrue(((Header) property).getCreationTime().compareTo(date)==0);
- Assert.assertTrue(((Header) property).getLastUpdateTime().compareTo(date)==0);
- logger.debug(ElementMapper.marshal(property));
-
- Header h = ElementMapper.unmarshal(Header.class, json);
- Assert.assertTrue(property instanceof Header);
- Assert.assertTrue(h.getCreationTime().compareTo(date)==0);
- Assert.assertTrue(h.getLastUpdateTime().compareTo(date)==0);
- logger.debug(ElementMapper.marshal(h));
- }
-
- @Test
- public void testContextsInHeader() throws JsonParseException, JsonMappingException, IOException {
-
- String headerJson = "{\"@class\":\"Header\",\"uuid\":\"cee84aaf-030c-4170-b554-836e7df3f611\",\"creator\":\"UNKNOWN_USER\",\"modifiedBy\":null,\"creationTime\":\"2020-11-09 10:01:25.415 +0000\",\"lastUpdateTime\":\"2020-11-09 10:01:25.415 +0000\",\"contexts\":[\"167114e0-9027-4e9e-83af-57973a8f8f08\",\"bad5f350-345c-11e9-9f49-cef9b1608c3f\"]}";
-
- Property property = ElementMapper.unmarshal(Property.class, headerJson);
- logger.debug("{}", property);
-
- Header h = ElementMapper.unmarshal(Header.class, headerJson);
- logger.debug("{}", h);
-
- @SuppressWarnings("unchecked")
- List contexts = (List) h.getAdditionalProperty(Header.__CONTEXTS);
- logger.debug("Contexts UUIDs are {}", contexts);
- }
-
-}
diff --git a/src/test/java/org/gcube/informationsystem/model/impl/properties/MetadataTest.java b/src/test/java/org/gcube/informationsystem/model/impl/properties/MetadataTest.java
new file mode 100644
index 0000000..8b4349c
--- /dev/null
+++ b/src/test/java/org/gcube/informationsystem/model/impl/properties/MetadataTest.java
@@ -0,0 +1,77 @@
+package org.gcube.informationsystem.model.impl.properties;
+
+import java.io.IOException;
+import java.util.Calendar;
+import java.util.Date;
+import java.util.Map;
+
+import org.gcube.com.fasterxml.jackson.core.JsonParseException;
+import org.gcube.com.fasterxml.jackson.databind.JsonMappingException;
+import org.gcube.informationsystem.model.reference.properties.Metadata;
+import org.gcube.informationsystem.model.reference.properties.Property;
+import org.gcube.informationsystem.serialization.ElementMapper;
+import org.junit.Assert;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * @author Luca Frosini (ISTI - CNR)
+ */
+public class MetadataTest {
+
+ private static Logger logger = LoggerFactory.getLogger(MetadataTest.class);
+
+ @Test
+ public void metadataTest() throws Exception {
+ MetadataImpl metadata = new MetadataImpl();
+ Date date = Calendar.getInstance().getTime();
+ metadata.creationTime = date;
+ metadata.lastUpdateTime = date;
+ metadata.createdBy = Metadata.UNKNOWN_USER;
+ metadata.lastUpdateBy = Metadata.UNKNOWN_USER;
+
+ String json = ElementMapper.marshal(metadata);
+ logger.debug(json);
+
+
+ Property property = ElementMapper.unmarshal(Property.class, json);
+ Assert.assertTrue(property instanceof Metadata);
+ Assert.assertTrue(((Metadata) property).getCreationTime().compareTo(date)==0);
+ Assert.assertTrue(((Metadata) property).getLastUpdateTime().compareTo(date)==0);
+ logger.debug(ElementMapper.marshal(property));
+
+ Metadata h = ElementMapper.unmarshal(Metadata.class, json);
+ Assert.assertTrue(property instanceof Metadata);
+ Assert.assertTrue(h.getCreationTime().compareTo(date)==0);
+ Assert.assertTrue(h.getLastUpdateTime().compareTo(date)==0);
+ logger.debug(ElementMapper.marshal(h));
+ }
+
+ @Test
+ public void testContextsInMetadata() throws JsonParseException, JsonMappingException, IOException {
+
+ String metadataJson =
+ "{"
+ + "\"@class\":\"Metadata\","
+ + "\"createdBy\":\"UNKNOWN_USER\","
+ + "\"lastUpdateBy\":\"UNKNOWN_USER\","
+ + "\"creationTime\":\"2020-11-09 10:01:25.415 +0000\","
+ + "\"lastUpdateTime\":\"2020-11-09 10:01:25.415 +0000\","
+ + "\"contexts\": {"
+ + "\"bad5f350-345c-11e9-9f49-cef9b1608c3f\": \"/gcube/devNext/NextNext\""
+ + "}"
+ + "}";
+
+ Property property = ElementMapper.unmarshal(Property.class, metadataJson);
+ logger.debug("{}", property);
+
+ Metadata h = ElementMapper.unmarshal(Metadata.class, metadataJson);
+ logger.debug("{}", h);
+
+ @SuppressWarnings("unchecked")
+ Map contexts = (Map) h.getAdditionalProperty(Metadata.__CONTEXTS);
+ logger.debug("Contexts UUIDs are {}", contexts);
+ }
+
+}
diff --git a/src/test/java/org/gcube/informationsystem/model/impl/properties/PropagationConstraintTest.java b/src/test/java/org/gcube/informationsystem/model/impl/properties/PropagationConstraintTest.java
index 1cfcf5d..5e8500b 100644
--- a/src/test/java/org/gcube/informationsystem/model/impl/properties/PropagationConstraintTest.java
+++ b/src/test/java/org/gcube/informationsystem/model/impl/properties/PropagationConstraintTest.java
@@ -1,7 +1,6 @@
package org.gcube.informationsystem.model.impl.properties;
import java.util.Calendar;
-import java.util.UUID;
import org.gcube.informationsystem.base.reference.Element;
import org.gcube.informationsystem.model.reference.entities.Facet;
@@ -116,48 +115,38 @@ public class PropagationConstraintTest {
"}";
logger.debug(pcString);
- HeaderImpl header = new HeaderImpl();
- header.setUUID(UUID.randomUUID());
- header.createdBy = "luca.frosini";
- header.lastUpdateBy = "luca.frosini";
- header.creationTime = Calendar.getInstance().getTime();
- header.lastUpdateTime = Calendar.getInstance().getTime();
+ MetadataImpl metadata = new MetadataImpl();
+ metadata.createdBy = "luca.frosini";
+ metadata.lastUpdateBy = "luca.frosini";
+ metadata.creationTime = Calendar.getInstance().getTime();
+ metadata.lastUpdateTime = Calendar.getInstance().getTime();
- String hString = ElementMapper.marshal(header);
+ String hString = ElementMapper.marshal(metadata);
String consistsOfString = "{" +
"\"" + Element.CLASS_PROPERTY + "\":\"" + ConsistsOf.NAME + "\"," +
"\"" + ConsistsOf.PROPAGATION_CONSTRAINT_PROPERTY + "\":"+ pcString + "," +
- "\"" + ConsistsOf.HEADER_PROPERTY + "\": " + hString + "," +
+ "\"" + ConsistsOf.METADATA_PROPERTY + "\": " + hString + "," +
"\"" + ConsistsOf.SOURCE_PROPERTY + "\":{" +
+ "\"@uuid\":\"4a971915-ca90-48cf-9975-63ee2dd28605\"," +
"\"@class\":\"MyEService\"," +
"\"@superClasses\":[\"EService\", \"Service\", \"Resource\"]," +
- "\"header\":"+ "{" +
- "\"@class\":\"Header\"," +
- "\"uuid\":\"4a971915-ca90-48cf-9975-63ee2dd28605\"," +
- "\"creator\":null, " +
- "\"creationTime\":null, " +
- "\"lastUpdateTime\":null}" +
+ "\"" + ConsistsOf.METADATA_PROPERTY + "\": " + hString +
"}," +
"\"" + ConsistsOf.TARGET_PROPERTY + "\":{" +
+ "\"@uuid\":\"3ace4bd0-e5cd-49a3-97a8-a0a9468ce6d4\"," +
"\"@class\":\"MySoftwareFacet\"," +
"\"@superClasses\":[\"SoftwareFacet\", \"Facet\"]," +
- "\"header\":"+ "{" +
- "\"@class\":\"Header\"," +
- "\"uuid\":\"3ace4bd0-e5cd-49a3-97a8-a0a9468ce6d4\"," +
- "\"creator\":null, " +
- "\"creationTime\":null, " +
- "\"lastUpdateTime\":null" +
- "}" +
- ",\"name\":\"WhnManager\"," +
+ "\"" + ConsistsOf.METADATA_PROPERTY + "\": " + hString + "," +
+ "\"name\":\"WhnManager\"," +
"\"group\":\"VREManagement\"," +
"\"version\":\"2.0.0-SNAPSHOT\"," +
"\"description\":\"Web Hosting Node Service\"," +
"\"qualifier\":null,\"optional\":false" +
"}" +
"}";
- logger.debug(consistsOfString);
+ logger.debug("--- {}", consistsOfString);
@SuppressWarnings("unchecked")
ConsistsOf consistsOf = ElementMapper.unmarshal(ConsistsOf.class, consistsOfString);
diff --git a/src/test/java/org/gcube/informationsystem/types/EntitySchemaDefinition.java b/src/test/java/org/gcube/informationsystem/types/EntitySchemaDefinition.java
index 4aec746..8c74b5b 100644
--- a/src/test/java/org/gcube/informationsystem/types/EntitySchemaDefinition.java
+++ b/src/test/java/org/gcube/informationsystem/types/EntitySchemaDefinition.java
@@ -6,7 +6,7 @@ package org.gcube.informationsystem.types;
import org.gcube.informationsystem.base.reference.Element;
import org.gcube.informationsystem.base.reference.properties.PropertyElement;
import org.gcube.informationsystem.model.reference.entities.Resource;
-import org.gcube.informationsystem.model.reference.properties.Header;
+import org.gcube.informationsystem.model.reference.properties.Metadata;
import org.gcube.informationsystem.model.reference.relations.IsRelatedTo;
import org.junit.Test;
import org.slf4j.Logger;
@@ -21,7 +21,7 @@ public class EntitySchemaDefinition {
@Test
public void test() throws Exception {
- Class extends PropertyElement> clz = Header.class;
+ Class extends PropertyElement> clz = Metadata.class;
String json = TypeMapper.serializeType(clz);
logger.trace(json);
}
diff --git a/src/test/java/org/gcube/informationsystem/types/SerializationTest.java b/src/test/java/org/gcube/informationsystem/types/SerializationTest.java
index 9f9c19b..1c2f78f 100644
--- a/src/test/java/org/gcube/informationsystem/types/SerializationTest.java
+++ b/src/test/java/org/gcube/informationsystem/types/SerializationTest.java
@@ -8,10 +8,10 @@ import org.gcube.informationsystem.contexts.reference.relations.IsParentOf;
import org.gcube.informationsystem.model.reference.entities.Entity;
import org.gcube.informationsystem.model.reference.entities.Facet;
import org.gcube.informationsystem.model.reference.entities.Resource;
-import org.gcube.informationsystem.model.reference.properties.Header;
+import org.gcube.informationsystem.model.reference.properties.Metadata;
import org.gcube.informationsystem.model.reference.properties.PropagationConstraint;
import org.gcube.informationsystem.model.reference.properties.Property;
-import org.gcube.informationsystem.model.reference.properties.Vault;
+import org.gcube.informationsystem.model.reference.properties.Encrypted;
import org.gcube.informationsystem.model.reference.relations.ConsistsOf;
import org.gcube.informationsystem.model.reference.relations.IsRelatedTo;
import org.gcube.informationsystem.model.reference.relations.Relation;
@@ -89,9 +89,9 @@ public class SerializationTest {
logger.info(ElementMapper.marshal(property));
@SuppressWarnings("unchecked")
- PropertyType header = (PropertyType) TypeMapper.createTypeDefinition(Header.class);
- Assert.assertTrue(header.getAccessType()==AccessType.PROPERTY);
- logger.info(ElementMapper.marshal(header));
+ PropertyType metadataType = (PropertyType) TypeMapper.createTypeDefinition(Metadata.class);
+ Assert.assertTrue(metadataType.getAccessType()==AccessType.PROPERTY);
+ logger.info(ElementMapper.marshal(metadataType));
@SuppressWarnings("unchecked")
PropertyType propagationConstraint = (PropertyType) TypeMapper.createTypeDefinition(PropagationConstraint.class);
@@ -99,7 +99,7 @@ public class SerializationTest {
logger.info(ElementMapper.marshal(propagationConstraint));
@SuppressWarnings("unchecked")
- PropertyType vault = (PropertyType) TypeMapper.createTypeDefinition(Vault.class);
+ PropertyType vault = (PropertyType) TypeMapper.createTypeDefinition(Encrypted.class);
Assert.assertTrue(vault.getAccessType()==AccessType.PROPERTY);
logger.info(ElementMapper.marshal(vault));
@@ -198,19 +198,19 @@ public class SerializationTest {
@Test
public void testTypeSerialization() throws Exception {
- String serialized = TypeMapper.serializeType(Header.class);
+ String serialized = TypeMapper.serializeType(Metadata.class);
logger.info(serialized);
@SuppressWarnings("unchecked")
- PropertyType propertyType = (PropertyType) TypeMapper.deserializeTypeDefinition(serialized);
+ PropertyType propertyType = (PropertyType) TypeMapper.deserializeTypeDefinition(serialized);
Version typeVersion = propertyType.getVersion();
logger.debug("Version {}", typeVersion.toString());
logger.info(ElementMapper.marshal(propertyType));
- String json = "{\"@class\":\"PropertyType\",\"header\":null,\"name\":\"Header\",\"description\":\"This class provides metadata per every IdentifiableElement\",\"superClasses\":[\"Property\"],\"properties\":[{\"@class\":\"PropertyDefinition\",\"name\":\"creationTime\",\"description\":\"Creation time. It represents the difference, measured in milliseconds, between the creation time and midnight, January 1, 1970, UTC.\",\"mandatory\":true,\"readonly\":true,\"notnull\":true,\"max\":null,\"min\":null,\"regexp\":null,\"type\":\"Date\"},{\"@class\":\"PropertyDefinition\",\"name\":\"lastUpdateTime\",\"description\":\"Last Update time. At creation time it assumes the same value of creationTime. It represents the difference, measured in milliseconds, between the creation time and midnight, January 1, 1970, UTC.\",\"mandatory\":true,\"readonly\":false,\"notnull\":true,\"max\":null,\"min\":null,\"regexp\":null,\"type\":\"Date\"},{\"@class\":\"PropertyDefinition\",\"name\":\"createdBy\",\"description\":\"The user that created the Entity or the Relation. It is initialized at creation time. \",\"mandatory\":true,\"readonly\":true,\"notnull\":true,\"max\":null,\"min\":null,\"regexp\":null,\"type\":\"String\"},{\"@class\":\"PropertyDefinition\",\"name\":\"uuid\",\"description\":\"This UUID is be used to identify the Entity or the Relation univocally.\",\"mandatory\":true,\"readonly\":true,\"notnull\":true,\"max\":null,\"min\":null,\"regexp\":\"^([a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}){1}$\",\"type\":\"String\"},{\"@class\":\"PropertyDefinition\",\"name\":\"lastUpdateBy\",\"description\":\"The user that made the last update to the Entity or the Relation. At creation time, it assumes the same value of creator.\",\"mandatory\":true,\"readonly\":false,\"notnull\":true,\"max\":null,\"min\":null,\"regexp\":null,\"type\":\"String\"}],\"accessType\":\"PROPERTY\",\"abstract\":false,\"version\":\"1.0.0\",\"changelog\":{\"1.0.0\":\"First Version\"}}";
+ String json = "{\"@class\":\"PropertyType\",\"metadata\":null,\"name\":\"Metadata\",\"description\":\"This class provides metadata per every IdentifiableElement\",\"superClasses\":[\"Property\"],\"properties\":[{\"@class\":\"PropertyDefinition\",\"name\":\"creationTime\",\"description\":\"Creation time. It represents the difference, measured in milliseconds, between the creation time and midnight, January 1, 1970, UTC.\",\"mandatory\":true,\"readonly\":true,\"notnull\":true,\"max\":null,\"min\":null,\"regexp\":null,\"type\":\"Date\"},{\"@class\":\"PropertyDefinition\",\"name\":\"lastUpdateTime\",\"description\":\"Last Update time. At creation time it assumes the same value of creationTime. It represents the difference, measured in milliseconds, between the creation time and midnight, January 1, 1970, UTC.\",\"mandatory\":true,\"readonly\":false,\"notnull\":true,\"max\":null,\"min\":null,\"regexp\":null,\"type\":\"Date\"},{\"@class\":\"PropertyDefinition\",\"name\":\"createdBy\",\"description\":\"The user that created the Entity or the Relation. It is initialized at creation time. \",\"mandatory\":true,\"readonly\":true,\"notnull\":true,\"max\":null,\"min\":null,\"regexp\":null,\"type\":\"String\"},{\"@class\":\"PropertyDefinition\",\"name\":\"uuid\",\"description\":\"This UUID is be used to identify the Entity or the Relation univocally.\",\"mandatory\":true,\"readonly\":true,\"notnull\":true,\"max\":null,\"min\":null,\"regexp\":\"^([a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}){1}$\",\"type\":\"String\"},{\"@class\":\"PropertyDefinition\",\"name\":\"lastUpdateBy\",\"description\":\"The user that made the last update to the Entity or the Relation. At creation time, it assumes the same value of creator.\",\"mandatory\":true,\"readonly\":false,\"notnull\":true,\"max\":null,\"min\":null,\"regexp\":null,\"type\":\"String\"}],\"accessType\":\"PROPERTY\",\"abstract\":false,\"version\":\"1.0.0\",\"changelog\":{\"1.0.0\":\"First Version\"}}";
logger.info(json);
@SuppressWarnings("unchecked")
- PropertyType headerType = (PropertyType) TypeMapper.deserializeTypeDefinition(json);
- logger.info(ElementMapper.marshal(headerType));
+ PropertyType metadataType = (PropertyType) TypeMapper.deserializeTypeDefinition(json);
+ logger.info(ElementMapper.marshal(metadataType));
}
diff --git a/src/test/java/org/gcube/informationsystem/types/TypeNameTest.java b/src/test/java/org/gcube/informationsystem/types/TypeNameTest.java
index a8d423b..0b63c84 100644
--- a/src/test/java/org/gcube/informationsystem/types/TypeNameTest.java
+++ b/src/test/java/org/gcube/informationsystem/types/TypeNameTest.java
@@ -1,7 +1,7 @@
package org.gcube.informationsystem.types;
-import org.gcube.informationsystem.model.reference.properties.Header;
-import org.gcube.informationsystem.model.reference.properties.Vault;
+import org.gcube.informationsystem.model.reference.properties.Metadata;
+import org.gcube.informationsystem.model.reference.properties.Encrypted;
import org.gcube.informationsystem.types.PropertyTypeName.BaseType;
import org.junit.Assert;
import org.junit.Test;
@@ -17,7 +17,7 @@ public class TypeNameTest {
@Test
public void getBaseType() throws Exception {
- Class> clz = Header.class;
+ Class> clz = Metadata.class;
BaseType baseType = PropertyTypeName.getBaseTypeByClass(clz);
logger.debug("{} for class {} is {}", BaseType.class.getSimpleName(), clz, baseType);
}
@@ -63,7 +63,7 @@ public class TypeNameTest {
if(baseType.ordinal()>=BaseType.PROPERTY.ordinal()) {
if(baseType == BaseType.PROPERTY) {
stringBuffer = new StringBuffer();
- stringBuffer.append(Vault.NAME);
+ stringBuffer.append(Encrypted.NAME);
checkPropertyTypeName(stringBuffer.toString(), baseType);
} else {
for(BaseType b : BaseType.values()) {
@@ -79,7 +79,7 @@ public class TypeNameTest {
}
if(b == BaseType.PROPERTY) {
- sb.append(Vault.NAME);
+ sb.append(Encrypted.NAME);
} else {
sb.append(b.toString());
}
diff --git a/src/test/java/org/gcube/informationsystem/utils/UUIDManagerTest.java b/src/test/java/org/gcube/informationsystem/utils/UUIDManagerTest.java
index 1ead5a1..9ef74ac 100644
--- a/src/test/java/org/gcube/informationsystem/utils/UUIDManagerTest.java
+++ b/src/test/java/org/gcube/informationsystem/utils/UUIDManagerTest.java
@@ -14,21 +14,23 @@ public class UUIDManagerTest {
@Test
public void testReservedUUID() {
- Set allUUID = UUIDManager.getAllReservedUUID();
+ UUIDManager uuidManager = UUIDManager.getInstance();
+
+ Set allUUID = uuidManager.getAllReservedUUID();
logger.debug("Reserved UUIDs are {}", allUUID);
- Set allUUIDAsString = UUIDManager.getAllReservedUUIDAsStrings();
+ Set allUUIDAsString = uuidManager.getAllReservedUUIDAsStrings();
Assert.assertTrue(allUUID.size()==allUUIDAsString.size());
Assert.assertTrue(allUUID.size()==16);
Assert.assertTrue(allUUIDAsString.size()==16);
for(UUID uuid : allUUID) {
- Assert.assertTrue(UUIDManager.isReservedUUID(uuid));
- Assert.assertTrue(UUIDManager.isReservedUUID(uuid.toString()));
+ Assert.assertTrue(uuidManager.isReservedUUID(uuid));
+ Assert.assertTrue(uuidManager.isReservedUUID(uuid.toString()));
}
for(String uuidString : allUUIDAsString) {
- Assert.assertTrue(UUIDManager.isReservedUUID(UUID.fromString(uuidString)));
- Assert.assertTrue(UUIDManager.isReservedUUID(uuidString));
+ Assert.assertTrue(uuidManager.isReservedUUID(UUID.fromString(uuidString)));
+ Assert.assertTrue(uuidManager.isReservedUUID(uuidString));
}
}
diff --git a/src/test/resources/logback-test.xml b/src/test/resources/logback-test.xml
index 23cd12f..53d26fa 100644
--- a/src/test/resources/logback-test.xml
+++ b/src/test/resources/logback-test.xml
@@ -10,7 +10,7 @@
-
+