Moved Header in model

This commit is contained in:
Luca Frosini 2020-01-20 10:24:55 +01:00
parent 1e84cd6607
commit 1421a53b52
26 changed files with 142 additions and 67 deletions

View File

@ -6,7 +6,7 @@ package org.gcube.informationsystem.base.impl;
import java.io.StringWriter;
import org.gcube.informationsystem.base.reference.ER;
import org.gcube.informationsystem.base.reference.properties.Header;
import org.gcube.informationsystem.model.reference.properties.Header;
import org.gcube.informationsystem.utils.ISMapper;
import com.fasterxml.jackson.annotation.JsonTypeName;

View File

@ -4,8 +4,8 @@ import java.io.StringWriter;
import org.gcube.informationsystem.base.impl.ERImpl;
import org.gcube.informationsystem.base.reference.entities.BaseEntity;
import org.gcube.informationsystem.base.reference.properties.Header;
import org.gcube.informationsystem.model.reference.entities.Entity;
import org.gcube.informationsystem.model.reference.properties.Header;
import org.gcube.informationsystem.utils.ISMapper;
import com.fasterxml.jackson.annotation.JsonTypeName;

View File

@ -3,7 +3,7 @@
*/
package org.gcube.informationsystem.base.reference;
import org.gcube.informationsystem.base.reference.properties.Header;
import org.gcube.informationsystem.model.reference.properties.Header;
/**
* @author Luca Frosini (ISTI - CNR)

View File

@ -1,7 +1,7 @@
package org.gcube.informationsystem.base.reference.entities;
import org.gcube.informationsystem.base.reference.ER;
import org.gcube.informationsystem.base.reference.properties.Header;
import org.gcube.informationsystem.model.reference.properties.Header;
import org.gcube.informationsystem.types.annotations.Abstract;
import org.gcube.informationsystem.types.annotations.ISProperty;

View File

@ -2,7 +2,7 @@ package org.gcube.informationsystem.base.reference.relations;
import org.gcube.informationsystem.base.reference.ER;
import org.gcube.informationsystem.base.reference.entities.BaseEntity;
import org.gcube.informationsystem.base.reference.properties.Header;
import org.gcube.informationsystem.model.reference.properties.Header;
import org.gcube.informationsystem.types.annotations.Abstract;
import org.gcube.informationsystem.types.annotations.ISProperty;

View File

@ -8,10 +8,10 @@ import java.util.List;
import java.util.UUID;
import org.gcube.informationsystem.base.impl.entities.BaseEntityImpl;
import org.gcube.informationsystem.base.impl.properties.HeaderImpl;
import org.gcube.informationsystem.context.impl.relations.IsParentOfImpl;
import org.gcube.informationsystem.context.reference.entities.Context;
import org.gcube.informationsystem.context.reference.relations.IsParentOf;
import org.gcube.informationsystem.model.impl.properties.HeaderImpl;
import com.fasterxml.jackson.annotation.JsonSetter;
import com.fasterxml.jackson.annotation.JsonTypeName;

View File

@ -5,7 +5,7 @@ package org.gcube.informationsystem.model.impl.entities;
import java.util.UUID;
import org.gcube.informationsystem.base.impl.properties.HeaderImpl;
import org.gcube.informationsystem.model.impl.properties.HeaderImpl;
import org.gcube.informationsystem.model.reference.entities.Facet;
/**

View File

@ -5,7 +5,7 @@ package org.gcube.informationsystem.model.impl.entities;
import java.util.UUID;
import org.gcube.informationsystem.base.impl.properties.HeaderImpl;
import org.gcube.informationsystem.model.impl.properties.HeaderImpl;
import org.gcube.informationsystem.model.reference.entities.Resource;
/**

View File

@ -1,12 +1,12 @@
/**
*
*/
package org.gcube.informationsystem.base.impl.properties;
package org.gcube.informationsystem.model.impl.properties;
import java.util.Date;
import java.util.UUID;
import org.gcube.informationsystem.base.reference.properties.Header;
import org.gcube.informationsystem.model.reference.properties.Header;
import com.fasterxml.jackson.annotation.JsonTypeName;
@ -14,7 +14,7 @@ import com.fasterxml.jackson.annotation.JsonTypeName;
* @author Luca Frosini (ISTI - CNR)
*/
@JsonTypeName(value=Header.NAME)
public final class HeaderImpl extends BasePropertyImpl implements Header {
public final class HeaderImpl extends PropertyImpl implements Header {
/**
* Generated Serial Version UID

View File

@ -1,13 +1,13 @@
/**
*
*/
package org.gcube.informationsystem.base.reference.properties;
package org.gcube.informationsystem.model.reference.properties;
import java.util.Date;
import java.util.UUID;
import org.gcube.informationsystem.base.impl.properties.HeaderImpl;
import org.gcube.informationsystem.base.reference.ISConstants;
import org.gcube.informationsystem.model.impl.properties.HeaderImpl;
import org.gcube.informationsystem.types.annotations.ISProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
@ -18,7 +18,7 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
* https://wiki.gcube-system.org/gcube/Facet_Based_Resource_Model#Header
*/
@JsonDeserialize(as=HeaderImpl.class)
public interface Header extends BaseProperty {
public interface Header extends Property {
public static final String NAME = "Header"; // Header.class.getSimpleName();

View File

@ -11,7 +11,6 @@ import org.gcube.informationsystem.base.reference.ISManageable;
import org.gcube.informationsystem.base.reference.entities.BaseEntity;
import org.gcube.informationsystem.base.reference.properties.BaseProperty;
import org.gcube.informationsystem.base.reference.relations.BaseRelation;
import org.gcube.informationsystem.model.reference.entities.Resource;
import org.gcube.informationsystem.types.TypeBinder;
import org.gcube.informationsystem.types.annotations.Abstract;
import org.gcube.informationsystem.types.annotations.ISProperty;
@ -45,10 +44,8 @@ public class TypeDefinitionImpl extends ERImpl implements TypeDefinition {
@JsonProperty(value="abstract")
protected boolean abstractType;
protected Set<String> superClasses;
protected Set<PropertyDefinition> properties;
protected static <ISM extends ISManageable> Set<String> retrieveSuperClasses(Class<? extends ISM> type, Class<ISM> baseClass, String topSuperClass){
protected <ISM extends ISManageable> Set<String> retrieveSuperClasses(Class<? extends ISM> type, Class<ISM> baseClass, String topSuperClass){
Set<String> interfaceList = new HashSet<>();
if(type==baseClass){
@ -74,7 +71,7 @@ public class TypeDefinitionImpl extends ERImpl implements TypeDefinition {
return interfaceList;
}
private static Set<PropertyDefinition> retrieveListOfProperties(Class<?> type){
protected Set<PropertyDefinition> retrieveListOfProperties(Class<?> type){
Set<PropertyDefinition> properties = new HashSet<>();
for (Method m : type.getDeclaredMethods()){
m.setAccessible(true);
@ -140,10 +137,6 @@ public class TypeDefinitionImpl extends ERImpl implements TypeDefinition {
this.abstractType = true;
}
if(!Resource.class.isAssignableFrom(clz)){
this.properties = retrieveListOfProperties(clz);
}
}
@Override
@ -165,10 +158,5 @@ public class TypeDefinitionImpl extends ERImpl implements TypeDefinition {
public Set<String> getSuperClasses() {
return superClasses;
}
@Override
public Set<PropertyDefinition> getProperties() {
return properties;
}
}

View File

@ -3,11 +3,10 @@ package org.gcube.informationsystem.types.impl.entities;
import java.io.StringWriter;
import org.gcube.informationsystem.base.reference.entities.BaseEntity;
import org.gcube.informationsystem.base.reference.properties.Header;
import org.gcube.informationsystem.context.reference.entities.Context;
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.types.impl.TypeDefinitionImpl;
import org.gcube.informationsystem.types.reference.entities.EntityTypeDefinition;
import org.gcube.informationsystem.utils.ISMapper;
@ -31,6 +30,11 @@ public class EntityTypeDefinitionImpl extends TypeDefinitionImpl implements Enti
Class<? extends Resource> c = (Class<? extends Resource>) clz;
entityTypeDefinition = new ResourceTypeDefinitionImpl(c);
return entityTypeDefinition;
} else if(Facet.class.isAssignableFrom(clz)){
@SuppressWarnings("unchecked")
Class<? extends Facet> c = (Class<? extends Facet>) clz;
entityTypeDefinition = new FacetTypeDefinitionImpl(c);
return entityTypeDefinition;
} else {
entityTypeDefinition = new EntityTypeDefinitionImpl(clz);
}
@ -45,11 +49,7 @@ public class EntityTypeDefinitionImpl extends TypeDefinitionImpl implements Enti
public EntityTypeDefinitionImpl(Class<? extends BaseEntity> clz) {
super(clz);
if(Facet.class.isAssignableFrom(clz)){
@SuppressWarnings("unchecked")
Class<? extends Facet> c = (Class<? extends Facet>) clz;
this.superClasses = retrieveSuperClasses(c, Facet.class, Entity.NAME);
} else if(EntityTypeDefinition.class.isAssignableFrom(clz)){
if(EntityTypeDefinition.class.isAssignableFrom(clz)){
@SuppressWarnings("unchecked")
Class<? extends EntityTypeDefinition> c = (Class<? extends EntityTypeDefinition>) clz;
this.superClasses = retrieveSuperClasses(c, EntityTypeDefinition.class, BaseEntity.NAME);

View File

@ -0,0 +1,39 @@
package org.gcube.informationsystem.types.impl.entities;
import java.util.Set;
import org.gcube.informationsystem.model.reference.entities.Entity;
import org.gcube.informationsystem.model.reference.entities.Facet;
import org.gcube.informationsystem.types.reference.entities.FacetTypeDefinition;
import org.gcube.informationsystem.types.reference.properties.PropertyDefinition;
import com.fasterxml.jackson.annotation.JsonTypeName;
@JsonTypeName(value=FacetTypeDefinition.NAME)
public class FacetTypeDefinitionImpl extends EntityTypeDefinitionImpl implements FacetTypeDefinition {
/**
* Generated Serial Version UID
*/
private static final long serialVersionUID = 6268161046955738969L;
protected Set<PropertyDefinition> properties;
protected FacetTypeDefinitionImpl() {
super();
}
public FacetTypeDefinitionImpl(Class<? extends Facet> clz) {
super(clz);
Class<? extends Facet> c = (Class<? extends Facet>) clz;
this.superClasses = retrieveSuperClasses(c, Facet.class, Entity.NAME);
this.properties = retrieveListOfProperties(clz);
}
@Override
public Set<PropertyDefinition> getProperties() {
return properties;
}
}

View File

@ -2,7 +2,6 @@ package org.gcube.informationsystem.types.impl.entities;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import org.gcube.informationsystem.model.reference.entities.Resource;
import org.gcube.informationsystem.types.TypeBinder;
@ -11,10 +10,8 @@ import org.gcube.informationsystem.types.annotations.ResourceSchemaEntry;
import org.gcube.informationsystem.types.annotations.ResourceSchemaRelatedEntry;
import org.gcube.informationsystem.types.impl.properties.ResourceEntryDefinitionImpl;
import org.gcube.informationsystem.types.reference.entities.ResourceTypeDefinition;
import org.gcube.informationsystem.types.reference.properties.PropertyDefinition;
import org.gcube.informationsystem.types.reference.properties.ResourceEntryDefinition;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonTypeName;
@JsonTypeName(value=ResourceTypeDefinition.NAME)
@ -75,10 +72,4 @@ public class ResourceTypeDefinitionImpl extends EntityTypeDefinitionImpl impleme
return resources;
}
@Override
@JsonIgnore
public Set<PropertyDefinition> getProperties() {
return properties;
}
}

View File

@ -1,7 +1,10 @@
package org.gcube.informationsystem.types.impl.properties;
import java.util.Set;
import org.gcube.informationsystem.base.reference.properties.BaseProperty;
import org.gcube.informationsystem.types.impl.TypeDefinitionImpl;
import org.gcube.informationsystem.types.reference.properties.PropertyDefinition;
import org.gcube.informationsystem.types.reference.properties.PropertyTypeDefinition;
import com.fasterxml.jackson.annotation.JsonTypeName;
@ -15,6 +18,8 @@ public final class PropertyTypeDefinitionImpl<P extends BaseProperty> extends Ty
*/
private static final long serialVersionUID = 7532701373450638829L;
protected Set<PropertyDefinition> properties;
protected PropertyTypeDefinitionImpl() {
super();
}
@ -23,6 +28,12 @@ public final class PropertyTypeDefinitionImpl<P extends BaseProperty> extends Ty
super(clz);
this.superClasses = retrieveSuperClasses(clz, BaseProperty.class,
clz == BaseProperty.class ? null : BaseProperty.NAME);
this.properties = retrieveListOfProperties(clz);
}
@Override
public Set<PropertyDefinition> getProperties() {
return properties;
}
}

View File

@ -2,6 +2,7 @@ package org.gcube.informationsystem.types.impl.relations;
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
import java.util.Set;
import org.gcube.informationsystem.base.reference.entities.BaseEntity;
import org.gcube.informationsystem.base.reference.relations.BaseRelation;
@ -14,6 +15,7 @@ import org.gcube.informationsystem.model.reference.relations.Relation;
import org.gcube.informationsystem.types.impl.TypeDefinitionImpl;
import org.gcube.informationsystem.types.impl.entities.EntityTypeDefinitionImpl;
import org.gcube.informationsystem.types.reference.entities.EntityTypeDefinition;
import org.gcube.informationsystem.types.reference.properties.PropertyDefinition;
import org.gcube.informationsystem.types.reference.relations.RelationTypeDefinition;
import com.fasterxml.jackson.annotation.JsonTypeName;
@ -26,6 +28,8 @@ public final class RelationTypeDefinitionImpl extends TypeDefinitionImpl impleme
*/
private static final long serialVersionUID = 2221831081869571296L;
protected Set<PropertyDefinition> properties;
protected RelationTypeDefinitionImpl() {
super();
}
@ -55,6 +59,8 @@ public final class RelationTypeDefinitionImpl extends TypeDefinitionImpl impleme
throw new RuntimeException("Type Hierachy Error");
}
this.properties = retrieveListOfProperties(clz);
discoverSourceAndTarget(clz);
}
@ -92,6 +98,12 @@ public final class RelationTypeDefinitionImpl extends TypeDefinitionImpl impleme
this.target = new EntityTypeDefinitionImpl(targetClass);
}
@Override
public Set<PropertyDefinition> getProperties() {
return properties;
}
/*
* Java does not support class multiple inheritance.
* TypeDefinitionImpl is the superclass so that this class does not inherits the methods and field of BaseRelationImpl

View File

@ -0,0 +1,17 @@
package org.gcube.informationsystem.types.reference;
import java.util.Set;
import org.gcube.informationsystem.types.reference.properties.PropertyDefinition;
/**
* @author Luca Frosini (ISTI - CNR)
* This is just an useful interface to capture all type definition having properties
* such as FacetTypeDefinition, PropertyTypeDefinition, RelationTypeDefinition
*/
public interface PropertyCapableTypeDefinition {
public static final String PROPERTIES_PROPERTY = "properties";
public Set<PropertyDefinition> getProperties();
}

View File

@ -5,7 +5,6 @@ import java.util.Set;
import org.gcube.informationsystem.base.reference.ER;
import org.gcube.informationsystem.types.annotations.Abstract;
import org.gcube.informationsystem.types.annotations.ISProperty;
import org.gcube.informationsystem.types.reference.properties.PropertyDefinition;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
@ -20,7 +19,6 @@ public interface TypeDefinition extends ER {
public static final String DESCRIPTION_PROPERTY = "description";
public static final String ABSTRACT_PROPERTY = "abstract";
public static final String TYPE_SUPERCLASSES_PROPERTY = "superClasses";
public static final String PROPERTIES_PROPERTY = "properties";
@ISProperty(name = NAME_PROPERTY, readonly = true, mandatory = true, nullable = false)
public String getName();
@ -33,8 +31,5 @@ public interface TypeDefinition extends ER {
@ISProperty(name = TYPE_SUPERCLASSES_PROPERTY, readonly = true, mandatory = true, nullable = false)
public Set<String> getSuperClasses();
@ISProperty(name = PROPERTIES_PROPERTY, readonly = false, mandatory = true, nullable = false)
public Set<PropertyDefinition> getProperties();
}

View File

@ -6,13 +6,12 @@ import org.gcube.informationsystem.base.reference.entities.BaseEntity;
import org.gcube.informationsystem.types.annotations.ISProperty;
import org.gcube.informationsystem.types.impl.entities.EntityTypeDefinitionImpl;
import org.gcube.informationsystem.types.reference.TypeDefinition;
import org.gcube.informationsystem.types.reference.properties.PropertyDefinition;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
@JsonIgnoreProperties(ignoreUnknown = true)
@JsonDeserialize(as = EntityTypeDefinitionImpl.class)
@JsonDeserialize(as = EntityTypeDefinitionImpl.class) // Do not uncomment to manage subclasses
public interface EntityTypeDefinition extends TypeDefinition, BaseEntity {
public static final String NAME = "EntityTypeDefinition"; //EntityTypeDefinition.class.getSimpleName();
@ -35,10 +34,6 @@ public interface EntityTypeDefinition extends TypeDefinition, BaseEntity {
@ISProperty(name = TypeDefinition.TYPE_SUPERCLASSES_PROPERTY, readonly = true, mandatory = true, nullable = false)
public Set<String> getSuperClasses();
@Override
@ISProperty(name = TypeDefinition.PROPERTIES_PROPERTY, readonly = false, mandatory = true, nullable = false)
public Set<PropertyDefinition> getProperties();
/* TypeDefinition is just a Java useful class. The type is not created in the IS. Hence the fields must be redefined */

View File

@ -0,0 +1,25 @@
package org.gcube.informationsystem.types.reference.entities;
import java.util.Set;
import org.gcube.informationsystem.base.reference.entities.BaseEntity;
import org.gcube.informationsystem.types.annotations.ISProperty;
import org.gcube.informationsystem.types.impl.entities.FacetTypeDefinitionImpl;
import org.gcube.informationsystem.types.reference.PropertyCapableTypeDefinition;
import org.gcube.informationsystem.types.reference.properties.PropertyDefinition;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
@JsonIgnoreProperties(ignoreUnknown = true)
@JsonDeserialize(as = FacetTypeDefinitionImpl.class)
public interface FacetTypeDefinition extends EntityTypeDefinition, BaseEntity, PropertyCapableTypeDefinition {
public static final String NAME = "FacetTypeDefinition"; //FacetTypeDefinition.class.getSimpleName();
@Override
@ISProperty(name = PropertyCapableTypeDefinition.PROPERTIES_PROPERTY, readonly = false, mandatory = true, nullable = false)
public Set<PropertyDefinition> getProperties();
}

View File

@ -4,9 +4,10 @@ import java.util.Set;
import org.gcube.informationsystem.base.reference.ER;
import org.gcube.informationsystem.base.reference.properties.BaseProperty;
import org.gcube.informationsystem.base.reference.properties.Header;
import org.gcube.informationsystem.model.reference.properties.Header;
import org.gcube.informationsystem.types.annotations.ISProperty;
import org.gcube.informationsystem.types.impl.properties.PropertyTypeDefinitionImpl;
import org.gcube.informationsystem.types.reference.PropertyCapableTypeDefinition;
import org.gcube.informationsystem.types.reference.TypeDefinition;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
@ -14,7 +15,7 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
@JsonIgnoreProperties(ignoreUnknown = true)
@JsonDeserialize(as = PropertyTypeDefinitionImpl.class)
public interface PropertyTypeDefinition<P extends BaseProperty> extends TypeDefinition, BaseProperty {
public interface PropertyTypeDefinition<P extends BaseProperty> extends TypeDefinition, BaseProperty, PropertyCapableTypeDefinition {
public static final String NAME = "PropertyTypeDefinition"; // PropertyTypeDefinition.class.getSimpleName();
@ -40,9 +41,9 @@ public interface PropertyTypeDefinition<P extends BaseProperty> extends TypeDefi
@Override
@ISProperty(name = TypeDefinition.TYPE_SUPERCLASSES_PROPERTY, readonly = true, mandatory = true, nullable = false)
public Set<String> getSuperClasses();
@Override
@ISProperty(name = TypeDefinition.PROPERTIES_PROPERTY, readonly = false, mandatory = true, nullable = false)
@ISProperty(name = PropertyCapableTypeDefinition.PROPERTIES_PROPERTY, readonly = false, mandatory = true, nullable = false)
public Set<PropertyDefinition> getProperties();
/* TypeDefinition is just a Java useful class. The type is not created in the IS. Hence the fields must be redefined */

View File

@ -5,6 +5,7 @@ import java.util.Set;
import org.gcube.informationsystem.base.reference.relations.BaseRelation;
import org.gcube.informationsystem.types.annotations.ISProperty;
import org.gcube.informationsystem.types.impl.relations.RelationTypeDefinitionImpl;
import org.gcube.informationsystem.types.reference.PropertyCapableTypeDefinition;
import org.gcube.informationsystem.types.reference.TypeDefinition;
import org.gcube.informationsystem.types.reference.entities.EntityTypeDefinition;
import org.gcube.informationsystem.types.reference.properties.PropertyDefinition;
@ -14,7 +15,7 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
@JsonIgnoreProperties(ignoreUnknown = true)
@JsonDeserialize(as = RelationTypeDefinitionImpl.class)
public interface RelationTypeDefinition extends TypeDefinition, BaseRelation<EntityTypeDefinition,EntityTypeDefinition> {
public interface RelationTypeDefinition extends TypeDefinition, BaseRelation<EntityTypeDefinition,EntityTypeDefinition>, PropertyCapableTypeDefinition {
public static final String NAME = "RelationTypeDefinition"; // PropertyTypeDefiniton.class.getSimpleName();
@ -37,7 +38,7 @@ public interface RelationTypeDefinition extends TypeDefinition, BaseRelation<Ent
public Set<String> getSuperClasses();
@Override
@ISProperty(name = TypeDefinition.PROPERTIES_PROPERTY, readonly = false, mandatory = true, nullable = false)
@ISProperty(name = PropertyCapableTypeDefinition.PROPERTIES_PROPERTY, readonly = false, mandatory = true, nullable = false)
public Set<PropertyDefinition> getProperties();
@Override

View File

@ -6,8 +6,8 @@ package org.gcube.informationsystem.utils;
import java.io.IOException;
import java.util.UUID;
import org.gcube.informationsystem.base.reference.properties.Header;
import org.gcube.informationsystem.model.reference.entities.Entity;
import org.gcube.informationsystem.model.reference.properties.Header;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

View File

@ -1,11 +1,11 @@
package org.gcube.informationsystem.base.impl.properties;
package org.gcube.informationsystem.model.impl.properties;
import java.util.Calendar;
import java.util.Date;
import java.util.UUID;
import org.gcube.informationsystem.base.impl.properties.HeaderImpl;
import org.gcube.informationsystem.base.reference.properties.Header;
import org.gcube.informationsystem.model.impl.properties.HeaderImpl;
import org.gcube.informationsystem.model.reference.properties.Header;
import org.gcube.informationsystem.utils.ISMapper;
import org.junit.Assert;
import org.junit.Test;

View File

@ -5,8 +5,8 @@ package org.gcube.informationsystem.types;
import org.gcube.informationsystem.base.reference.ISManageable;
import org.gcube.informationsystem.base.reference.properties.BaseProperty;
import org.gcube.informationsystem.base.reference.properties.Header;
import org.gcube.informationsystem.model.reference.entities.Resource;
import org.gcube.informationsystem.model.reference.properties.Header;
import org.gcube.informationsystem.model.reference.relations.IsRelatedTo;
import org.junit.Test;
import org.slf4j.Logger;

View File

@ -1,8 +1,8 @@
package org.gcube.informationsystem.types;
import org.gcube.informationsystem.base.reference.properties.Header;
import org.gcube.informationsystem.context.reference.relations.IsParentOf;
import org.gcube.informationsystem.model.impl.properties.PropagationConstraintImpl;
import org.gcube.informationsystem.model.reference.properties.Header;
import org.gcube.informationsystem.model.reference.properties.PropagationConstraint;
import org.gcube.informationsystem.model.reference.properties.PropagationConstraint.AddConstraint;
import org.gcube.informationsystem.model.reference.properties.PropagationConstraint.RemoveConstraint;