This commit is contained in:
Alessandro Pieve 2016-09-08 15:21:05 +00:00
parent c23b53df2f
commit f71a86ad74
6 changed files with 68 additions and 23 deletions

View File

@ -20,7 +20,6 @@
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
<attributes>
<attribute name="maven.pomderived" value="true"/>
<attribute name="org.eclipse.jst.component.nondependency" value=""/>
</attributes>
</classpathentry>
<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources">

View File

@ -21,11 +21,14 @@ Authors
--------------------------------------------------
* Luca Frosini (luca.frosini-AT-isti.cnr.it), Istituto di Scienza e Tecnologie dell'Informazione "A. Faedo" - CNR, Pisa (Italy).
* Alessandro Pieve (alessandro.pieve-AT-isti.cnr.it), Istituto di Scienza e Tecnologie dell'Informazione "A. Faedo" - CNR, Pisa (Italy).
Maintainers
-----------
* Luca Frosini (luca.frosini-AT-isti.cnr.it), Istituto di Scienza e Tecnologie dell'Informazione "A. Faedo" - CNR, Pisa (Italy).
* Alessandro Pieve (alessandro.pieve-AT-isti.cnr.it), Istituto di Scienza e Tecnologie dell'Informazione "A. Faedo" - CNR, Pisa (Italy).
Download information

View File

@ -56,7 +56,6 @@
<dependency>
<groupId>org.gcube.data.publishing</groupId>
<artifactId>document-store-lib</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.gcube.resources.discovery</groupId>

View File

@ -12,6 +12,7 @@ import org.gcube.accounting.datamodel.validations.validators.ValidOperationResul
import org.gcube.common.authorization.client.Constants;
import org.gcube.common.authorization.library.AuthorizationEntry;
import org.gcube.common.authorization.library.provider.SecurityTokenProvider;
import org.gcube.common.scope.api.ScopeProvider;
import org.gcube.documentstore.exception.InvalidValueException;
import org.gcube.documentstore.records.Record;
import org.gcube.documentstore.records.implementation.AbstractRecord;
@ -20,6 +21,7 @@ import org.gcube.documentstore.records.implementation.validations.annotations.No
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* @author Luca Frosini (ISTI - CNR) http://www.lucafrosini.com/
*
@ -30,7 +32,7 @@ public abstract class BasicUsageRecord extends AbstractRecord implements UsageRe
* Generated Serial Version UID
*/
private static final long serialVersionUID = -2060728578456796388L;
private static Logger logger = LoggerFactory.getLogger(BasicUsageRecord.class);
/**
@ -39,28 +41,33 @@ public abstract class BasicUsageRecord extends AbstractRecord implements UsageRe
*/
@Deprecated @MoveToRecordType
public static final String USAGE_RECORD_TYPE = "usageRecordType";
@RequiredField @NotEmpty
public static final String CONSUMER_ID = UsageRecord.CONSUMER_ID;
@RequiredField @NotEmpty
public static final String SCOPE = UsageRecord.SCOPE;
@RequiredField @ValidOperationResult
public static final String OPERATION_RESULT = UsageRecord.OPERATION_RESULT;
public static String getScopeFromToken(){
String token = SecurityTokenProvider.instance.get();
AuthorizationEntry authorizationEntry;
try {
authorizationEntry = Constants.authorizationService().get(token);
} catch (Exception e) {
throw new RuntimeException(e);
String scope =ScopeProvider.instance.get();
if (scope==null){
String token = SecurityTokenProvider.instance.get();
AuthorizationEntry authorizationEntry;
try {
authorizationEntry = Constants.authorizationService().get(token);
} catch (Exception e) {
throw new RuntimeException(e);
}
scope = authorizationEntry.getContext();
}
String scope = authorizationEntry.getContext();
return scope;
}
/**
* Initialize variable
*/
@ -73,7 +80,7 @@ public abstract class BasicUsageRecord extends AbstractRecord implements UsageRe
logger.warn("Unable to automaticcally set the scope using scope provider. The record will not be valid if the scope will not be explicitly set.");
}
}
public BasicUsageRecord(){
super();
}
@ -97,8 +104,8 @@ public abstract class BasicUsageRecord extends AbstractRecord implements UsageRe
public void setConsumerId(String consumerId) throws InvalidValueException {
setResourceProperty(CONSUMER_ID, consumerId);
}
/**
* {@inheritDoc}
*/
@ -106,7 +113,7 @@ public abstract class BasicUsageRecord extends AbstractRecord implements UsageRe
public String getScope() {
return (String) this.resourceProperties.get(SCOPE);
}
/**
* {@inheritDoc}
*/
@ -114,7 +121,7 @@ public abstract class BasicUsageRecord extends AbstractRecord implements UsageRe
public void setScope(String scope) throws InvalidValueException {
setResourceProperty(SCOPE, scope);
}
/**
* {@inheritDoc}
*/
@ -127,7 +134,7 @@ public abstract class BasicUsageRecord extends AbstractRecord implements UsageRe
return null;
}
}
/**
* {@inheritDoc}
* @throws InvalidValueException

View File

@ -48,17 +48,27 @@ public abstract class AbstractServiceUsageRecord extends BasicUsageRecord {
public static final String SERVICE_NAME = "serviceName";
/**
* KEY for : Service Name
* KEY for : Called Method
*/
@RequiredField @NotEmpty
public static final String CALLED_METHOD = "calledMethod";
/**
* KEY for : Service Name
* KEY for : Duration
*/
@RequiredField @ValidLong
public static final String DURATION = "duration";
/**
* KEY for : callerQualifier
*
*/
@RequiredField @NotEmpty
public static final String CALLERQUALIFIER = "callerQualifier";
public AbstractServiceUsageRecord(){
super();
}
@ -124,4 +134,13 @@ public abstract class AbstractServiceUsageRecord extends BasicUsageRecord {
public void setDuration(Long duration) throws InvalidValueException {
setResourceProperty(DURATION, duration);
}
/*Add a new field*/
public String getCallerQualifier() {
return (String) this.resourceProperties.get(CALLERQUALIFIER);
}
public void setCallerQualifier(String callerQualifier) throws InvalidValueException {
setResourceProperty(CALLERQUALIFIER, callerQualifier);
}
}

View File

@ -85,6 +85,15 @@ public abstract class AbstractStorageUsageRecord extends BasicUsageRecord {
@NotEmptyIfNotNull
public static final String QUALIFIER = "qualifier";
/**
* KEY for : callerQualifier
*/
/*
@NotEmptyIfNotNull
public static final String CALLERQUALIFIER = "callerQualifier";
*/
public AbstractStorageUsageRecord() {
super();
}
@ -184,4 +193,13 @@ public abstract class AbstractStorageUsageRecord extends BasicUsageRecord {
setResourceProperty(QUALIFIER, qualifier);
}
/*Add a new field*/
/*
public String getCallerQualifier() {
return (String) this.resourceProperties.get(CALLERQUALIFIER);
}
public void setCallerQualifier(String callerQualifier) throws InvalidValueException {
setResourceProperty(CALLERQUALIFIER, callerQualifier);
}
*/
}