diff options
Diffstat (limited to 'plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor')
18 files changed, 8824 insertions, 0 deletions
diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/pom.xml b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/pom.xml new file mode 100644 index 000000000..8a5419334 --- /dev/null +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/pom.xml @@ -0,0 +1,67 @@ +<!-- + ============LICENSE_START======================================================= + Copyright (C) 2018 Ericsson. 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. + + SPDX-License-Identifier: Apache-2.0 + ============LICENSE_END========================================================= +--> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId> + <artifactId>plugins-event-carrier</artifactId> + <version>2.0.0-SNAPSHOT</version> + </parent> + + <artifactId>plugins-event-carrier-restrequestor</artifactId> + <name>${project.artifactId}</name> + <description>[${project.parent.artifactId}] Plugin for handling REST requests and responses</description> + + <properties> + <apex-plugins-event-carrier-restrequestor-dir>${project.basedir}/src</apex-plugins-event-carrier-restrequestor-dir> + </properties> + + <dependencies> + <dependency> + <groupId>org.glassfish.jersey.core</groupId> + <artifactId>jersey-client</artifactId> + <version>${version.jersey.core}</version> + </dependency> + <dependency> + <groupId>org.onap.policy.apex-pdp.services</groupId> + <artifactId>services-engine</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>org.glassfish.jersey.containers</groupId> + <artifactId>jersey-container-grizzly2-http</artifactId> + <version>${version.grizzly2-http}</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId> + <artifactId>plugins-executor-mvel</artifactId> + <version>${project.version}</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.onap.policy.apex-pdp.context</groupId> + <artifactId>context-test</artifactId> + <version>${project.version}</version> + <scope>test</scope> + </dependency> + </dependencies> +</project>
\ No newline at end of file diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/main/java/org/onap/policy/apex/plugins/event/carrier/restrequestor/ApexRestRequest.java b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/main/java/org/onap/policy/apex/plugins/event/carrier/restrequestor/ApexRestRequest.java new file mode 100644 index 000000000..46e68acda --- /dev/null +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/main/java/org/onap/policy/apex/plugins/event/carrier/restrequestor/ApexRestRequest.java @@ -0,0 +1,65 @@ +/*- + * ============LICENSE_START======================================================= + * Copyright (C) 2016-2018 Ericsson. 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. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.apex.plugins.event.carrier.restrequestor; + +/** + * This class holds a record of a REST request for the REST requestor plugin + * + * @author Liam Fallon (liam.fallon@ericsson.com) + */ +public class ApexRestRequest { + private long executionId; + private String eventName; + private Object event; + private long timestamp; + + public ApexRestRequest(final long executionId, final String eventName, final Object event) { + this.executionId = executionId; + this.eventName = eventName; + this.event = event; + } + + public long getExecutionId() { + return executionId; + } + + public String getEventName() { + return eventName; + } + + public Object getEvent() { + return event; + } + + public long getTimestamp() { + return timestamp; + } + + public void setTimestamp(final long timestamp) { + this.timestamp = timestamp; + } + + @Override + public String toString() { + return "ApexRestRequest [executionId=" + executionId + ", eventName=" + eventName + ", event=" + event + + ", timestamp=" + timestamp + "]"; + } +} diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/main/java/org/onap/policy/apex/plugins/event/carrier/restrequestor/ApexRestRequestorConsumer.java b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/main/java/org/onap/policy/apex/plugins/event/carrier/restrequestor/ApexRestRequestorConsumer.java new file mode 100644 index 000000000..735053279 --- /dev/null +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/main/java/org/onap/policy/apex/plugins/event/carrier/restrequestor/ApexRestRequestorConsumer.java @@ -0,0 +1,416 @@ +/*- + * ============LICENSE_START======================================================= + * Copyright (C) 2016-2018 Ericsson. 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. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.apex.plugins.event.carrier.restrequestor; + +import java.net.URL; +import java.util.ArrayList; +import java.util.EnumMap; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; + +import javax.ws.rs.client.Client; +import javax.ws.rs.client.ClientBuilder; +import javax.ws.rs.client.Entity; +import javax.ws.rs.core.Response; + +import org.onap.policy.apex.core.infrastructure.threading.ApplicationThreadFactory; +import org.onap.policy.apex.core.infrastructure.threading.ThreadUtilities; +import org.onap.policy.apex.plugins.event.carrier.restrequestor.RESTRequestorCarrierTechnologyParameters.HTTP_METHOD; +import org.onap.policy.apex.service.engine.event.ApexEventConsumer; +import org.onap.policy.apex.service.engine.event.ApexEventException; +import org.onap.policy.apex.service.engine.event.ApexEventReceiver; +import org.onap.policy.apex.service.engine.event.ApexEventRuntimeException; +import org.onap.policy.apex.service.engine.event.PeeredReference; +import org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters; +import org.onap.policy.apex.service.parameters.eventhandler.EventHandlerPeeredMode; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * This class implements an Apex event consumer that issues a REST request and returns the REST response to APEX as an + * event. + * + * @author Liam Fallon (liam.fallon@ericsson.com) + */ +public class ApexRestRequestorConsumer implements ApexEventConsumer, Runnable { + // Get a reference to the logger + private static final Logger LOGGER = LoggerFactory.getLogger(ApexRestRequestorConsumer.class); + + // The amount of time to wait in milliseconds between checks that the consumer thread has stopped + private static final long REST_REQUESTOR_WAIT_SLEEP_TIME = 50; + + // The REST parameters read from the parameter service + private RESTRequestorCarrierTechnologyParameters restConsumerProperties; + + // The timeout for REST requests + private long restRequestTimeout = RESTRequestorCarrierTechnologyParameters.DEFAULT_REST_REQUEST_TIMEOUT; + + // The event receiver that will receive events from this consumer + private ApexEventReceiver eventReceiver; + + // The HTTP client that makes a REST call to get an input event for Apex + private Client client; + + // The name for this consumer + private String name = null; + + // The peer references for this event handler + private Map<EventHandlerPeeredMode, PeeredReference> peerReferenceMap = new EnumMap<>(EventHandlerPeeredMode.class); + + // The consumer thread and stopping flag + private Thread consumerThread; + private boolean stopOrderedFlag = false; + + // Temporary request holder for incoming REST requests + private final BlockingQueue<ApexRestRequest> incomingRestRequestQueue = new LinkedBlockingQueue<>(); + + // Map of ongoing REST request threads indexed by the time they started at + private final Map<ApexRestRequest, RestRequestRunner> ongoingRestRequestMap = new ConcurrentHashMap<>(); + + // The number of events received to date + private Object eventsReceivedLock = new Object(); + private Integer eventsReceived = 0; + + // The number of the next request runner thread + private static long nextRequestRunnerThreadNo = 0; + + @Override + public void init(final String consumerName, final EventHandlerParameters consumerParameters, + final ApexEventReceiver incomingEventReceiver) throws ApexEventException { + this.eventReceiver = incomingEventReceiver; + this.name = consumerName; + + // Check and get the REST Properties + if (!(consumerParameters + .getCarrierTechnologyParameters() instanceof RESTRequestorCarrierTechnologyParameters)) { + final String errorMessage = + "specified consumer properties are not applicable to REST Requestor consumer (" + this.name + ")"; + LOGGER.warn(errorMessage); + throw new ApexEventException(errorMessage); + } + restConsumerProperties = + (RESTRequestorCarrierTechnologyParameters) consumerParameters.getCarrierTechnologyParameters(); + + // Check if we are in peered mode + if (!consumerParameters.isPeeredMode(EventHandlerPeeredMode.REQUESTOR)) { + final String errorMessage = "REST Requestor consumer (" + this.name + + ") must run in peered requestor mode with a REST Requestor producer"; + LOGGER.warn(errorMessage); + throw new ApexEventException(errorMessage); + } + + // Check if the HTTP method has been set + if (restConsumerProperties.getHttpMethod() == null) { + restConsumerProperties + .setHttpMethod(RESTRequestorCarrierTechnologyParameters.DEFAULT_REQUESTOR_HTTP_METHOD); + } + + if (!(restConsumerProperties.getHttpMethod() instanceof HTTP_METHOD)) { + final String errorMessage = "specified HTTP method of \"" + restConsumerProperties.getHttpMethod() + + "\" is invalid, only HTTP methods " + HTTP_METHOD.values() + + " are valid on REST Requestor consumer (" + this.name + ")"; + LOGGER.warn(errorMessage); + throw new ApexEventException(errorMessage); + } + + // Check if the HTTP URL has been set + if (restConsumerProperties.getURL() == null) { + final String errorMessage = "no URL has been specified on REST Requestor consumer (" + this.name + ")"; + LOGGER.warn(errorMessage); + throw new ApexEventException(errorMessage); + } + + // Check if the HTTP URL is valid + try { + new URL(restConsumerProperties.getURL()); + } catch (final Exception e) { + final String errorMessage = "invalid URL has been specified on REST Requestor consumer (" + this.name + ")"; + LOGGER.warn(errorMessage); + throw new ApexEventException(errorMessage, e); + } + + // Set the peer timeout to the default value if its not set + if (consumerParameters.getPeerTimeout(EventHandlerPeeredMode.REQUESTOR) != 0) { + restRequestTimeout = consumerParameters.getPeerTimeout(EventHandlerPeeredMode.REQUESTOR); + } + + // Initialize the HTTP client + client = ClientBuilder.newClient(); + } + + /** + * Receive an incoming REST request from the peered REST Requestor producer and queue it + * + * @param restRequest the incoming rest request to queue + * @throws ApexEventRuntimeException on queueing errors + */ + public void processRestRequest(final ApexRestRequest restRequest) { + // Push the event onto the queue for handling + try { + incomingRestRequestQueue.add(restRequest); + } catch (final Exception e) { + final String errorMessage = + "could not queue request \"" + restRequest + "\" on REST Requestor consumer (" + this.name + ")"; + LOGGER.warn(errorMessage); + throw new ApexEventRuntimeException(errorMessage); + } + } + + /* + * (non-Javadoc) + * + * @see org.onap.policy.apex.service.engine.event.ApexEventConsumer#start() + */ + @Override + public void start() { + // Configure and start the event reception thread + final String threadName = this.getClass().getName() + ":" + this.name; + consumerThread = new ApplicationThreadFactory(threadName).newThread(this); + consumerThread.setDaemon(true); + consumerThread.start(); + } + + /* + * (non-Javadoc) + * + * @see org.onap.policy.apex.service.engine.event.ApexEventConsumer#getName() + */ + @Override + public String getName() { + return name; + } + + /** + * Get the number of events received to date + * + * @return the number of events received + */ + public int getEventsReceived() { + return eventsReceived; + } + + /* + * (non-Javadoc) + * + * @see org.onap.policy.apex.service.engine.event.ApexEventConsumer#getPeeredReference(org.onap.policy.apex.service. + * parameters.eventhandler.EventHandlerPeeredMode) + */ + @Override + public PeeredReference getPeeredReference(final EventHandlerPeeredMode peeredMode) { + return peerReferenceMap.get(peeredMode); + } + + /* + * (non-Javadoc) + * + * @see org.onap.policy.apex.service.engine.event.ApexEventConsumer#setPeeredReference(org.onap.policy.apex.service. + * parameters.eventhandler.EventHandlerPeeredMode, org.onap.policy.apex.service.engine.event.PeeredReference) + */ + @Override + public void setPeeredReference(final EventHandlerPeeredMode peeredMode, final PeeredReference peeredReference) { + peerReferenceMap.put(peeredMode, peeredReference); + } + + /* + * (non-Javadoc) + * + * @see java.lang.Runnable#run() + */ + @Override + public void run() { + // The endless loop that receives events using REST calls + while (consumerThread.isAlive() && !stopOrderedFlag) { + try { + // Take the next event from the queue + final ApexRestRequest restRequest = + incomingRestRequestQueue.poll(REST_REQUESTOR_WAIT_SLEEP_TIME, TimeUnit.MILLISECONDS); + if (restRequest == null) { + // Poll timed out, check for request timeouts + timeoutExpiredRequests(); + continue; + } + + // Set the time stamp of the REST request + restRequest.setTimestamp(System.currentTimeMillis()); + + // Create a thread to process the REST request and place it on the map of ongoing requests + final RestRequestRunner restRequestRunner = new RestRequestRunner(restRequest); + ongoingRestRequestMap.put(restRequest, restRequestRunner); + + // Start execution of the request + final Thread restRequestRunnerThread = new Thread(restRequestRunner); + restRequestRunnerThread.setName("RestRequestRunner_" + nextRequestRunnerThreadNo); + restRequestRunnerThread.start(); + } catch (final InterruptedException e) { + LOGGER.debug("Thread interrupted, Reason {}", e.getMessage()); + Thread.currentThread().interrupt(); + } + } + + client.close(); + } + + /** + * This method times out REST requests that have expired + */ + private void timeoutExpiredRequests() { + // Hold a list of timed out requests + final List<ApexRestRequest> timedoutRequestList = new ArrayList<>(); + + // Check for timeouts + for (final Entry<ApexRestRequest, RestRequestRunner> requestEntry : ongoingRestRequestMap.entrySet()) { + if (System.currentTimeMillis() - requestEntry.getKey().getTimestamp() > restRequestTimeout) { + requestEntry.getValue().stop(); + timedoutRequestList.add(requestEntry.getKey()); + } + } + + // Interrupt timed out requests and remove them from the ongoing map + for (final ApexRestRequest timedoutRequest : timedoutRequestList) { + final String errorMessage = + "REST Requestor consumer (" + this.name + "), REST request timed out: " + timedoutRequest; + LOGGER.warn(errorMessage); + + ongoingRestRequestMap.remove(timedoutRequest); + } + } + + /* + * (non-Javadoc) + * + * @see org.onap.policy.apex.apps.uservice.producer.ApexEventConsumer#stop() + */ + @Override + public void stop() { + stopOrderedFlag = true; + + while (consumerThread.isAlive()) { + ThreadUtilities.sleep(REST_REQUESTOR_WAIT_SLEEP_TIME); + } + } + + /** + * This class is used to start a thread for each request issued. + * + * @author Liam Fallon (liam.fallon@ericsson.com) + */ + private class RestRequestRunner implements Runnable { + private static final String APPLICATION_JSON = "application/json"; + + // The REST request being processed by this thread + private final ApexRestRequest request; + + // The thread executing the REST request + private Thread restRequestThread; + + /** + * Constructor, initialise the request runner with the request + * + * @param request the request this runner will issue + */ + private RestRequestRunner(final ApexRestRequest request) { + this.request = request; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Runnable#run() + */ + @Override + public void run() { + // Get the thread for the request + restRequestThread = Thread.currentThread(); + + try { + // Execute the REST request + final Response response = sendEventAsRESTRequest(); + + // Check that the event request worked + if (response.getStatus() != Response.Status.OK.getStatusCode()) { + final String errorMessage = "reception of response to \"" + request + "\" from URL \"" + + restConsumerProperties.getURL() + "\" failed with status code " + response.getStatus() + + " and message \"" + response.readEntity(String.class) + "\""; + throw new ApexEventRuntimeException(errorMessage); + } + + // Get the event we received + final String eventJSONString = response.readEntity(String.class); + + // Check there is content + if (eventJSONString == null || eventJSONString.trim().length() == 0) { + final String errorMessage = "received an enpty response to \"" + request + "\" from URL \"" + + restConsumerProperties.getURL() + "\""; + throw new ApexEventRuntimeException(errorMessage); + } + + // Send the event into Apex + eventReceiver.receiveEvent(request.getExecutionId(), eventJSONString); + + synchronized (eventsReceivedLock) { + eventsReceived++; + } + } catch (final Exception e) { + LOGGER.warn("error receiving events on thread {}", consumerThread.getName(), e); + } finally { + // Remove the request from the map of ongoing requests + ongoingRestRequestMap.remove(request); + } + } + + /** + * Stop the REST request + */ + private void stop() { + restRequestThread.interrupt(); + } + + /** + * Execute the REST request. + * + * @return the response to the REST request + */ + public Response sendEventAsRESTRequest() { + switch (restConsumerProperties.getHttpMethod()) { + case GET: + return client.target(restConsumerProperties.getURL()).request(APPLICATION_JSON).get(); + + case PUT: + return client.target(restConsumerProperties.getURL()).request(APPLICATION_JSON) + .put(Entity.json(request.getEvent())); + + case POST: + return client.target(restConsumerProperties.getURL()).request(APPLICATION_JSON) + .post(Entity.json(request.getEvent())); + + case DELETE: + return client.target(restConsumerProperties.getURL()).request(APPLICATION_JSON).delete(); + } + + return null; + } + } +} diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/main/java/org/onap/policy/apex/plugins/event/carrier/restrequestor/ApexRestRequestorProducer.java b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/main/java/org/onap/policy/apex/plugins/event/carrier/restrequestor/ApexRestRequestorProducer.java new file mode 100644 index 000000000..12f194510 --- /dev/null +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/main/java/org/onap/policy/apex/plugins/event/carrier/restrequestor/ApexRestRequestorProducer.java @@ -0,0 +1,195 @@ +/*- + * ============LICENSE_START======================================================= + * Copyright (C) 2016-2018 Ericsson. 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. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.apex.plugins.event.carrier.restrequestor; + +import java.util.EnumMap; +import java.util.Map; + +import org.onap.policy.apex.service.engine.event.ApexEventConsumer; +import org.onap.policy.apex.service.engine.event.ApexEventException; +import org.onap.policy.apex.service.engine.event.ApexEventProducer; +import org.onap.policy.apex.service.engine.event.ApexEventRuntimeException; +import org.onap.policy.apex.service.engine.event.PeeredReference; +import org.onap.policy.apex.service.engine.event.SynchronousEventCache; +import org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters; +import org.onap.policy.apex.service.parameters.eventhandler.EventHandlerPeeredMode; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * Concrete implementation of an Apex event requestor that manages the producer side of a REST request. + * + * @author Liam Fallon (liam.fallon@ericsson.com) + * + */ +public class ApexRestRequestorProducer implements ApexEventProducer { + private static final Logger LOGGER = LoggerFactory.getLogger(ApexRestRequestorProducer.class); + + // The REST carrier properties + private RESTRequestorCarrierTechnologyParameters restProducerProperties; + + // The name for this producer + private String name = null; + + // The peer references for this event handler + private Map<EventHandlerPeeredMode, PeeredReference> peerReferenceMap = new EnumMap<>(EventHandlerPeeredMode.class); + + // The number of events sent + private int eventsSent = 0; + + /* + * (non-Javadoc) + * + * @see org.onap.policy.apex.service.engine.event.ApexEventProducer#init(java.lang.String, + * org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters) + */ + @Override + public void init(final String producerName, final EventHandlerParameters producerParameters) + throws ApexEventException { + this.name = producerName; + + // Check and get the REST Properties + if (!(producerParameters + .getCarrierTechnologyParameters() instanceof RESTRequestorCarrierTechnologyParameters)) { + final String errorMessage = + "specified consumer properties are not applicable to REST requestor producer (" + this.name + ")"; + LOGGER.warn(errorMessage); + throw new ApexEventException(errorMessage); + } + restProducerProperties = + (RESTRequestorCarrierTechnologyParameters) producerParameters.getCarrierTechnologyParameters(); + + // Check if we are in peered mode + if (!producerParameters.isPeeredMode(EventHandlerPeeredMode.REQUESTOR)) { + final String errorMessage = "REST Requestor producer (" + this.name + + ") must run in peered requestor mode with a REST Requestor consumer"; + LOGGER.warn(errorMessage); + throw new ApexEventException(errorMessage); + } + + // Check if the HTTP URL has been set + if (restProducerProperties.getURL() != null) { + final String errorMessage = "URL may not be specified on REST Requestor producer (" + this.name + ")"; + LOGGER.warn(errorMessage); + throw new ApexEventException(errorMessage); + } + + // Check if the HTTP method has been set + if (restProducerProperties.getHttpMethod() != null) { + final String errorMessage = + "HTTP method may not be specified on REST Requestor producer (" + this.name + ")"; + LOGGER.warn(errorMessage); + throw new ApexEventException(errorMessage); + } + } + + /* + * (non-Javadoc) + * + * @see org.onap.policy.apex.service.engine.event.ApexEventProducer#getName() + */ + @Override + public String getName() { + return name; + } + + /** + * Get the number of events sent to date + * + * @return the number of events received + */ + public int getEventsSent() { + return eventsSent; + } + + /* + * (non-Javadoc) + * + * @see org.onap.policy.apex.service.engine.event.ApexEventProducer#getPeeredReference(org.onap.policy.apex.service. + * parameters.eventhandler.EventHandlerPeeredMode) + */ + @Override + public PeeredReference getPeeredReference(final EventHandlerPeeredMode peeredMode) { + return peerReferenceMap.get(peeredMode); + } + + /* + * (non-Javadoc) + * + * @see org.onap.policy.apex.service.engine.event.ApexEventProducer#setPeeredReference(org.onap.policy.apex.service. + * parameters.eventhandler.EventHandlerPeeredMode, org.onap.policy.apex.service.engine.event.PeeredReference) + */ + @Override + public void setPeeredReference(final EventHandlerPeeredMode peeredMode, final PeeredReference peeredReference) { + peerReferenceMap.put(peeredMode, peeredReference); + } + + /* + * (non-Javadoc) + * + * @see org.onap.policy.apex.service.engine.event.ApexEventProducer#sendEvent(long, java.lang. String, + * java.lang.Object) + */ + @Override + public void sendEvent(final long executionId, final String eventName, final Object event) { + // Check if this is a synchronized event, if so we have received a reply + final SynchronousEventCache synchronousEventCache = + (SynchronousEventCache) peerReferenceMap.get(EventHandlerPeeredMode.SYNCHRONOUS); + if (synchronousEventCache != null) { + synchronousEventCache.removeCachedEventToApexIfExists(executionId); + } + + // Find the peered consumer for this producer + final PeeredReference peeredRequestorReference = peerReferenceMap.get(EventHandlerPeeredMode.REQUESTOR); + if (peeredRequestorReference != null) { + // Find the REST Response Consumer that will handle this request + final ApexEventConsumer consumer = peeredRequestorReference.getPeeredConsumer(); + if (!(consumer instanceof ApexRestRequestorConsumer)) { + final String errorMessage = "send of event to URL \"" + restProducerProperties.getURL() + "\" failed," + + " REST response consumer is not an instance of ApexRestRequestorConsumer\n" + event; + LOGGER.warn(errorMessage); + throw new ApexEventRuntimeException(errorMessage); + } + + // Use the consumer to handle this event + final ApexRestRequestorConsumer restRequstConsumer = (ApexRestRequestorConsumer) consumer; + restRequstConsumer.processRestRequest(new ApexRestRequest(executionId, eventName, event)); + + eventsSent++; + } else { + // No peered consumer defined + final String errorMessage = "send of event to URL \"" + restProducerProperties.getURL() + "\" failed," + + " REST response consumer is not defined\n" + event; + LOGGER.warn(errorMessage); + throw new ApexEventRuntimeException(errorMessage); + } + } + + /* + * (non-Javadoc) + * + * @see org.onap.policy.apex.service.engine.event.ApexEventProducer#stop() + */ + @Override + public void stop() { + // For REST requestor, all the implementation is in the consumer + } +} diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/main/java/org/onap/policy/apex/plugins/event/carrier/restrequestor/RESTRequestorCarrierTechnologyParameters.java b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/main/java/org/onap/policy/apex/plugins/event/carrier/restrequestor/RESTRequestorCarrierTechnologyParameters.java new file mode 100644 index 000000000..eb5870058 --- /dev/null +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/main/java/org/onap/policy/apex/plugins/event/carrier/restrequestor/RESTRequestorCarrierTechnologyParameters.java @@ -0,0 +1,135 @@ +/*- + * ============LICENSE_START======================================================= + * Copyright (C) 2016-2018 Ericsson. 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. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.apex.plugins.event.carrier.restrequestor; + +import org.onap.policy.apex.service.parameters.carriertechnology.CarrierTechnologyParameters; + +/** + * Apex parameters for REST as an event carrier technology with Apex issuing a REST request and receiving a REST + * response. + * + * The parameters for this plugin are: + * <ol> + * <li>url: The URL that the Apex Rest Requestor will connect to over REST for REST request sending. This parameter is + * mandatory. + * <li>httpMethod: The HTTP method to use when making requests over REST, legal values are GET (default), POST, PUT, and + * DELETE. + * <li>restRequestTimeout: The time in milliseconds to wait for a REST request to complete. + * </ol> + * + * @author Liam Fallon (liam.fallon@ericsson.com) + */ +public class RESTRequestorCarrierTechnologyParameters extends CarrierTechnologyParameters { + /** The supported HTTP methods. */ + public enum HTTP_METHOD { + GET, PUT, POST, DELETE + } + + /** The label of this carrier technology. */ + public static final String RESTREQUESTOR_CARRIER_TECHNOLOGY_LABEL = "RESTREQUESTOR"; + + /** The producer plugin class for the REST carrier technology. */ + public static final String RESTREQUSTOR_EVENT_PRODUCER_PLUGIN_CLASS = + ApexRestRequestorProducer.class.getCanonicalName(); + + /** The consumer plugin class for the REST carrier technology. */ + public static final String RESTREQUSTOR_EVENT_CONSUMER_PLUGIN_CLASS = + ApexRestRequestorConsumer.class.getCanonicalName(); + + /** The default HTTP method for request events. */ + public static final HTTP_METHOD DEFAULT_REQUESTOR_HTTP_METHOD = HTTP_METHOD.GET; + + /** The default timeout for REST requests. */ + public static final long DEFAULT_REST_REQUEST_TIMEOUT = 500; + + private String url = null; + private HTTP_METHOD httpMethod = null; + + /** + * Constructor to create a REST carrier technology parameters instance and register the instance with the parameter + * service. + */ + public RESTRequestorCarrierTechnologyParameters() { + super(RESTRequestorCarrierTechnologyParameters.class.getCanonicalName()); + + // Set the carrier technology properties for the web socket carrier technology + this.setLabel(RESTREQUESTOR_CARRIER_TECHNOLOGY_LABEL); + this.setEventProducerPluginClass(RESTREQUSTOR_EVENT_PRODUCER_PLUGIN_CLASS); + this.setEventConsumerPluginClass(RESTREQUSTOR_EVENT_CONSUMER_PLUGIN_CLASS); + } + + /** + * Gets the URL for the REST request. + * + * @return the URL + */ + public String getURL() { + return url; + } + + /** + * Sets the URL for the REST request. + * + * @param incomingURL the URL + */ + public void setURL(final String incomingURL) { + this.url = incomingURL; + } + + /** + * Gets the HTTP method to use for the REST request. + * + * @return the HTTP method + */ + public HTTP_METHOD getHttpMethod() { + return httpMethod; + } + + /** + * Sets the HTTP method to use for the REST request. + * + * @param httpMethod the HTTP method + */ + public void setHttpMethod(final HTTP_METHOD httpMethod) { + this.httpMethod = httpMethod; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + + @Override + public String toString() { + return "RESTRequestorCarrierTechnologyParameters [url=" + url + ", httpMethod=" + httpMethod + "]"; + } + + /* + * (non-Javadoc) + * + * @see org.onap.policy.apex.apps.uservice.parameters.ApexParameterValidator#validate() + */ + @Override + public String validate() { + return ""; + } +} diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/main/java/org/onap/policy/apex/plugins/event/carrier/restrequestor/package-info.java b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/main/java/org/onap/policy/apex/plugins/event/carrier/restrequestor/package-info.java new file mode 100644 index 000000000..904de13c9 --- /dev/null +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/main/java/org/onap/policy/apex/plugins/event/carrier/restrequestor/package-info.java @@ -0,0 +1,28 @@ +/*- + * ============LICENSE_START======================================================= + * Copyright (C) 2016-2018 Ericsson. 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. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + +/** + * APEX REST consumer and producer plugins when APEX sends a REST request and receives a REST response to a REST server. + * + * @author Joss Armstrong (joss.armstrong@ericsson.com) + * + */ + +package org.onap.policy.apex.plugins.event.carrier.restrequestor; diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/java/org/onap/policy/apex/apps/uservice/test/adapt/restrequestor/TestRESTREequestorEndpoint.java b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/java/org/onap/policy/apex/apps/uservice/test/adapt/restrequestor/TestRESTREequestorEndpoint.java new file mode 100644 index 000000000..d9569b1ed --- /dev/null +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/java/org/onap/policy/apex/apps/uservice/test/adapt/restrequestor/TestRESTREequestorEndpoint.java @@ -0,0 +1,153 @@ +/*- + * ============LICENSE_START======================================================= + * Copyright (C) 2016-2018 Ericsson. 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. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.apex.apps.uservice.test.adapt.restrequestor; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + +import com.google.gson.Gson; + +import java.util.Map; + +import javax.ws.rs.DELETE; +import javax.ws.rs.GET; +import javax.ws.rs.POST; +import javax.ws.rs.PUT; +import javax.ws.rs.Path; +import javax.ws.rs.core.Response; + +@Path("/apex") +public class TestRESTREequestorEndpoint { + + private static Object counterLock = new Object(); + private static int postMessagesReceived = 0; + private static int putMessagesReceived = 0; + private static int statMessagesReceived = 0; + private static int getMessagesReceived = 0; + private static int deleteMessagesReceived = 0; + + private static String EVENT_STRING = "{\n" + "\"nameSpace\": \"org.onap.policy.apex.sample.events\",\n" + + "\"name\": \"Event0100\",\n" + "\"version\": \"0.0.1\",\n" + "\"source\": \"REST_" + getMessagesReceived + + "\",\n" + "\"target\": \"apex\",\n" + "\"TestSlogan\": \"Test slogan for External Event0\",\n" + + "\"TestMatchCase\": 2,\n" + "\"TestTimestamp\": " + System.currentTimeMillis() + ",\n" + + "\"TestTemperature\": 9080.866\n" + "}"; + + public static void resetCounters() { + postMessagesReceived = 0; + putMessagesReceived = 0; + statMessagesReceived = 0; + getMessagesReceived = 0; + deleteMessagesReceived = 0; + } + + @Path("/event/Stats") + @GET + public Response serviceGetStats() { + synchronized (counterLock) { + statMessagesReceived++; + } + return Response.status(200) + .entity("{\"GET\": " + getMessagesReceived + ",\"STAT\": " + statMessagesReceived + ",\"POST\": " + + postMessagesReceived + ",\"PUT\": " + putMessagesReceived + ",\"DELETE\": " + + deleteMessagesReceived + "}") + .build(); + } + + @Path("/event/GetEvent") + @GET + public Response serviceGetEvent() { + synchronized (counterLock) { + getMessagesReceived++; + } + + return Response.status(200).entity(EVENT_STRING).build(); + } + + @Path("/event/GetEmptyEvent") + @GET + public Response serviceGetEmptyEvent() { + return Response.status(200).build(); + } + + @Path("/event/GetEventBadResponse") + @GET + public Response serviceGetEventBadResponse() { + return Response.status(400).build(); + } + + @Path("/event/PostEvent") + @POST + public Response servicePostRequest(final String jsonString) { + synchronized (counterLock) { + postMessagesReceived++; + } + + @SuppressWarnings("unchecked") + final Map<String, Object> jsonMap = new Gson().fromJson(jsonString, Map.class); + assertTrue(jsonMap.containsKey("name")); + assertEquals("0.0.1", jsonMap.get("version")); + assertEquals("org.onap.policy.apex.sample.events", jsonMap.get("nameSpace")); + assertEquals("Act", jsonMap.get("source")); + assertEquals("Outside", jsonMap.get("target")); + + return Response.status(200).entity(EVENT_STRING).build(); + } + + @Path("/event/PostEventBadResponse") + @POST + public Response servicePostRequestBadResponse(final String jsonString) { + return Response.status(400).build(); + } + + @Path("/event/PutEvent") + @PUT + public Response servicePutRequest(final String jsonString) { + synchronized (counterLock) { + putMessagesReceived++; + } + + @SuppressWarnings("unchecked") + final Map<String, Object> jsonMap = new Gson().fromJson(jsonString, Map.class); + assertTrue(jsonMap.containsKey("name")); + assertEquals("0.0.1", jsonMap.get("version")); + assertEquals("org.onap.policy.apex.sample.events", jsonMap.get("nameSpace")); + assertEquals("Act", jsonMap.get("source")); + assertEquals("Outside", jsonMap.get("target")); + + return Response.status(200).entity(EVENT_STRING).build(); + } + + @Path("/event/DeleteEvent") + @DELETE + public Response serviceDeleteRequest(final String jsonString) { + synchronized (counterLock) { + deleteMessagesReceived++; + } + + return Response.status(200).entity(EVENT_STRING).build(); + } + + @Path("/event/DeleteEventBadResponse") + @DELETE + public Response serviceDeleteRequestBadResponse(final String jsonString) { + return Response.status(400).build(); + } +} diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/java/org/onap/policy/apex/apps/uservice/test/adapt/restrequestor/TestRESTRequestor.java b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/java/org/onap/policy/apex/apps/uservice/test/adapt/restrequestor/TestRESTRequestor.java new file mode 100644 index 000000000..d4eb434c7 --- /dev/null +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/java/org/onap/policy/apex/apps/uservice/test/adapt/restrequestor/TestRESTRequestor.java @@ -0,0 +1,291 @@ +/*- + * ============LICENSE_START======================================================= + * Copyright (C) 2016-2018 Ericsson. 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. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.apex.apps.uservice.test.adapt.restrequestor; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + +import com.google.gson.Gson; + +import java.io.ByteArrayOutputStream; +import java.io.File; +import java.io.IOException; +import java.io.PrintStream; +import java.net.URI; +import java.util.Map; + +import javax.ws.rs.client.Client; +import javax.ws.rs.client.ClientBuilder; +import javax.ws.rs.core.Response; + +import org.glassfish.grizzly.http.server.HttpServer; +import org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpServerFactory; +import org.glassfish.jersey.server.ResourceConfig; +import org.junit.AfterClass; +import org.junit.Before; +import org.junit.BeforeClass; +import org.junit.Test; +import org.onap.policy.apex.core.infrastructure.messaging.MessagingException; +import org.onap.policy.apex.core.infrastructure.threading.ThreadUtilities; +import org.onap.policy.apex.model.basicmodel.concepts.ApexException; +import org.onap.policy.apex.service.engine.main.ApexMain; + +public class TestRESTRequestor { + private static final String BASE_URI = "http://localhost:32801/TestRESTRequestor"; + private static HttpServer server; + + private ByteArrayOutputStream outContent = new ByteArrayOutputStream(); + private ByteArrayOutputStream errContent = new ByteArrayOutputStream(); + + private final PrintStream stdout = System.out; + private final PrintStream stderr = System.err; + + @BeforeClass + public static void setUp() throws Exception { + final ResourceConfig rc = new ResourceConfig(TestRESTREequestorEndpoint.class); + server = GrizzlyHttpServerFactory.createHttpServer(URI.create(BASE_URI), rc); + + while (!server.isStarted()) { + ThreadUtilities.sleep(50); + } + } + + @AfterClass + public static void tearDown() throws Exception { + server.shutdownNow(); + + new File("src/test/resources/events/EventsOut.json").delete(); + new File("src/test/resources/events/EventsOutMulti0.json").delete(); + new File("src/test/resources/events/EventsOutMulti1.json").delete(); + } + + @Before + public void resetCounters() { + TestRESTREequestorEndpoint.resetCounters(); + } + + @Test + public void testRESTRequestorGet() throws MessagingException, ApexException, IOException { + final Client client = ClientBuilder.newClient(); + + final String[] args = { "src/test/resources/prodcons/File2RESTRequest2FileGet.json" }; + final ApexMain apexMain = new ApexMain(args); + + // Wait for the required amount of events to be received or for 10 seconds + Double getsSoFar = 0.0; + for (int i = 0; i < 40; i++) { + ThreadUtilities.sleep(100); + + final Response response = client.target("http://localhost:32801/TestRESTRequestor/apex/event/Stats") + .request("application/json").get(); + + assertEquals(Response.Status.OK.getStatusCode(), response.getStatus()); + final String responseString = response.readEntity(String.class); + + @SuppressWarnings("unchecked") + final Map<String, Object> jsonMap = new Gson().fromJson(responseString, Map.class); + getsSoFar = Double.valueOf(jsonMap.get("GET").toString()); + + if (getsSoFar >= 50.0) { + break; + } + } + + apexMain.shutdown(); + client.close(); + + assertEquals(Double.valueOf(50.0), getsSoFar); + } + + @Test + public void testRESTRequestorPut() throws MessagingException, ApexException, IOException { + final Client client = ClientBuilder.newClient(); + + final String[] args = { "src/test/resources/prodcons/File2RESTRequest2FilePut.json" }; + final ApexMain apexMain = new ApexMain(args); + + // Wait for the required amount of events to be received or for 10 seconds + Double putsSoFar = 0.0; + for (int i = 0; i < 40; i++) { + ThreadUtilities.sleep(100); + + final Response response = client.target("http://localhost:32801/TestRESTRequestor/apex/event/Stats") + .request("application/json").get(); + + assertEquals(Response.Status.OK.getStatusCode(), response.getStatus()); + final String responseString = response.readEntity(String.class); + + @SuppressWarnings("unchecked") + final Map<String, Object> jsonMap = new Gson().fromJson(responseString, Map.class); + putsSoFar = Double.valueOf(jsonMap.get("PUT").toString()); + + if (putsSoFar >= 50.0) { + break; + } + } + + apexMain.shutdown(); + client.close(); + + assertEquals(Double.valueOf(50.0), putsSoFar); + } + + @Test + public void testRESTRequestorPost() throws MessagingException, ApexException, IOException { + final Client client = ClientBuilder.newClient(); + + final String[] args = { "src/test/resources/prodcons/File2RESTRequest2FilePost.json" }; + final ApexMain apexMain = new ApexMain(args); + + // Wait for the required amount of events to be received or for 10 seconds + Double postsSoFar = 0.0; + for (int i = 0; i < 40; i++) { + ThreadUtilities.sleep(100); + + final Response response = client.target("http://localhost:32801/TestRESTRequestor/apex/event/Stats") + .request("application/json").get(); + + assertEquals(Response.Status.OK.getStatusCode(), response.getStatus()); + final String responseString = response.readEntity(String.class); + + @SuppressWarnings("unchecked") + final Map<String, Object> jsonMap = new Gson().fromJson(responseString, Map.class); + postsSoFar = Double.valueOf(jsonMap.get("POST").toString()); + + if (postsSoFar >= 50.0) { + break; + } + } + + apexMain.shutdown(); + client.close(); + + assertEquals(Double.valueOf(50.0), postsSoFar); + } + + @Test + public void testRESTRequestorDelete() throws MessagingException, ApexException, IOException { + final Client client = ClientBuilder.newClient(); + + final String[] args = { "src/test/resources/prodcons/File2RESTRequest2FileDelete.json" }; + final ApexMain apexMain = new ApexMain(args); + + // Wait for the required amount of events to be received or for 10 seconds + Double deletesSoFar = 0.0; + for (int i = 0; i < 40; i++) { + ThreadUtilities.sleep(100); + + final Response response = client.target("http://localhost:32801/TestRESTRequestor/apex/event/Stats") + .request("application/json").get(); + + assertEquals(Response.Status.OK.getStatusCode(), response.getStatus()); + final String responseString = response.readEntity(String.class); + + @SuppressWarnings("unchecked") + final Map<String, Object> jsonMap = new Gson().fromJson(responseString, Map.class); + deletesSoFar = Double.valueOf(jsonMap.get("DELETE").toString()); + + if (deletesSoFar >= 50.0) { + break; + } + } + + apexMain.shutdown(); + client.close(); + + assertEquals(Double.valueOf(50.0), deletesSoFar); + } + + @Test + public void testRESTRequestorMultiInputs() throws MessagingException, ApexException, IOException { + final Client client = ClientBuilder.newClient(); + + final String[] args = { "src/test/resources/prodcons/File2RESTRequest2FileGetMulti.json" }; + final ApexMain apexMain = new ApexMain(args); + + // Wait for the required amount of events to be received or for 10 seconds + Double getsSoFar = 0.0; + for (int i = 0; i < 40; i++) { + ThreadUtilities.sleep(100); + + final Response response = client.target("http://localhost:32801/TestRESTRequestor/apex/event/Stats") + .request("application/json").get(); + + assertEquals(Response.Status.OK.getStatusCode(), response.getStatus()); + final String responseString = response.readEntity(String.class); + + @SuppressWarnings("unchecked") + final Map<String, Object> jsonMap = new Gson().fromJson(responseString, Map.class); + getsSoFar = Double.valueOf(jsonMap.get("GET").toString()); + + if (getsSoFar >= 8.0) { + break; + } + } + + apexMain.shutdown(); + client.close(); + + assertEquals(Double.valueOf(8.0), getsSoFar); + + ThreadUtilities.sleep(1000); + } + + @Test + public void testRESTRequestorProducerAlone() throws MessagingException, ApexException, IOException { + System.setOut(new PrintStream(outContent)); + System.setErr(new PrintStream(errContent)); + + final String[] args = { "src/test/resources/prodcons/File2RESTRequest2FileGetProducerAlone.json" }; + + final ApexMain apexMain = new ApexMain(args); + ThreadUtilities.sleep(200); + apexMain.shutdown(); + + final String outString = outContent.toString(); + + System.setOut(stdout); + System.setErr(stderr); + + assertTrue(outString.contains( + "REST Requestor producer (RestRequestorProducer) must run in peered requestor mode with a REST Requestor consumer")); + } + + @Test + public void testRESTRequestorConsumerAlone() throws MessagingException, ApexException, IOException { + System.setOut(new PrintStream(outContent)); + System.setErr(new PrintStream(errContent)); + + final String[] args = { "src/test/resources/prodcons/File2RESTRequest2FileGetConsumerAlone.json" }; + + final ApexMain apexMain = new ApexMain(args); + ThreadUtilities.sleep(200); + apexMain.shutdown(); + + final String outString = outContent.toString(); + + System.setOut(stdout); + System.setErr(stderr); + + assertTrue(outString.contains( + "event input for peered mode \"REQUESTOR\": peer \"RestRequestorProducer\" for event handler \"RestRequestorConsumer\" does not exist or is not defined as being synchronous")); + } +} diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/events/EventsIn.json b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/events/EventsIn.json new file mode 100644 index 000000000..037c5ca43 --- /dev/null +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/events/EventsIn.json @@ -0,0 +1,550 @@ +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/events/EventsInMulti.json b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/events/EventsInMulti.json new file mode 100644 index 000000000..49325ddea --- /dev/null +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/events/EventsInMulti.json @@ -0,0 +1,22 @@ +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +} +{ + "nameSpace": "org.onap.policy.apex.sample.events", + "name": "Event0000", + "version": "0.0.1", + "source": "test", + "target": "apex", + "TestSlogan": "Test slogan for External Event0", + "TestMatchCase": 3, + "TestTimestamp": 1469781869271, + "TestTemperature": 8723.999 +}
\ No newline at end of file diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/policymodels/SamplePolicyModelMVEL.json b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/policymodels/SamplePolicyModelMVEL.json new file mode 100644 index 000000000..c87b265d9 --- /dev/null +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/policymodels/SamplePolicyModelMVEL.json @@ -0,0 +1,6348 @@ +{ + "apexPolicyModel" : { + "key" : { + "name" : "SamplePolicyModelMVEL", + "version" : "0.0.1" + }, + "keyInformation" : { + "key" : { + "name" : "KeyInformation", + "version" : "0.0.1" + }, + "keyInfoMap" : { + "entry" : [ { + "key" : { + "name" : "Context", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Context", + "version" : "0.0.1" + }, + "UUID" : "2708db15-3117-4ef5-ae06-44ad4bc72756", + "description" : "Generated description for concept referred to by key \"Context:0.0.1\"" + } + }, { + "key" : { + "name" : "Event0000", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0000", + "version" : "0.0.1" + }, + "UUID" : "20f7f2d0-36e1-4134-93d9-8978e0ebb916", + "description" : "Generated description for concept referred to by key \"Event0000:0.0.1\"" + } + }, { + "key" : { + "name" : "Event0001", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0001", + "version" : "0.0.1" + }, + "UUID" : "bfa262fc-f59d-4b05-af44-a5b5c218b314", + "description" : "Generated description for concept referred to by key \"Event0001:0.0.1\"" + } + }, { + "key" : { + "name" : "Event0002", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0002", + "version" : "0.0.1" + }, + "UUID" : "84eeac88-5031-4487-b67a-5a3ae13c1a89", + "description" : "Generated description for concept referred to by key \"Event0002:0.0.1\"" + } + }, { + "key" : { + "name" : "Event0003", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0003", + "version" : "0.0.1" + }, + "UUID" : "7a46a411-1715-48d8-9e70-9b5d14bbbed4", + "description" : "Generated description for concept referred to by key \"Event0003:0.0.1\"" + } + }, { + "key" : { + "name" : "Event0004", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0004", + "version" : "0.0.1" + }, + "UUID" : "da0ba1b4-f654-4e99-97b5-595de84cb3dc", + "description" : "Generated description for concept referred to by key \"Event0004:0.0.1\"" + } + }, { + "key" : { + "name" : "Event0100", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0100", + "version" : "0.0.1" + }, + "UUID" : "1267b311-60e2-48a7-8d0e-23c4ea21d863", + "description" : "Generated description for concept referred to by key \"Event0100:0.0.1\"" + } + }, { + "key" : { + "name" : "Event0101", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0101", + "version" : "0.0.1" + }, + "UUID" : "84013070-ff2e-4295-acbd-4128f0509040", + "description" : "Generated description for concept referred to by key \"Event0101:0.0.1\"" + } + }, { + "key" : { + "name" : "Event0102", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0102", + "version" : "0.0.1" + }, + "UUID" : "6fb7761e-b86f-47fc-8e19-6a116600764e", + "description" : "Generated description for concept referred to by key \"Event0102:0.0.1\"" + } + }, { + "key" : { + "name" : "Event0103", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0103", + "version" : "0.0.1" + }, + "UUID" : "141cc707-009c-4e3b-a0f8-c346f074f590", + "description" : "Generated description for concept referred to by key \"Event0103:0.0.1\"" + } + }, { + "key" : { + "name" : "Event0104", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0104", + "version" : "0.0.1" + }, + "UUID" : "98f4d09f-ff73-4385-8876-df6d04b552cc", + "description" : "Generated description for concept referred to by key \"Event0104:0.0.1\"" + } + }, { + "key" : { + "name" : "Events", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Events", + "version" : "0.0.1" + }, + "UUID" : "889f6414-bc4d-4f29-b7af-175e63d23ac5", + "description" : "Generated description for concept referred to by key \"Events:0.0.1\"" + } + }, { + "key" : { + "name" : "ExternalContextAlbum", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "ExternalContextAlbum", + "version" : "0.0.1" + }, + "UUID" : "64e4911c-5aed-467f-be19-277fb6170857", + "description" : "Generated description for concept referred to by key \"ExternalContextAlbum:0.0.1\"" + } + }, { + "key" : { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, + "UUID" : "cb6a1892-8c3c-44df-b8a7-0e5a333ff9eb", + "description" : "Generated description for concept referred to by key \"GlobalContextAlbum:0.0.1\"" + } + }, { + "key" : { + "name" : "KeyInformation", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "KeyInformation", + "version" : "0.0.1" + }, + "UUID" : "f3126983-e26c-491f-8738-c57784ca4026", + "description" : "Generated description for concept referred to by key \"KeyInformation:0.0.1\"" + } + }, { + "key" : { + "name" : "Policies", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Policies", + "version" : "0.0.1" + }, + "UUID" : "b20a18d5-c419-4e90-8519-9c8f8b3ce2ab", + "description" : "Generated description for concept referred to by key \"Policies:0.0.1\"" + } + }, { + "key" : { + "name" : "Policy0", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Policy0", + "version" : "0.0.1" + }, + "UUID" : "28943e99-871b-482b-953f-cfa7138da02c", + "description" : "Generated description for concept referred to by key \"Policy0:0.0.1\"" + } + }, { + "key" : { + "name" : "Policy0ContextAlbum", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Policy0ContextAlbum", + "version" : "0.0.1" + }, + "UUID" : "2b1b738b-70f6-4b45-9d3c-a7e889b49993", + "description" : "Generated description for concept referred to by key \"Policy0ContextAlbum:0.0.1\"" + } + }, { + "key" : { + "name" : "Policy1", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Policy1", + "version" : "0.0.1" + }, + "UUID" : "798ee6ea-f349-41bb-a281-7e4c22184e8c", + "description" : "Generated description for concept referred to by key \"Policy1:0.0.1\"" + } + }, { + "key" : { + "name" : "Policy1ContextAlbum", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Policy1ContextAlbum", + "version" : "0.0.1" + }, + "UUID" : "eb9568d5-d95f-4713-9622-d95ef4cf81c3", + "description" : "Generated description for concept referred to by key \"Policy1ContextAlbum:0.0.1\"" + } + }, { + "key" : { + "name" : "SamplePolicyModelMVEL", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "SamplePolicyModelMVEL", + "version" : "0.0.1" + }, + "UUID" : "10979d21-947f-4920-83ae-63b827e8e80f", + "description" : "Generated description for concept referred to by key \"SamplePolicyModelMVEL:0.0.1\"" + } + }, { + "key" : { + "name" : "Task_Act0", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Act0", + "version" : "0.0.1" + }, + "UUID" : "cb65d7fe-8d86-463c-aa16-0f4e6138d705", + "description" : "Generated description for concept referred to by key \"Task_Act0:0.0.1\"" + } + }, { + "key" : { + "name" : "Task_Act1", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Act1", + "version" : "0.0.1" + }, + "UUID" : "ea2b4e7a-1a79-440c-9cf0-6fddaad64c0c", + "description" : "Generated description for concept referred to by key \"Task_Act1:0.0.1\"" + } + }, { + "key" : { + "name" : "Task_Act2", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Act2", + "version" : "0.0.1" + }, + "UUID" : "269e1d08-9ab4-48b8-8854-b65deb9d41b1", + "description" : "Generated description for concept referred to by key \"Task_Act2:0.0.1\"" + } + }, { + "key" : { + "name" : "Task_Act3", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Act3", + "version" : "0.0.1" + }, + "UUID" : "f9c4a91d-92aa-49ce-9b65-ab2378f6b048", + "description" : "Generated description for concept referred to by key \"Task_Act3:0.0.1\"" + } + }, { + "key" : { + "name" : "Task_Decide0", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Decide0", + "version" : "0.0.1" + }, + "UUID" : "7fde2446-ce2a-4bc2-a675-96496c387c88", + "description" : "Generated description for concept referred to by key \"Task_Decide0:0.0.1\"" + } + }, { + "key" : { + "name" : "Task_Decide1", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Decide1", + "version" : "0.0.1" + }, + "UUID" : "bc185db6-f18f-4fdd-b5b4-37d14b57f463", + "description" : "Generated description for concept referred to by key \"Task_Decide1:0.0.1\"" + } + }, { + "key" : { + "name" : "Task_Decide2", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Decide2", + "version" : "0.0.1" + }, + "UUID" : "2c1e2ede-d67c-4845-90ac-a4d53311bfbb", + "description" : "Generated description for concept referred to by key \"Task_Decide2:0.0.1\"" + } + }, { + "key" : { + "name" : "Task_Decide3", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Decide3", + "version" : "0.0.1" + }, + "UUID" : "1d1645a2-2852-4296-9f22-8f31ebe5386a", + "description" : "Generated description for concept referred to by key \"Task_Decide3:0.0.1\"" + } + }, { + "key" : { + "name" : "Task_Establish0", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Establish0", + "version" : "0.0.1" + }, + "UUID" : "f3739d83-a029-4ad8-a0b9-e5a028b369b2", + "description" : "Generated description for concept referred to by key \"Task_Establish0:0.0.1\"" + } + }, { + "key" : { + "name" : "Task_Establish1", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Establish1", + "version" : "0.0.1" + }, + "UUID" : "5351a5a5-4134-44fd-9a6f-fd37dbfc8aa7", + "description" : "Generated description for concept referred to by key \"Task_Establish1:0.0.1\"" + } + }, { + "key" : { + "name" : "Task_Establish2", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Establish2", + "version" : "0.0.1" + }, + "UUID" : "4206bb68-e710-4a01-aade-3e34771da63b", + "description" : "Generated description for concept referred to by key \"Task_Establish2:0.0.1\"" + } + }, { + "key" : { + "name" : "Task_Establish3", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Establish3", + "version" : "0.0.1" + }, + "UUID" : "cbaab234-b586-4f63-986e-ed0b317b6c66", + "description" : "Generated description for concept referred to by key \"Task_Establish3:0.0.1\"" + } + }, { + "key" : { + "name" : "Task_Match0", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Match0", + "version" : "0.0.1" + }, + "UUID" : "24dbc71b-8773-4393-9c36-a5f4991e0f55", + "description" : "Generated description for concept referred to by key \"Task_Match0:0.0.1\"" + } + }, { + "key" : { + "name" : "Task_Match1", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Match1", + "version" : "0.0.1" + }, + "UUID" : "42ecd25d-e8cb-48e4-890a-b0616528cf10", + "description" : "Generated description for concept referred to by key \"Task_Match1:0.0.1\"" + } + }, { + "key" : { + "name" : "Task_Match2", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Match2", + "version" : "0.0.1" + }, + "UUID" : "7e691294-a816-42f8-b124-9b5eac70b116", + "description" : "Generated description for concept referred to by key \"Task_Match2:0.0.1\"" + } + }, { + "key" : { + "name" : "Task_Match3", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Match3", + "version" : "0.0.1" + }, + "UUID" : "bc7cad3c-85a5-40b4-9eda-51ac2387af05", + "description" : "Generated description for concept referred to by key \"Task_Match3:0.0.1\"" + } + }, { + "key" : { + "name" : "Tasks", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Tasks", + "version" : "0.0.1" + }, + "UUID" : "4386403d-b23c-4c3e-bc14-5d581f9de2f5", + "description" : "Generated description for concept referred to by key \"Tasks:0.0.1\"" + } + }, { + "key" : { + "name" : "TestCase", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestCase", + "version" : "0.0.1" + }, + "UUID" : "901a80ab-dd46-4697-b818-f669b9f9bce9", + "description" : "Generated description for concept referred to by key \"TestCase:0.0.1\"" + } + }, { + "key" : { + "name" : "TestContextItem000", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem000", + "version" : "0.0.1" + }, + "UUID" : "cfd19e5d-ab54-4e54-b4e5-1c5eaa832622", + "description" : "Generated description for concept referred to by key \"TestContextItem000:0.0.1\"" + } + }, { + "key" : { + "name" : "TestContextItem001", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem001", + "version" : "0.0.1" + }, + "UUID" : "42c27d27-878d-4e9d-a139-e60c98f1c747", + "description" : "Generated description for concept referred to by key \"TestContextItem001:0.0.1\"" + } + }, { + "key" : { + "name" : "TestContextItem002", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem002", + "version" : "0.0.1" + }, + "UUID" : "83919fa0-ed4d-4981-908f-79913734a0f5", + "description" : "Generated description for concept referred to by key \"TestContextItem002:0.0.1\"" + } + }, { + "key" : { + "name" : "TestContextItem003", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem003", + "version" : "0.0.1" + }, + "UUID" : "194882b0-d987-4200-b82a-2c015605279b", + "description" : "Generated description for concept referred to by key \"TestContextItem003:0.0.1\"" + } + }, { + "key" : { + "name" : "TestContextItem004", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem004", + "version" : "0.0.1" + }, + "UUID" : "948d345b-39c3-4436-8036-ac9e5c561977", + "description" : "Generated description for concept referred to by key \"TestContextItem004:0.0.1\"" + } + }, { + "key" : { + "name" : "TestContextItem005", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem005", + "version" : "0.0.1" + }, + "UUID" : "fdad8cb5-4375-4bbf-9ffc-1e5ed8f4bae6", + "description" : "Generated description for concept referred to by key \"TestContextItem005:0.0.1\"" + } + }, { + "key" : { + "name" : "TestContextItem006", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem006", + "version" : "0.0.1" + }, + "UUID" : "5243c0ba-5c50-4835-a885-6cd988252bb7", + "description" : "Generated description for concept referred to by key \"TestContextItem006:0.0.1\"" + } + }, { + "key" : { + "name" : "TestContextItem007", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem007", + "version" : "0.0.1" + }, + "UUID" : "29f0b15f-f7c3-46e5-98d7-59a34a677968", + "description" : "Generated description for concept referred to by key \"TestContextItem007:0.0.1\"" + } + }, { + "key" : { + "name" : "TestContextItem008", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem008", + "version" : "0.0.1" + }, + "UUID" : "aac96de5-9f3c-452c-855f-e556cc807351", + "description" : "Generated description for concept referred to by key \"TestContextItem008:0.0.1\"" + } + }, { + "key" : { + "name" : "TestContextItem009", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem009", + "version" : "0.0.1" + }, + "UUID" : "7fdc1cc3-08c7-42a4-92a9-39e172fe2f1f", + "description" : "Generated description for concept referred to by key \"TestContextItem009:0.0.1\"" + } + }, { + "key" : { + "name" : "TestContextItem00A", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem00A", + "version" : "0.0.1" + }, + "UUID" : "cf60cca6-a2e8-4371-b0e5-85ecaae44acc", + "description" : "Generated description for concept referred to by key \"TestContextItem00A:0.0.1\"" + } + }, { + "key" : { + "name" : "TestContextItem00B", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem00B", + "version" : "0.0.1" + }, + "UUID" : "1671f996-e14e-407d-a503-f4de09f0785b", + "description" : "Generated description for concept referred to by key \"TestContextItem00B:0.0.1\"" + } + }, { + "key" : { + "name" : "TestContextItem00C", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem00C", + "version" : "0.0.1" + }, + "UUID" : "814c4c28-9027-4516-9598-adc75fafa92a", + "description" : "Generated description for concept referred to by key \"TestContextItem00C:0.0.1\"" + } + }, { + "key" : { + "name" : "TestDatatypes", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestDatatypes", + "version" : "0.0.1" + }, + "UUID" : "33e81d08-a62b-40ce-b7ff-50734427ebf9", + "description" : "Generated description for concept referred to by key \"TestDatatypes:0.0.1\"" + } + }, { + "key" : { + "name" : "TestExternalContextItem", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestExternalContextItem", + "version" : "0.0.1" + }, + "UUID" : "5cd74351-8e27-4dee-a379-86124db50383", + "description" : "Generated description for concept referred to by key \"TestExternalContextItem:0.0.1\"" + } + }, { + "key" : { + "name" : "TestGlobalContextItem", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestGlobalContextItem", + "version" : "0.0.1" + }, + "UUID" : "e8c9a056-5e95-4e14-bc96-0c0d13a34b18", + "description" : "Generated description for concept referred to by key \"TestGlobalContextItem:0.0.1\"" + } + }, { + "key" : { + "name" : "TestPolicyContextItem", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestPolicyContextItem", + "version" : "0.0.1" + }, + "UUID" : "92489659-02f3-4cb2-b25f-a6234ad71d36", + "description" : "Generated description for concept referred to by key \"TestPolicyContextItem:0.0.1\"" + } + }, { + "key" : { + "name" : "TestSlogan", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestSlogan", + "version" : "0.0.1" + }, + "UUID" : "1c3b9345-32c2-4f7e-94ce-be36d0775e9e", + "description" : "Generated description for concept referred to by key \"TestSlogan:0.0.1\"" + } + }, { + "key" : { + "name" : "TestTemperature", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestTemperature", + "version" : "0.0.1" + }, + "UUID" : "9e719a99-1d73-4d40-b097-c9622b9ea2b4", + "description" : "Generated description for concept referred to by key \"TestTemperature:0.0.1\"" + } + }, { + "key" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + }, + "UUID" : "3bcc8ef1-4cc5-4b7f-9dc4-83046d4a2a5d", + "description" : "Generated description for concept referred to by key \"TestTimestamp:0.0.1\"" + } + } ] + } + }, + "policies" : { + "key" : { + "name" : "Policies", + "version" : "0.0.1" + }, + "policyMap" : { + "entry" : [ { + "key" : { + "name" : "Policy0", + "version" : "0.0.1" + }, + "value" : { + "policyKey" : { + "name" : "Policy0", + "version" : "0.0.1" + }, + "template" : "MEDA", + "state" : { + "entry" : [ { + "key" : "Act", + "value" : { + "stateKey" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Act" + }, + "trigger" : { + "name" : "Event0003", + "version" : "0.0.1" + }, + "stateOutputs" : { + "entry" : [ { + "key" : "Act_NULL", + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Act", + "localName" : "Act_NULL" + }, + "outgoingEvent" : { + "name" : "Event0004", + "version" : "0.0.1" + }, + "nextState" : { + "parentKeyName" : "NULL", + "parentKeyVersion" : "0.0.0", + "parentLocalName" : "NULL", + "localName" : "NULL" + } + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + } ], + "taskSelectionLogic" : { + "key" : "TaskSelectionLigic", + "logicFlavour" : "MVEL", + "logic" : "logger.debug(subject.id + \":\" + subject.stateName);\nsubject.defaultTaskKey.copyTo(selectedTask);\nreturn true;" + }, + "stateFinalizerLogicMap" : { + "entry" : [ ] + }, + "defaultTask" : { + "name" : "Task_Act1", + "version" : "0.0.1" + }, + "taskReferences" : { + "entry" : [ { + "key" : { + "name" : "Task_Act0", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Act", + "localName" : "Task_Act0_DIRECT_Act_NULL" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Act", + "localName" : "Act_NULL" + } + } + }, { + "key" : { + "name" : "Task_Act1", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Act", + "localName" : "Task_Act1_DIRECT_Act_NULL" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Act", + "localName" : "Act_NULL" + } + } + }, { + "key" : { + "name" : "Task_Act2", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Act", + "localName" : "Task_Act2_DIRECT_Act_NULL" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Act", + "localName" : "Act_NULL" + } + } + }, { + "key" : { + "name" : "Task_Act3", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Act", + "localName" : "Task_Act3_DIRECT_Act_NULL" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Act", + "localName" : "Act_NULL" + } + } + } ] + } + } + }, { + "key" : "Decide", + "value" : { + "stateKey" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Decide" + }, + "trigger" : { + "name" : "Event0002", + "version" : "0.0.1" + }, + "stateOutputs" : { + "entry" : [ { + "key" : "Decide_Act", + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Decide", + "localName" : "Decide_Act" + }, + "outgoingEvent" : { + "name" : "Event0003", + "version" : "0.0.1" + }, + "nextState" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Act" + } + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "ExternalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy0ContextAlbum", + "version" : "0.0.1" + } ], + "taskSelectionLogic" : { + "key" : "TaskSelectionLigic", + "logicFlavour" : "MVEL", + "logic" : "logger.debug(subject.id + \":\" + subject.stateName);\nsubject.defaultTaskKey.copyTo(selectedTask);\nreturn true;" + }, + "stateFinalizerLogicMap" : { + "entry" : [ ] + }, + "defaultTask" : { + "name" : "Task_Decide3", + "version" : "0.0.1" + }, + "taskReferences" : { + "entry" : [ { + "key" : { + "name" : "Task_Decide0", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Decide", + "localName" : "Task_Decide0_DIRECT_Decide_Act" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Decide", + "localName" : "Decide_Act" + } + } + }, { + "key" : { + "name" : "Task_Decide1", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Decide", + "localName" : "Task_Decide1_DIRECT_Decide_Act" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Decide", + "localName" : "Decide_Act" + } + } + }, { + "key" : { + "name" : "Task_Decide2", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Decide", + "localName" : "Task_Decide2_DIRECT_Decide_Act" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Decide", + "localName" : "Decide_Act" + } + } + }, { + "key" : { + "name" : "Task_Decide3", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Decide", + "localName" : "Task_Decide3_DIRECT_Decide_Act" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Decide", + "localName" : "Decide_Act" + } + } + } ] + } + } + }, { + "key" : "Establish", + "value" : { + "stateKey" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Establish" + }, + "trigger" : { + "name" : "Event0001", + "version" : "0.0.1" + }, + "stateOutputs" : { + "entry" : [ { + "key" : "Establish_Decide", + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Establish", + "localName" : "Establish_Decide" + }, + "outgoingEvent" : { + "name" : "Event0002", + "version" : "0.0.1" + }, + "nextState" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Decide" + } + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "ExternalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy1ContextAlbum", + "version" : "0.0.1" + } ], + "taskSelectionLogic" : { + "key" : "TaskSelectionLigic", + "logicFlavour" : "MVEL", + "logic" : "logger.debug(subject.id + \":\" + subject.stateName);\nsubject.defaultTaskKey.copyTo(selectedTask);\nreturn true;" + }, + "stateFinalizerLogicMap" : { + "entry" : [ ] + }, + "defaultTask" : { + "name" : "Task_Establish2", + "version" : "0.0.1" + }, + "taskReferences" : { + "entry" : [ { + "key" : { + "name" : "Task_Establish0", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Establish", + "localName" : "Task_Establish0_DIRECT_Establish_Decide" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Establish", + "localName" : "Establish_Decide" + } + } + }, { + "key" : { + "name" : "Task_Establish1", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Establish", + "localName" : "Task_Establish1_DIRECT_Establish_Decide" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Establish", + "localName" : "Establish_Decide" + } + } + }, { + "key" : { + "name" : "Task_Establish2", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Establish", + "localName" : "Task_Establish2_DIRECT_Establish_Decide" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Establish", + "localName" : "Establish_Decide" + } + } + }, { + "key" : { + "name" : "Task_Establish3", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Establish", + "localName" : "Task_Establish3_DIRECT_Establish_Decide" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Establish", + "localName" : "Establish_Decide" + } + } + } ] + } + } + }, { + "key" : "Match", + "value" : { + "stateKey" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Match" + }, + "trigger" : { + "name" : "Event0000", + "version" : "0.0.1" + }, + "stateOutputs" : { + "entry" : [ { + "key" : "Match_Establish", + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Match", + "localName" : "Match_Establish" + }, + "outgoingEvent" : { + "name" : "Event0001", + "version" : "0.0.1" + }, + "nextState" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Establish" + } + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy0ContextAlbum", + "version" : "0.0.1" + } ], + "taskSelectionLogic" : { + "key" : "TaskSelectionLigic", + "logicFlavour" : "MVEL", + "logic" : "logger.debug(subject.id + \":\" + subject.stateName);\nsubject.defaultTaskKey.copyTo(selectedTask);\nreturn true;" + }, + "stateFinalizerLogicMap" : { + "entry" : [ ] + }, + "defaultTask" : { + "name" : "Task_Match0", + "version" : "0.0.1" + }, + "taskReferences" : { + "entry" : [ { + "key" : { + "name" : "Task_Match0", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Match", + "localName" : "Task_Match0_DIRECT_Match_Establish" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Match", + "localName" : "Match_Establish" + } + } + }, { + "key" : { + "name" : "Task_Match1", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Match", + "localName" : "Task_Match1_DIRECT_Match_Establish" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Match", + "localName" : "Match_Establish" + } + } + }, { + "key" : { + "name" : "Task_Match2", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Match", + "localName" : "Task_Match2_DIRECT_Match_Establish" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Match", + "localName" : "Match_Establish" + } + } + }, { + "key" : { + "name" : "Task_Match3", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Match", + "localName" : "Task_Match3_DIRECT_Match_Establish" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Match", + "localName" : "Match_Establish" + } + } + } ] + } + } + } ] + }, + "firstState" : "Match" + } + }, { + "key" : { + "name" : "Policy1", + "version" : "0.0.1" + }, + "value" : { + "policyKey" : { + "name" : "Policy1", + "version" : "0.0.1" + }, + "template" : "MEDA", + "state" : { + "entry" : [ { + "key" : "Act", + "value" : { + "stateKey" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Act" + }, + "trigger" : { + "name" : "Event0103", + "version" : "0.0.1" + }, + "stateOutputs" : { + "entry" : [ { + "key" : "Act_NULL", + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Act", + "localName" : "Act_NULL" + }, + "outgoingEvent" : { + "name" : "Event0104", + "version" : "0.0.1" + }, + "nextState" : { + "parentKeyName" : "NULL", + "parentKeyVersion" : "0.0.0", + "parentLocalName" : "NULL", + "localName" : "NULL" + } + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + } ], + "taskSelectionLogic" : { + "key" : "TaskSelectionLigic", + "logicFlavour" : "MVEL", + "logic" : "logger.debug(subject.id + \":\" + subject.stateName);\nsubject.defaultTaskKey.copyTo(selectedTask);\nreturn true;" + }, + "stateFinalizerLogicMap" : { + "entry" : [ ] + }, + "defaultTask" : { + "name" : "Task_Act0", + "version" : "0.0.1" + }, + "taskReferences" : { + "entry" : [ { + "key" : { + "name" : "Task_Act0", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Act", + "localName" : "Task_Act0_DIRECT_Act_NULL" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Act", + "localName" : "Act_NULL" + } + } + }, { + "key" : { + "name" : "Task_Act1", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Act", + "localName" : "Task_Act1_DIRECT_Act_NULL" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Act", + "localName" : "Act_NULL" + } + } + }, { + "key" : { + "name" : "Task_Act2", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Act", + "localName" : "Task_Act2_DIRECT_Act_NULL" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Act", + "localName" : "Act_NULL" + } + } + }, { + "key" : { + "name" : "Task_Act3", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Act", + "localName" : "Task_Act3_DIRECT_Act_NULL" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Act", + "localName" : "Act_NULL" + } + } + } ] + } + } + }, { + "key" : "Decide", + "value" : { + "stateKey" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Decide" + }, + "trigger" : { + "name" : "Event0102", + "version" : "0.0.1" + }, + "stateOutputs" : { + "entry" : [ { + "key" : "Decide_Act", + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Decide", + "localName" : "Decide_Act" + }, + "outgoingEvent" : { + "name" : "Event0103", + "version" : "0.0.1" + }, + "nextState" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Act" + } + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "ExternalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy1ContextAlbum", + "version" : "0.0.1" + } ], + "taskSelectionLogic" : { + "key" : "TaskSelectionLigic", + "logicFlavour" : "MVEL", + "logic" : "logger.debug(subject.id + \":\" + subject.stateName);\nsubject.defaultTaskKey.copyTo(selectedTask);\nreturn true;" + }, + "stateFinalizerLogicMap" : { + "entry" : [ ] + }, + "defaultTask" : { + "name" : "Task_Decide3", + "version" : "0.0.1" + }, + "taskReferences" : { + "entry" : [ { + "key" : { + "name" : "Task_Decide0", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Decide", + "localName" : "Task_Decide0_DIRECT_Decide_Act" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Decide", + "localName" : "Decide_Act" + } + } + }, { + "key" : { + "name" : "Task_Decide1", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Decide", + "localName" : "Task_Decide1_DIRECT_Decide_Act" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Decide", + "localName" : "Decide_Act" + } + } + }, { + "key" : { + "name" : "Task_Decide2", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Decide", + "localName" : "Task_Decide2_DIRECT_Decide_Act" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Decide", + "localName" : "Decide_Act" + } + } + }, { + "key" : { + "name" : "Task_Decide3", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Decide", + "localName" : "Task_Decide3_DIRECT_Decide_Act" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Decide", + "localName" : "Decide_Act" + } + } + } ] + } + } + }, { + "key" : "Establish", + "value" : { + "stateKey" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Establish" + }, + "trigger" : { + "name" : "Event0101", + "version" : "0.0.1" + }, + "stateOutputs" : { + "entry" : [ { + "key" : "Establish_Decide", + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Establish", + "localName" : "Establish_Decide" + }, + "outgoingEvent" : { + "name" : "Event0102", + "version" : "0.0.1" + }, + "nextState" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Decide" + } + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "ExternalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy1ContextAlbum", + "version" : "0.0.1" + } ], + "taskSelectionLogic" : { + "key" : "TaskSelectionLigic", + "logicFlavour" : "MVEL", + "logic" : "logger.debug(subject.id + \":\" + subject.stateName);\nsubject.defaultTaskKey.copyTo(selectedTask);\nreturn true;" + }, + "stateFinalizerLogicMap" : { + "entry" : [ ] + }, + "defaultTask" : { + "name" : "Task_Establish1", + "version" : "0.0.1" + }, + "taskReferences" : { + "entry" : [ { + "key" : { + "name" : "Task_Establish0", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Establish", + "localName" : "Task_Establish0_DIRECT_Establish_Decide" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Establish", + "localName" : "Establish_Decide" + } + } + }, { + "key" : { + "name" : "Task_Establish1", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Establish", + "localName" : "Task_Establish1_DIRECT_Establish_Decide" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Establish", + "localName" : "Establish_Decide" + } + } + }, { + "key" : { + "name" : "Task_Establish2", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Establish", + "localName" : "Task_Establish2_DIRECT_Establish_Decide" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Establish", + "localName" : "Establish_Decide" + } + } + }, { + "key" : { + "name" : "Task_Establish3", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Establish", + "localName" : "Task_Establish3_DIRECT_Establish_Decide" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Establish", + "localName" : "Establish_Decide" + } + } + } ] + } + } + }, { + "key" : "Match", + "value" : { + "stateKey" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Match" + }, + "trigger" : { + "name" : "Event0100", + "version" : "0.0.1" + }, + "stateOutputs" : { + "entry" : [ { + "key" : "Match_Establish", + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Match", + "localName" : "Match_Establish" + }, + "outgoingEvent" : { + "name" : "Event0101", + "version" : "0.0.1" + }, + "nextState" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Establish" + } + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "ExternalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy1ContextAlbum", + "version" : "0.0.1" + } ], + "taskSelectionLogic" : { + "key" : "TaskSelectionLigic", + "logicFlavour" : "MVEL", + "logic" : "logger.debug(subject.id + \":\" + subject.stateName);\nsubject.defaultTaskKey.copyTo(selectedTask);\nreturn true;" + }, + "stateFinalizerLogicMap" : { + "entry" : [ ] + }, + "defaultTask" : { + "name" : "Task_Match3", + "version" : "0.0.1" + }, + "taskReferences" : { + "entry" : [ { + "key" : { + "name" : "Task_Match0", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Match", + "localName" : "Task_Match0_DIRECT_Match_Establish" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Match", + "localName" : "Match_Establish" + } + } + }, { + "key" : { + "name" : "Task_Match1", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Match", + "localName" : "Task_Match1_DIRECT_Match_Establish" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Match", + "localName" : "Match_Establish" + } + } + }, { + "key" : { + "name" : "Task_Match2", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Match", + "localName" : "Task_Match2_DIRECT_Match_Establish" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Match", + "localName" : "Match_Establish" + } + } + }, { + "key" : { + "name" : "Task_Match3", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Match", + "localName" : "Task_Match3_DIRECT_Match_Establish" + }, + "outputType" : "DIRECT", + "output" : { + "parentKeyName" : "Policy1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "Match", + "localName" : "Match_Establish" + } + } + } ] + } + } + } ] + }, + "firstState" : "Match" + } + } ] + } + }, + "tasks" : { + "key" : { + "name" : "Tasks", + "version" : "0.0.1" + }, + "taskMap" : { + "entry" : [ { + "key" : { + "name" : "Task_Act0", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Act0", + "version" : "0.0.1" + }, + "inputFields" : { + "entry" : [ { + "key" : "TestDecideCaseSelected", + "value" : { + "key" : "TestDecideCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideStateTime", + "value" : { + "key" : "TestDecideStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "outputFields" : { + "entry" : [ { + "key" : "TestActCaseSelected", + "value" : { + "key" : "TestActCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestActStateTime", + "value" : { + "key" : "TestActStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideCaseSelected", + "value" : { + "key" : "TestDecideCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideStateTime", + "value" : { + "key" : "TestDecideStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "taskParameters" : { + "entry" : [ { + "key" : "Parameter0", + "value" : { + "key" : { + "parentKeyName" : "Task_Act0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter0" + }, + "defaultValue" : "DefaultValue0" + } + }, { + "key" : "Parameter1", + "value" : { + "key" : { + "parentKeyName" : "Task_Act0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter1" + }, + "defaultValue" : "DefaultValue1" + } + }, { + "key" : "Parameter2", + "value" : { + "key" : { + "parentKeyName" : "Task_Act0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter2" + }, + "defaultValue" : "DefaultValue2" + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "ExternalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy0ContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy1ContextAlbum", + "version" : "0.0.1" + } ], + "taskLogic" : { + "key" : "_TaskLogic", + "logicFlavour" : "MVEL", + "logic" : "import java.util.Date;\nlogger.debug(subject.id);\ngc = getContextAlbum(\"GlobalContextAlbum\");\nlogger.debug(gc);\nlogger.debug(inFields);\noutFields[\"TestActCaseSelected\"] = (byte)2;\ntimeNow = new Date();\noutFields[\"TestActStateTime\"] = timeNow.getTime();\nlogger.debug(outFields);\nreturn true;" + } + } + }, { + "key" : { + "name" : "Task_Act1", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Act1", + "version" : "0.0.1" + }, + "inputFields" : { + "entry" : [ { + "key" : "TestDecideCaseSelected", + "value" : { + "key" : "TestDecideCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideStateTime", + "value" : { + "key" : "TestDecideStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "outputFields" : { + "entry" : [ { + "key" : "TestActCaseSelected", + "value" : { + "key" : "TestActCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestActStateTime", + "value" : { + "key" : "TestActStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideCaseSelected", + "value" : { + "key" : "TestDecideCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideStateTime", + "value" : { + "key" : "TestDecideStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "taskParameters" : { + "entry" : [ { + "key" : "Parameter0", + "value" : { + "key" : { + "parentKeyName" : "Task_Act1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter0" + }, + "defaultValue" : "DefaultValue0" + } + }, { + "key" : "Parameter1", + "value" : { + "key" : { + "parentKeyName" : "Task_Act1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter1" + }, + "defaultValue" : "DefaultValue1" + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy0ContextAlbum", + "version" : "0.0.1" + } ], + "taskLogic" : { + "key" : "_TaskLogic", + "logicFlavour" : "MVEL", + "logic" : "import java.util.Date;\nlogger.debug(subject.id);\ngc = getContextAlbum(\"GlobalContextAlbum\");\nlogger.debug(gc);\nlogger.debug(inFields);\noutFields[\"TestActCaseSelected\"] = (byte)3;\ntimeNow = new Date();\noutFields[\"TestActStateTime\"] = timeNow.getTime();\nlogger.debug(outFields);\nreturn true;" + } + } + }, { + "key" : { + "name" : "Task_Act2", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Act2", + "version" : "0.0.1" + }, + "inputFields" : { + "entry" : [ { + "key" : "TestDecideCaseSelected", + "value" : { + "key" : "TestDecideCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideStateTime", + "value" : { + "key" : "TestDecideStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "outputFields" : { + "entry" : [ { + "key" : "TestActCaseSelected", + "value" : { + "key" : "TestActCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestActStateTime", + "value" : { + "key" : "TestActStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideCaseSelected", + "value" : { + "key" : "TestDecideCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideStateTime", + "value" : { + "key" : "TestDecideStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "taskParameters" : { + "entry" : [ { + "key" : "Parameter0", + "value" : { + "key" : { + "parentKeyName" : "Task_Act2", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter0" + }, + "defaultValue" : "DefaultValue0" + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy1ContextAlbum", + "version" : "0.0.1" + } ], + "taskLogic" : { + "key" : "_TaskLogic", + "logicFlavour" : "MVEL", + "logic" : "import java.util.Date;\nlogger.debug(subject.id);\ngc = getContextAlbum(\"GlobalContextAlbum\");\nlogger.debug(gc);\nlogger.debug(inFields);\noutFields[\"TestActCaseSelected\"] = (byte)0;\ntimeNow = new Date();\noutFields[\"TestActStateTime\"] = timeNow.getTime();\nlogger.debug(outFields);\nreturn true;" + } + } + }, { + "key" : { + "name" : "Task_Act3", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Act3", + "version" : "0.0.1" + }, + "inputFields" : { + "entry" : [ { + "key" : "TestDecideCaseSelected", + "value" : { + "key" : "TestDecideCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideStateTime", + "value" : { + "key" : "TestDecideStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "outputFields" : { + "entry" : [ { + "key" : "TestActCaseSelected", + "value" : { + "key" : "TestActCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestActStateTime", + "value" : { + "key" : "TestActStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideCaseSelected", + "value" : { + "key" : "TestDecideCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideStateTime", + "value" : { + "key" : "TestDecideStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "taskParameters" : { + "entry" : [ { + "key" : "Parameter0", + "value" : { + "key" : { + "parentKeyName" : "Task_Act3", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter0" + }, + "defaultValue" : "DefaultValue0" + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "ExternalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + } ], + "taskLogic" : { + "key" : "_TaskLogic", + "logicFlavour" : "MVEL", + "logic" : "import java.util.Date;\nlogger.debug(subject.id);\ngc = getContextAlbum(\"GlobalContextAlbum\");\nlogger.debug(gc);\nlogger.debug(inFields);\noutFields[\"TestActCaseSelected\"] = (byte)1;\ntimeNow = new Date();\noutFields[\"TestActStateTime\"] = timeNow.getTime();\nlogger.debug(outFields);\nreturn true;" + } + } + }, { + "key" : { + "name" : "Task_Decide0", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Decide0", + "version" : "0.0.1" + }, + "inputFields" : { + "entry" : [ { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "outputFields" : { + "entry" : [ { + "key" : "TestDecideCaseSelected", + "value" : { + "key" : "TestDecideCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideStateTime", + "value" : { + "key" : "TestDecideStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "taskParameters" : { + "entry" : [ { + "key" : "Parameter0", + "value" : { + "key" : { + "parentKeyName" : "Task_Decide0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter0" + }, + "defaultValue" : "DefaultValue0" + } + }, { + "key" : "Parameter1", + "value" : { + "key" : { + "parentKeyName" : "Task_Decide0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter1" + }, + "defaultValue" : "DefaultValue1" + } + }, { + "key" : "Parameter2", + "value" : { + "key" : { + "parentKeyName" : "Task_Decide0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter2" + }, + "defaultValue" : "DefaultValue2" + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "ExternalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy0ContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy1ContextAlbum", + "version" : "0.0.1" + } ], + "taskLogic" : { + "key" : "_TaskLogic", + "logicFlavour" : "MVEL", + "logic" : "import java.util.Date;\nlogger.debug(subject.id);\ngc = getContextAlbum(\"GlobalContextAlbum\");\nlogger.debug(gc);\nlogger.debug(inFields);\noutFields[\"TestDecideCaseSelected\"] = (byte)2;\ntimeNow = new Date();\noutFields[\"TestDecideStateTime\"] = timeNow.getTime();\nlogger.debug(outFields);\nreturn true;" + } + } + }, { + "key" : { + "name" : "Task_Decide1", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Decide1", + "version" : "0.0.1" + }, + "inputFields" : { + "entry" : [ { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "outputFields" : { + "entry" : [ { + "key" : "TestDecideCaseSelected", + "value" : { + "key" : "TestDecideCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideStateTime", + "value" : { + "key" : "TestDecideStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "taskParameters" : { + "entry" : [ { + "key" : "Parameter0", + "value" : { + "key" : { + "parentKeyName" : "Task_Decide1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter0" + }, + "defaultValue" : "DefaultValue0" + } + }, { + "key" : "Parameter1", + "value" : { + "key" : { + "parentKeyName" : "Task_Decide1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter1" + }, + "defaultValue" : "DefaultValue1" + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy0ContextAlbum", + "version" : "0.0.1" + } ], + "taskLogic" : { + "key" : "_TaskLogic", + "logicFlavour" : "MVEL", + "logic" : "import java.util.Date;\nlogger.debug(subject.id);\ngc = getContextAlbum(\"GlobalContextAlbum\");\nlogger.debug(gc);\nlogger.debug(inFields);\noutFields[\"TestDecideCaseSelected\"] = (byte)3;\ntimeNow = new Date();\noutFields[\"TestDecideStateTime\"] = timeNow.getTime();\nlogger.debug(outFields);\nreturn true;" + } + } + }, { + "key" : { + "name" : "Task_Decide2", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Decide2", + "version" : "0.0.1" + }, + "inputFields" : { + "entry" : [ { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "outputFields" : { + "entry" : [ { + "key" : "TestDecideCaseSelected", + "value" : { + "key" : "TestDecideCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideStateTime", + "value" : { + "key" : "TestDecideStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "taskParameters" : { + "entry" : [ { + "key" : "Parameter0", + "value" : { + "key" : { + "parentKeyName" : "Task_Decide2", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter0" + }, + "defaultValue" : "DefaultValue0" + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy1ContextAlbum", + "version" : "0.0.1" + } ], + "taskLogic" : { + "key" : "_TaskLogic", + "logicFlavour" : "MVEL", + "logic" : "import java.util.Date;\nlogger.debug(subject.id);\ngc = getContextAlbum(\"GlobalContextAlbum\");\nlogger.debug(gc);\nlogger.debug(inFields);\noutFields[\"TestDecideCaseSelected\"] = (byte)0;\ntimeNow = new Date();\noutFields[\"TestDecideStateTime\"] = timeNow.getTime();\nlogger.debug(outFields);\nreturn true;" + } + } + }, { + "key" : { + "name" : "Task_Decide3", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Decide3", + "version" : "0.0.1" + }, + "inputFields" : { + "entry" : [ { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "outputFields" : { + "entry" : [ { + "key" : "TestDecideCaseSelected", + "value" : { + "key" : "TestDecideCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideStateTime", + "value" : { + "key" : "TestDecideStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "taskParameters" : { + "entry" : [ { + "key" : "Parameter0", + "value" : { + "key" : { + "parentKeyName" : "Task_Decide3", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter0" + }, + "defaultValue" : "DefaultValue0" + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "ExternalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + } ], + "taskLogic" : { + "key" : "_TaskLogic", + "logicFlavour" : "MVEL", + "logic" : "import java.util.Date;\nlogger.debug(subject.id);\ngc = getContextAlbum(\"GlobalContextAlbum\");\nlogger.debug(gc);\nlogger.debug(inFields);\noutFields[\"TestDecideCaseSelected\"] = (byte)1;\ntimeNow = new Date();\noutFields[\"TestDecideStateTime\"] = timeNow.getTime();\nlogger.debug(outFields);\nreturn true;" + } + } + }, { + "key" : { + "name" : "Task_Establish0", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Establish0", + "version" : "0.0.1" + }, + "inputFields" : { + "entry" : [ { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "outputFields" : { + "entry" : [ { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "taskParameters" : { + "entry" : [ { + "key" : "Parameter0", + "value" : { + "key" : { + "parentKeyName" : "Task_Establish0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter0" + }, + "defaultValue" : "DefaultValue0" + } + }, { + "key" : "Parameter1", + "value" : { + "key" : { + "parentKeyName" : "Task_Establish0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter1" + }, + "defaultValue" : "DefaultValue1" + } + }, { + "key" : "Parameter2", + "value" : { + "key" : { + "parentKeyName" : "Task_Establish0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter2" + }, + "defaultValue" : "DefaultValue2" + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "ExternalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy0ContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy1ContextAlbum", + "version" : "0.0.1" + } ], + "taskLogic" : { + "key" : "_TaskLogic", + "logicFlavour" : "MVEL", + "logic" : "import java.util.Date;\nlogger.debug(subject.id);\ngc = getContextAlbum(\"GlobalContextAlbum\");\nlogger.debug(gc);\nlogger.debug(inFields);\noutFields[\"TestEstablishCaseSelected\"] = (byte)2;\ntimeNow = new Date();\noutFields[\"TestEstablishStateTime\"] = timeNow.getTime();\nlogger.debug(outFields);\nreturn true;" + } + } + }, { + "key" : { + "name" : "Task_Establish1", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Establish1", + "version" : "0.0.1" + }, + "inputFields" : { + "entry" : [ { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "outputFields" : { + "entry" : [ { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "taskParameters" : { + "entry" : [ { + "key" : "Parameter0", + "value" : { + "key" : { + "parentKeyName" : "Task_Establish1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter0" + }, + "defaultValue" : "DefaultValue0" + } + }, { + "key" : "Parameter1", + "value" : { + "key" : { + "parentKeyName" : "Task_Establish1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter1" + }, + "defaultValue" : "DefaultValue1" + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy0ContextAlbum", + "version" : "0.0.1" + } ], + "taskLogic" : { + "key" : "_TaskLogic", + "logicFlavour" : "MVEL", + "logic" : "import java.util.Date;\nlogger.debug(subject.id);\ngc = getContextAlbum(\"GlobalContextAlbum\");\nlogger.debug(gc);\nlogger.debug(inFields);\noutFields[\"TestEstablishCaseSelected\"] = (byte)3;\ntimeNow = new Date();\noutFields[\"TestEstablishStateTime\"] = timeNow.getTime();\nlogger.debug(outFields);\nreturn true;" + } + } + }, { + "key" : { + "name" : "Task_Establish2", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Establish2", + "version" : "0.0.1" + }, + "inputFields" : { + "entry" : [ { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "outputFields" : { + "entry" : [ { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "taskParameters" : { + "entry" : [ { + "key" : "Parameter0", + "value" : { + "key" : { + "parentKeyName" : "Task_Establish2", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter0" + }, + "defaultValue" : "DefaultValue0" + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy1ContextAlbum", + "version" : "0.0.1" + } ], + "taskLogic" : { + "key" : "_TaskLogic", + "logicFlavour" : "MVEL", + "logic" : "import java.util.Date;\nlogger.debug(subject.id);\ngc = getContextAlbum(\"GlobalContextAlbum\");\nlogger.debug(gc);\nlogger.debug(inFields);\noutFields[\"TestEstablishCaseSelected\"] = (byte)0;\ntimeNow = new Date();\noutFields[\"TestEstablishStateTime\"] = timeNow.getTime();\nlogger.debug(outFields);\nreturn true;" + } + } + }, { + "key" : { + "name" : "Task_Establish3", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Establish3", + "version" : "0.0.1" + }, + "inputFields" : { + "entry" : [ { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "outputFields" : { + "entry" : [ { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "taskParameters" : { + "entry" : [ { + "key" : "Parameter0", + "value" : { + "key" : { + "parentKeyName" : "Task_Establish3", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter0" + }, + "defaultValue" : "DefaultValue0" + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "ExternalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + } ], + "taskLogic" : { + "key" : "_TaskLogic", + "logicFlavour" : "MVEL", + "logic" : "import java.util.Date;\nlogger.debug(subject.id);\ngc = getContextAlbum(\"GlobalContextAlbum\");\nlogger.debug(gc);\nlogger.debug(inFields);\noutFields[\"TestEstablishCaseSelected\"] = (byte)1;\ntimeNow = new Date();\noutFields[\"TestEstablishStateTime\"] = timeNow.getTime();\nlogger.debug(outFields);\nreturn true;" + } + } + }, { + "key" : { + "name" : "Task_Match0", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Match0", + "version" : "0.0.1" + }, + "inputFields" : { + "entry" : [ { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "outputFields" : { + "entry" : [ { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "taskParameters" : { + "entry" : [ { + "key" : "Parameter0", + "value" : { + "key" : { + "parentKeyName" : "Task_Match0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter0" + }, + "defaultValue" : "DefaultValue0" + } + }, { + "key" : "Parameter1", + "value" : { + "key" : { + "parentKeyName" : "Task_Match0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter1" + }, + "defaultValue" : "DefaultValue1" + } + }, { + "key" : "Parameter2", + "value" : { + "key" : { + "parentKeyName" : "Task_Match0", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter2" + }, + "defaultValue" : "DefaultValue2" + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "ExternalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy0ContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy1ContextAlbum", + "version" : "0.0.1" + } ], + "taskLogic" : { + "key" : "_TaskLogic", + "logicFlavour" : "MVEL", + "logic" : "import java.util.Date;\nlogger.debug(subject.id);\ngc = getContextAlbum(\"GlobalContextAlbum\");\nlogger.debug(gc);\nlogger.debug(inFields);\noutFields[\"TestMatchCaseSelected\"] = (byte)2;\ntimeNow = new Date();\noutFields[\"TestMatchStateTime\"] = timeNow.getTime();\nlogger.debug(outFields);\nreturn true;" + } + } + }, { + "key" : { + "name" : "Task_Match1", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Match1", + "version" : "0.0.1" + }, + "inputFields" : { + "entry" : [ { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "outputFields" : { + "entry" : [ { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "taskParameters" : { + "entry" : [ { + "key" : "Parameter0", + "value" : { + "key" : { + "parentKeyName" : "Task_Match1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter0" + }, + "defaultValue" : "DefaultValue0" + } + }, { + "key" : "Parameter1", + "value" : { + "key" : { + "parentKeyName" : "Task_Match1", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter1" + }, + "defaultValue" : "DefaultValue1" + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy0ContextAlbum", + "version" : "0.0.1" + } ], + "taskLogic" : { + "key" : "_TaskLogic", + "logicFlavour" : "MVEL", + "logic" : "import java.util.Date;\nlogger.debug(subject.id);\ngc = getContextAlbum(\"GlobalContextAlbum\");\nlogger.debug(gc);\nlogger.debug(inFields);\noutFields[\"TestMatchCaseSelected\"] = (byte)3;\ntimeNow = new Date();\noutFields[\"TestMatchStateTime\"] = timeNow.getTime();\nlogger.debug(outFields);\nreturn true;" + } + } + }, { + "key" : { + "name" : "Task_Match2", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Match2", + "version" : "0.0.1" + }, + "inputFields" : { + "entry" : [ { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "outputFields" : { + "entry" : [ { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "taskParameters" : { + "entry" : [ { + "key" : "Parameter0", + "value" : { + "key" : { + "parentKeyName" : "Task_Match2", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter0" + }, + "defaultValue" : "DefaultValue0" + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "Policy1ContextAlbum", + "version" : "0.0.1" + } ], + "taskLogic" : { + "key" : "_TaskLogic", + "logicFlavour" : "MVEL", + "logic" : "import java.util.Date;\nlogger.debug(subject.id);\ngc = getContextAlbum(\"GlobalContextAlbum\");\nlogger.debug(gc);\nlogger.debug(inFields);\noutFields[\"TestMatchCaseSelected\"] = (byte)0;\ntimeNow = new Date();\noutFields[\"TestMatchStateTime\"] = timeNow.getTime();\nlogger.debug(outFields);\nreturn true;" + } + } + }, { + "key" : { + "name" : "Task_Match3", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Task_Match3", + "version" : "0.0.1" + }, + "inputFields" : { + "entry" : [ { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "outputFields" : { + "entry" : [ { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + }, + "taskParameters" : { + "entry" : [ { + "key" : "Parameter0", + "value" : { + "key" : { + "parentKeyName" : "Task_Match3", + "parentKeyVersion" : "0.0.1", + "parentLocalName" : "NULL", + "localName" : "Parameter0" + }, + "defaultValue" : "DefaultValue0" + } + } ] + }, + "contextAlbumReference" : [ { + "name" : "ExternalContextAlbum", + "version" : "0.0.1" + }, { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + } ], + "taskLogic" : { + "key" : "_TaskLogic", + "logicFlavour" : "MVEL", + "logic" : "import java.util.Date;\nlogger.debug(subject.id);\ngc = getContextAlbum(\"GlobalContextAlbum\");\nlogger.debug(gc);\nlogger.debug(inFields);\noutFields[\"TestMatchCaseSelected\"] = (byte)1;\ntimeNow = new Date();\noutFields[\"TestMatchStateTime\"] = timeNow.getTime();\nlogger.debug(outFields);\nreturn true;" + } + } + } ] + } + }, + "events" : { + "key" : { + "name" : "Events", + "version" : "0.0.1" + }, + "eventMap" : { + "entry" : [ { + "key" : { + "name" : "Event0000", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0000", + "version" : "0.0.1" + }, + "nameSpace" : "org.onap.policy.apex.sample.events", + "source" : "Outside", + "target" : "Match", + "parameter" : { + "entry" : [ { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + } + } + }, { + "key" : { + "name" : "Event0001", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0001", + "version" : "0.0.1" + }, + "nameSpace" : "org.onap.policy.apex.sample.events", + "source" : "Match", + "target" : "Establish", + "parameter" : { + "entry" : [ { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + } + } + }, { + "key" : { + "name" : "Event0002", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0002", + "version" : "0.0.1" + }, + "nameSpace" : "org.onap.policy.apex.sample.events", + "source" : "Establish", + "target" : "Decide", + "parameter" : { + "entry" : [ { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + } + } + }, { + "key" : { + "name" : "Event0003", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0003", + "version" : "0.0.1" + }, + "nameSpace" : "org.onap.policy.apex.sample.events", + "source" : "Decide", + "target" : "Act", + "parameter" : { + "entry" : [ { + "key" : "TestDecideCaseSelected", + "value" : { + "key" : "TestDecideCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideStateTime", + "value" : { + "key" : "TestDecideStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + } + } + }, { + "key" : { + "name" : "Event0004", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0004", + "version" : "0.0.1" + }, + "nameSpace" : "org.onap.policy.apex.sample.events", + "source" : "Act", + "target" : "Outside", + "parameter" : { + "entry" : [ { + "key" : "TestActCaseSelected", + "value" : { + "key" : "TestActCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestActStateTime", + "value" : { + "key" : "TestActStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideCaseSelected", + "value" : { + "key" : "TestDecideCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideStateTime", + "value" : { + "key" : "TestDecideStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + } + } + }, { + "key" : { + "name" : "Event0100", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0100", + "version" : "0.0.1" + }, + "nameSpace" : "org.onap.policy.apex.sample.events", + "source" : "Outside", + "target" : "Match", + "parameter" : { + "entry" : [ { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + } + } + }, { + "key" : { + "name" : "Event0101", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0101", + "version" : "0.0.1" + }, + "nameSpace" : "org.onap.policy.apex.sample.events", + "source" : "Match", + "target" : "Establish", + "parameter" : { + "entry" : [ { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + } + } + }, { + "key" : { + "name" : "Event0102", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0102", + "version" : "0.0.1" + }, + "nameSpace" : "org.onap.policy.apex.sample.events", + "source" : "Establish", + "target" : "Decide", + "parameter" : { + "entry" : [ { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + } + } + }, { + "key" : { + "name" : "Event0103", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0103", + "version" : "0.0.1" + }, + "nameSpace" : "org.onap.policy.apex.sample.events", + "source" : "Decide", + "target" : "Act", + "parameter" : { + "entry" : [ { + "key" : "TestDecideCaseSelected", + "value" : { + "key" : "TestDecideCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideStateTime", + "value" : { + "key" : "TestDecideStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + } + } + }, { + "key" : { + "name" : "Event0104", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Event0104", + "version" : "0.0.1" + }, + "nameSpace" : "org.onap.policy.apex.sample.events", + "source" : "Act", + "target" : "Outside", + "parameter" : { + "entry" : [ { + "key" : "TestActCaseSelected", + "value" : { + "key" : "TestActCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestActStateTime", + "value" : { + "key" : "TestActStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideCaseSelected", + "value" : { + "key" : "TestDecideCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestDecideStateTime", + "value" : { + "key" : "TestDecideStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishCaseSelected", + "value" : { + "key" : "TestEstablishCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestEstablishStateTime", + "value" : { + "key" : "TestEstablishStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCase", + "value" : { + "key" : "TestMatchCase", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchCaseSelected", + "value" : { + "key" : "TestMatchCaseSelected", + "fieldSchemaKey" : { + "name" : "TestCase", + "version" : "0.0.1" + } + } + }, { + "key" : "TestMatchStateTime", + "value" : { + "key" : "TestMatchStateTime", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + }, { + "key" : "TestSlogan", + "value" : { + "key" : "TestSlogan", + "fieldSchemaKey" : { + "name" : "TestSlogan", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTemperature", + "value" : { + "key" : "TestTemperature", + "fieldSchemaKey" : { + "name" : "TestTemperature", + "version" : "0.0.1" + } + } + }, { + "key" : "TestTimestamp", + "value" : { + "key" : "TestTimestamp", + "fieldSchemaKey" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + } + } + } ] + } + } + } ] + } + }, + "albums" : { + "key" : { + "name" : "Context", + "version" : "0.0.1" + }, + "albums" : { + "entry" : [ { + "key" : { + "name" : "ExternalContextAlbum", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "ExternalContextAlbum", + "version" : "0.0.1" + }, + "scope" : "EXTERNAL", + "isWritable" : false, + "itemSchema" : { + "name" : "TestExternalContextItem", + "version" : "0.0.1" + } + } + }, { + "key" : { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "GlobalContextAlbum", + "version" : "0.0.1" + }, + "scope" : "GLOBAL", + "isWritable" : true, + "itemSchema" : { + "name" : "TestGlobalContextItem", + "version" : "0.0.1" + } + } + }, { + "key" : { + "name" : "Policy0ContextAlbum", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Policy0ContextAlbum", + "version" : "0.0.1" + }, + "scope" : "APPLICATION", + "isWritable" : true, + "itemSchema" : { + "name" : "TestPolicyContextItem", + "version" : "0.0.1" + } + } + }, { + "key" : { + "name" : "Policy1ContextAlbum", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "Policy1ContextAlbum", + "version" : "0.0.1" + }, + "scope" : "APPLICATION", + "isWritable" : true, + "itemSchema" : { + "name" : "TestPolicyContextItem", + "version" : "0.0.1" + } + } + } ] + } + }, + "schemas" : { + "key" : { + "name" : "TestDatatypes", + "version" : "0.0.1" + }, + "schemas" : { + "entry" : [ { + "key" : { + "name" : "TestCase", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestCase", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "java.lang.Byte" + } + }, { + "key" : { + "name" : "TestContextItem000", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem000", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem000" + } + }, { + "key" : { + "name" : "TestContextItem001", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem001", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem001" + } + }, { + "key" : { + "name" : "TestContextItem002", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem002", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem002" + } + }, { + "key" : { + "name" : "TestContextItem003", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem003", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem003" + } + }, { + "key" : { + "name" : "TestContextItem004", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem004", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem004" + } + }, { + "key" : { + "name" : "TestContextItem005", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem005", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem005" + } + }, { + "key" : { + "name" : "TestContextItem006", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem006", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem006" + } + }, { + "key" : { + "name" : "TestContextItem007", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem007", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem007" + } + }, { + "key" : { + "name" : "TestContextItem008", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem008", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem008" + } + }, { + "key" : { + "name" : "TestContextItem009", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem009", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem009" + } + }, { + "key" : { + "name" : "TestContextItem00A", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem00A", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem00A" + } + }, { + "key" : { + "name" : "TestContextItem00B", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem00B", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem00B" + } + }, { + "key" : { + "name" : "TestContextItem00C", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestContextItem00C", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem00C" + } + }, { + "key" : { + "name" : "TestExternalContextItem", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestExternalContextItem", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestExternalContextItem" + } + }, { + "key" : { + "name" : "TestGlobalContextItem", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestGlobalContextItem", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestGlobalContextItem" + } + }, { + "key" : { + "name" : "TestPolicyContextItem", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestPolicyContextItem", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestPolicyContextItem" + } + }, { + "key" : { + "name" : "TestSlogan", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestSlogan", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "java.lang.String" + } + }, { + "key" : { + "name" : "TestTemperature", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestTemperature", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "java.lang.Double" + } + }, { + "key" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + }, + "value" : { + "key" : { + "name" : "TestTimestamp", + "version" : "0.0.1" + }, + "schemaFlavour" : "Java", + "schemaDefinition" : "java.lang.Long" + } + } ] + } + } + } +}
\ No newline at end of file diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FileDelete.json b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FileDelete.json new file mode 100644 index 000000000..6e12c0b1f --- /dev/null +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FileDelete.json @@ -0,0 +1,75 @@ +{ + "engineServiceParameters": { + "name": "MyApexEngine", + "version": "0.0.1", + "id": 45, + "instanceCount": 4, + "deploymentPort": 12561, + "policyModelFileName": "src/test/resources/policymodels/SamplePolicyModelMVEL.json", + "engineParameters": { + "executorParameters": { + "MVEL": { + "parameterClassName": "org.onap.policy.apex.plugins.executor.mvel.MVELExecutorParameters" + } + } + } + }, + "eventInputParameters": { + "FileConsumer": { + "carrierTechnologyParameters": { + "carrierTechnology": "FILE", + "parameters": { + "fileName": "src/test/resources/events/EventsIn.json" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + } + }, + "RestRequestorConsumer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTREQUESTOR", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restrequestor.RESTRequestorCarrierTechnologyParameters", + "parameters": { + "url": "http://localhost:32801/TestRESTRequestor/apex/event/DeleteEvent", + "httpMethod": "DELETE", + "restRequestTimeout": 2000 + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0100", + "requestorMode": true, + "requestorPeer": "RestRequestorProducer", + "requestorTimeout": 500 + } + }, + "eventOutputParameters": { + "RestRequestorProducer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTREQUESTOR", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restrequestor.RESTRequestorCarrierTechnologyParameters" + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0004", + "requestorMode": true, + "requestorPeer": "RestRequestorConsumer", + "requestorTimeout": 500 + }, + "FileProducer": { + "carrierTechnologyParameters": { + "carrierTechnology": "FILE", + "parameters": { + "fileName": "src/test/resources/events/EventsOut.json" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0104" + } + } +} diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FileGet.json b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FileGet.json new file mode 100644 index 000000000..d0879eb73 --- /dev/null +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FileGet.json @@ -0,0 +1,75 @@ +{ + "engineServiceParameters": { + "name": "MyApexEngine", + "version": "0.0.1", + "id": 45, + "instanceCount": 4, + "deploymentPort": 12561, + "policyModelFileName": "src/test/resources/policymodels/SamplePolicyModelMVEL.json", + "engineParameters": { + "executorParameters": { + "MVEL": { + "parameterClassName": "org.onap.policy.apex.plugins.executor.mvel.MVELExecutorParameters" + } + } + } + }, + "eventInputParameters": { + "FileConsumer": { + "carrierTechnologyParameters": { + "carrierTechnology": "FILE", + "parameters": { + "fileName": "src/test/resources/events/EventsIn.json" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + } + }, + "RestRequestorConsumer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTREQUESTOR", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restrequestor.RESTRequestorCarrierTechnologyParameters", + "parameters": { + "url": "http://localhost:32801/TestRESTRequestor/apex/event/GetEvent", + "httpMethod": "GET", + "restRequestTimeout": 2000 + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0100", + "requestorMode": true, + "requestorPeer": "RestRequestorProducer", + "requestorTimeout": 500 + } + }, + "eventOutputParameters": { + "RestRequestorProducer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTREQUESTOR", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restrequestor.RESTRequestorCarrierTechnologyParameters" + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0004", + "requestorMode": true, + "requestorPeer": "RestRequestorConsumer", + "requestorTimeout": 500 + }, + "FileProducer": { + "carrierTechnologyParameters": { + "carrierTechnology": "FILE", + "parameters": { + "fileName": "src/test/resources/events/EventsOut.json" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0104" + } + } +} diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FileGetConsumerAlone.json b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FileGetConsumerAlone.json new file mode 100644 index 000000000..b957b61de --- /dev/null +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FileGetConsumerAlone.json @@ -0,0 +1,71 @@ +{ + "engineServiceParameters": { + "name": "MyApexEngine", + "version": "0.0.1", + "id": 45, + "instanceCount": 4, + "deploymentPort": 12561, + "policyModelFileName": "src/test/resources/policymodels/SamplePolicyModelMVEL.json", + "engineParameters": { + "executorParameters": { + "MVEL": { + "parameterClassName": "org.onap.policy.apex.plugins.executor.mvel.MVELExecutorParameters" + } + } + } + }, + "eventInputParameters": { + "FileConsumer": { + "carrierTechnologyParameters": { + "carrierTechnology": "FILE", + "parameters": { + "fileName": "src/test/resources/events/EventsIn.json" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + } + }, + "RestRequestorConsumer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTREQUESTOR", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restrequestor.RESTRequestorCarrierTechnologyParameters", + "parameters": { + "url": "http://localhost:32801/TestRESTRequestor/apex/event/GetEvent", + "httpMethod": "GET", + "restRequestTimeout": 2000 + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0100", + "requestorMode": true, + "requestorPeer": "RestRequestorProducer", + "requestorTimeout": 500 + } + }, + "eventOutputParameters": { + "RestRequestorProducer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTREQUESTOR", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restrequestor.RESTRequestorCarrierTechnologyParameters" + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + } + }, + "FileProducer": { + "carrierTechnologyParameters": { + "carrierTechnology": "FILE", + "parameters": { + "fileName": "src/test/resources/events/EventsOut.json" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0104" + } + } +} diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FileGetMulti.json b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FileGetMulti.json new file mode 100644 index 000000000..ba1c997f5 --- /dev/null +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FileGetMulti.json @@ -0,0 +1,129 @@ +{ + "engineServiceParameters": { + "name": "MyApexEngine", + "version": "0.0.1", + "id": 45, + "instanceCount": 4, + "deploymentPort": 12561, + "policyModelFileName": "src/test/resources/policymodels/SamplePolicyModelMVEL.json", + "engineParameters": { + "executorParameters": { + "MVEL": { + "parameterClassName": "org.onap.policy.apex.plugins.executor.mvel.MVELExecutorParameters" + } + } + } + }, + "eventInputParameters": { + "FileConsumer0": { + "carrierTechnologyParameters": { + "carrierTechnology": "FILE", + "parameters": { + "fileName": "src/test/resources/events/EventsInMulti.json" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + } + }, + "RestRequestorConsumer0": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTREQUESTOR", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restrequestor.RESTRequestorCarrierTechnologyParameters", + "parameters": { + "url": "http://localhost:32801/TestRESTRequestor/apex/event/GetEvent", + "httpMethod": "GET", + "restRequestTimeout": 2000 + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0100", + "requestorMode": true, + "requestorPeer": "RestRequestorProducer0", + "requestorTimeout": 500 + }, + "FileConsumer1": { + "carrierTechnologyParameters": { + "carrierTechnology": "FILE", + "parameters": { + "fileName": "src/test/resources/events/EventsInMulti.json" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + } + }, + "RestRequestorConsumer1": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTREQUESTOR", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restrequestor.RESTRequestorCarrierTechnologyParameters", + "parameters": { + "url": "http://localhost:32801/TestRESTRequestor/apex/event/GetEvent", + "httpMethod": "GET", + "restRequestTimeout": 2000 + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0100", + "requestorMode": true, + "requestorPeer": "RestRequestorProducer1", + "requestorTimeout": 500 + } + }, + "eventOutputParameters": { + "RestRequestorProducer0": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTREQUESTOR", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restrequestor.RESTRequestorCarrierTechnologyParameters" + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0004", + "requestorMode": true, + "requestorPeer": "RestRequestorConsumer0", + "requestorTimeout": 500 + }, + "FileProducer0": { + "carrierTechnologyParameters": { + "carrierTechnology": "FILE", + "parameters": { + "fileName": "src/test/resources/events/EventsOutMulti0.json" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0104" + }, + "RestRequestorProducer1": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTREQUESTOR", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restrequestor.RESTRequestorCarrierTechnologyParameters" + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0004", + "requestorMode": true, + "requestorPeer": "RestRequestorConsumer1", + "requestorTimeout": 500 + }, + "FileProducer1": { + "carrierTechnologyParameters": { + "carrierTechnology": "FILE", + "parameters": { + "fileName": "src/test/resources/events/EventsOutMulti1.json" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0104" + } + } +} diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FileGetProducerAlone.json b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FileGetProducerAlone.json new file mode 100644 index 000000000..a635e6c72 --- /dev/null +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FileGetProducerAlone.json @@ -0,0 +1,54 @@ +{ + "engineServiceParameters": { + "name": "MyApexEngine", + "version": "0.0.1", + "id": 45, + "instanceCount": 4, + "deploymentPort": 12561, + "policyModelFileName": "src/test/resources/policymodels/SamplePolicyModelMVEL.json", + "engineParameters": { + "executorParameters": { + "MVEL": { + "parameterClassName": "org.onap.policy.apex.plugins.executor.mvel.MVELExecutorParameters" + } + } + } + }, + "eventInputParameters": { + "FileConsumer": { + "carrierTechnologyParameters": { + "carrierTechnology": "FILE", + "parameters": { + "fileName": "src/test/resources/events/EventsIn.json" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + } + } + }, + "eventOutputParameters": { + "RestRequestorProducer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTREQUESTOR", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restrequestor.RESTRequestorCarrierTechnologyParameters" + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0004" + }, + "FileProducer": { + "carrierTechnologyParameters": { + "carrierTechnology": "FILE", + "parameters": { + "fileName": "src/test/resources/events/EventsOut.json" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0104" + } + } +} diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FilePost.json b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FilePost.json new file mode 100644 index 000000000..9db89ce89 --- /dev/null +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FilePost.json @@ -0,0 +1,75 @@ +{ + "engineServiceParameters": { + "name": "MyApexEngine", + "version": "0.0.1", + "id": 45, + "instanceCount": 4, + "deploymentPort": 12561, + "policyModelFileName": "src/test/resources/policymodels/SamplePolicyModelMVEL.json", + "engineParameters": { + "executorParameters": { + "MVEL": { + "parameterClassName": "org.onap.policy.apex.plugins.executor.mvel.MVELExecutorParameters" + } + } + } + }, + "eventInputParameters": { + "FileConsumer": { + "carrierTechnologyParameters": { + "carrierTechnology": "FILE", + "parameters": { + "fileName": "src/test/resources/events/EventsIn.json" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + } + }, + "RestRequestorConsumer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTREQUESTOR", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restrequestor.RESTRequestorCarrierTechnologyParameters", + "parameters": { + "url": "http://localhost:32801/TestRESTRequestor/apex/event/PostEvent", + "httpMethod": "POST", + "restRequestTimeout": 2000 + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0100", + "requestorMode": true, + "requestorPeer": "RestRequestorProducer", + "requestorTimeout": 500 + } + }, + "eventOutputParameters": { + "RestRequestorProducer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTREQUESTOR", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restrequestor.RESTRequestorCarrierTechnologyParameters" + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0004", + "requestorMode": true, + "requestorPeer": "RestRequestorConsumer", + "requestorTimeout": 500 + }, + "FileProducer": { + "carrierTechnologyParameters": { + "carrierTechnology": "FILE", + "parameters": { + "fileName": "src/test/resources/events/EventsOut.json" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0104" + } + } +} diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FilePut.json b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FilePut.json new file mode 100644 index 000000000..3eebe3d8a --- /dev/null +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-restrequestor/src/test/resources/prodcons/File2RESTRequest2FilePut.json @@ -0,0 +1,75 @@ +{ + "engineServiceParameters": { + "name": "MyApexEngine", + "version": "0.0.1", + "id": 45, + "instanceCount": 4, + "deploymentPort": 12561, + "policyModelFileName": "src/test/resources/policymodels/SamplePolicyModelMVEL.json", + "engineParameters": { + "executorParameters": { + "MVEL": { + "parameterClassName": "org.onap.policy.apex.plugins.executor.mvel.MVELExecutorParameters" + } + } + } + }, + "eventInputParameters": { + "FileConsumer": { + "carrierTechnologyParameters": { + "carrierTechnology": "FILE", + "parameters": { + "fileName": "src/test/resources/events/EventsIn.json" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + } + }, + "RestRequestorConsumer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTREQUESTOR", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restrequestor.RESTRequestorCarrierTechnologyParameters", + "parameters": { + "url": "http://localhost:32801/TestRESTRequestor/apex/event/PutEvent", + "httpMethod": "PUT", + "restRequestTimeout": 2000 + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0100", + "requestorMode": true, + "requestorPeer": "RestRequestorProducer", + "requestorTimeout": 500 + } + }, + "eventOutputParameters": { + "RestRequestorProducer": { + "carrierTechnologyParameters": { + "carrierTechnology": "RESTREQUESTOR", + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restrequestor.RESTRequestorCarrierTechnologyParameters" + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0004", + "requestorMode": true, + "requestorPeer": "RestRequestorConsumer", + "requestorTimeout": 500 + }, + "FileProducer": { + "carrierTechnologyParameters": { + "carrierTechnology": "FILE", + "parameters": { + "fileName": "src/test/resources/events/EventsOut.json" + } + }, + "eventProtocolParameters": { + "eventProtocol": "JSON" + }, + "eventNameFilter": "Event0104" + } + } +} |