From d53dd33644b7cfb2f29a821ac44d0aca3dbeda8e Mon Sep 17 00:00:00 2001 From: Luca Frosini Date: Fri, 3 Apr 2020 14:17:28 +0200 Subject: [PATCH] Adding StorageHub rules --- .../validations/validators/TestRules.java | 6 +-- .../rules/StorageHub/StorageHub-OTHER.csv | 4 ++ .../rules/StorageHub/StorageHub-OTHER.json | 12 ++++++ .../StorageHub-getVreRootFolder.csv | 3 ++ .../StorageHub-getVreRootFolder.json | 12 ++++++ .../StorageHub/StorageHub-getWorkspace.csv | 3 ++ .../StorageHub/StorageHub-getWorkspace.json | 12 ++++++ .../rules/StorageHub/StorageHub-listById.csv | 40 +++++++++++++++++++ .../rules/StorageHub/StorageHub-listById.json | 12 ++++++ .../StorageHub/StorageHub-listByIdPaged.csv | 3 ++ .../StorageHub/StorageHub-listByIdPaged.json | 12 ++++++ .../StorageHub-resolvePubliclink.csv | 2 + .../StorageHub-resolvePubliclink.json | 12 ++++++ 13 files changed, 130 insertions(+), 3 deletions(-) create mode 100644 src/test/resources/rules/StorageHub/StorageHub-OTHER.csv create mode 100644 src/test/resources/rules/StorageHub/StorageHub-OTHER.json create mode 100644 src/test/resources/rules/StorageHub/StorageHub-getVreRootFolder.csv create mode 100644 src/test/resources/rules/StorageHub/StorageHub-getVreRootFolder.json create mode 100644 src/test/resources/rules/StorageHub/StorageHub-getWorkspace.csv create mode 100644 src/test/resources/rules/StorageHub/StorageHub-getWorkspace.json create mode 100644 src/test/resources/rules/StorageHub/StorageHub-listById.csv create mode 100644 src/test/resources/rules/StorageHub/StorageHub-listById.json create mode 100644 src/test/resources/rules/StorageHub/StorageHub-listByIdPaged.csv create mode 100644 src/test/resources/rules/StorageHub/StorageHub-listByIdPaged.json create mode 100644 src/test/resources/rules/StorageHub/StorageHub-resolvePubliclink.csv create mode 100644 src/test/resources/rules/StorageHub/StorageHub-resolvePubliclink.json diff --git a/src/test/java/org/gcube/accounting/datamodel/validations/validators/TestRules.java b/src/test/java/org/gcube/accounting/datamodel/validations/validators/TestRules.java index 05f96b9..d035f43 100644 --- a/src/test/java/org/gcube/accounting/datamodel/validations/validators/TestRules.java +++ b/src/test/java/org/gcube/accounting/datamodel/validations/validators/TestRules.java @@ -219,8 +219,8 @@ public class TestRules extends ContextTest { public void testSingleRule() throws Exception { allRules(); File rulesDirectory = getRulesDirectory(); - File rulesDirFile = new File(rulesDirectory, "URIResolver"); - File ruleFile = new File(rulesDirFile, "URIResolver-TentativeOfHarvesting.json"); + File rulesDirFile = new File(rulesDirectory, "StorageHub"); + File ruleFile = new File(rulesDirFile, "StorageHub-getVreRootFolder.json"); testRule(ruleFile); } @@ -228,7 +228,7 @@ public class TestRules extends ContextTest { public void testAllRuleInAdirectory() throws Exception { allRules(); File rulesDirectory = getRulesDirectory(); - File rulesDirFile = new File(rulesDirectory, "URIResolver"); + File rulesDirFile = new File(rulesDirectory, "StorageHub"); FilenameFilter filenameFilter = new FilenameFilter() { @Override diff --git a/src/test/resources/rules/StorageHub/StorageHub-OTHER.csv b/src/test/resources/rules/StorageHub/StorageHub-OTHER.csv new file mode 100644 index 0000000..617295f --- /dev/null +++ b/src/test/resources/rules/StorageHub/StorageHub-OTHER.csv @@ -0,0 +1,4 @@ +DataAccess,StorageHub,OTHER +DataAccess,StorageHub,createItem(null) +DataAccess,StorageHub,test-upload(FILE) +DataAccess,StorageHub,UNKNOWN \ No newline at end of file diff --git a/src/test/resources/rules/StorageHub/StorageHub-OTHER.json b/src/test/resources/rules/StorageHub/StorageHub-OTHER.json new file mode 100644 index 0000000..738b340 --- /dev/null +++ b/src/test/resources/rules/StorageHub/StorageHub-OTHER.json @@ -0,0 +1,12 @@ +{ + "match": { + "serviceClassRegex": "DataAccess", + "serviceNameRegex": "StorageHub", + "calledMethodRegex": "(test-upload\\(FILE\\))|(OTHER)|(UNKNOWN)|(createItem\\(null\\))" + }, + "replace": { + "serviceClass": "DataAccess", + "serviceName": "StorageHub", + "calledMethod": "OTHER" + } +} \ No newline at end of file diff --git a/src/test/resources/rules/StorageHub/StorageHub-getVreRootFolder.csv b/src/test/resources/rules/StorageHub/StorageHub-getVreRootFolder.csv new file mode 100644 index 0000000..403c0de --- /dev/null +++ b/src/test/resources/rules/StorageHub/StorageHub-getVreRootFolder.csv @@ -0,0 +1,3 @@ +DataAccess,StorageHub,/workspace/vrefolder +DataAccess,StorageHub,/workspace/vrefolder/ +DataAccess,StorageHub,getVreRootFolder \ No newline at end of file diff --git a/src/test/resources/rules/StorageHub/StorageHub-getVreRootFolder.json b/src/test/resources/rules/StorageHub/StorageHub-getVreRootFolder.json new file mode 100644 index 0000000..23cbc13 --- /dev/null +++ b/src/test/resources/rules/StorageHub/StorageHub-getVreRootFolder.json @@ -0,0 +1,12 @@ +{ + "match": { + "serviceClassRegex": "DataAccess", + "serviceNameRegex": "StorageHub", + "calledMethodRegex": "\/workspace\/vrefolder(\/){0,1}|getVreRootFolder" + }, + "replace": { + "serviceClass": "DataAccess", + "serviceName": "StorageHub", + "calledMethod": "getVreRootFolder" + } +} \ No newline at end of file diff --git a/src/test/resources/rules/StorageHub/StorageHub-getWorkspace.csv b/src/test/resources/rules/StorageHub/StorageHub-getWorkspace.csv new file mode 100644 index 0000000..f32c7c8 --- /dev/null +++ b/src/test/resources/rules/StorageHub/StorageHub-getWorkspace.csv @@ -0,0 +1,3 @@ +DataAccess,StorageHub,/workspace/ +DataAccess,StorageHub,/workspace/i +DataAccess,StorageHub,getWorkspace diff --git a/src/test/resources/rules/StorageHub/StorageHub-getWorkspace.json b/src/test/resources/rules/StorageHub/StorageHub-getWorkspace.json new file mode 100644 index 0000000..b4e8dd6 --- /dev/null +++ b/src/test/resources/rules/StorageHub/StorageHub-getWorkspace.json @@ -0,0 +1,12 @@ +{ + "match": { + "serviceClassRegex": "DataAccess", + "serviceNameRegex": "StorageHub", + "calledMethodRegex": "(\/workspace(\/.|\/){0,1})|getWorkspace" + }, + "replace": { + "serviceClass": "DataAccess", + "serviceName": "StorageHub", + "calledMethod": "getWorkspace" + } +} \ No newline at end of file diff --git a/src/test/resources/rules/StorageHub/StorageHub-listById.csv b/src/test/resources/rules/StorageHub/StorageHub-listById.csv new file mode 100644 index 0000000..900bd25 --- /dev/null +++ b/src/test/resources/rules/StorageHub/StorageHub-listById.csv @@ -0,0 +1,40 @@ +DataAccess,StorageHub,/list/byId +DataAccess,StorageHub,/list/byPath +DataAccess,StorageHub,/workspace/a805998e-fa5a-4185-809c-72666f5f7ca7/chidlren +DataAccess,StorageHub,/workspace/a805998e-fa5a-4185-809c-72666f5f7ca7/children +DataAccess,StorageHub,/workspace/bc1c9525-43f7-4565-b5ea-0a0f9d7853a0/children +DataAccess,StorageHub,/workspace/children +DataAccess,StorageHub,/workspace/itams/0ea656f2-0b86-411b-9711-00dba6261738/children +DataAccess,StorageHub,/workspace/item/0ea656f2-0b86-411b-9711-00dba6261738/children +DataAccess,StorageHub,/workspace/item/28bb2712-c3a7-4879-8866-16076c5725a6/children +DataAccess,StorageHub,/workspace/item/29d9a102-802b-4775-b80d-a42730c643cb/children +DataAccess,StorageHub,/workspace/item/469c9cd3-6d1b-4bd1-ba4c-af51b31ee608/children +DataAccess,StorageHub,/workspace/item/5468f27c-7896-43d0-971a-c2e4008b7370/children +DataAccess,StorageHub,/workspace/item/790e4c52-fbca-48e9-b267-67ea2ce708c0/children +DataAccess,StorageHub,/workspace/item/7dcd7471-e101-4c01-9c0a-3edf6ffc7439/children +DataAccess,StorageHub,/workspace/item/803c135a-7a6b-47c5-93cf-e1fe10c6bfaa/children +DataAccess,StorageHub,/workspace/item/91409eba-0bf6-4aa5-8d73-3536bf181587/children +DataAccess,StorageHub,/workspace/item/a73c7b1d-4ba8-49ea-8657-e9396b3d9532/children +DataAccess,StorageHub,/workspace/item/a805998e-fa5a-4185-809c-72666f5f7ca7/chidren +DataAccess,StorageHub,/workspace/item/a805998e-fa5a-4185-809c-72666f5f7ca7/children +DataAccess,StorageHub,/workspace/item/bab4c567-f028-4c76-8d89-403a0b57608f/children +DataAccess,StorageHub,/workspace/item/bc1c9525-43f7-4565-b5ea-0a0f9d7853a0/children +DataAccess,StorageHub,/workspace/item/c141d53d-4cae-4bfc-a6f7-9b8bbd8c0e2b/children +DataAccess,StorageHub,/workspace/item/e2f8023b-a943-43f6-a785-c5598bc96af3/children +DataAccess,StorageHub,/workspace/item/e46cfe89-6eef-47f4-a560-e6c0d2cb2e59/children +DataAccess,StorageHub,/workspace/item/ecd58a93-9610-47a3-b145-825779195926/children +DataAccess,StorageHub,/workspace/items/08c47365-d534-45ff-a690-882ced63100f/getChildren +DataAccess,StorageHub,/workspace/items/0ea656f2-0b86-411b-9711-00dba6261738/children +DataAccess,StorageHub,/workspace/items/38f90231-9d3d-4d4b-afe8-4b2ba66b8742/children +DataAccess,StorageHub,/workspace/items/40a3dd6c-2c47-4848-bb7b-462e532954a9/getChildren +DataAccess,StorageHub,/workspace/items/40a3dd6c-2c47-4848-bb7b-462e532954a9/getchildren +DataAccess,StorageHub,/workspace/items/695b9a39-ef3c-4e77-bbb5-136a59fa8328/children +DataAccess,StorageHub,/workspace/items/87bea023-3eed-445b-8c27-4d9d4e5921cc/children +DataAccess,StorageHub,/workspace/items/91409eba-0bf6-4aa5-8d73-3536bf181587/children +DataAccess,StorageHub,/workspace/items/a805998e-fa5a-4185-809c-72666f5f7ca7/children +DataAccess,StorageHub,/workspace/items/bc1c9525-43f7-4565-b5ea-0a0f9d7853a0/chidren +DataAccess,StorageHub,/workspace/items/bc1c9525-43f7-4565-b5ea-0a0f9d7853a0/children +DataAccess,StorageHub,/workspace/items/ecd58a93-9610-47a3-b145-825779195926/children +DataAccess,StorageHub,/workspace/trahs/children +DataAccess,StorageHub,/workspace/vrefolder/children +DataAccess,StorageHub,listById \ No newline at end of file diff --git a/src/test/resources/rules/StorageHub/StorageHub-listById.json b/src/test/resources/rules/StorageHub/StorageHub-listById.json new file mode 100644 index 0000000..81fb6fe --- /dev/null +++ b/src/test/resources/rules/StorageHub/StorageHub-listById.json @@ -0,0 +1,12 @@ +{ + "match": { + "serviceClassRegex": "DataAccess", + "serviceNameRegex": "StorageHub", + "calledMethodRegex": "(listById)|(\/list\/byId)|(\/list\/byPath)|(\/workspace/{0,1}.*\/(get){0,1}(C|c)hi(dl|ld|d)ren)" + }, + "replace": { + "serviceClass": "DataAccess", + "serviceName": "StorageHub", + "calledMethod": "listById" + } +} \ No newline at end of file diff --git a/src/test/resources/rules/StorageHub/StorageHub-listByIdPaged.csv b/src/test/resources/rules/StorageHub/StorageHub-listByIdPaged.csv new file mode 100644 index 0000000..f5e3c6f --- /dev/null +++ b/src/test/resources/rules/StorageHub/StorageHub-listByIdPaged.csv @@ -0,0 +1,3 @@ +DataAccess,StorageHub,/workspace/paged +DataAccess,StorageHub,/workspace/paged/ +DataAccess,StorageHub,listByIdPaged \ No newline at end of file diff --git a/src/test/resources/rules/StorageHub/StorageHub-listByIdPaged.json b/src/test/resources/rules/StorageHub/StorageHub-listByIdPaged.json new file mode 100644 index 0000000..f736cbe --- /dev/null +++ b/src/test/resources/rules/StorageHub/StorageHub-listByIdPaged.json @@ -0,0 +1,12 @@ +{ + "match": { + "serviceClassRegex": "DataAccess", + "serviceNameRegex": "StorageHub", + "calledMethodRegex": "(listByIdPaged)|(\/workspace/paged(\/){0,1})" + }, + "replace": { + "serviceClass": "DataAccess", + "serviceName": "StorageHub", + "calledMethod": "listByIdPaged" + } +} \ No newline at end of file diff --git a/src/test/resources/rules/StorageHub/StorageHub-resolvePubliclink.csv b/src/test/resources/rules/StorageHub/StorageHub-resolvePubliclink.csv new file mode 100644 index 0000000..d08ec7b --- /dev/null +++ b/src/test/resources/rules/StorageHub/StorageHub-resolvePubliclink.csv @@ -0,0 +1,2 @@ +DataAccess,StorageHub,/workspace/items/publiclink/E_cb6a04d1-f94b-4c2f-90ed-18c1cee591bc +DataAccess,StorageHub,/workspace/items/publiclink/E_yl9pyk1l/+qF3LnaT17GYrcqp1eg7ZghY9VJUfIk/PIMEGZvJQQZxpQ0jBEOh2eZ \ No newline at end of file diff --git a/src/test/resources/rules/StorageHub/StorageHub-resolvePubliclink.json b/src/test/resources/rules/StorageHub/StorageHub-resolvePubliclink.json new file mode 100644 index 0000000..5279bfd --- /dev/null +++ b/src/test/resources/rules/StorageHub/StorageHub-resolvePubliclink.json @@ -0,0 +1,12 @@ +{ + "match": { + "serviceClassRegex": "DataAccess", + "serviceNameRegex": "StorageHub", + "calledMethodRegex": "\/workspace\/items\/publiclink\/.*" + }, + "replace": { + "serviceClass": "DataAccess", + "serviceName": "StorageHub", + "calledMethod": "resolvePubliclink" + } +} \ No newline at end of file