0cc81bf0c6c842ed85f3a236added34601741e82
[so.git] / bpmn / MSOInfrastructureBPMN / src / main / java / org / openecomp / mso / bpmn / infrastructure / workflow / service / WorkflowAsyncInfrastructureResource.java
1 /*-\r
2  * ============LICENSE_START=======================================================\r
3  * OPENECOMP - MSO\r
4  * ================================================================================\r
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
6  * ================================================================================\r
7  * Licensed under the Apache License, Version 2.0 (the "License");\r
8  * you may not use this file except in compliance with the License.\r
9  * You may obtain a copy of the License at\r
10  * \r
11  *      http://www.apache.org/licenses/LICENSE-2.0\r
12  * \r
13  * Unless required by applicable law or agreed to in writing, software\r
14  * distributed under the License is distributed on an "AS IS" BASIS,\r
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
16  * See the License for the specific language governing permissions and\r
17  * limitations under the License.\r
18  * ============LICENSE_END=========================================================\r
19  */\r
20 \r
21 package org.openecomp.mso.bpmn.infrastructure.workflow.service;\r
22 \r
23 import javax.ws.rs.Path;\r
24 \r
25 import org.camunda.bpm.engine.ProcessEngineServices;\r
26 import org.camunda.bpm.engine.ProcessEngines;\r
27 import org.openecomp.mso.bpmn.common.workflow.service.WorkflowAsyncResource;\r
28 \r
29 \r
30 /**\r
31  * \r
32  * @version 1.0\r
33  * Asynchronous Workflow processing using JAX RS RESTeasy implementation\r
34  * Both Synchronous and Asynchronous BPMN process can benefit from this implementation since the workflow gets executed in the background\r
35  * and the server thread is freed up, server scales better to process more incoming requests\r
36  * \r
37  * Usage: For synchronous process, when you are ready to send the response invoke the callback to write the response\r
38  * For asynchronous process - the activity may send a acknowledgement response and then proceed further on executing the process\r
39  */\r
40 @Path("/async")\r
41 public class WorkflowAsyncInfrastructureResource extends WorkflowAsyncResource {\r
42         \r
43     protected ProcessEngineServices getProcessEngineServices() {\r
44         return pes4junit.orElse(ProcessEngines.getProcessEngine("infrastructure"));\r
45     }\r
46 }\r