diff options
author | a.sreekumar <ajith.sreekumar@bell.ca> | 2021-06-29 13:57:14 +0100 |
---|---|---|
committer | a.sreekumar <ajith.sreekumar@bell.ca> | 2021-07-02 16:03:51 +0100 |
commit | 5f0ec1c2d95c377fbec428f11464e93fe442b5ef (patch) | |
tree | 4aef07097fa4d64550db116a1b1b4acd1aa42590 /auth | |
parent | ba55109db1e5eea013dcffd1be29cf06fe2bbcb1 (diff) |
Cleanup input & outputFields from Task definition
1) Remove the usage of inputField and outputField from Task definition.
2) Fix issues around populating events to task in case of State
Finalizer Logic.
Change-Id: Ief17f400729410b83c6b7c665980d443e0cf6f28
Issue-ID: POLICY-3336
Signed-off-by: a.sreekumar <ajith.sreekumar@bell.ca>
Diffstat (limited to 'auth')
7 files changed, 2439 insertions, 2688 deletions
diff --git a/auth/cli-codegen/src/test/java/org/onap/policy/apex/auth/clicodegen/CodeGeneratorCliEditorTest.java b/auth/cli-codegen/src/test/java/org/onap/policy/apex/auth/clicodegen/CodeGeneratorCliEditorTest.java index cec261c2a..d6cf1686b 100644 --- a/auth/cli-codegen/src/test/java/org/onap/policy/apex/auth/clicodegen/CodeGeneratorCliEditorTest.java +++ b/auth/cli-codegen/src/test/java/org/onap/policy/apex/auth/clicodegen/CodeGeneratorCliEditorTest.java @@ -107,17 +107,13 @@ public class CodeGeneratorCliEditorTest { // 2: tasks for (final AxTask t : policyModel.getTasks().getTaskMap().values()) { final AxArtifactKey key = t.getKey(); - final List<ST> infields = getInfieldsForTask(codeGen, t); - final List<ST> outfields = getOutfieldsForTask(codeGen, t); final ST logic = getLogicForTask(codeGen, t); final List<ST> parameters = getParametersForTask(codeGen, t); final List<ST> contextRefs = getCtxtRefsForTask(codeGen, t); - codeGen.addTaskDeclaration( - new TaskDeclarationBuilder().setName(kig.getName(key)).setVersion(kig.getVersion(key)) - .setUuid(kig.getUuid(key)).setDescription(kig.getDesc(key)).setInfields(infields) - .setOutfields(outfields).setLogic(logic).setParameters(parameters) - .setContextRefs(contextRefs)); + codeGen.addTaskDeclaration(new TaskDeclarationBuilder().setName(kig.getName(key)) + .setVersion(kig.getVersion(key)).setUuid(kig.getUuid(key)).setDescription(kig.getDesc(key)) + .setLogic(logic).setParameters(parameters).setContextRefs(contextRefs)); } // 3: events @@ -248,48 +244,6 @@ public class CodeGeneratorCliEditorTest { } /** - * Gets the output fields for task. - * - * @param cg the code generator - * @param task the task - * @return the output fields for task - */ - private List<ST> getOutfieldsForTask(final CodeGeneratorCliEditor cg, final AxTask task) { - final Collection<? extends AxField> fields = task.getOutputFields().values(); - final List<ST> ret = new ArrayList<>(fields.size()); - for (final AxField f : fields) { - final AxReferenceKey fkey = f.getKey(); - - final ST val = cg.createTaskDefinitionOutfields(kig.getPName(fkey), kig.getPVersion(fkey), - kig.getLName(fkey), kig.getName(f.getSchema()), kig.getVersion(f.getSchema())); - - ret.add(val); - } - return ret; - } - - /** - * Gets the input fields for task. - * - * @param cg the code generator - * @param task the task - * @return the input fields for task - */ - private List<ST> getInfieldsForTask(final CodeGeneratorCliEditor cg, final AxTask task) { - final Collection<? extends AxField> fields = task.getInputFields().values(); - final List<ST> ret = new ArrayList<>(fields.size()); - for (final AxField f : fields) { - final AxReferenceKey fkey = f.getKey(); - - final ST val = cg.createTaskDefinitionInfields(kig.getPName(fkey), kig.getPVersion(fkey), - kig.getLName(fkey), kig.getName(f.getSchema()), kig.getVersion(f.getSchema())); - - ret.add(val); - } - return ret; - } - - /** * Gets the states for policy. * * @param cg the code generator diff --git a/auth/cli-editor/src/main/resources/etc/editor/Commands.json b/auth/cli-editor/src/main/resources/etc/editor/Commands.json index fd5a77557..7136922a8 100644 --- a/auth/cli-editor/src/main/resources/etc/editor/Commands.json +++ b/auth/cli-editor/src/main/resources/etc/editor/Commands.json @@ -1,2427 +1,2427 @@ { - "commandList": [ - { - "name": "quit", - "keywordlist": [ - "quit" - ], - "argumentList": [], - "systemCommand": "true", - "description": "quit execution of command handling, this command quits immediately without saving the model" - }, - { - "name": "back", - "keywordlist": [ - "back" - ], - "argumentList": [], - "systemCommand": "true", - "description": "go back one level in editor context hierarchy" - }, - { - "name": "help", - "keywordlist": [ - "help" - ], - "argumentList": [], - "systemCommand": "true", - "description": "output help information appropriate to this point in the editor context hierarchy" - }, - { - "name": "load", - "keywordlist": [ - "load" - ], - "argumentList": [ - { - "argumentName": "fileName", - "nullable": false, - "description": "Name of a file containing an Apex model in JSON or XML format" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexModel.loadFromFile", - "description": "Load an Apex model from a file" - }, - { - "name": "save", - "keywordlist": [ - "save" - ], - "argumentList": [ - { - "argumentName": "fileName", - "nullable": true, - "description": "Name of the file to save the model to" - }, - { - "argumentName": "xmlFlag", - "nullable": true, - "description": "Flag indicating that the model should be saved in XML format, model saved in JSON format if flag is false or is not specified" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexModel.saveToFile", - "description": "Save an Apex model to a file" - }, - { - "name": "analyse", - "keywordlist": [ - "analyse" - ], - "argumentList": [], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexModel.analyse", - "description": "Analyse an Apex model to show concept usage" - }, - { - "name": "validate", - "keywordlist": [ - "validate" - ], - "argumentList": [], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexModel.validate", - "description": "Validate the entire Apex model to ensure it is consistent" - }, - { - "name": "compare", - "keywordlist": [ - "compare" - ], - "argumentList": [ - { - "argumentName": "otherModelFileName", - "nullable": false, - "description": "The file name of the other model" - }, - { - "argumentName": "diffsOnly", - "nullable": true, - "description": "Flag indicating that only differences between the model are returned when set" - }, - { - "argumentName": "keysOnly", - "nullable": true, - "description": "Flag indicating that only keys are printed when set, more terse output" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexModel.compare", - "description": "Compare an Apex model with another Apex model" - }, - { - "name": "split", - "keywordlist": [ - "split" - ], - "argumentList": [ - { - "argumentName": "targetModelName", - "nullable": false, - "description": "the file name of the target model in which to store the model split out from the original model" - }, - { - "argumentName": "splitOutPolicies", - "nullable": "false", - "description": "the policies form the original model to include in the split out model, specified as a comma delimited list of policy names" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexModel.split", - "description": "Split an Apex model into a separate Apex model with only the specified policies" - }, - { - "name": "merge", - "keywordlist": [ - "merge" - ], - "argumentList": [ - { - "argumentName": "mergeInModelName", - "nullable": false, - "description": "the file name of the model to merge into the current model" - }, - { - "argumentName": "keepOriginal", - "nullable": "true", - "description": "if true, if a concept exists in both models, the original model copy of that concept is kept, if false, the mreged model overwrites" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexModel.merge", - "description": "Merge another Apex model into this model" - }, - { - "name": "createModel", - "keywordlist": [ - "model", - "create" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the model" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the model, omit to use the default version" - }, - { - "argumentName": "uuid", - "nullable": true, - "description": "model UUID, omit to generate a UUID" - }, - { - "argumentName": "description", - "nullable": true, - "description": "model description, omit to generate a description" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createModel", - "description": "Create an Apex model." - }, - { - "name": "listModel", - "keywordlist": [ - "model", - "list" - ], - "argumentList": [], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listModel", - "description": "List an Apex model, list all the concepts in the model" - }, - { - "name": "deleteModel", - "keywordlist": [ - "model", - "delete" - ], - "argumentList": [], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteModel", - "description": "Delete an Apex model, clear all the concepts in the model" - }, - { - "name": "createKeyInformation", - "keywordlist": [ - "keyinfo", - "create" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the concept for the key information" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the concept for the key information, omit to use the default version" - }, - { - "argumentName": "uuid", - "nullable": true, - "description": "key information UUID, set to null to generate a UUID" - }, - { - "argumentName": "description", - "nullable": true, - "description": "concept description, omit to generate a description" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createKeyInformation", - "description": "Create key information" - }, - { - "name": "updateKeyInformation", - "keywordlist": [ - "keyinfo", - "update" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the concept for the key information" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the concept for the key information, omit to update the latest version" - }, - { - "argumentName": "uuid", - "nullable": true, - "description": "key information UUID, omit to not update" - }, - { - "argumentName": "description", - "nullable": true, - "description": "concept description, omit to not update" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updateKeyInformation", - "description": "Update key information" - }, - { - "name": "listKeyInformation", - "keywordlist": [ - "keyinfo", - "list" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": true, - "description": "name of the concept for the key information, omit to list all" - }, - { - "argumentName": "version", - "nullable": true, - "description": "starting version of the concept for the key information, omit to list all versions" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.ListKeyInformation", - "description": "List key information" - }, - { - "name": "deleteKeyInformation", - "keywordlist": [ - "keyinfo", - "delete" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": true, - "description": "name of the concept for the key information" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the concept for the key information, omit to delete all versions" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteKeyInformation", - "description": "Delete key information" - }, - { - "name": "validateKeyInformation", - "keywordlist": [ - "keyinfo", - "validate" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": true, - "description": "name of the concept for the key information" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the concept for the key information, omit to validate all versions" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.validateKeyInformation", - "description": "Validate key information" - }, - { - "name": "createSchema", - "keywordlist": [ - "schema", - "create" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the schema" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the schema, omit to use the default version" - }, - { - "argumentName": "flavour", - "nullable": true, - "description": "the flavour of the technology for this schema, defaults to \"Java\"" - }, - { - "argumentName": "schema", - "nullable": false, - "description": "the schema text that describes the item represented by the schema" - }, - { - "argumentName": "uuid", - "nullable": true, - "description": "schema UUID, omit to generate a UUID" - }, - { - "argumentName": "description", - "nullable": true, - "description": "schema description, omit to generate a description" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createContextSchema", - "description": "Create a schema." - }, - { - "name": "updateSchema", - "keywordlist": [ - "schema", - "update" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the schema" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the schema, omit to use the default version" - }, - { - "argumentName": "flavour", - "nullable": true, - "description": "the flavour of the technology for this schema, defaults to \"Java\"" - }, - { - "argumentName": "schema", - "nullable": false, - "description": "the schema text that describes the item represented by the schema" - }, - { - "argumentName": "uuid", - "nullable": true, - "description": "schema UUID, omit to generate a UUID" - }, - { - "argumentName": "description", - "nullable": true, - "description": "schema description, omit to generate a description" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updateContextSchema", - "description": "Update a schema." - }, - { - "name": "listSchemas", - "keywordlist": [ - "schema", - "list" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": true, - "description": "name of the schema, omit to list all" - }, - { - "argumentName": "version", - "nullable": true, - "description": "starting version of the schema, omit to list all versions" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listContextSchemas", - "description": "List schemas." - }, - { - "name": "deleteSchema", - "keywordlist": [ - "schema", - "delete" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": true, - "description": "name of the schema" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the schema, omit to delete all versions" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteContextSchema", - "description": "Delete a schema." - }, - { - "name": "validateSchemas", - "keywordlist": [ - "schema", - "validate" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": true, - "description": "name of the schema, omit to list all" - }, - { - "argumentName": "version", - "nullable": true, - "description": "starting version of the schema, omit to list all versions" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.validateContextSchemas", - "description": "Validate context schemas." - }, - { - "name": "createEvent", - "keywordlist": [ - "event", - "create" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the event" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the event, omit to use the default version" - }, - { - "argumentName": "nameSpace", - "nullable": true, - "description": "of the event, omit to use the default value" - }, - { - "argumentName": "source", - "nullable": true, - "description": "of the event, omit to use the default value" - }, - { - "argumentName": "target", - "nullable": true, - "description": "of the event, omit to use the default value" - }, - { - "argumentName": "uuid", - "nullable": true, - "description": "event UUID, omit to generate a UUID" - }, - { - "argumentName": "description", - "nullable": true, - "description": "event description, omit to generate a description" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createEvent", - "description": "Create an event." - }, - { - "name": "updateEvent", - "keywordlist": [ - "event", - "update" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the event" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the event, omit to use the latest version" - }, - { - "argumentName": "nameSpace", - "nullable": true, - "description": "of the event, omit to not update" - }, - { - "argumentName": "source", - "nullable": true, - "description": "of the event, omit to not update" - }, - { - "argumentName": "target", - "nullable": true, - "description": "of the event, omit to not update" - }, - { - "argumentName": "uuid", - "nullable": true, - "description": "event UUID, omit to not update" - }, - { - "argumentName": "description", - "nullable": true, - "description": "event description, omit to not update" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updateEvent", - "description": "Update an event." - }, - { - "name": "listEvent", - "keywordlist": [ - "event", - "list" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": true, - "description": "name of the event, omit to list all" - }, - { - "argumentName": "version", - "nullable": true, - "description": "starting version of the event, omit to list all versions" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listEvent", - "description": "List events." - }, - { - "name": "deleteEvent", - "keywordlist": [ - "event", - "delete" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the event" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the event, omit to delete all versions" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteEvent", - "description": "Delete an event." - }, - { - "name": "validateEvent", - "keywordlist": [ - "event", - "validate" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": true, - "description": "name of the event, omit to list all" - }, - { - "argumentName": "version", - "nullable": true, - "description": "starting version of the event, omit to list all versions" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.validateEvent", - "description": "Validate events." - }, - { - "name": "createEventPar", - "keywordlist": [ - "event", - "parameter", - "create" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the event" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the event, omit to use the latest version" - }, - { - "argumentName": "parName", - "nullable": false, - "description": "of the parameter" - }, - { - "argumentName": "schemaName", - "nullable": false, - "description": "name of the parameter schema" - }, - { - "argumentName": "schemaVersion", - "nullable": true, - "description": "version of the parameter schema, omit to use the latest version" - }, - { - "argumentName": "optional", - "nullable": true, - "description": "indicates if the parameter is optional, if omitted, the parameter is mandatory" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createEventPar", - "description": "Create an event parameter." - }, - { - "name": "listEventPar", - "keywordlist": [ - "event", - "parameter", - "list" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the event" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the event, omit to list latest version" - }, - { - "argumentName": "parName", - "nullable": true, - "description": "name of the parameter, omit to list all parameters of the event" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listEventPar", - "description": "List event parameters." - }, - { - "name": "deleteEventPar", - "keywordlist": [ - "event", - "parameter", - "delete" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the event" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the event, omit to use the latest version" - }, - { - "argumentName": "parName", - "nullable": true, - "description": "of the parameter, omit to delete all parameters" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteEventPar", - "description": "Delete an event parameter." - }, - { - "name": "createAlbum", - "keywordlist": [ - "album", - "create" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the context album" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the context album, omit to use the default version" - }, - { - "argumentName": "scope", - "nullable": false, - "description": "scope of application of the context album" - }, - { - "argumentName": "writable", - "nullable": false, - "description": "true if the album is writable, false otherwise, album defaults to writable if omitted" - }, - { - "argumentName": "schemaName", - "nullable": false, - "description": "name of the album schema" - }, - { - "argumentName": "schemaVersion", - "nullable": true, - "description": "version of the album schema, omit to use the latest version" - }, - { - "argumentName": "uuid", - "nullable": true, - "description": "context album UUID, omit to generate a UUID" - }, - { - "argumentName": "description", - "nullable": true, - "description": "album description, omit to generate a description" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createContextAlbum", - "description": "Create a context album." - }, - { - "name": "updateAlbum", - "keywordlist": [ - "album", - "update" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the context album" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the context album, omit to use the latest version" - }, - { - "argumentName": "scope", - "nullable": false, - "description": "scope of application of the context album" - }, - { - "argumentName": "writable", - "nullable": false, - "description": "true if the album is writable, false otherwise, album defaults to writable if omitted" - }, - { - "argumentName": "schemaName", - "nullable": false, - "description": "name of the album schema" - }, - { - "argumentName": "schemaVersion", - "nullable": true, - "description": "version of the album schema, omit to use the latest version" - }, - { - "argumentName": "uuid", - "nullable": true, - "description": "context album UUID, omit to not update" - }, - { - "argumentName": "description", - "nullable": true, - "description": "album description, omit to not update" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updateContextAlbum", - "description": "Update a context album." - }, - { - "name": "listAlbum", - "keywordlist": [ - "album", - "list" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": true, - "description": "name of the context album, omit to list all" - }, - { - "argumentName": "version", - "nullable": true, - "description": "starting version of the context album, omit to list all versions" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listContextAlbum", - "description": "List context albums." - }, - { - "name": "deleteAlbum", - "keywordlist": [ - "album", - "delete" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the context album" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the context album, omit to delete versions" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteContextAlbum", - "description": "Delete a context album." - }, - { - "name": "validateAlbum", - "keywordlist": [ - "album", - "validate" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": true, - "description": "name of the context album, omit to list all" - }, - { - "argumentName": "version", - "nullable": true, - "description": "starting version of the context album, omit to list all versions" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.validateContextAlbum", - "description": "Validate context albums." - }, - { - "name": "createTask", - "keywordlist": [ - "task", - "create" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the task, omit to use the default version" - }, - { - "argumentName": "uuid", - "nullable": true, - "description": "task UUID, omit to generate a UUID" - }, - { - "argumentName": "description", - "nullable": true, - "description": "task description, omit to generate a description" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createTask", - "description": "Create a task." - }, - { - "name": "updateTask", - "keywordlist": [ - "task", - "update" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the task, omit to use the latest version" - }, - { - "argumentName": "uuid", - "nullable": true, - "description": "task UUID, omit to not update" - }, - { - "argumentName": "description", - "nullable": true, - "description": "task description, omit to not update" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updateTask", - "description": "Update a task." - }, - { - "name": "listTask", - "keywordlist": [ - "task", - "list" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": true, - "description": "name of the task, omit to list all" - }, - { - "argumentName": "version", - "nullable": true, - "description": "starting version of the task, omit to list all versions" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listTask", - "description": "List tasks." - }, - { - "name": "deleteTask", - "keywordlist": [ - "task", - "delete" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the task, omit to use the latest version" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteTask", - "description": "Delete a task." - }, - { - "name": "validateTask", - "keywordlist": [ - "task", - "validate" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": true, - "description": "name of the task, omit to list all" - }, - { - "argumentName": "version", - "nullable": true, - "description": "starting version of the task, omit to list all versions" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.validateTask", - "description": "Validate tasks." - }, - { - "name": "createTaskLogic", - "keywordlist": [ - "task", - "logic", - "create" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the task, omit to use the latest version" - }, - { - "argumentName": "logicFlavour", - "nullable": true, - "description": "the task logic flavour for the task, omit to use the default task logic flavour" - }, - { - "argumentName": "logic", - "nullable": false, - "description": "the source code for the logic of the task" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createTaskLogic", - "description": "Create logic for a task." - }, - { - "name": "updateTaskLogic", - "keywordlist": [ - "task", - "logic", - "update" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the task, omit to use the latest version" - }, - { - "argumentName": "logicFlavour", - "nullable": true, - "description": "the task logic flavour for the task, omit to not update" - }, - { - "argumentName": "logic", - "nullable": true, - "description": "the source code for the logic of the task, omit to not update" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updateTaskLogic", - "description": "Update logic for a task." - }, - { - "name": "listTaskLogic", - "keywordlist": [ - "task", - "logic", - "list" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the task, omit to list the latest version" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listTaskLogic", - "description": "List task logic." - }, - { - "name": "deleteTaskLogic", - "keywordlist": [ - "task", - "logic", - "delete" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the task, omit to use the latest version" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteTaskLogic", - "description": "Delete logic for a task." - }, - { - "name": "createTaskInputField", - "keywordlist": [ - "task", - "inputfield", - "create" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the task, omit to use the latest version" - }, - { - "argumentName": "fieldName", - "nullable": false, - "description": "of the input field" - }, - { - "argumentName": "schemaName", - "nullable": false, - "description": "name of the input field schema" - }, - { - "argumentName": "schemaVersion", - "nullable": true, - "description": "version of the input field schema, omit to use the latest version" - }, - { - "argumentName": "optional", - "nullable": true, - "description": "indicates if the field is optional, if omitted, the field is mandatory" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createTaskInputField", - "description": "Create a task input field." - }, - { - "name": "listTaskInputField", - "keywordlist": [ - "task", - "inputfield", - "list" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the task, omit to use the latest version" - }, - { - "argumentName": "fieldName", - "nullable": true, - "description": "field name of the input field, omit to list all input fields of the task" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listTaskInputField", - "description": "List task input fields." - }, - { - "name": "deleteTaskInputField", - "keywordlist": [ - "task", - "inputfield", - "delete" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the task, omit to use the latest version" - }, - { - "argumentName": "fieldName", - "nullable": true, - "description": "of the input field, omit to delete all input fields" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteTaskInputField", - "description": "Delete a task input field." - }, - { - "name": "createTaskOutputField", - "keywordlist": [ - "task", - "outputfield", - "create" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the task, omit to use the latest version" - }, - { - "argumentName": "fieldName", - "nullable": false, - "description": "of the output field" - }, - { - "argumentName": "schemaName", - "nullable": false, - "description": "name of the output field schema" - }, - { - "argumentName": "schemaVersion", - "nullable": true, - "description": "version of the output field schema, omit to use the latest version" - }, - { - "argumentName": "optional", - "nullable": true, - "description": "indicates if the field is optional, if omitted, the field is mandatory" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createTaskOutputField", - "description": "Create a task output field." - }, - { - "name": "listTaskOutputField", - "keywordlist": [ - "task", - "outputfield", - "list" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the task, omit to use the latest version" - }, - { - "argumentName": "fieldName", - "nullable": true, - "description": "field name of the output field, omit to list all output fields of the task" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listTaskOutputField", - "description": "List task output fields." - }, - { - "name": "deleteTaskOutputField", - "keywordlist": [ - "task", - "outputfield", - "delete" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the task, omit to use the latest version" - }, - { - "argumentName": "fieldName", - "nullable": true, - "description": "of the output field, omit to delete all output fields" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteTaskOutputField", - "description": "Delete a task output field." - }, - { - "name": "createTaskParameter", - "keywordlist": [ - "task", - "parameter", - "create" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the task, omit to use the latest version" - }, - { - "argumentName": "parName", - "nullable": false, - "description": "of the parameter" - }, - { - "argumentName": "defaultValue", - "nullable": false, - "description": "of the parameter" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createTaskParameter", - "description": "Create a task parameter." - }, - { - "name": "listTaskParameter", - "keywordlist": [ - "task", - "parameter", - "list" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the task, omit to use the latest version" - }, - { - "argumentName": "parName", - "nullable": true, - "description": "name of the parameter, omit to list all parameters of the task" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listTaskParameter", - "description": "List task parameters." - }, - { - "name": "deleteTaskParameter", - "keywordlist": [ - "task", - "parameter", - "delete" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the task, omit to use the latest version" - }, - { - "argumentName": "parName", - "nullable": true, - "description": "of the parameter, omit to delete all task parameters" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteTaskParameter", - "description": "Delete a task parameter." - }, - { - "name": "createTaskContextRef", - "keywordlist": [ - "task", - "contextref", - "create" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the task, omit to use the latest version" - }, - { - "argumentName": "albumName", - "nullable": false, - "description": "name of the context album for the context reference" - }, - { - "argumentName": "albumVersion", - "nullable": true, - "description": "version of the context album for the context reference, omit to use the latest version" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createTaskContextRef", - "description": "Create a task context reference." - }, - { - "name": "listTaskContextRef", - "keywordlist": [ - "task", - "contextref", - "list" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the task, omit to use the latest version" - }, - { - "argumentName": "albumName", - "nullable": true, - "description": "name of the context album for the context reference, omit to list all task context references" - }, - { - "argumentName": "albumVersion", - "nullable": true, - "description": "version of the context album for the context reference, omit to use the latest version" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listTaskContextRef", - "description": "List task context references." - }, - { - "name": "deleteTaskContextRef", - "keywordlist": [ - "task", - "contextref", - "delete" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the task, omit to use the latest version" - }, - { - "argumentName": "albumName", - "nullable": true, - "description": "name of the context album for the context reference, omit to delete all task context references" - }, - { - "argumentName": "albumVersion", - "nullable": true, - "description": "version of the context album for the context reference, omit to use the latest version" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteTaskContextRef", - "description": "Delete a task context reference." - }, - { - "name": "createPolicy", - "keywordlist": [ - "policy", - "create" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the default version" - }, - { - "argumentName": "template", - "nullable": true, - "description": "template used to create the policy, omit to use the default template" - }, - { - "argumentName": "firstState", - "nullable": false, - "description": "the first state of the policy" - }, - { - "argumentName": "uuid", - "nullable": true, - "description": "policy UUID, omit to generate a UUID" - }, - { - "argumentName": "description", - "nullable": true, - "description": "policy description, omit to generate a description" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createPolicy", - "description": "Create a policy." - }, - { - "name": "updatePolicy", - "keywordlist": [ - "policy", - "update" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "template", - "nullable": true, - "description": "template used to create the policy, omit to not update" - }, - { - "argumentName": "firstState", - "nullable": false, - "description": "the first state of the policy" - }, - { - "argumentName": "uuid", - "nullable": true, - "description": "policy UUID, omit to not update" - }, - { - "argumentName": "description", - "nullable": true, - "description": "policy description, omit to not update" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updatePolicy", - "description": "Update a policy." - }, - { - "name": "listPolicy", - "keywordlist": [ - "policy", - "list" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": true, - "description": "name of the policy, omit to list all" - }, - { - "argumentName": "version", - "nullable": true, - "description": "starting version of the policy, omit to list all versions" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listPolicy", - "description": "List policies." - }, - { - "name": "deletePolicy", - "keywordlist": [ - "policy", - "delete" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deletePolicy", - "description": "Delete a policy." - }, - { - "name": "validatePolicy", - "keywordlist": [ - "policy", - "validate" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": true, - "description": "name of the policy, omit to list all" - }, - { - "argumentName": "version", - "nullable": true, - "description": "starting version of the policy, omit to list all versions" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.validatePolicy", - "description": "Validate policies." - }, - { - "name": "createPolicyState", - "keywordlist": [ - "policy", - "state", - "create" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": false, - "description": "of the state" - }, - { - "argumentName": "triggerName", - "nullable": false, - "description": "name of the trigger event for this state" - }, - { - "argumentName": "triggerVersion", - "nullable": true, - "description": "version of the trigger event for this state, omit to use the latest version" - }, - { - "argumentName": "defaultTaskName", - "nullable": false, - "description": "the default task name" - }, - { - "argumentName": "defaultTaskVersion", - "nullable": true, - "description": "the default task version, omit to use the latest version" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createPolicyState", - "description": "Create a policy state." - }, - { - "name": "updatePolicyState", - "keywordlist": [ - "policy", - "state", - "update" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": false, - "description": "of the state" - }, - { - "argumentName": "triggerName", - "nullable": true, - "description": "name of the trigger event for this state, omit to not update" - }, - { - "argumentName": "triggerVersion", - "nullable": false, - "description": "version of the trigger event for this state, set to use latest version of trigger event" - }, - { - "argumentName": "defaultTaskName", - "nullable": true, - "description": "the default task name, omit to not update" - }, - { - "argumentName": "defaultTaskVersion", - "nullable": false, - "description": "the default task version, set to use latest version of default task" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updatePolicyState", - "description": "Update a policy state." - }, - { - "name": "listPolicyState", - "keywordlist": [ - "policy", - "state", - "list" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": true, - "description": "of the state, omit to list all states of the policy" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listPolicyState", - "description": "List policy states." - }, - { - "name": "deletePolicyState", - "keywordlist": [ - "policy", - "state", - "delete" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": true, - "description": "of the state, omit to delete all states" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deletePolicyState", - "description": "Delete a policy state." - }, - { - "name": "createPolicyStateTaskSelectionLogic", - "keywordlist": [ - "policy", - "state", - "selecttasklogic", - "create" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": false, - "description": "of the state" - }, - { - "argumentName": "logicFlavour", - "nullable": true, - "description": "the task selection logic flavour for the state, omit to use the default task logic flavour" - }, - { - "argumentName": "logic", - "nullable": false, - "description": "the source code for the logic of the state" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createPolicyStateTaskSelectionLogic", - "description": "Create task selection logic for a state." - }, - { - "name": "updatePolicyStateTaskSelectionLogic", - "keywordlist": [ - "policy", - "state", - "selecttasklogic", - "update" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": false, - "description": "of the state" - }, - { - "argumentName": "logicFlavour", - "nullable": true, - "description": "the task selection logic flavour for the state, omit to not update" - }, - { - "argumentName": "logic", - "nullable": true, - "description": "the source code for the logic of the state, omit to not update" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updatePolicyStateTaskSelectionLogic", - "description": "Update task selection logic for a state." - }, - { - "name": "listPolicyStateTaskSelectionLogic", - "keywordlist": [ - "policy", - "state", - "selecttasklogic", - "list" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": false, - "description": "of the state" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listPolicyStateTaskSelectionLogic", - "description": "List task selection logic for a state." - }, - { - "name": "deletePolicyStateTaskSelectionLogic", - "keywordlist": [ - "policy", - "state", - "selecttasklogic", - "delete" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": false, - "description": "of the state" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deletePolicyStateTaskSelectionLogic", - "description": "Delete task selection logic for a state." - }, - { - "name": "createPolicyStateOutput", - "keywordlist": [ - "policy", - "state", - "output", - "create" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": false, - "description": "of the state" - }, - { - "argumentName": "outputName", - "nullable": false, - "description": "of the state output" - }, - { - "argumentName": "eventName", - "nullable": false, - "description": "name of the output event for this state output" - }, - { - "argumentName": "eventVersion", - "nullable": true, - "description": "version of the output event for this state output, omit to use the latest version" - }, - { - "argumentName": "nextState", - "nullable": true, - "description": "for this state to transition to, omit if this is the last state that the policy transitions to on this branch" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createPolicyStateOutput", - "description": "Create a policy state output." - }, - { - "name": "listPolicyStateOutput", - "keywordlist": [ - "policy", - "state", - "output", - "list" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": false, - "description": "of the state" - }, - { - "argumentName": "outputName", - "nullable": true, - "description": "of the state output, omit to list all outputs of the state" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listPolicyStateOutput", - "description": "List policy state outputs." - }, - { - "name": "deletePolicyStateOutput", - "keywordlist": [ - "policy", - "state", - "output", - "delete" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": false, - "description": "of the state" - }, - { - "argumentName": "outputName", - "nullable": true, - "description": "of the state output, omit to delete all state outputs" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deletePolicyStateOutput", - "description": "Delete a policy state output." - }, - { - "name": "createPolicyStateFinalizerLogic", - "keywordlist": [ - "policy", - "state", - "finalizerlogic", - "create" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": false, - "description": "of the state" - }, - { - "argumentName": "finalizerLogicName", - "nullable": false, - "description": "name of the state finalizer logic" - }, - { - "argumentName": "logicFlavour", - "nullable": true, - "description": "the policy finalizer logic flavour for the state, omit to use the default task logic flavour" - }, - { - "argumentName": "logic", - "nullable": false, - "description": "the source code for the logic of the state" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createPolicyStateFinalizerLogic", - "description": "Create policy finalizer logic for a state." - }, - { - "name": "updatePolicyStateFinalizerLogic", - "keywordlist": [ - "policy", - "state", - "finalizerlogic", - "update" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": false, - "description": "of the state" - }, - { - "argumentName": "finalizerLogicName", - "nullable": false, - "description": "name of the state finalizer logic" - }, - { - "argumentName": "logicFlavour", - "nullable": true, - "description": "the policy finalizer logic flavour for the state, omit to not update" - }, - { - "argumentName": "logic", - "nullable": true, - "description": "the source code for the logic of the state, omit to not update" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updatePolicyStateFinalizerLogic", - "description": "Update policy finalizer logic for a state." - }, - { - "name": "listPolicyStateFinalizerLogic", - "keywordlist": [ - "policy", - "state", - "finalizerlogic", - "list" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": false, - "description": "of the state" - }, - { - "argumentName": "finalizerLogicName", - "nullable": false, - "description": "name of the state finalizer logic" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listPolicyStateFinalizerLogic", - "description": "List policy finalizer logic for a state." - }, - { - "name": "deletePolicyStateFinalizerLogic", - "keywordlist": [ - "policy", - "state", - "finalizerlogic", - "delete" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": false, - "description": "of the state" - }, - { - "argumentName": "finalizerLogicName", - "nullable": false, - "description": "name of the state finalizer logic" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deletePolicyStateFinalizerLogic", - "description": "Delete policy finalizer logic for a state." - }, - { - "name": "createPolicyStateTaskRef", - "keywordlist": [ - "policy", - "state", - "taskref", - "create" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": false, - "description": "of the state" - }, - { - "argumentName": "taskLocalName", - "nullable": true, - "description": "local name of the task in the state, omit to use the task name" - }, - { - "argumentName": "taskName", - "nullable": false, - "description": "name of the task" - }, - { - "argumentName": "taskVersion", - "nullable": true, - "description": "version of the task, omit to use the latest version" - }, - { - "argumentName": "outputType", - "nullable": false, - "description": "Type of output for the task, must be DIRECT for direct output to a state output or LOGIC for output to state finalizer logic" - }, - { - "argumentName": "outputName", - "nullable": false, - "description": "the name of the state output or state state finalizer logic to handle the task output" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createPolicyStateTaskRef", - "description": "Create a policy state task reference." - }, - { - "name": "listPolicyStateTaskRef", - "keywordlist": [ - "policy", - "state", - "taskref", - "list" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": false, - "description": "of the state" - }, - { - "argumentName": "taskName", - "nullable": true, - "description": "name of the task, omit to list all task references" - }, - { - "argumentName": "taskVersion", - "nullable": true, - "description": "version of the task, omit to use the latest version" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listPolicyStateTaskRef", - "description": "List policy state task references." - }, - { - "name": "deletePolicyStateTaskRef", - "keywordlist": [ - "policy", - "state", - "taskref", - "delete" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": false, - "description": "of the state" - }, - { - "argumentName": "taskName", - "nullable": true, - "description": "name of the task, omit to delete all task references" - }, - { - "argumentName": "taskVersion", - "nullable": true, - "description": "version of the task, omit to use the latest version" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deletePolicyStateTaskRef", - "description": "Delete a policy state task reference." - }, - { - "name": "createPolicyStateContextRef", - "keywordlist": [ - "policy", - "state", - "contextref", - "create" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": false, - "description": "of the state" - }, - { - "argumentName": "albumName", - "nullable": false, - "description": "name of the context album for the context reference" - }, - { - "argumentName": "albumVersion", - "nullable": true, - "description": "version of the context album for the context reference, omit to use the latest version" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createPolicyStateContextRef", - "description": "Create a policy state context reference." - }, - { - "name": "listPolicyStateContextRef", - "keywordlist": [ - "policy", - "state", - "contextref", - "list" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the latest version" - }, - { - "argumentName": "stateName", - "nullable": false, - "description": "of the state" - }, - { - "argumentName": "albumName", - "nullable": true, - "description": "name of the context album for the context reference, omit to list all task context references" - }, - { - "argumentName": "albumVersion", - "nullable": true, - "description": "version of the context album for the context reference, omit to use the latest version" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listPolicyStateContextRef", - "description": "List policy state context references." - }, - { - "name": "deletePolicyStateContextRef", - "keywordlist": [ - "policy", - "state", - "contextref", - "delete" - ], - "argumentList": [ - { - "argumentName": "name", - "nullable": false, - "description": "name of the policy" - }, - { - "argumentName": "version", - "nullable": true, - "description": "version of the policy, omit to use the default version" - }, - { - "argumentName": "stateName", - "nullable": false, - "description": "of the state" - }, - { - "argumentName": "albumName", - "nullable": true, - "description": "name of the context album for the context reference, omit to delete all task context references" - }, - { - "argumentName": "albumVersion", - "nullable": true, - "description": "version of the context album for the context reference, omit to use the latest version" - } - ], - "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deletePolicyStateContextRef", - "description": "Delete a policy state context reference." - } - ] + "commandList": [ + { + "name": "quit", + "keywordlist": [ + "quit" + ], + "argumentList": [], + "systemCommand": "true", + "description": "quit execution of command handling, this command quits immediately without saving the model" + }, + { + "name": "back", + "keywordlist": [ + "back" + ], + "argumentList": [], + "systemCommand": "true", + "description": "go back one level in editor context hierarchy" + }, + { + "name": "help", + "keywordlist": [ + "help" + ], + "argumentList": [], + "systemCommand": "true", + "description": "output help information appropriate to this point in the editor context hierarchy" + }, + { + "name": "load", + "keywordlist": [ + "load" + ], + "argumentList": [ + { + "argumentName": "fileName", + "nullable": false, + "description": "Name of a file containing an Apex model in JSON or XML format" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexModel.loadFromFile", + "description": "Load an Apex model from a file" + }, + { + "name": "save", + "keywordlist": [ + "save" + ], + "argumentList": [ + { + "argumentName": "fileName", + "nullable": true, + "description": "Name of the file to save the model to" + }, + { + "argumentName": "xmlFlag", + "nullable": true, + "description": "Flag indicating that the model should be saved in XML format, model saved in JSON format if flag is false or is not specified" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexModel.saveToFile", + "description": "Save an Apex model to a file" + }, + { + "name": "analyse", + "keywordlist": [ + "analyse" + ], + "argumentList": [], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexModel.analyse", + "description": "Analyse an Apex model to show concept usage" + }, + { + "name": "validate", + "keywordlist": [ + "validate" + ], + "argumentList": [], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexModel.validate", + "description": "Validate the entire Apex model to ensure it is consistent" + }, + { + "name": "compare", + "keywordlist": [ + "compare" + ], + "argumentList": [ + { + "argumentName": "otherModelFileName", + "nullable": false, + "description": "The file name of the other model" + }, + { + "argumentName": "diffsOnly", + "nullable": true, + "description": "Flag indicating that only differences between the model are returned when set" + }, + { + "argumentName": "keysOnly", + "nullable": true, + "description": "Flag indicating that only keys are printed when set, more terse output" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexModel.compare", + "description": "Compare an Apex model with another Apex model" + }, + { + "name": "split", + "keywordlist": [ + "split" + ], + "argumentList": [ + { + "argumentName": "targetModelName", + "nullable": false, + "description": "the file name of the target model in which to store the model split out from the original model" + }, + { + "argumentName": "splitOutPolicies", + "nullable": "false", + "description": "the policies form the original model to include in the split out model, specified as a comma delimited list of policy names" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexModel.split", + "description": "Split an Apex model into a separate Apex model with only the specified policies" + }, + { + "name": "merge", + "keywordlist": [ + "merge" + ], + "argumentList": [ + { + "argumentName": "mergeInModelName", + "nullable": false, + "description": "the file name of the model to merge into the current model" + }, + { + "argumentName": "keepOriginal", + "nullable": "true", + "description": "if true, if a concept exists in both models, the original model copy of that concept is kept, if false, the mreged model overwrites" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexModel.merge", + "description": "Merge another Apex model into this model" + }, + { + "name": "createModel", + "keywordlist": [ + "model", + "create" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the model" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the model, omit to use the default version" + }, + { + "argumentName": "uuid", + "nullable": true, + "description": "model UUID, omit to generate a UUID" + }, + { + "argumentName": "description", + "nullable": true, + "description": "model description, omit to generate a description" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createModel", + "description": "Create an Apex model." + }, + { + "name": "listModel", + "keywordlist": [ + "model", + "list" + ], + "argumentList": [], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listModel", + "description": "List an Apex model, list all the concepts in the model" + }, + { + "name": "deleteModel", + "keywordlist": [ + "model", + "delete" + ], + "argumentList": [], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteModel", + "description": "Delete an Apex model, clear all the concepts in the model" + }, + { + "name": "createKeyInformation", + "keywordlist": [ + "keyinfo", + "create" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the concept for the key information" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the concept for the key information, omit to use the default version" + }, + { + "argumentName": "uuid", + "nullable": true, + "description": "key information UUID, set to null to generate a UUID" + }, + { + "argumentName": "description", + "nullable": true, + "description": "concept description, omit to generate a description" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createKeyInformation", + "description": "Create key information" + }, + { + "name": "updateKeyInformation", + "keywordlist": [ + "keyinfo", + "update" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the concept for the key information" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the concept for the key information, omit to update the latest version" + }, + { + "argumentName": "uuid", + "nullable": true, + "description": "key information UUID, omit to not update" + }, + { + "argumentName": "description", + "nullable": true, + "description": "concept description, omit to not update" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updateKeyInformation", + "description": "Update key information" + }, + { + "name": "listKeyInformation", + "keywordlist": [ + "keyinfo", + "list" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": true, + "description": "name of the concept for the key information, omit to list all" + }, + { + "argumentName": "version", + "nullable": true, + "description": "starting version of the concept for the key information, omit to list all versions" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.ListKeyInformation", + "description": "List key information" + }, + { + "name": "deleteKeyInformation", + "keywordlist": [ + "keyinfo", + "delete" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": true, + "description": "name of the concept for the key information" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the concept for the key information, omit to delete all versions" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteKeyInformation", + "description": "Delete key information" + }, + { + "name": "validateKeyInformation", + "keywordlist": [ + "keyinfo", + "validate" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": true, + "description": "name of the concept for the key information" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the concept for the key information, omit to validate all versions" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.validateKeyInformation", + "description": "Validate key information" + }, + { + "name": "createSchema", + "keywordlist": [ + "schema", + "create" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the schema" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the schema, omit to use the default version" + }, + { + "argumentName": "flavour", + "nullable": true, + "description": "the flavour of the technology for this schema, defaults to \"Java\"" + }, + { + "argumentName": "schema", + "nullable": false, + "description": "the schema text that describes the item represented by the schema" + }, + { + "argumentName": "uuid", + "nullable": true, + "description": "schema UUID, omit to generate a UUID" + }, + { + "argumentName": "description", + "nullable": true, + "description": "schema description, omit to generate a description" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createContextSchema", + "description": "Create a schema." + }, + { + "name": "updateSchema", + "keywordlist": [ + "schema", + "update" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the schema" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the schema, omit to use the default version" + }, + { + "argumentName": "flavour", + "nullable": true, + "description": "the flavour of the technology for this schema, defaults to \"Java\"" + }, + { + "argumentName": "schema", + "nullable": false, + "description": "the schema text that describes the item represented by the schema" + }, + { + "argumentName": "uuid", + "nullable": true, + "description": "schema UUID, omit to generate a UUID" + }, + { + "argumentName": "description", + "nullable": true, + "description": "schema description, omit to generate a description" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updateContextSchema", + "description": "Update a schema." + }, + { + "name": "listSchemas", + "keywordlist": [ + "schema", + "list" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": true, + "description": "name of the schema, omit to list all" + }, + { + "argumentName": "version", + "nullable": true, + "description": "starting version of the schema, omit to list all versions" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listContextSchemas", + "description": "List schemas." + }, + { + "name": "deleteSchema", + "keywordlist": [ + "schema", + "delete" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": true, + "description": "name of the schema" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the schema, omit to delete all versions" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteContextSchema", + "description": "Delete a schema." + }, + { + "name": "validateSchemas", + "keywordlist": [ + "schema", + "validate" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": true, + "description": "name of the schema, omit to list all" + }, + { + "argumentName": "version", + "nullable": true, + "description": "starting version of the schema, omit to list all versions" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.validateContextSchemas", + "description": "Validate context schemas." + }, + { + "name": "createEvent", + "keywordlist": [ + "event", + "create" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the event" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the event, omit to use the default version" + }, + { + "argumentName": "nameSpace", + "nullable": true, + "description": "of the event, omit to use the default value" + }, + { + "argumentName": "source", + "nullable": true, + "description": "of the event, omit to use the default value" + }, + { + "argumentName": "target", + "nullable": true, + "description": "of the event, omit to use the default value" + }, + { + "argumentName": "uuid", + "nullable": true, + "description": "event UUID, omit to generate a UUID" + }, + { + "argumentName": "description", + "nullable": true, + "description": "event description, omit to generate a description" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createEvent", + "description": "Create an event." + }, + { + "name": "updateEvent", + "keywordlist": [ + "event", + "update" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the event" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the event, omit to use the latest version" + }, + { + "argumentName": "nameSpace", + "nullable": true, + "description": "of the event, omit to not update" + }, + { + "argumentName": "source", + "nullable": true, + "description": "of the event, omit to not update" + }, + { + "argumentName": "target", + "nullable": true, + "description": "of the event, omit to not update" + }, + { + "argumentName": "uuid", + "nullable": true, + "description": "event UUID, omit to not update" + }, + { + "argumentName": "description", + "nullable": true, + "description": "event description, omit to not update" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updateEvent", + "description": "Update an event." + }, + { + "name": "listEvent", + "keywordlist": [ + "event", + "list" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": true, + "description": "name of the event, omit to list all" + }, + { + "argumentName": "version", + "nullable": true, + "description": "starting version of the event, omit to list all versions" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listEvent", + "description": "List events." + }, + { + "name": "deleteEvent", + "keywordlist": [ + "event", + "delete" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the event" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the event, omit to delete all versions" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteEvent", + "description": "Delete an event." + }, + { + "name": "validateEvent", + "keywordlist": [ + "event", + "validate" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": true, + "description": "name of the event, omit to list all" + }, + { + "argumentName": "version", + "nullable": true, + "description": "starting version of the event, omit to list all versions" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.validateEvent", + "description": "Validate events." + }, + { + "name": "createEventPar", + "keywordlist": [ + "event", + "parameter", + "create" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the event" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the event, omit to use the latest version" + }, + { + "argumentName": "parName", + "nullable": false, + "description": "of the parameter" + }, + { + "argumentName": "schemaName", + "nullable": false, + "description": "name of the parameter schema" + }, + { + "argumentName": "schemaVersion", + "nullable": true, + "description": "version of the parameter schema, omit to use the latest version" + }, + { + "argumentName": "optional", + "nullable": true, + "description": "indicates if the parameter is optional, if omitted, the parameter is mandatory" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createEventPar", + "description": "Create an event parameter." + }, + { + "name": "listEventPar", + "keywordlist": [ + "event", + "parameter", + "list" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the event" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the event, omit to list latest version" + }, + { + "argumentName": "parName", + "nullable": true, + "description": "name of the parameter, omit to list all parameters of the event" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listEventPar", + "description": "List event parameters." + }, + { + "name": "deleteEventPar", + "keywordlist": [ + "event", + "parameter", + "delete" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the event" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the event, omit to use the latest version" + }, + { + "argumentName": "parName", + "nullable": true, + "description": "of the parameter, omit to delete all parameters" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteEventPar", + "description": "Delete an event parameter." + }, + { + "name": "createAlbum", + "keywordlist": [ + "album", + "create" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the context album" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the context album, omit to use the default version" + }, + { + "argumentName": "scope", + "nullable": false, + "description": "scope of application of the context album" + }, + { + "argumentName": "writable", + "nullable": false, + "description": "true if the album is writable, false otherwise, album defaults to writable if omitted" + }, + { + "argumentName": "schemaName", + "nullable": false, + "description": "name of the album schema" + }, + { + "argumentName": "schemaVersion", + "nullable": true, + "description": "version of the album schema, omit to use the latest version" + }, + { + "argumentName": "uuid", + "nullable": true, + "description": "context album UUID, omit to generate a UUID" + }, + { + "argumentName": "description", + "nullable": true, + "description": "album description, omit to generate a description" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createContextAlbum", + "description": "Create a context album." + }, + { + "name": "updateAlbum", + "keywordlist": [ + "album", + "update" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the context album" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the context album, omit to use the latest version" + }, + { + "argumentName": "scope", + "nullable": false, + "description": "scope of application of the context album" + }, + { + "argumentName": "writable", + "nullable": false, + "description": "true if the album is writable, false otherwise, album defaults to writable if omitted" + }, + { + "argumentName": "schemaName", + "nullable": false, + "description": "name of the album schema" + }, + { + "argumentName": "schemaVersion", + "nullable": true, + "description": "version of the album schema, omit to use the latest version" + }, + { + "argumentName": "uuid", + "nullable": true, + "description": "context album UUID, omit to not update" + }, + { + "argumentName": "description", + "nullable": true, + "description": "album description, omit to not update" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updateContextAlbum", + "description": "Update a context album." + }, + { + "name": "listAlbum", + "keywordlist": [ + "album", + "list" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": true, + "description": "name of the context album, omit to list all" + }, + { + "argumentName": "version", + "nullable": true, + "description": "starting version of the context album, omit to list all versions" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listContextAlbum", + "description": "List context albums." + }, + { + "name": "deleteAlbum", + "keywordlist": [ + "album", + "delete" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the context album" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the context album, omit to delete versions" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteContextAlbum", + "description": "Delete a context album." + }, + { + "name": "validateAlbum", + "keywordlist": [ + "album", + "validate" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": true, + "description": "name of the context album, omit to list all" + }, + { + "argumentName": "version", + "nullable": true, + "description": "starting version of the context album, omit to list all versions" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.validateContextAlbum", + "description": "Validate context albums." + }, + { + "name": "createTask", + "keywordlist": [ + "task", + "create" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the task, omit to use the default version" + }, + { + "argumentName": "uuid", + "nullable": true, + "description": "task UUID, omit to generate a UUID" + }, + { + "argumentName": "description", + "nullable": true, + "description": "task description, omit to generate a description" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createTask", + "description": "Create a task." + }, + { + "name": "updateTask", + "keywordlist": [ + "task", + "update" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the task, omit to use the latest version" + }, + { + "argumentName": "uuid", + "nullable": true, + "description": "task UUID, omit to not update" + }, + { + "argumentName": "description", + "nullable": true, + "description": "task description, omit to not update" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updateTask", + "description": "Update a task." + }, + { + "name": "listTask", + "keywordlist": [ + "task", + "list" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": true, + "description": "name of the task, omit to list all" + }, + { + "argumentName": "version", + "nullable": true, + "description": "starting version of the task, omit to list all versions" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listTask", + "description": "List tasks." + }, + { + "name": "deleteTask", + "keywordlist": [ + "task", + "delete" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the task, omit to use the latest version" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteTask", + "description": "Delete a task." + }, + { + "name": "validateTask", + "keywordlist": [ + "task", + "validate" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": true, + "description": "name of the task, omit to list all" + }, + { + "argumentName": "version", + "nullable": true, + "description": "starting version of the task, omit to list all versions" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.validateTask", + "description": "Validate tasks." + }, + { + "name": "createTaskLogic", + "keywordlist": [ + "task", + "logic", + "create" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the task, omit to use the latest version" + }, + { + "argumentName": "logicFlavour", + "nullable": true, + "description": "the task logic flavour for the task, omit to use the default task logic flavour" + }, + { + "argumentName": "logic", + "nullable": false, + "description": "the source code for the logic of the task" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createTaskLogic", + "description": "Create logic for a task." + }, + { + "name": "updateTaskLogic", + "keywordlist": [ + "task", + "logic", + "update" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the task, omit to use the latest version" + }, + { + "argumentName": "logicFlavour", + "nullable": true, + "description": "the task logic flavour for the task, omit to not update" + }, + { + "argumentName": "logic", + "nullable": true, + "description": "the source code for the logic of the task, omit to not update" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updateTaskLogic", + "description": "Update logic for a task." + }, + { + "name": "listTaskLogic", + "keywordlist": [ + "task", + "logic", + "list" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the task, omit to list the latest version" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listTaskLogic", + "description": "List task logic." + }, + { + "name": "deleteTaskLogic", + "keywordlist": [ + "task", + "logic", + "delete" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the task, omit to use the latest version" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteTaskLogic", + "description": "Delete logic for a task." + }, + { + "name": "createTaskInputField", + "keywordlist": [ + "task", + "inputfield", + "create" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the task, omit to use the latest version" + }, + { + "argumentName": "fieldName", + "nullable": false, + "description": "of the input field" + }, + { + "argumentName": "schemaName", + "nullable": false, + "description": "name of the input field schema" + }, + { + "argumentName": "schemaVersion", + "nullable": true, + "description": "version of the input field schema, omit to use the latest version" + }, + { + "argumentName": "optional", + "nullable": true, + "description": "indicates if the field is optional, if omitted, the field is mandatory" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createTaskField", + "description": "Create a task input field." + }, + { + "name": "listTaskInputField", + "keywordlist": [ + "task", + "inputfield", + "list" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the task, omit to use the latest version" + }, + { + "argumentName": "fieldName", + "nullable": true, + "description": "field name of the input field, omit to list all input fields of the task" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.handleTaskField", + "description": "List task input fields." + }, + { + "name": "deleteTaskInputField", + "keywordlist": [ + "task", + "inputfield", + "delete" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the task, omit to use the latest version" + }, + { + "argumentName": "fieldName", + "nullable": true, + "description": "of the input field, omit to delete all input fields" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.handleTaskField", + "description": "Delete a task input field." + }, + { + "name": "createTaskOutputField", + "keywordlist": [ + "task", + "outputfield", + "create" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the task, omit to use the latest version" + }, + { + "argumentName": "fieldName", + "nullable": false, + "description": "of the output field" + }, + { + "argumentName": "schemaName", + "nullable": false, + "description": "name of the output field schema" + }, + { + "argumentName": "schemaVersion", + "nullable": true, + "description": "version of the output field schema, omit to use the latest version" + }, + { + "argumentName": "optional", + "nullable": true, + "description": "indicates if the field is optional, if omitted, the field is mandatory" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createTaskField", + "description": "Create a task output field." + }, + { + "name": "listTaskOutputField", + "keywordlist": [ + "task", + "outputfield", + "list" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the task, omit to use the latest version" + }, + { + "argumentName": "fieldName", + "nullable": true, + "description": "field name of the output field, omit to list all output fields of the task" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.handleTaskField", + "description": "List task output fields." + }, + { + "name": "deleteTaskOutputField", + "keywordlist": [ + "task", + "outputfield", + "delete" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the task, omit to use the latest version" + }, + { + "argumentName": "fieldName", + "nullable": true, + "description": "of the output field, omit to delete all output fields" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.handleTaskField", + "description": "Delete a task output field." + }, + { + "name": "createTaskParameter", + "keywordlist": [ + "task", + "parameter", + "create" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the task, omit to use the latest version" + }, + { + "argumentName": "parName", + "nullable": false, + "description": "of the parameter" + }, + { + "argumentName": "defaultValue", + "nullable": false, + "description": "of the parameter" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createTaskParameter", + "description": "Create a task parameter." + }, + { + "name": "listTaskParameter", + "keywordlist": [ + "task", + "parameter", + "list" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the task, omit to use the latest version" + }, + { + "argumentName": "parName", + "nullable": true, + "description": "name of the parameter, omit to list all parameters of the task" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listTaskParameter", + "description": "List task parameters." + }, + { + "name": "deleteTaskParameter", + "keywordlist": [ + "task", + "parameter", + "delete" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the task, omit to use the latest version" + }, + { + "argumentName": "parName", + "nullable": true, + "description": "of the parameter, omit to delete all task parameters" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteTaskParameter", + "description": "Delete a task parameter." + }, + { + "name": "createTaskContextRef", + "keywordlist": [ + "task", + "contextref", + "create" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the task, omit to use the latest version" + }, + { + "argumentName": "albumName", + "nullable": false, + "description": "name of the context album for the context reference" + }, + { + "argumentName": "albumVersion", + "nullable": true, + "description": "version of the context album for the context reference, omit to use the latest version" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createTaskContextRef", + "description": "Create a task context reference." + }, + { + "name": "listTaskContextRef", + "keywordlist": [ + "task", + "contextref", + "list" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the task, omit to use the latest version" + }, + { + "argumentName": "albumName", + "nullable": true, + "description": "name of the context album for the context reference, omit to list all task context references" + }, + { + "argumentName": "albumVersion", + "nullable": true, + "description": "version of the context album for the context reference, omit to use the latest version" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listTaskContextRef", + "description": "List task context references." + }, + { + "name": "deleteTaskContextRef", + "keywordlist": [ + "task", + "contextref", + "delete" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the task, omit to use the latest version" + }, + { + "argumentName": "albumName", + "nullable": true, + "description": "name of the context album for the context reference, omit to delete all task context references" + }, + { + "argumentName": "albumVersion", + "nullable": true, + "description": "version of the context album for the context reference, omit to use the latest version" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deleteTaskContextRef", + "description": "Delete a task context reference." + }, + { + "name": "createPolicy", + "keywordlist": [ + "policy", + "create" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the default version" + }, + { + "argumentName": "template", + "nullable": true, + "description": "template used to create the policy, omit to use the default template" + }, + { + "argumentName": "firstState", + "nullable": false, + "description": "the first state of the policy" + }, + { + "argumentName": "uuid", + "nullable": true, + "description": "policy UUID, omit to generate a UUID" + }, + { + "argumentName": "description", + "nullable": true, + "description": "policy description, omit to generate a description" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createPolicy", + "description": "Create a policy." + }, + { + "name": "updatePolicy", + "keywordlist": [ + "policy", + "update" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "template", + "nullable": true, + "description": "template used to create the policy, omit to not update" + }, + { + "argumentName": "firstState", + "nullable": false, + "description": "the first state of the policy" + }, + { + "argumentName": "uuid", + "nullable": true, + "description": "policy UUID, omit to not update" + }, + { + "argumentName": "description", + "nullable": true, + "description": "policy description, omit to not update" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updatePolicy", + "description": "Update a policy." + }, + { + "name": "listPolicy", + "keywordlist": [ + "policy", + "list" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": true, + "description": "name of the policy, omit to list all" + }, + { + "argumentName": "version", + "nullable": true, + "description": "starting version of the policy, omit to list all versions" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listPolicy", + "description": "List policies." + }, + { + "name": "deletePolicy", + "keywordlist": [ + "policy", + "delete" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deletePolicy", + "description": "Delete a policy." + }, + { + "name": "validatePolicy", + "keywordlist": [ + "policy", + "validate" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": true, + "description": "name of the policy, omit to list all" + }, + { + "argumentName": "version", + "nullable": true, + "description": "starting version of the policy, omit to list all versions" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.validatePolicy", + "description": "Validate policies." + }, + { + "name": "createPolicyState", + "keywordlist": [ + "policy", + "state", + "create" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": false, + "description": "of the state" + }, + { + "argumentName": "triggerName", + "nullable": false, + "description": "name of the trigger event for this state" + }, + { + "argumentName": "triggerVersion", + "nullable": true, + "description": "version of the trigger event for this state, omit to use the latest version" + }, + { + "argumentName": "defaultTaskName", + "nullable": false, + "description": "the default task name" + }, + { + "argumentName": "defaultTaskVersion", + "nullable": true, + "description": "the default task version, omit to use the latest version" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createPolicyState", + "description": "Create a policy state." + }, + { + "name": "updatePolicyState", + "keywordlist": [ + "policy", + "state", + "update" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": false, + "description": "of the state" + }, + { + "argumentName": "triggerName", + "nullable": true, + "description": "name of the trigger event for this state, omit to not update" + }, + { + "argumentName": "triggerVersion", + "nullable": false, + "description": "version of the trigger event for this state, set to use latest version of trigger event" + }, + { + "argumentName": "defaultTaskName", + "nullable": true, + "description": "the default task name, omit to not update" + }, + { + "argumentName": "defaultTaskVersion", + "nullable": false, + "description": "the default task version, set to use latest version of default task" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updatePolicyState", + "description": "Update a policy state." + }, + { + "name": "listPolicyState", + "keywordlist": [ + "policy", + "state", + "list" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": true, + "description": "of the state, omit to list all states of the policy" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listPolicyState", + "description": "List policy states." + }, + { + "name": "deletePolicyState", + "keywordlist": [ + "policy", + "state", + "delete" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": true, + "description": "of the state, omit to delete all states" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deletePolicyState", + "description": "Delete a policy state." + }, + { + "name": "createPolicyStateTaskSelectionLogic", + "keywordlist": [ + "policy", + "state", + "selecttasklogic", + "create" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": false, + "description": "of the state" + }, + { + "argumentName": "logicFlavour", + "nullable": true, + "description": "the task selection logic flavour for the state, omit to use the default task logic flavour" + }, + { + "argumentName": "logic", + "nullable": false, + "description": "the source code for the logic of the state" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createPolicyStateTaskSelectionLogic", + "description": "Create task selection logic for a state." + }, + { + "name": "updatePolicyStateTaskSelectionLogic", + "keywordlist": [ + "policy", + "state", + "selecttasklogic", + "update" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": false, + "description": "of the state" + }, + { + "argumentName": "logicFlavour", + "nullable": true, + "description": "the task selection logic flavour for the state, omit to not update" + }, + { + "argumentName": "logic", + "nullable": true, + "description": "the source code for the logic of the state, omit to not update" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updatePolicyStateTaskSelectionLogic", + "description": "Update task selection logic for a state." + }, + { + "name": "listPolicyStateTaskSelectionLogic", + "keywordlist": [ + "policy", + "state", + "selecttasklogic", + "list" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": false, + "description": "of the state" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listPolicyStateTaskSelectionLogic", + "description": "List task selection logic for a state." + }, + { + "name": "deletePolicyStateTaskSelectionLogic", + "keywordlist": [ + "policy", + "state", + "selecttasklogic", + "delete" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": false, + "description": "of the state" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deletePolicyStateTaskSelectionLogic", + "description": "Delete task selection logic for a state." + }, + { + "name": "createPolicyStateOutput", + "keywordlist": [ + "policy", + "state", + "output", + "create" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": false, + "description": "of the state" + }, + { + "argumentName": "outputName", + "nullable": false, + "description": "of the state output" + }, + { + "argumentName": "eventName", + "nullable": false, + "description": "name of the output event for this state output" + }, + { + "argumentName": "eventVersion", + "nullable": true, + "description": "version of the output event for this state output, omit to use the latest version" + }, + { + "argumentName": "nextState", + "nullable": true, + "description": "for this state to transition to, omit if this is the last state that the policy transitions to on this branch" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createPolicyStateOutput", + "description": "Create a policy state output." + }, + { + "name": "listPolicyStateOutput", + "keywordlist": [ + "policy", + "state", + "output", + "list" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": false, + "description": "of the state" + }, + { + "argumentName": "outputName", + "nullable": true, + "description": "of the state output, omit to list all outputs of the state" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listPolicyStateOutput", + "description": "List policy state outputs." + }, + { + "name": "deletePolicyStateOutput", + "keywordlist": [ + "policy", + "state", + "output", + "delete" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": false, + "description": "of the state" + }, + { + "argumentName": "outputName", + "nullable": true, + "description": "of the state output, omit to delete all state outputs" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deletePolicyStateOutput", + "description": "Delete a policy state output." + }, + { + "name": "createPolicyStateFinalizerLogic", + "keywordlist": [ + "policy", + "state", + "finalizerlogic", + "create" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": false, + "description": "of the state" + }, + { + "argumentName": "finalizerLogicName", + "nullable": false, + "description": "name of the state finalizer logic" + }, + { + "argumentName": "logicFlavour", + "nullable": true, + "description": "the policy finalizer logic flavour for the state, omit to use the default task logic flavour" + }, + { + "argumentName": "logic", + "nullable": false, + "description": "the source code for the logic of the state" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createPolicyStateFinalizerLogic", + "description": "Create policy finalizer logic for a state." + }, + { + "name": "updatePolicyStateFinalizerLogic", + "keywordlist": [ + "policy", + "state", + "finalizerlogic", + "update" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": false, + "description": "of the state" + }, + { + "argumentName": "finalizerLogicName", + "nullable": false, + "description": "name of the state finalizer logic" + }, + { + "argumentName": "logicFlavour", + "nullable": true, + "description": "the policy finalizer logic flavour for the state, omit to not update" + }, + { + "argumentName": "logic", + "nullable": true, + "description": "the source code for the logic of the state, omit to not update" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.updatePolicyStateFinalizerLogic", + "description": "Update policy finalizer logic for a state." + }, + { + "name": "listPolicyStateFinalizerLogic", + "keywordlist": [ + "policy", + "state", + "finalizerlogic", + "list" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": false, + "description": "of the state" + }, + { + "argumentName": "finalizerLogicName", + "nullable": false, + "description": "name of the state finalizer logic" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listPolicyStateFinalizerLogic", + "description": "List policy finalizer logic for a state." + }, + { + "name": "deletePolicyStateFinalizerLogic", + "keywordlist": [ + "policy", + "state", + "finalizerlogic", + "delete" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": false, + "description": "of the state" + }, + { + "argumentName": "finalizerLogicName", + "nullable": false, + "description": "name of the state finalizer logic" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deletePolicyStateFinalizerLogic", + "description": "Delete policy finalizer logic for a state." + }, + { + "name": "createPolicyStateTaskRef", + "keywordlist": [ + "policy", + "state", + "taskref", + "create" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": false, + "description": "of the state" + }, + { + "argumentName": "taskLocalName", + "nullable": true, + "description": "local name of the task in the state, omit to use the task name" + }, + { + "argumentName": "taskName", + "nullable": false, + "description": "name of the task" + }, + { + "argumentName": "taskVersion", + "nullable": true, + "description": "version of the task, omit to use the latest version" + }, + { + "argumentName": "outputType", + "nullable": false, + "description": "Type of output for the task, must be DIRECT for direct output to a state output or LOGIC for output to state finalizer logic" + }, + { + "argumentName": "outputName", + "nullable": false, + "description": "the name of the state output or state state finalizer logic to handle the task output" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createPolicyStateTaskRef", + "description": "Create a policy state task reference." + }, + { + "name": "listPolicyStateTaskRef", + "keywordlist": [ + "policy", + "state", + "taskref", + "list" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": false, + "description": "of the state" + }, + { + "argumentName": "taskName", + "nullable": true, + "description": "name of the task, omit to list all task references" + }, + { + "argumentName": "taskVersion", + "nullable": true, + "description": "version of the task, omit to use the latest version" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listPolicyStateTaskRef", + "description": "List policy state task references." + }, + { + "name": "deletePolicyStateTaskRef", + "keywordlist": [ + "policy", + "state", + "taskref", + "delete" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": false, + "description": "of the state" + }, + { + "argumentName": "taskName", + "nullable": true, + "description": "name of the task, omit to delete all task references" + }, + { + "argumentName": "taskVersion", + "nullable": true, + "description": "version of the task, omit to use the latest version" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deletePolicyStateTaskRef", + "description": "Delete a policy state task reference." + }, + { + "name": "createPolicyStateContextRef", + "keywordlist": [ + "policy", + "state", + "contextref", + "create" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": false, + "description": "of the state" + }, + { + "argumentName": "albumName", + "nullable": false, + "description": "name of the context album for the context reference" + }, + { + "argumentName": "albumVersion", + "nullable": true, + "description": "version of the context album for the context reference, omit to use the latest version" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.createPolicyStateContextRef", + "description": "Create a policy state context reference." + }, + { + "name": "listPolicyStateContextRef", + "keywordlist": [ + "policy", + "state", + "contextref", + "list" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the latest version" + }, + { + "argumentName": "stateName", + "nullable": false, + "description": "of the state" + }, + { + "argumentName": "albumName", + "nullable": true, + "description": "name of the context album for the context reference, omit to list all task context references" + }, + { + "argumentName": "albumVersion", + "nullable": true, + "description": "version of the context album for the context reference, omit to use the latest version" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.listPolicyStateContextRef", + "description": "List policy state context references." + }, + { + "name": "deletePolicyStateContextRef", + "keywordlist": [ + "policy", + "state", + "contextref", + "delete" + ], + "argumentList": [ + { + "argumentName": "name", + "nullable": false, + "description": "name of the policy" + }, + { + "argumentName": "version", + "nullable": true, + "description": "version of the policy, omit to use the default version" + }, + { + "argumentName": "stateName", + "nullable": false, + "description": "of the state" + }, + { + "argumentName": "albumName", + "nullable": true, + "description": "name of the context album for the context reference, omit to delete all task context references" + }, + { + "argumentName": "albumVersion", + "nullable": true, + "description": "version of the context album for the context reference, omit to use the latest version" + } + ], + "apiMethod": "org.onap.policy.apex.model.modelapi.ApexEditorApi.deletePolicyStateContextRef", + "description": "Delete a policy state context reference." + } + ] } diff --git a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/CommandLineEditorEventsContextTest.java b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/CommandLineEditorEventsContextTest.java index 0e87950d2..d5d288d04 100644 --- a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/CommandLineEditorEventsContextTest.java +++ b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/CommandLineEditorEventsContextTest.java @@ -22,6 +22,7 @@ package org.onap.policy.apex.auth.clieditor; +import static org.assertj.core.api.Assertions.assertThat; import static org.junit.Assert.assertEquals; import java.io.File; @@ -84,8 +85,8 @@ public class CommandLineEditorEventsContextTest { final int logCharCount = logString.replaceAll(SPACES, EMPTY_STRING).length(); final int modelCharCount = modelString.replaceAll(SPACES, EMPTY_STRING).length(); - assertEquals(25892, logCharCount); - assertEquals(51975, modelCharCount); + assertThat(logCharCount).isGreaterThan(20000); + assertThat(modelCharCount).isGreaterThan(30000); } /** @@ -114,8 +115,8 @@ public class CommandLineEditorEventsContextTest { final int logCharCount = logString.replaceAll(SPACES, EMPTY_STRING).length(); final int modelCharCount = modelString.replaceAll(SPACES, EMPTY_STRING).length(); - assertEquals(30068, logCharCount); - assertEquals(59015, modelCharCount); + assertThat(logCharCount).isGreaterThan(20000); + assertThat(modelCharCount).isGreaterThan(30000); } diff --git a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/tosca/ApexCliToscaEditorTest.java b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/tosca/ApexCliToscaEditorTest.java index 10bb63329..9ac046381 100644 --- a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/tosca/ApexCliToscaEditorTest.java +++ b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/tosca/ApexCliToscaEditorTest.java @@ -1,6 +1,7 @@ /*- * ============LICENSE_START======================================================= * Copyright (C) 2019 Nordix Foundation. + * Modifications Copyright (C) 2021 Bell Canada. All rights reserved. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -84,8 +85,8 @@ public class ApexCliToscaEditorTest { public void testApexCliTosca_success() throws IOException { final ApexCliToscaEditorMain cliEditor = new ApexCliToscaEditorMain(sampleArgs); String outputTosca = TextFileUtils.getTextFileAsString(tempOutputToscaFile.getAbsolutePath()); - String outputToscaCompare = TextFileUtils.getTextFileAsString( - "src/test/resources/tosca/ToscaPolicyOutput_compare.json"); + String outputToscaCompare = + TextFileUtils.getTextFileAsString("src/test/resources/tosca/ToscaPolicyOutput_compare.json").trim(); assertEquals(outputToscaCompare, outputTosca); assertFalse(cliEditor.isFailure()); } diff --git a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/utils/CliUtilsTest.java b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/utils/CliUtilsTest.java index 2dfd6f6c9..371efd7d2 100644 --- a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/utils/CliUtilsTest.java +++ b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/utils/CliUtilsTest.java @@ -1,6 +1,7 @@ /*- * ============LICENSE_START======================================================= * Copyright (C) 2019 Nordix Foundation. + * Modifications Copyright (C) 2021 Bell Canada. All rights reserved. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -81,7 +82,7 @@ public class CliUtilsTest { CliUtils.createToscaServiceTemplate(params, policyModelFilePath); String outputTosca = TextFileUtils.getTextFileAsString(tempOutputToscaFile.getAbsolutePath()); String outputToscaCompare = - TextFileUtils.getTextFileAsString("src/test/resources/tosca/ToscaPolicyOutput_compare.json"); + TextFileUtils.getTextFileAsString("src/test/resources/tosca/ToscaPolicyOutput_compare.json").trim(); assertEquals(outputToscaCompare, outputTosca); } diff --git a/auth/cli-editor/src/test/resources/tosca/PolicyModel.json b/auth/cli-editor/src/test/resources/tosca/PolicyModel.json index 3672be430..95fab2d5e 100644 --- a/auth/cli-editor/src/test/resources/tosca/PolicyModel.json +++ b/auth/cli-editor/src/test/resources/tosca/PolicyModel.json @@ -654,212 +654,6 @@ } ] }, - "inputFields": { - "entry": [ - { - "key": "amount", - "value": { - "key": "amount", - "fieldSchemaKey": { - "name": "price_type", - "version": "0.0.1" - }, - "optional": false - } - }, - { - "key": "assistant_ID", - "value": { - "key": "assistant_ID", - "fieldSchemaKey": { - "name": "assistant_ID_type", - "version": "0.0.1" - }, - "optional": false - } - }, - { - "key": "branch_ID", - "value": { - "key": "branch_ID", - "fieldSchemaKey": { - "name": "branch_ID_type", - "version": "0.0.1" - }, - "optional": false - } - }, - { - "key": "item_ID", - "value": { - "key": "item_ID", - "fieldSchemaKey": { - "name": "item_ID_type", - "version": "0.0.1" - }, - "optional": false - } - }, - { - "key": "notes", - "value": { - "key": "notes", - "fieldSchemaKey": { - "name": "notes_type", - "version": "0.0.1" - }, - "optional": true - } - }, - { - "key": "quantity", - "value": { - "key": "quantity", - "fieldSchemaKey": { - "name": "quantity_type", - "version": "0.0.1" - }, - "optional": false - } - }, - { - "key": "sale_ID", - "value": { - "key": "sale_ID", - "fieldSchemaKey": { - "name": "sale_ID_type", - "version": "0.0.1" - }, - "optional": false - } - }, - { - "key": "time", - "value": { - "key": "time", - "fieldSchemaKey": { - "name": "timestamp_type", - "version": "0.0.1" - }, - "optional": false - } - } - ] - }, - "outputFields": { - "entry": [ - { - "key": "amount", - "value": { - "key": "amount", - "fieldSchemaKey": { - "name": "price_type", - "version": "0.0.1" - }, - "optional": false - } - }, - { - "key": "assistant_ID", - "value": { - "key": "assistant_ID", - "fieldSchemaKey": { - "name": "assistant_ID_type", - "version": "0.0.1" - }, - "optional": false - } - }, - { - "key": "authorised", - "value": { - "key": "authorised", - "fieldSchemaKey": { - "name": "authorised_type", - "version": "0.0.1" - }, - "optional": false - } - }, - { - "key": "branch_ID", - "value": { - "key": "branch_ID", - "fieldSchemaKey": { - "name": "branch_ID_type", - "version": "0.0.1" - }, - "optional": false - } - }, - { - "key": "item_ID", - "value": { - "key": "item_ID", - "fieldSchemaKey": { - "name": "item_ID_type", - "version": "0.0.1" - }, - "optional": false - } - }, - { - "key": "message", - "value": { - "key": "message", - "fieldSchemaKey": { - "name": "message_type", - "version": "0.0.1" - }, - "optional": true - } - }, - { - "key": "notes", - "value": { - "key": "notes", - "fieldSchemaKey": { - "name": "notes_type", - "version": "0.0.1" - }, - "optional": true - } - }, - { - "key": "quantity", - "value": { - "key": "quantity", - "fieldSchemaKey": { - "name": "quantity_type", - "version": "0.0.1" - }, - "optional": false - } - }, - { - "key": "sale_ID", - "value": { - "key": "sale_ID", - "fieldSchemaKey": { - "name": "sale_ID_type", - "version": "0.0.1" - }, - "optional": false - } - }, - { - "key": "time", - "value": { - "key": "time", - "fieldSchemaKey": { - "name": "timestamp_type", - "version": "0.0.1" - }, - "optional": false - } - } - ] - }, "taskParameters": { "entry": [] }, diff --git a/auth/cli-editor/src/test/resources/tosca/ToscaPolicyOutput_compare.json b/auth/cli-editor/src/test/resources/tosca/ToscaPolicyOutput_compare.json index 55bd95eca..3649f945b 100644 --- a/auth/cli-editor/src/test/resources/tosca/ToscaPolicyOutput_compare.json +++ b/auth/cli-editor/src/test/resources/tosca/ToscaPolicyOutput_compare.json @@ -1 +1 @@ -{"tosca_definitions_version":"tosca_simple_yaml_1_1_0","topology_template":{"policies":[{"native.sampledomain":{"type":"onap.policies.native.Apex","type_version":"1.0.0","name":"native.sampledomain","version":"1.0.0","properties":{"engineServiceParameters":{"name":"MyFirstPolicyApexEngine","version":"0.0.1","id":101,"instanceCount":4,"deploymentPort":12345,"engineParameters":{"executorParameters":{"MVEL":{"parameterClassName":"org.onap.policy.apex.plugins.executor.mvel.MvelExecutorParameters"},"JAVASCRIPT":{"parameterClassName":"org.onap.policy.apex.plugins.executor.javascript.JavascriptExecutorParameters"}}},"policy_type_impl":{"apexPolicyModel":{"key":{"name":"MyFirstPolicyModel","version":"0.0.1"},"keyInformation":{"key":{"name":"MyFirstPolicyModel_KeyInfo","version":"0.0.1"},"keyInfoMap":{"entry":[{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"value":{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"UUID":"3351b0f4-cf06-4fa2-8823-edf67bd30223","description":"This task checks if the sales request is for an item that contains alcohol. \nIf the local time is between 00:00:00 and 11:30:00 then the sale is not authorised. Otherwise the sale is authorised. \nIn this implementation we assume that all items with item_ID values between 1000 and 2000 contain alcohol :-)"}},{"key":{"name":"MyFirstPolicy","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicy","version":"0.0.1"},"UUID":"6c5e410f-489a-46ff-964e-982ce6e8b6d0","description":"This is my first Apex policy. It checks if a sale should be authorised or not."}},{"key":{"name":"MyFirstPolicyModel","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel","version":"0.0.1"},"UUID":"540226fb-55ee-4f0e-a444-983a0494818e","description":"This is my first Apex Policy Model."}},{"key":{"name":"MyFirstPolicyModel_Events","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Events","version":"0.0.1"},"UUID":"ef281318-5ac9-3ef0-8db3-8f9c4e4a81e2","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Events:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_KeyInfo","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_KeyInfo","version":"0.0.1"},"UUID":"d9248c6f-7c00-38df-8251-611463ba4065","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_KeyInfo:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_Policies","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Policies","version":"0.0.1"},"UUID":"77c01a6b-510c-3aa9-b640-b4db356aa03b","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Policies:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_Schemas","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Schemas","version":"0.0.1"},"UUID":"d0cc3aa0-ea69-3a43-80ff-a0dbb0ebd885","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Schemas:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_Tasks","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Tasks","version":"0.0.1"},"UUID":"b02a7e02-2cd0-39e6-b3cb-946fa83a8f08","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Tasks:0.0.1\""}},{"key":{"name":"SALE_AUTH","version":"0.0.1"},"value":{"key":{"name":"SALE_AUTH","version":"0.0.1"},"UUID":"c4500941-3f98-4080-a9cc-5b9753ed050b","description":"An event emitted by the Policy to indicate whether the sale of an item has been authorised"}},{"key":{"name":"SALE_INPUT","version":"0.0.1"},"value":{"key":{"name":"SALE_INPUT","version":"0.0.1"},"UUID":"4f04aa98-e917-4f4a-882a-c75ba5a99374","description":"An event raised by the PoS system each time an item is scanned for purchase"}},{"key":{"name":"assistant_ID_type","version":"0.0.1"},"value":{"key":{"name":"assistant_ID_type","version":"0.0.1"},"UUID":"36df4c71-9616-4206-8b53-976a5cd4bd87","description":"A type for 'assistant_ID' values"}},{"key":{"name":"authorised_type","version":"0.0.1"},"value":{"key":{"name":"authorised_type","version":"0.0.1"},"UUID":"d48b619e-d00d-4008-b884-02d76ea4350b","description":"A type for 'authorised' values"}},{"key":{"name":"branch_ID_type","version":"0.0.1"},"value":{"key":{"name":"branch_ID_type","version":"0.0.1"},"UUID":"6468845f-4122-4128-8e49-0f52c26078b5","description":"A type for 'branch_ID' values"}},{"key":{"name":"item_ID_type","version":"0.0.1"},"value":{"key":{"name":"item_ID_type","version":"0.0.1"},"UUID":"4f227ff1-aee0-453a-b6b6-9a4b2e0da932","description":"A type for 'item_ID' values"}},{"key":{"name":"message_type","version":"0.0.1"},"value":{"key":{"name":"message_type","version":"0.0.1"},"UUID":"ad1431bb-3155-4e73-b5a3-b89bee498749","description":"A type for 'message' values"}},{"key":{"name":"notes_type","version":"0.0.1"},"value":{"key":{"name":"notes_type","version":"0.0.1"},"UUID":"eecfde90-896c-4343-8f9c-2603ced94e2d","description":"A type for 'notes' values"}},{"key":{"name":"price_type","version":"0.0.1"},"value":{"key":{"name":"price_type","version":"0.0.1"},"UUID":"52c2fc45-fd8c-463c-bd6f-d91b0554aea7","description":"A type for 'amount'/'price' values"}},{"key":{"name":"quantity_type","version":"0.0.1"},"value":{"key":{"name":"quantity_type","version":"0.0.1"},"UUID":"ac3d9842-80af-4a98-951c-bd79a431c613","description":"A type for 'quantity' values"}},{"key":{"name":"sale_ID_type","version":"0.0.1"},"value":{"key":{"name":"sale_ID_type","version":"0.0.1"},"UUID":"cca47d74-7754-4a61-b163-ca31f66b157b","description":"A type for 'sale_ID' values"}},{"key":{"name":"timestamp_type","version":"0.0.1"},"value":{"key":{"name":"timestamp_type","version":"0.0.1"},"UUID":"fd594e88-411d-4a94-b2be-697b3a0d7adf","description":"A type for 'time' values"}}]}},"policies":{"key":{"name":"MyFirstPolicyModel_Policies","version":"0.0.1"},"policyMap":{"entry":[{"key":{"name":"MyFirstPolicy","version":"0.0.1"},"value":{"policyKey":{"name":"MyFirstPolicy","version":"0.0.1"},"template":"FREEFORM","state":{"entry":[{"key":"BoozeAuthDecide","value":{"stateKey":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"BoozeAuthDecide"},"trigger":{"name":"SALE_INPUT","version":"0.0.1"},"stateOutputs":{"entry":[{"key":"MorningBoozeCheck_Output_Direct","value":{"key":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"BoozeAuthDecide","localName":"MorningBoozeCheck_Output_Direct"},"outgoingEvent":{"name":"SALE_AUTH","version":"0.0.1"},"outgoingEventReference":[{"name":"SALE_AUTH","version":"0.0.1"}],"nextState":{"parentKeyName":"NULL","parentKeyVersion":"0.0.0","parentLocalName":"NULL","localName":"NULL"}}}]},"contextAlbumReference":[],"taskSelectionLogic":{"key":"NULL","logicFlavour":"UNDEFINED","logic":""},"stateFinalizerLogicMap":{"entry":[]},"defaultTask":{"name":"MorningBoozeCheck","version":"0.0.1"},"taskReferences":{"entry":[{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"value":{"key":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"BoozeAuthDecide","localName":"MorningBoozeCheck"},"outputType":"DIRECT","output":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"BoozeAuthDecide","localName":"MorningBoozeCheck_Output_Direct"}}}]}}}]},"firstState":"BoozeAuthDecide"}}]}},"tasks":{"key":{"name":"MyFirstPolicyModel_Tasks","version":"0.0.1"},"taskMap":{"entry":[{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"value":{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"inputEvent":{"key":{"name":"SALE_INPUT","version":"0.0.1"},"nameSpace":"com.hyperm","source":"POS","target":"APEX","parameter":{"entry":[{"key":"amount","value":{"key":"amount","fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":"assistant_ID","fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":"branch_ID","fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":"item_ID","fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"notes","value":{"key":"notes","fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":"quantity","fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":"sale_ID","fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":"time","fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]}},"outputEvents":{"entry":[{"key":"SALE_AUTH","value":{"key":{"name":"SALE_AUTH","version":"0.0.1"},"nameSpace":"com.hyperm","source":"APEX","target":"POS","parameter":{"entry":[{"key":"amount","value":{"key":"amount","fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":"assistant_ID","fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"authorised","value":{"key":"authorised","fieldSchemaKey":{"name":"authorised_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":"branch_ID","fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":"item_ID","fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"message","value":{"key":"message","fieldSchemaKey":{"name":"message_type","version":"0.0.1"},"optional":true}},{"key":"notes","value":{"key":"notes","fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":"quantity","fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":"sale_ID","fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":"time","fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]}}}]},"inputFields":{"entry":[{"key":"amount","value":{"key":"amount","fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":"assistant_ID","fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":"branch_ID","fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":"item_ID","fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"notes","value":{"key":"notes","fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":"quantity","fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":"sale_ID","fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":"time","fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]},"outputFields":{"entry":[{"key":"amount","value":{"key":"amount","fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":"assistant_ID","fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"authorised","value":{"key":"authorised","fieldSchemaKey":{"name":"authorised_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":"branch_ID","fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":"item_ID","fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"message","value":{"key":"message","fieldSchemaKey":{"name":"message_type","version":"0.0.1"},"optional":true}},{"key":"notes","value":{"key":"notes","fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":"quantity","fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":"sale_ID","fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":"time","fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]},"taskParameters":{"entry":[]},"contextAlbumReference":[],"taskLogic":{"key":"TaskLogic","logicFlavour":"MVEL","logic":"/*\n * ============LICENSE_START=======================================================\n * Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * Modifications Copyright (C) 2019 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\nimport java.util.Date;\nimport java.util.Calendar;\nimport java.util.TimeZone;\nimport java.text.SimpleDateFormat;\n\nlogger.info(\"Task Execution: '\"+subject.id+\"'. Input Fields: '\"+inFields+\"'\");\n\noutFields.put(\"amount\" , inFields.get(\"amount\"));\noutFields.put(\"assistant_ID\", inFields.get(\"assistant_ID\"));\noutFields.put(\"notes\" , inFields.get(\"notes\"));\noutFields.put(\"quantity\" , inFields.get(\"quantity\"));\noutFields.put(\"branch_ID\" , inFields.get(\"branch_ID\"));\noutFields.put(\"item_ID\" , inFields.get(\"item_ID\"));\noutFields.put(\"time\" , inFields.get(\"time\"));\noutFields.put(\"sale_ID\" , inFields.get(\"sale_ID\"));\n\nitem_id = inFields.get(\"item_ID\");\n\n//The events used later to test this task use GMT timezone!\ngmt = TimeZone.getTimeZone(\"GMT\");\ntimenow = Calendar.getInstance(gmt);\ndf = new SimpleDateFormat(\"HH:mm:ss z\");\ndf.setTimeZone(gmt);\ntimenow.setTimeInMillis(inFields.get(\"time\"));\n\nmidnight = timenow.clone();\nmidnight.set(\n timenow.get(Calendar.YEAR),timenow.get(Calendar.MONTH),\n timenow.get(Calendar.DATE),0,0,0);\neleven30 = timenow.clone();\neleven30.set(\n timenow.get(Calendar.YEAR),timenow.get(Calendar.MONTH),\n timenow.get(Calendar.DATE),11,30,0);\n\nitemisalcohol = false;\nif(item_id != null && item_id >=1000 && item_id < 2000)\n itemisalcohol = true;\n\nif( itemisalcohol\n && timenow.after(midnight) && timenow.before(eleven30)){\n outFields.put(\"authorised\", false);\n outFields.put(\"message\", \"Sale not authorised by policy task \"+subject.taskName+\n \" for time \"+df.format(timenow.getTime())+\n \". Alcohol can not be sold between \"+df.format(midnight.getTime())+\n \" and \"+df.format(eleven30.getTime()));\n return true;\n}\nelse{\n outFields.put(\"authorised\", true);\n outFields.put(\"message\", \"Sale authorised by policy task \"+subject.taskName+\n \" for time \"+df.format(timenow.getTime()));\n return true;\n}\n\n/*\nThis task checks if a sale request is for an item that is an alcoholic drink.\nIf the local time is between 00:00:00 GMT and 11:30:00 GMT then the sale is not\nauthorised. Otherwise the sale is authorised.\nIn this implementation we assume that items with item_ID value between 1000 and\n2000 are all alcoholic drinks :-)\n*/"}}}]}},"events":{"key":{"name":"MyFirstPolicyModel_Events","version":"0.0.1"},"eventMap":{"entry":[{"key":{"name":"SALE_AUTH","version":"0.0.1"},"value":{"key":{"name":"SALE_AUTH","version":"0.0.1"},"nameSpace":"com.hyperm","source":"APEX","target":"POS","parameter":{"entry":[{"key":"amount","value":{"key":"amount","fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":"assistant_ID","fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"authorised","value":{"key":"authorised","fieldSchemaKey":{"name":"authorised_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":"branch_ID","fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":"item_ID","fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"message","value":{"key":"message","fieldSchemaKey":{"name":"message_type","version":"0.0.1"},"optional":true}},{"key":"notes","value":{"key":"notes","fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":"quantity","fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":"sale_ID","fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":"time","fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]}}},{"key":{"name":"SALE_INPUT","version":"0.0.1"},"value":{"key":{"name":"SALE_INPUT","version":"0.0.1"},"nameSpace":"com.hyperm","source":"POS","target":"APEX","parameter":{"entry":[{"key":"amount","value":{"key":"amount","fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":"assistant_ID","fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":"branch_ID","fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":"item_ID","fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"notes","value":{"key":"notes","fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":"quantity","fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":"sale_ID","fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":"time","fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]}}}]}},"schemas":{"key":{"name":"MyFirstPolicyModel_Schemas","version":"0.0.1"},"schemas":{"entry":[{"key":{"name":"assistant_ID_type","version":"0.0.1"},"value":{"key":{"name":"assistant_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"authorised_type","version":"0.0.1"},"value":{"key":{"name":"authorised_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Boolean"}},{"key":{"name":"branch_ID_type","version":"0.0.1"},"value":{"key":{"name":"branch_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"item_ID_type","version":"0.0.1"},"value":{"key":{"name":"item_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"message_type","version":"0.0.1"},"value":{"key":{"name":"message_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.String"}},{"key":{"name":"notes_type","version":"0.0.1"},"value":{"key":{"name":"notes_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.String"}},{"key":{"name":"price_type","version":"0.0.1"},"value":{"key":{"name":"price_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"quantity_type","version":"0.0.1"},"value":{"key":{"name":"quantity_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Integer"}},{"key":{"name":"sale_ID_type","version":"0.0.1"},"value":{"key":{"name":"sale_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"timestamp_type","version":"0.0.1"},"value":{"key":{"name":"timestamp_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}}]}}}}},"eventOutputParameters":{"FirstProducer":{"carrierTechnologyParameters":{"carrierTechnology":"FILE","parameters":{"standardIo":true}},"eventProtocolParameters":{"eventProtocol":"JSON"}}},"eventInputParameters":{"FirstConsumer":{"carrierTechnologyParameters":{"carrierTechnology":"FILE","parameters":{"standardIo":true}},"eventProtocolParameters":{"eventProtocol":"JSON"}}}}}}]}}
\ No newline at end of file +{"tosca_definitions_version":"tosca_simple_yaml_1_1_0","topology_template":{"policies":[{"native.sampledomain":{"type":"onap.policies.native.Apex","type_version":"1.0.0","name":"native.sampledomain","version":"1.0.0","properties":{"engineServiceParameters":{"name":"MyFirstPolicyApexEngine","version":"0.0.1","id":101,"instanceCount":4,"deploymentPort":12345,"engineParameters":{"executorParameters":{"MVEL":{"parameterClassName":"org.onap.policy.apex.plugins.executor.mvel.MvelExecutorParameters"},"JAVASCRIPT":{"parameterClassName":"org.onap.policy.apex.plugins.executor.javascript.JavascriptExecutorParameters"}}},"policy_type_impl":{"apexPolicyModel":{"key":{"name":"MyFirstPolicyModel","version":"0.0.1"},"keyInformation":{"key":{"name":"MyFirstPolicyModel_KeyInfo","version":"0.0.1"},"keyInfoMap":{"entry":[{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"value":{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"UUID":"3351b0f4-cf06-4fa2-8823-edf67bd30223","description":"This task checks if the sales request is for an item that contains alcohol. \nIf the local time is between 00:00:00 and 11:30:00 then the sale is not authorised. Otherwise the sale is authorised. \nIn this implementation we assume that all items with item_ID values between 1000 and 2000 contain alcohol :-)"}},{"key":{"name":"MyFirstPolicy","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicy","version":"0.0.1"},"UUID":"6c5e410f-489a-46ff-964e-982ce6e8b6d0","description":"This is my first Apex policy. It checks if a sale should be authorised or not."}},{"key":{"name":"MyFirstPolicyModel","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel","version":"0.0.1"},"UUID":"540226fb-55ee-4f0e-a444-983a0494818e","description":"This is my first Apex Policy Model."}},{"key":{"name":"MyFirstPolicyModel_Events","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Events","version":"0.0.1"},"UUID":"ef281318-5ac9-3ef0-8db3-8f9c4e4a81e2","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Events:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_KeyInfo","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_KeyInfo","version":"0.0.1"},"UUID":"d9248c6f-7c00-38df-8251-611463ba4065","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_KeyInfo:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_Policies","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Policies","version":"0.0.1"},"UUID":"77c01a6b-510c-3aa9-b640-b4db356aa03b","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Policies:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_Schemas","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Schemas","version":"0.0.1"},"UUID":"d0cc3aa0-ea69-3a43-80ff-a0dbb0ebd885","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Schemas:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_Tasks","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Tasks","version":"0.0.1"},"UUID":"b02a7e02-2cd0-39e6-b3cb-946fa83a8f08","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Tasks:0.0.1\""}},{"key":{"name":"SALE_AUTH","version":"0.0.1"},"value":{"key":{"name":"SALE_AUTH","version":"0.0.1"},"UUID":"c4500941-3f98-4080-a9cc-5b9753ed050b","description":"An event emitted by the Policy to indicate whether the sale of an item has been authorised"}},{"key":{"name":"SALE_INPUT","version":"0.0.1"},"value":{"key":{"name":"SALE_INPUT","version":"0.0.1"},"UUID":"4f04aa98-e917-4f4a-882a-c75ba5a99374","description":"An event raised by the PoS system each time an item is scanned for purchase"}},{"key":{"name":"assistant_ID_type","version":"0.0.1"},"value":{"key":{"name":"assistant_ID_type","version":"0.0.1"},"UUID":"36df4c71-9616-4206-8b53-976a5cd4bd87","description":"A type for 'assistant_ID' values"}},{"key":{"name":"authorised_type","version":"0.0.1"},"value":{"key":{"name":"authorised_type","version":"0.0.1"},"UUID":"d48b619e-d00d-4008-b884-02d76ea4350b","description":"A type for 'authorised' values"}},{"key":{"name":"branch_ID_type","version":"0.0.1"},"value":{"key":{"name":"branch_ID_type","version":"0.0.1"},"UUID":"6468845f-4122-4128-8e49-0f52c26078b5","description":"A type for 'branch_ID' values"}},{"key":{"name":"item_ID_type","version":"0.0.1"},"value":{"key":{"name":"item_ID_type","version":"0.0.1"},"UUID":"4f227ff1-aee0-453a-b6b6-9a4b2e0da932","description":"A type for 'item_ID' values"}},{"key":{"name":"message_type","version":"0.0.1"},"value":{"key":{"name":"message_type","version":"0.0.1"},"UUID":"ad1431bb-3155-4e73-b5a3-b89bee498749","description":"A type for 'message' values"}},{"key":{"name":"notes_type","version":"0.0.1"},"value":{"key":{"name":"notes_type","version":"0.0.1"},"UUID":"eecfde90-896c-4343-8f9c-2603ced94e2d","description":"A type for 'notes' values"}},{"key":{"name":"price_type","version":"0.0.1"},"value":{"key":{"name":"price_type","version":"0.0.1"},"UUID":"52c2fc45-fd8c-463c-bd6f-d91b0554aea7","description":"A type for 'amount'/'price' values"}},{"key":{"name":"quantity_type","version":"0.0.1"},"value":{"key":{"name":"quantity_type","version":"0.0.1"},"UUID":"ac3d9842-80af-4a98-951c-bd79a431c613","description":"A type for 'quantity' values"}},{"key":{"name":"sale_ID_type","version":"0.0.1"},"value":{"key":{"name":"sale_ID_type","version":"0.0.1"},"UUID":"cca47d74-7754-4a61-b163-ca31f66b157b","description":"A type for 'sale_ID' values"}},{"key":{"name":"timestamp_type","version":"0.0.1"},"value":{"key":{"name":"timestamp_type","version":"0.0.1"},"UUID":"fd594e88-411d-4a94-b2be-697b3a0d7adf","description":"A type for 'time' values"}}]}},"policies":{"key":{"name":"MyFirstPolicyModel_Policies","version":"0.0.1"},"policyMap":{"entry":[{"key":{"name":"MyFirstPolicy","version":"0.0.1"},"value":{"policyKey":{"name":"MyFirstPolicy","version":"0.0.1"},"template":"FREEFORM","state":{"entry":[{"key":"BoozeAuthDecide","value":{"stateKey":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"BoozeAuthDecide"},"trigger":{"name":"SALE_INPUT","version":"0.0.1"},"stateOutputs":{"entry":[{"key":"MorningBoozeCheck_Output_Direct","value":{"key":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"BoozeAuthDecide","localName":"MorningBoozeCheck_Output_Direct"},"outgoingEvent":{"name":"SALE_AUTH","version":"0.0.1"},"outgoingEventReference":[{"name":"SALE_AUTH","version":"0.0.1"}],"nextState":{"parentKeyName":"NULL","parentKeyVersion":"0.0.0","parentLocalName":"NULL","localName":"NULL"}}}]},"contextAlbumReference":[],"taskSelectionLogic":{"key":"NULL","logicFlavour":"UNDEFINED","logic":""},"stateFinalizerLogicMap":{"entry":[]},"defaultTask":{"name":"MorningBoozeCheck","version":"0.0.1"},"taskReferences":{"entry":[{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"value":{"key":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"BoozeAuthDecide","localName":"MorningBoozeCheck"},"outputType":"DIRECT","output":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"BoozeAuthDecide","localName":"MorningBoozeCheck_Output_Direct"}}}]}}}]},"firstState":"BoozeAuthDecide"}}]}},"tasks":{"key":{"name":"MyFirstPolicyModel_Tasks","version":"0.0.1"},"taskMap":{"entry":[{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"value":{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"inputEvent":{"key":{"name":"SALE_INPUT","version":"0.0.1"},"nameSpace":"com.hyperm","source":"POS","target":"APEX","parameter":{"entry":[{"key":"amount","value":{"key":"amount","fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":"assistant_ID","fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":"branch_ID","fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":"item_ID","fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"notes","value":{"key":"notes","fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":"quantity","fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":"sale_ID","fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":"time","fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]}},"outputEvents":{"entry":[{"key":"SALE_AUTH","value":{"key":{"name":"SALE_AUTH","version":"0.0.1"},"nameSpace":"com.hyperm","source":"APEX","target":"POS","parameter":{"entry":[{"key":"amount","value":{"key":"amount","fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":"assistant_ID","fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"authorised","value":{"key":"authorised","fieldSchemaKey":{"name":"authorised_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":"branch_ID","fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":"item_ID","fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"message","value":{"key":"message","fieldSchemaKey":{"name":"message_type","version":"0.0.1"},"optional":true}},{"key":"notes","value":{"key":"notes","fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":"quantity","fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":"sale_ID","fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":"time","fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]}}}]},"taskParameters":{"entry":[]},"contextAlbumReference":[],"taskLogic":{"key":"TaskLogic","logicFlavour":"MVEL","logic":"/*\n * ============LICENSE_START=======================================================\n * Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * Modifications Copyright (C) 2019 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\nimport java.util.Date;\nimport java.util.Calendar;\nimport java.util.TimeZone;\nimport java.text.SimpleDateFormat;\n\nlogger.info(\"Task Execution: '\"+subject.id+\"'. Input Fields: '\"+inFields+\"'\");\n\noutFields.put(\"amount\" , inFields.get(\"amount\"));\noutFields.put(\"assistant_ID\", inFields.get(\"assistant_ID\"));\noutFields.put(\"notes\" , inFields.get(\"notes\"));\noutFields.put(\"quantity\" , inFields.get(\"quantity\"));\noutFields.put(\"branch_ID\" , inFields.get(\"branch_ID\"));\noutFields.put(\"item_ID\" , inFields.get(\"item_ID\"));\noutFields.put(\"time\" , inFields.get(\"time\"));\noutFields.put(\"sale_ID\" , inFields.get(\"sale_ID\"));\n\nitem_id = inFields.get(\"item_ID\");\n\n//The events used later to test this task use GMT timezone!\ngmt = TimeZone.getTimeZone(\"GMT\");\ntimenow = Calendar.getInstance(gmt);\ndf = new SimpleDateFormat(\"HH:mm:ss z\");\ndf.setTimeZone(gmt);\ntimenow.setTimeInMillis(inFields.get(\"time\"));\n\nmidnight = timenow.clone();\nmidnight.set(\n timenow.get(Calendar.YEAR),timenow.get(Calendar.MONTH),\n timenow.get(Calendar.DATE),0,0,0);\neleven30 = timenow.clone();\neleven30.set(\n timenow.get(Calendar.YEAR),timenow.get(Calendar.MONTH),\n timenow.get(Calendar.DATE),11,30,0);\n\nitemisalcohol = false;\nif(item_id != null && item_id >=1000 && item_id < 2000)\n itemisalcohol = true;\n\nif( itemisalcohol\n && timenow.after(midnight) && timenow.before(eleven30)){\n outFields.put(\"authorised\", false);\n outFields.put(\"message\", \"Sale not authorised by policy task \"+subject.taskName+\n \" for time \"+df.format(timenow.getTime())+\n \". Alcohol can not be sold between \"+df.format(midnight.getTime())+\n \" and \"+df.format(eleven30.getTime()));\n return true;\n}\nelse{\n outFields.put(\"authorised\", true);\n outFields.put(\"message\", \"Sale authorised by policy task \"+subject.taskName+\n \" for time \"+df.format(timenow.getTime()));\n return true;\n}\n\n/*\nThis task checks if a sale request is for an item that is an alcoholic drink.\nIf the local time is between 00:00:00 GMT and 11:30:00 GMT then the sale is not\nauthorised. Otherwise the sale is authorised.\nIn this implementation we assume that items with item_ID value between 1000 and\n2000 are all alcoholic drinks :-)\n*/"}}}]}},"events":{"key":{"name":"MyFirstPolicyModel_Events","version":"0.0.1"},"eventMap":{"entry":[{"key":{"name":"SALE_AUTH","version":"0.0.1"},"value":{"key":{"name":"SALE_AUTH","version":"0.0.1"},"nameSpace":"com.hyperm","source":"APEX","target":"POS","parameter":{"entry":[{"key":"amount","value":{"key":"amount","fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":"assistant_ID","fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"authorised","value":{"key":"authorised","fieldSchemaKey":{"name":"authorised_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":"branch_ID","fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":"item_ID","fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"message","value":{"key":"message","fieldSchemaKey":{"name":"message_type","version":"0.0.1"},"optional":true}},{"key":"notes","value":{"key":"notes","fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":"quantity","fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":"sale_ID","fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":"time","fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]}}},{"key":{"name":"SALE_INPUT","version":"0.0.1"},"value":{"key":{"name":"SALE_INPUT","version":"0.0.1"},"nameSpace":"com.hyperm","source":"POS","target":"APEX","parameter":{"entry":[{"key":"amount","value":{"key":"amount","fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":"assistant_ID","fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":"branch_ID","fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":"item_ID","fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"notes","value":{"key":"notes","fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":"quantity","fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":"sale_ID","fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":"time","fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]}}}]}},"schemas":{"key":{"name":"MyFirstPolicyModel_Schemas","version":"0.0.1"},"schemas":{"entry":[{"key":{"name":"assistant_ID_type","version":"0.0.1"},"value":{"key":{"name":"assistant_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"authorised_type","version":"0.0.1"},"value":{"key":{"name":"authorised_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Boolean"}},{"key":{"name":"branch_ID_type","version":"0.0.1"},"value":{"key":{"name":"branch_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"item_ID_type","version":"0.0.1"},"value":{"key":{"name":"item_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"message_type","version":"0.0.1"},"value":{"key":{"name":"message_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.String"}},{"key":{"name":"notes_type","version":"0.0.1"},"value":{"key":{"name":"notes_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.String"}},{"key":{"name":"price_type","version":"0.0.1"},"value":{"key":{"name":"price_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"quantity_type","version":"0.0.1"},"value":{"key":{"name":"quantity_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Integer"}},{"key":{"name":"sale_ID_type","version":"0.0.1"},"value":{"key":{"name":"sale_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"timestamp_type","version":"0.0.1"},"value":{"key":{"name":"timestamp_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}}]}}}}},"eventOutputParameters":{"FirstProducer":{"carrierTechnologyParameters":{"carrierTechnology":"FILE","parameters":{"standardIo":true}},"eventProtocolParameters":{"eventProtocol":"JSON"}}},"eventInputParameters":{"FirstConsumer":{"carrierTechnologyParameters":{"carrierTechnology":"FILE","parameters":{"standardIo":true}},"eventProtocolParameters":{"eventProtocol":"JSON"}}}}}}]}} |