Added type annotation to comply with the new way to create type

definition
This commit is contained in:
Luca Frosini 2020-12-15 18:44:48 +01:00
parent 9c84b79924
commit e1436a1b16
5 changed files with 45 additions and 0 deletions

View File

@ -2,12 +2,21 @@ package org.gcube.resourcemanagement.model.reference.properties;
import org.gcube.com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import org.gcube.informationsystem.types.annotations.ISProperty;
import org.gcube.informationsystem.types.reference.Change;
import org.gcube.informationsystem.types.reference.TypeMetadata;
import org.gcube.informationsystem.utils.TypeVersion;
import org.gcube.resourcemanagement.model.impl.properties.AccessPolicyImpl;
/**
* @author Luca Frosini (ISTI - CNR)
*/
@JsonDeserialize(as=AccessPolicyImpl.class)
@TypeMetadata(
name = AccessPolicy.NAME,
description = "AccessPolicy information",
version = TypeVersion.MINIMAL_VERSION_STRING
)
@Change(version = TypeVersion.MINIMAL_VERSION_STRING, description = TypeVersion.MINIMAL_VERSION_DESCRIPTION)
public interface AccessPolicy extends GCubeProperty {
public static final String NAME = "AccessPolicy"; //AccessPolicy.class.getSimpleName();

View File

@ -3,6 +3,9 @@ package org.gcube.resourcemanagement.model.reference.properties;
import java.util.Set;
import org.gcube.com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import org.gcube.informationsystem.types.reference.Change;
import org.gcube.informationsystem.types.reference.TypeMetadata;
import org.gcube.informationsystem.utils.TypeVersion;
import org.gcube.resourcemanagement.model.impl.properties.EnumStringPropertyImpl;
import org.gcube.resourcemanagement.model.reference.properties.utilities.PropertyValidator;
import org.gcube.resourcemanagement.model.reference.properties.utilities.ValidatedTypedProperty;
@ -16,6 +19,12 @@ import org.gcube.resourcemanagement.model.reference.properties.utilities.Validat
*
*/
@JsonDeserialize(as=EnumStringPropertyImpl.class)
@TypeMetadata(
name = EnumStringProperty.NAME,
description = "Enum String Property",
version = TypeVersion.MINIMAL_VERSION_STRING
)
@Change(version = TypeVersion.MINIMAL_VERSION_STRING, description = TypeVersion.MINIMAL_VERSION_DESCRIPTION)
public interface EnumStringProperty extends GCubeProperty, ValidatedTypedProperty<Set<String>, String> {
@Override

View File

@ -2,6 +2,9 @@ package org.gcube.resourcemanagement.model.reference.properties;
import org.gcube.com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import org.gcube.informationsystem.model.reference.properties.Property;
import org.gcube.informationsystem.types.reference.Change;
import org.gcube.informationsystem.types.reference.TypeMetadata;
import org.gcube.informationsystem.utils.TypeVersion;
import org.gcube.resourcemanagement.model.impl.properties.GCubePropertyImpl;
/**
@ -12,6 +15,12 @@ import org.gcube.resourcemanagement.model.impl.properties.GCubePropertyImpl;
*
*/
@JsonDeserialize(as=GCubePropertyImpl.class)
@TypeMetadata(
name = GCubeProperty.NAME,
description = "The base class for any Property defined in the gCube Model.",
version = TypeVersion.MINIMAL_VERSION_STRING
)
@Change(version = TypeVersion.MINIMAL_VERSION_STRING, description = TypeVersion.MINIMAL_VERSION_DESCRIPTION)
public interface GCubeProperty extends Property {
public static final String NAME = "GCubeProperty"; //GCubeProperty.class.getSimpleName();

View File

@ -6,6 +6,9 @@ import java.util.regex.Pattern;
import org.gcube.com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import org.gcube.informationsystem.types.annotations.ISProperty;
import org.gcube.informationsystem.types.reference.Change;
import org.gcube.informationsystem.types.reference.TypeMetadata;
import org.gcube.informationsystem.utils.TypeVersion;
import org.gcube.resourcemanagement.model.impl.properties.RegexPropertyImpl;
import org.gcube.resourcemanagement.model.reference.properties.utilities.PropertyValidator;
import org.gcube.resourcemanagement.model.reference.properties.utilities.ValidatedTypedProperty;
@ -18,6 +21,12 @@ import org.gcube.resourcemanagement.model.reference.properties.utilities.Validat
*
*/
@JsonDeserialize(as=RegexPropertyImpl.class)
@TypeMetadata(
name = RegexProperty.NAME,
description = "A property validated by a regex",
version = TypeVersion.MINIMAL_VERSION_STRING
)
@Change(version = TypeVersion.MINIMAL_VERSION_STRING, description = TypeVersion.MINIMAL_VERSION_DESCRIPTION)
public interface RegexProperty extends GCubeProperty, ValidatedTypedProperty<String, String> {
public static final String NAME = "RegexProperty"; // RegexProperty.class.getSimpleName();

View File

@ -4,6 +4,9 @@ import java.net.URI;
import org.gcube.com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import org.gcube.informationsystem.types.annotations.ISProperty;
import org.gcube.informationsystem.types.reference.Change;
import org.gcube.informationsystem.types.reference.TypeMetadata;
import org.gcube.informationsystem.utils.TypeVersion;
import org.gcube.resourcemanagement.model.impl.properties.ValueSchemaImpl;
import org.gcube.resourcemanagement.model.reference.properties.utilities.PropertyValidator;
import org.gcube.resourcemanagement.model.reference.properties.utilities.ValidatedTypedProperty;
@ -14,6 +17,12 @@ import org.gcube.resourcemanagement.model.reference.properties.utilities.Validat
* @author Luca Frosini (ISTI - CNR)
*/
@JsonDeserialize(as=ValueSchemaImpl.class)
@TypeMetadata(
name = ValueSchema.NAME,
description = "This property type capture any property which can be described by a value-schema couple.",
version = TypeVersion.MINIMAL_VERSION_STRING
)
@Change(version = TypeVersion.MINIMAL_VERSION_STRING, description = TypeVersion.MINIMAL_VERSION_DESCRIPTION)
public interface ValueSchema extends GCubeProperty, ValidatedTypedProperty<URI,String> {
public static final String NAME = "ValueSchema"; //ValueSchema.class.getSimpleName();