From 2a93b9ddf308b6bdd135be182c1b3fa779891840 Mon Sep 17 00:00:00 2001 From: Dan Timoney Date: Tue, 18 Jul 2017 19:40:01 -0400 Subject: Populate seed code Add seed code for sli/core repository Issue: CCSDK-6 Change-Id: Iaeb54c6135a94a6ffec0c7fd96505d72d18aeb00 Signed-off-by: Dan Timoney --- src/site/apt/nodes.apt | 953 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 953 insertions(+) create mode 100644 src/site/apt/nodes.apt (limited to 'src/site/apt/nodes.apt') diff --git a/src/site/apt/nodes.apt b/src/site/apt/nodes.apt new file mode 100644 index 00000000..b8ce9879 --- /dev/null +++ b/src/site/apt/nodes.apt @@ -0,0 +1,953 @@ +~~~ +~~ ============LICENSE_START======================================================= +~~ openECOMP : SDN-C +~~ ================================================================================ +~~ Copyright (C) 2017 AT&T Intellectual Property. 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. +~~ You may obtain a copy of the License at +~~ +~~ http://www.apache.org/licenses/LICENSE-2.0 +~~ +~~ Unless required by applicable law or agreed to in writing, software +~~ distributed under the License is distributed on an "AS IS" BASIS, +~~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +~~ See the License for the specific language governing permissions and +~~ limitations under the License. +~~ ============LICENSE_END========================================================= +~~~ + + --- + Service Logic Interpreter + --- + Dan Timoney + --- + 2014-11-12 + --- + +Supported node types + + The following built-in node types are currently supported: + + * Flow Control + + * {{{Block node}<>}} + + * {{{Call node}<>}} + + * {{{For node}<>}} + + * {{{Return node}<>}} + + * {{{Set node}<>}} + + * {{{Switch node}<>}} + + * Device Management + + * {{{Configure node}<>}} + + * Java Plugin Support + + * {{{Execute node}<>}} + + * Recording + + * {{{Record node}<>}} + + * Resource Management + + * {{{Delete node}<>}} + + * {{{Exists node}<>}} + + * {{{Get-resource node}<>}} + + * {{{Is-available node}<>}} + + * {{{Notify node}<>}} + + * {{{Release node}<>}} + + * {{{Reserve node}<>}} + + * {{{Save node}<>}} + + * {{{Update node}<>}} + + +* Flow Control + +** Block node + +*** Description + + A <> node is used to executes a set of nodes. + +*** Attributes + +*--------------*--------------------------------------------+ +| <> | if , then if a node returns failure, subsequent nodes will not be executed and nodes already executed will be backed out. +*--------------*--------------------------------------------+ + +*** Parameters + + None + +*** Outcomes + + None + +*** Example + ++-----------------+ + + + + + + + + + + + ++-----------------+ + + + +**Call node + +*** Description + + A <> node is used to call another graph + +*** Attributes + +*--------------*-------+ +| <> | Module of directed graph to call. If unset, defaults to that of calling graph +*--------------*-------+ +| <> | rpc of directed graph to call. +*--------------*-------+ +| <> | version of graph to call, If unset, uses active version. +*--------------*-------+ +| <> | mode (sync/async) of graph to call. If unset, defaults to that of calling graph. +*--------------*-------+ + + + +*** Parameters + + Not applicable + +*** Outcomes + +*----------*---------+ +| <> | Sub graph returned success +*----------*---------+ +| <> | Graph not found +*----------*---------+ +| <> | Subgraph returned success +*----------*---------+ + . + +*** Example + ++-------------------+ + ++-------------------+ + +**For node + +*** Description + + A <> node provides a fixed iteration looping mechanism, similar to the Java for loop + +*** Attributes + +*--------------*-------+ +| <> | index variable +*--------------*-------+ +| <> | initial value +*--------------*-------+ +| <> | maximum value +*--------------*-------+ + + +*** Parameters + + Not applicable. + +*** Outcomes + + Not applicable. The <> node has no outcomes. + +*** Example + ++-------------------+ + + + + + + + ++-------------------+ + +**Return node + +*** Description + + A <> node is used to return a status to the invoking MD-SAL application + +*** Attributes + +*--------------*-------+ +| <> | Status value to return ( or ) +*--------------*-------+ + + +*** Parameters + + The following optional parameters may be passed to convey more + detailed status information. + +*------------*-----------+ +| <> | A brief, usually numeric, code indicating the error condition +*------------*-----------+ +| <> | A more detailed error message +*------------*-----------+ + +*** Outcomes + + Not applicable. The <> node has no outcomes. + +*** Example + ++-------------------+ + + + + ++-------------------+ + +**Set node + +*** Description + + A <> node is used to set one or more values in the execution context + +*** Attributes + +*--------------*-------+ +| <> | If true the set node will only execute if the current value of the target is null +*--------------*-------+ + +*** Parameters + + Values to be set are passed as parameters + +*** Outcomes + + Not applicable. The <> node has no outcomes. + +*** Example + ++-------------------+ + + + ++-------------------+ + +**Switch node + +*** Description + + A <> node is used to make a decision based on its <> attribute. + +*** Attributes + +*--------------*-------+ +| <> | Condition to test +*--------------*-------+ + + +*** Parameters + + None + + +*** Outcomes + + Depends on the <> condition + +*** Example + ++-------------------+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ++-------------------+ + +* Device Management + +**Configure node + +*** Description + + A <> node is used to configure a device. + +*** Attributes + +*--------------*-------+ +| <> | Fully qualified Java class of resource adaptor to be used +*--------------*-------+ +| <> | Activate device/interface, for devices that support a separate activation step. +*--------------*-------+ +| <> | SQL-like string specifying criteria for item to configure +*--------------*-------+ + +*** Parameters + + Specific to device adaptor. + +*** Outcomes + +*-----------*-------+ +| <> | Device successfully configured +*-----------*-------+ +| <> | Element to be configured does not exist. +*-----------*--------+ +| <> | Element is not in a state where it can be configured/activated +*-----------*-------+ +| <> | Attempt to activate element that is already active +*-----------*-------+ +| <> | Configure failed for some other reason +*-----------*-------+ + +*** Example + ++-------------------+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ++-------------------+ + +* Java Plugin Support + +**Execute node + +*** Description + + An <> node is used to execute Java code supplied as a plugin + +*** Attributes + +*--------------*-------+ +| <> | Fully qualified Java class of plugin to be used +*--------------*-------+ +| <> | Name of method in the plugin class to execute. Method must return void, and take 2 arguments: a Map (for parameters) and a SvcLogicContext (to allow plugin read/write access to context memory) +*--------------*-------+ + +*** Parameters + + Specific to plugin / method + +*** Outcomes + +*-----------*-------+ +| <> | Device successfully configured +*-----------*-------+ +| <> | Plugin class could not be loaded +*-----------*--------+ +| <> | Named method taking (Map, SvcLogicContext) could not be found +*-----------*-------+ +| <> | Configure failed for some other reason +*-----------*-------+ + +*** Example + ++-------------------+ + + + + + + + + + + + + + + + + + + ++-------------------+ + +* Recording + +** Record node + +*** Description + + A <> node is used to record an event. For example, this might be used + to log provisioning events. + +*** Attributes + +*--------------*-------+ +| <> | Fully qualified Java class to handle recording. +*--------------*-------+ + + +*** Parameters + + Parameters will depend on the plugin being used. For the FileRecorder class, + the parameters are as follows + +*------------*-----------+ +| <> | The file to which the record should be written +*------------*-----------+ +| <> | First field to write. There will be <> parameters for each field to write, from <> through <>. A special value __TIMESTAMP__ may be assigned to a field to insert the current timestamp +*------------*-----------+ + + +*** Outcomes + +*----------*---------+ +| <> | Record successfully written +*----------*---------+ +| <> | Record could not be successfully written +*----------*---------+ + +*** Example + ++-------------------+ + + + + + + ++-------------------+ + +* Resource Management + +** Delete node + +*** Description + + A <> node is used to delete a resource from the local resource inventory. + +*** Attributes + +*--------------*-------+ +| <> | Fully qualified Java class of resource adaptor to be used +*--------------*-------+ +| <> | Type of resource to delete +*--------------*-------+ +| <> | SQL-like string specifying key to delete +*--------------*-------+ + +*** Parameters + + None + +*** Outcomes + +*-----------*-------+ +| <> | Resource specified deleted successfully. +*-----------*-------+ +| > | Resource specified was not deleted +*-----------*-------+ + +*** Example + ++-------------------+ + + + + + + + + ++-------------------+ + + +** Exists node + +*** Description + + An <> node is used to determine whether a particular + instance of a resource exists. For example, this might be + used to test whether a particular switch CLLI is provisioned. + +*** Attributes + +*--------------*-------+ +| <> | Fully qualified Java class of resource adaptor to be used +*--------------*-------+ +| <> | Type of resource to check +*--------------*-------+ +| <> | SQL-like string specifying key to check for +*--------------*-------+ + +*** Parameters + + None + +*** Outcomes + +*-----------*-------+ +| <> | Resource specified exists. +*-----------*-------+ +| <> | Resource specified is unknown +*-----------*-------+ + +*** Example + ++-------------------+ + + + + + + + + ++-------------------+ + +** Get-resource node + +*** Description + + A <> node is used to retrieve information about a + particular resource and make it available to other nodes in the + service logic tree. For example, this might be used to + retrieve information about a particular uni-port. + +*** Attributes + +*--------------*-------+ +| <> | Fully qualified Java class of resource adaptor to be used +*--------------*-------+ +| <> | Type of resource to retrieve +*--------------*-------+ +| <> | SQL-like string specifying criteria for retrieval +*--------------*-------+ +| <> | Prefix to add to context variable names set for data retrieved +*--------------*-------+ +| <> | String to specify, if <> matches multiple entries, which entry should take precedence +*--------------*-------+ + +*** Parameters + + None + +*** Outcomes + +*-----------*-------+ +| <> | Resource requested was successfully reserved +*-----------*-------+ +| <> | Resource requested was not successfully reserved +*-----------*-------+ + +*** Example + ++-------------------+ + + + + + + + + ++-------------------+ + +** Save node + +*** Description + + A <> node is used to save information about a + particular resource to persistent storage. For example, this might be used to + save information about a particular uni-port. + +*** Attributes + +*--------------*-------+ +| <> | Fully qualified Java class of resource adaptor to be used +*--------------*-------+ +| <> | Type of resource to save +*--------------*-------+ +| <> | SQL-like string specifying criteria for retrieval +*--------------*-------+ +| <> | If "true", save resource even if this resource is already stored in persistent storage +*--------------*-------+ +| <> | Prefix to be prepended to variable names, when attributes are set in SvcLogicContext +*--------------*-------+ + +*** Parameters + + Values to save (columns) are specified as parameters, with each name + corresponding to a column name and each value corresponding to the + value to set. + +*** Outcomes + +*-----------*-------+ +| <> | Resource successfully saved +*-----------*-------+ +| <> | Resource save failed +*-----------*-------+ + +*** Example + ++-------------------+ + + + + + + + + ++-------------------+ + +** Update node + +*** Description + + An <> node is used to update information about a + particular resource to persistent storage. + +*** Attributes + +*--------------*-------+ +| <> | Fully qualified Java class of resource adaptor to be used +*--------------*-------+ +| <> | Type of resource to update +*--------------*-------+ +| <> | SQL-like string specifying criteria for retrieval +*--------------*-------+ +| <> | Prefix to be prepended to variable names, when attributes are set in SvcLogicContext +*--------------*-------+ + +*** Parameters + + Values to save (columns) are specified as parameters, with each name + corresponding to a column name and each value corresponding to the + value to set. + +*** Outcomes + +*-----------*-------+ +| <> | Resource successfully saved +*-----------*-------+ +| <> | Resource save failed +*-----------*-------+ + +*** Example + ++-------------------+ + + + + + + + + ++-------------------+ + -- cgit 1.2.3-korg