Upgraded version and changelog after release 4.10.0 refs #10698.

git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/accounting/accounting-lib@163302 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
Luca Frosini 2018-02-15 15:17:56 +00:00
parent fb8af136a9
commit d88b374b04
3 changed files with 138 additions and 3 deletions

View File

@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xml>
<ReleaseNotes>
<Changeset component="org.gcube.accounting.accounting-lib.3-2-0" date="${buildDate}">
<Changeset component="org.gcube.accounting.accounting-lib.3-3-0" date="${buildDate}">
<Change></Change>
</Changeset>
<Changeset component="org.gcube.accounting.accounting-lib.3-2-0" date="2017-02-15">
<Change>Changed pom.xml to use new make-servicearchive directive #10142</Change>
<Change>Added the possibility to rewrite the calledMethod which match a regular expression #10646</Change>
</Changeset>

View File

@ -9,7 +9,7 @@
<groupId>org.gcube.accounting</groupId>
<artifactId>accounting-lib</artifactId>
<version>3.2.0-SNAPSHOT</version>
<version>3.3.0-SNAPSHOT</version>
<name>Accounting Library</name>
<description>Accounting Library</description>
<packaging>jar</packaging>

View File

@ -126,6 +126,56 @@ public class ServiceUsageRecordTest extends ScopedTest {
}
@Test
public void aRegexReplaceTest() throws Exception{
RecordUtility.addRecordPackage(ServiceUsageRecord.class.getPackage());
RecordUtility.addRecordPackage(AggregatedServiceUsageRecord.class.getPackage());
String usageRecordString = "{"
+ "\"operationCount\":1,"
+ "\"creationTime\":1507312376364,"
+ "\"serviceClass\":\"Index\","
+ "\"callerHost\":\"88.197.53.47\","
+ "\"callerQualifier\":\"UNKNOWN\","
+ "\"recordType\":\"ServiceUsageRecord\","
+ "\"consumerId\":\"UNKNOWN\","
+ "\"aggregated\":true,"
+ "\"serviceName\":\"FullTextIndexNode\","
+ "\"duration\":2,"
+ "\"maxInvocationTime\":10,"
+ "\"scope\":\"/d4science.research-infrastructures.eu/gCubeApps/iSearch\","
+ "\"host\":\"dl046.madgik.di.uoa.gr:8080\","
+ "\"startTime\":1507312375624,\"id\":\"64c5d799-4cf7-40ee-885b-338634dcaecb\","
+ "\"calledMethod\":\"/delete/3121eccdcbf9c6e982dcc5a2164b8b4029f51d8b1c448ddaf46316178d755c6f/oai:oai.datacite.org:263334\","
+ "\"endTime\":1507312375624,"
+ "\"minInvocationTime\":2,"
+ "\"operationResult\":\"SUCCESS\""
+"}";
String goodReplace = "/delete/{collection-id}/{item-id}";
RegexReplace regexReplace = new RegexReplace("Index", "FullTextIndexNode",
"/delete/[^\\t\\n\\r\\f\\v]+/[^\\t\\n\\r\\f\\v]+", goodReplace);
CalledMethodRegexReplaceValidator.addRegexReplace(regexReplace);
String replace = "GET /access/instance/Configuration/{id}";
regexReplace = new RegexReplace("InformationSystem", "resource-registry",
"/access/instance/Configuration/[^\\t\\n\\r\\f\\v]+", replace);
CalledMethodRegexReplaceValidator.addRegexReplace(regexReplace);
replace = "GET /access/instance/EService/{id}";
regexReplace = new RegexReplace("InformationSystem", "resource-registry",
"/access/instance/EService/[^\\t\\n\\r\\f\\v]+", replace);
CalledMethodRegexReplaceValidator.addRegexReplace(regexReplace);
UsageRecord usageRecord = DSMapper.unmarshal(AggregatedServiceUsageRecord.class, usageRecordString);
logger.debug("{}", usageRecord);
AggregatedServiceUsageRecord aggregatedServiceUsageRecord = new AggregatedServiceUsageRecord(usageRecord.getResourceProperties());
logger.debug("{}", aggregatedServiceUsageRecord);
Assert.assertTrue(aggregatedServiceUsageRecord.getCalledMethod().compareTo(goodReplace)==0);
}
@Test
public void testRegexReplace() throws Exception{
RecordUtility.addRecordPackage(ServiceUsageRecord.class.getPackage());
@ -153,7 +203,7 @@ public class ServiceUsageRecordTest extends ScopedTest {
+ "}";
String replace = "/delete/COLLECTION_ID/ITEM_ID";
String replace = "/delete/{collection-id}/{item-id}";
RegexReplace regexReplace = new RegexReplace("Index", "FullTextIndexNode",
"/delete/[^\\t\\n\\r\\f\\v]+/[^\\t\\n\\r\\f\\v]+", replace);
CalledMethodRegexReplaceValidator.addRegexReplace(regexReplace);
@ -168,4 +218,86 @@ public class ServiceUsageRecordTest extends ScopedTest {
}
@Test
public void testAnotherRegexReplace() throws Exception{
RecordUtility.addRecordPackage(ServiceUsageRecord.class.getPackage());
RecordUtility.addRecordPackage(AggregatedServiceUsageRecord.class.getPackage());
String usageRecordString = "{"
+ "\"startTime\": 1507334430481,"
+ "\"endTime\": 1507334430481,"
+ "\"creationTime\":1507334430724,"
+ "\"serviceClass\":\"InformationSystem\","
+ "\"callerHost\":\"88.197.53.47\","
+ "\"callerQualifier\":\"UNKNOWN\","
+ "\"recordType\":\"ServiceUsageRecord\","
+ "\"consumerId\":\"UNKNOWN\","
+ "\"aggregated\":true,"
+ "\"serviceName\":\"resource-registry\","
+ "\"duration\":3,"
+ "\"maxInvocationTime\": 58,"
+ "\"minInvocationTime\": 1,"
+ "\"scope\":\"/d4science.research-infrastructures.eu\","
+ "\"host\":\"dewn10.madgik.di.uoa.gr:8080\","
+ "\"id\":\"12a631da-1541-4771-8961-8d7e4a694bc0\","
+ "\"calledMethod\":\"/access/instance/Configuration/12a631da-1541-4771-8961-8d7e4a694bc0\","
+ "\"operationResult\":\"SUCCESS\""
+ "}";
String replace = "GET /access/instance/Configuration/{id}";
RegexReplace regexReplace = new RegexReplace("InformationSystem", "resource-registry",
"/access/instance/Configuration/[^\\t\\n\\r\\f\\v]+", replace);
CalledMethodRegexReplaceValidator.addRegexReplace(regexReplace);
UsageRecord usageRecord = DSMapper.unmarshal(AggregatedServiceUsageRecord.class, usageRecordString);
logger.debug("{}", usageRecord);
AggregatedServiceUsageRecord aggregatedServiceUsageRecord = new AggregatedServiceUsageRecord(usageRecord.getResourceProperties());
logger.debug("{}", aggregatedServiceUsageRecord);
Assert.assertTrue(aggregatedServiceUsageRecord.getCalledMethod().compareTo(replace)==0);
}
@Test
public void testAnotherOneRegexReplace() throws Exception{
RecordUtility.addRecordPackage(ServiceUsageRecord.class.getPackage());
RecordUtility.addRecordPackage(AggregatedServiceUsageRecord.class.getPackage());
String usageRecordString = "{"
+ "\"startTime\": 1507334430481,"
+ "\"endTime\": 1507334430481,"
+ "\"creationTime\":1507334430724,"
+ "\"serviceClass\":\"InformationSystem\","
+ "\"callerHost\":\"88.197.53.47\","
+ "\"callerQualifier\":\"UNKNOWN\","
+ "\"recordType\":\"ServiceUsageRecord\","
+ "\"consumerId\":\"UNKNOWN\","
+ "\"aggregated\":true,"
+ "\"serviceName\":\"resource-registry\","
+ "\"duration\":3,"
+ "\"maxInvocationTime\": 58,"
+ "\"minInvocationTime\": 1,"
+ "\"scope\":\"/d4science.research-infrastructures.eu\","
+ "\"host\":\"dewn10.madgik.di.uoa.gr:8080\","
+ "\"id\":\"12a631da-1541-4771-8961-8d7e4a694bc0\","
+ "\"calledMethod\":\"/access/instance/EService/12a631da-1541-4771-8961-8d7e4a694bc0\","
+ "\"operationResult\":\"SUCCESS\""
+ "}";
String replace = "GET /access/instance/EService/{id}";
RegexReplace regexReplace = new RegexReplace("InformationSystem", "resource-registry",
"/access/instance/EService/[^\\t\\n\\r\\f\\v]+", replace);
CalledMethodRegexReplaceValidator.addRegexReplace(regexReplace);
UsageRecord usageRecord = DSMapper.unmarshal(AggregatedServiceUsageRecord.class, usageRecordString);
logger.debug("{}", usageRecord);
AggregatedServiceUsageRecord aggregatedServiceUsageRecord = new AggregatedServiceUsageRecord(usageRecord.getResourceProperties());
logger.debug("{}", aggregatedServiceUsageRecord);
Assert.assertTrue(aggregatedServiceUsageRecord.getCalledMethod().compareTo(replace)==0);
}
}