refs #200: Create accouting-lib library

https://support.d4science.org/issues/200
Fixing validators

git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/accounting/accounting-lib@115253 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
Luca Frosini 2015-06-08 15:23:39 +00:00
parent f505d080db
commit 6d4780e151
25 changed files with 35 additions and 24 deletions

View File

@ -17,14 +17,14 @@ import java.util.Map.Entry;
import java.util.Set; import java.util.Set;
import java.util.UUID; import java.util.UUID;
import org.gcube.accounting.datamodel.validations.Aggregated;
import org.gcube.accounting.datamodel.validations.FieldValidator;
import org.gcube.accounting.datamodel.validations.Required; import org.gcube.accounting.datamodel.validations.Required;
import org.gcube.accounting.datamodel.validations.annotations.Aggregated; import org.gcube.accounting.datamodel.validations.ValidityChecker;
import org.gcube.accounting.datamodel.validations.annotations.NotEmpty; import org.gcube.accounting.datamodel.validations.annotations.NotEmpty;
import org.gcube.accounting.datamodel.validations.annotations.NotEmptyIfNotNull; import org.gcube.accounting.datamodel.validations.annotations.NotEmptyIfNotNull;
import org.gcube.accounting.datamodel.validations.annotations.ValidLong; import org.gcube.accounting.datamodel.validations.annotations.ValidLong;
import org.gcube.accounting.datamodel.validations.annotations.ValidOperationResult; import org.gcube.accounting.datamodel.validations.annotations.ValidOperationResult;
import org.gcube.accounting.datamodel.validations.annotations.ValidityChecker;
import org.gcube.accounting.datamodel.validations.validators.FieldValidator;
import org.gcube.accounting.exception.InvalidValueException; import org.gcube.accounting.exception.InvalidValueException;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;

View File

@ -7,8 +7,8 @@ import java.util.Calendar;
import org.gcube.accounting.datamodel.RawUsageRecord; import org.gcube.accounting.datamodel.RawUsageRecord;
import org.gcube.accounting.datamodel.SingleUsageRecord; import org.gcube.accounting.datamodel.SingleUsageRecord;
import org.gcube.accounting.datamodel.validations.DeprecatedField;
import org.gcube.accounting.datamodel.validations.Required; import org.gcube.accounting.datamodel.validations.Required;
import org.gcube.accounting.datamodel.validations.annotations.DeprecatedField;
import org.gcube.accounting.datamodel.validations.annotations.NotEmpty; import org.gcube.accounting.datamodel.validations.annotations.NotEmpty;
import org.gcube.accounting.datamodel.validations.annotations.ValidInteger; import org.gcube.accounting.datamodel.validations.annotations.ValidInteger;
import org.gcube.accounting.datamodel.validations.annotations.ValidLong; import org.gcube.accounting.datamodel.validations.annotations.ValidLong;

View File

@ -5,11 +5,11 @@ package org.gcube.accounting.datamodel.implementations;
import org.gcube.accounting.datamodel.RawUsageRecord; import org.gcube.accounting.datamodel.RawUsageRecord;
import org.gcube.accounting.datamodel.SingleUsageRecord; import org.gcube.accounting.datamodel.SingleUsageRecord;
import org.gcube.accounting.datamodel.validations.DeprecatedField;
import org.gcube.accounting.datamodel.validations.Required; import org.gcube.accounting.datamodel.validations.Required;
import org.gcube.accounting.datamodel.validations.annotations.DeprecatedField;
import org.gcube.accounting.datamodel.validations.annotations.NotEmpty; import org.gcube.accounting.datamodel.validations.annotations.NotEmpty;
import org.gcube.accounting.datamodel.validations.annotations.NotEmptyIfNotNull; import org.gcube.accounting.datamodel.validations.annotations.NotEmptyIfNotNull;
import org.gcube.accounting.datamodel.validations.validators.Ignore; import org.gcube.accounting.datamodel.validations.validators.WarningAlert;
import org.gcube.accounting.exception.InvalidValueException; import org.gcube.accounting.exception.InvalidValueException;
/** /**
@ -23,7 +23,7 @@ public class PortletUsageRecord extends RawUsageRecord implements SingleUsageRec
*/ */
private static final long serialVersionUID = 8339324883678974869L; private static final long serialVersionUID = 8339324883678974869L;
@DeprecatedField(action=Ignore.class) @NotEmptyIfNotNull @DeprecatedField(action=WarningAlert.class) @NotEmptyIfNotNull
protected static final String USER_ID = "userId"; protected static final String USER_ID = "userId";
@Required @NotEmpty @Required @NotEmpty

View File

@ -5,12 +5,12 @@ package org.gcube.accounting.datamodel.implementations;
import org.gcube.accounting.datamodel.RawUsageRecord; import org.gcube.accounting.datamodel.RawUsageRecord;
import org.gcube.accounting.datamodel.SingleUsageRecord; import org.gcube.accounting.datamodel.SingleUsageRecord;
import org.gcube.accounting.datamodel.validations.DeprecatedField;
import org.gcube.accounting.datamodel.validations.Required; import org.gcube.accounting.datamodel.validations.Required;
import org.gcube.accounting.datamodel.validations.annotations.DeprecatedField;
import org.gcube.accounting.datamodel.validations.annotations.NotEmpty; import org.gcube.accounting.datamodel.validations.annotations.NotEmpty;
import org.gcube.accounting.datamodel.validations.annotations.ValidIP; import org.gcube.accounting.datamodel.validations.annotations.ValidIP;
import org.gcube.accounting.datamodel.validations.annotations.ValidInteger; import org.gcube.accounting.datamodel.validations.annotations.ValidInteger;
import org.gcube.accounting.datamodel.validations.validators.Ignore; import org.gcube.accounting.datamodel.validations.validators.WarningAlert;
import org.gcube.accounting.exception.InvalidValueException; import org.gcube.accounting.exception.InvalidValueException;
/** /**
@ -32,7 +32,7 @@ public class ServiceUsageRecord extends RawUsageRecord implements SingleUsageRec
public static final String REF_HOST = "refHost"; public static final String REF_HOST = "refHost";
@Required @NotEmpty @Required @NotEmpty
public static final String REF_VM = "refVM"; public static final String REF_VM = "refVM";
@DeprecatedField(action=Ignore.class) @NotEmpty @DeprecatedField(action=WarningAlert.class) @NotEmpty
public static final String DOMAIN = "domain"; public static final String DOMAIN = "domain";
@ValidInteger @ValidInteger
protected static final String INVOCATION_COUNT = "invocationCount"; protected static final String INVOCATION_COUNT = "invocationCount";

View File

@ -7,13 +7,13 @@ import java.util.Calendar;
import org.gcube.accounting.datamodel.RawUsageRecord; import org.gcube.accounting.datamodel.RawUsageRecord;
import org.gcube.accounting.datamodel.SingleUsageRecord; import org.gcube.accounting.datamodel.SingleUsageRecord;
import org.gcube.accounting.datamodel.validations.DeprecatedField;
import org.gcube.accounting.datamodel.validations.Required; import org.gcube.accounting.datamodel.validations.Required;
import org.gcube.accounting.datamodel.validations.annotations.DeprecatedField;
import org.gcube.accounting.datamodel.validations.annotations.NotEmpty; import org.gcube.accounting.datamodel.validations.annotations.NotEmpty;
import org.gcube.accounting.datamodel.validations.annotations.ValidInteger; import org.gcube.accounting.datamodel.validations.annotations.ValidInteger;
import org.gcube.accounting.datamodel.validations.annotations.ValidLong; import org.gcube.accounting.datamodel.validations.annotations.ValidLong;
import org.gcube.accounting.datamodel.validations.validators.ConvertToOperationResult; import org.gcube.accounting.datamodel.validations.validators.ConvertToOperationResult;
import org.gcube.accounting.datamodel.validations.validators.Ignore; import org.gcube.accounting.datamodel.validations.validators.WarningAlert;
import org.gcube.accounting.exception.InvalidValueException; import org.gcube.accounting.exception.InvalidValueException;
/** /**
@ -37,7 +37,7 @@ public class TaskUsageRecord extends RawUsageRecord implements SingleUsageRecord
public static final String REF_HOST = "refHost"; public static final String REF_HOST = "refHost";
@Required @NotEmpty @Required @NotEmpty
public static final String REF_VM = "refVM"; public static final String REF_VM = "refVM";
@DeprecatedField(action=Ignore.class) @DeprecatedField(action=WarningAlert.class)
protected static final String DOMAIN = "domain"; protected static final String DOMAIN = "domain";
@Required @ValidLong @Required @ValidLong
public static final String USAGE_START_TIME = "usageStartTime"; public static final String USAGE_START_TIME = "usageStartTime";

View File

@ -1,4 +1,4 @@
package org.gcube.accounting.datamodel.validations.annotations; package org.gcube.accounting.datamodel.validations;
import java.lang.annotation.ElementType; import java.lang.annotation.ElementType;
import java.lang.annotation.Retention; import java.lang.annotation.Retention;

View File

@ -1,4 +1,4 @@
package org.gcube.accounting.datamodel.validations.annotations; package org.gcube.accounting.datamodel.validations;
import java.lang.annotation.ElementType; import java.lang.annotation.ElementType;
import java.lang.annotation.Inherited; import java.lang.annotation.Inherited;

View File

@ -1,7 +1,7 @@
/** /**
* *
*/ */
package org.gcube.accounting.datamodel.validations.annotations; package org.gcube.accounting.datamodel.validations;
import java.io.Serializable; import java.io.Serializable;

View File

@ -1,7 +1,7 @@
/** /**
* *
*/ */
package org.gcube.accounting.datamodel.validations.validators; package org.gcube.accounting.datamodel.validations;
import java.io.Serializable; import java.io.Serializable;

View File

@ -1,7 +1,7 @@
/** /**
* *
*/ */
package org.gcube.accounting.datamodel.validations.annotations; package org.gcube.accounting.datamodel.validations;
import java.lang.annotation.ElementType; import java.lang.annotation.ElementType;
import java.lang.annotation.Inherited; import java.lang.annotation.Inherited;
@ -9,8 +9,6 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy; import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target; import java.lang.annotation.Target;
import org.gcube.accounting.datamodel.validations.validators.FieldValidator;
/** /**
* @author Luca Frosini (ISTI - CNR) http://www.lucafrosini.com/ * @author Luca Frosini (ISTI - CNR) http://www.lucafrosini.com/
* *

View File

@ -5,6 +5,7 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy; import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target; import java.lang.annotation.Target;
import org.gcube.accounting.datamodel.validations.ValidityChecker;
import org.gcube.accounting.datamodel.validations.validators.NotEmptyValidator; import org.gcube.accounting.datamodel.validations.validators.NotEmptyValidator;
@Target(ElementType.FIELD) @Target(ElementType.FIELD)

View File

@ -5,6 +5,7 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy; import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target; import java.lang.annotation.Target;
import org.gcube.accounting.datamodel.validations.ValidityChecker;
import org.gcube.accounting.datamodel.validations.validators.NotEmptyIfNotNullValidator; import org.gcube.accounting.datamodel.validations.validators.NotEmptyIfNotNullValidator;
@Target(ElementType.FIELD) @Target(ElementType.FIELD)

View File

@ -5,6 +5,7 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy; import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target; import java.lang.annotation.Target;
import org.gcube.accounting.datamodel.validations.ValidityChecker;
import org.gcube.accounting.datamodel.validations.validators.NotNullValidator; import org.gcube.accounting.datamodel.validations.validators.NotNullValidator;
@Target(ElementType.FIELD) @Target(ElementType.FIELD)

View File

@ -5,6 +5,7 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy; import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target; import java.lang.annotation.Target;
import org.gcube.accounting.datamodel.validations.ValidityChecker;
import org.gcube.accounting.datamodel.validations.validators.ValidIPValidator; import org.gcube.accounting.datamodel.validations.validators.ValidIPValidator;
@Target(ElementType.FIELD) @Target(ElementType.FIELD)

View File

@ -5,6 +5,7 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy; import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target; import java.lang.annotation.Target;
import org.gcube.accounting.datamodel.validations.ValidityChecker;
import org.gcube.accounting.datamodel.validations.validators.ValidIntegerValidator; import org.gcube.accounting.datamodel.validations.validators.ValidIntegerValidator;
@Target(ElementType.FIELD) @Target(ElementType.FIELD)

View File

@ -5,6 +5,7 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy; import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target; import java.lang.annotation.Target;
import org.gcube.accounting.datamodel.validations.ValidityChecker;
import org.gcube.accounting.datamodel.validations.validators.ValidLongValidator; import org.gcube.accounting.datamodel.validations.validators.ValidLongValidator;
@Target(ElementType.FIELD) @Target(ElementType.FIELD)

View File

@ -5,6 +5,7 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy; import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target; import java.lang.annotation.Target;
import org.gcube.accounting.datamodel.validations.ValidityChecker;
import org.gcube.accounting.datamodel.validations.validators.ValidOperationResultValidator; import org.gcube.accounting.datamodel.validations.validators.ValidOperationResultValidator;
@Target(ElementType.FIELD) @Target(ElementType.FIELD)

View File

@ -6,7 +6,7 @@ package org.gcube.accounting.datamodel.validations.validators;
import java.io.Serializable; import java.io.Serializable;
import org.gcube.accounting.datamodel.UsageRecord; import org.gcube.accounting.datamodel.UsageRecord;
import org.gcube.accounting.datamodel.validations.annotations.DeprecationAction; import org.gcube.accounting.datamodel.validations.DeprecationAction;
/** /**
* @author Luca Frosini (ISTI - CNR) http://www.lucafrosini.com/ * @author Luca Frosini (ISTI - CNR) http://www.lucafrosini.com/

View File

@ -3,6 +3,7 @@ package org.gcube.accounting.datamodel.validations.validators;
import java.io.Serializable; import java.io.Serializable;
import java.util.Map; import java.util.Map;
import org.gcube.accounting.datamodel.validations.FieldValidator;
import org.gcube.accounting.exception.InvalidValueException; import org.gcube.accounting.exception.InvalidValueException;
public class NotEmptyValidator implements FieldValidator{ public class NotEmptyValidator implements FieldValidator{

View File

@ -2,6 +2,7 @@ package org.gcube.accounting.datamodel.validations.validators;
import java.io.Serializable; import java.io.Serializable;
import org.gcube.accounting.datamodel.validations.FieldValidator;
import org.gcube.accounting.exception.InvalidValueException; import org.gcube.accounting.exception.InvalidValueException;
public class NotNullValidator implements FieldValidator { public class NotNullValidator implements FieldValidator {

View File

@ -4,6 +4,7 @@ import java.io.Serializable;
import java.util.regex.Matcher; import java.util.regex.Matcher;
import java.util.regex.Pattern; import java.util.regex.Pattern;
import org.gcube.accounting.datamodel.validations.FieldValidator;
import org.gcube.accounting.exception.InvalidValueException; import org.gcube.accounting.exception.InvalidValueException;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;

View File

@ -2,6 +2,7 @@ package org.gcube.accounting.datamodel.validations.validators;
import java.io.Serializable; import java.io.Serializable;
import org.gcube.accounting.datamodel.validations.FieldValidator;
import org.gcube.accounting.exception.InvalidValueException; import org.gcube.accounting.exception.InvalidValueException;

View File

@ -2,6 +2,7 @@ package org.gcube.accounting.datamodel.validations.validators;
import java.io.Serializable; import java.io.Serializable;
import org.gcube.accounting.datamodel.validations.FieldValidator;
import org.gcube.accounting.exception.InvalidValueException; import org.gcube.accounting.exception.InvalidValueException;

View File

@ -3,6 +3,7 @@ package org.gcube.accounting.datamodel.validations.validators;
import java.io.Serializable; import java.io.Serializable;
import org.gcube.accounting.datamodel.UsageRecord.OperationResult; import org.gcube.accounting.datamodel.UsageRecord.OperationResult;
import org.gcube.accounting.datamodel.validations.FieldValidator;
import org.gcube.accounting.exception.InvalidValueException; import org.gcube.accounting.exception.InvalidValueException;
public class ValidOperationResultValidator implements FieldValidator { public class ValidOperationResultValidator implements FieldValidator {

View File

@ -6,7 +6,7 @@ package org.gcube.accounting.datamodel.validations.validators;
import java.io.Serializable; import java.io.Serializable;
import org.gcube.accounting.datamodel.UsageRecord; import org.gcube.accounting.datamodel.UsageRecord;
import org.gcube.accounting.datamodel.validations.annotations.DeprecationAction; import org.gcube.accounting.datamodel.validations.DeprecationAction;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
@ -14,9 +14,9 @@ import org.slf4j.LoggerFactory;
* @author Luca Frosini (ISTI - CNR) http://www.lucafrosini.com/ * @author Luca Frosini (ISTI - CNR) http://www.lucafrosini.com/
* *
*/ */
public class Ignore implements DeprecationAction { public class WarningAlert implements DeprecationAction {
private static Logger logger = LoggerFactory.getLogger(Ignore.class); private static Logger logger = LoggerFactory.getLogger(WarningAlert.class);
/** /**
* {@inheritDoc} * {@inheritDoc}