/* * Copyright 2015 Red Hat, Inc. and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * * 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. */ package org.kie.server.client; import org.kie.server.client.jms.ResponseHandler; public interface UIServicesClient { public static final String FORM_MODELLER_TYPE = "FORM"; public static final String FORM_TYPE = "FRM"; public static final String FREE_MARKER_TYPE = "FTL"; public static final String ANY_FORM = "ANY"; /** * Returns process form for given process id that resides in given container. It returns default form type * which is (FORM - build with form modeler). If there is a need to select the type use #getProcessFormByType * @param containerId container identifier where process resides * @param processId unique process id * @param language language that form should be filtered for * @return string representation (json or xml depending on client marshaling selection) of the process form */ String getProcessForm(String containerId, String processId, String language); /** * Returns process form for given process id that resides in given container * @param containerId container identifier where process resides * @param processId unique process id * @param language language that form should be filtered for * @param formType type of form to be returned (FORM - default (form modeler), FRM - v7 forms, FTL - freemarker template) * @return string representation (json or xml depending on client marshaling selection) of the process form */ String getProcessFormByType(String containerId, String processId, String language, String formType); /** * Returns process form for given process id that resides in given container - without filtering values by language. It returns default form type * which is (FORM - build with form modeler). If there is a need to select the type use #getProcessFormByType * @param containerId container identifier where process resides * @param processId unique process id * @return string representation (json or xml depending on client marshaling selection) of the process form */ String getProcessForm(String containerId, String processId); /** * Returns process form for given process id that resides in given container - without filtering values by language. It returns default form type * which is (FORM - build with form modeler). If there is a need to select the type use #getProcessFormByType * @param containerId container identifier where process resides * @param processId unique process id * @return string representation of the process form without any marshalling */ String getProcessRawForm(String containerId, String processId); /** * Returns process form for given process id that resides in given container - without filtering values by language * @param containerId container identifier where process resides * @param processId unique process id * @param formType type of form to be returned (FORM - default (form modeler), FRM - v7 forms, FTL - freemarker template) * @return string representation (json or xml depending on client marshaling selection) of the process form */ String getProcessFormByType(String containerId, String processId, String formType); /** * Returns task form for given task id that belongs to given container. It returns default form type * which is (FORM - build with form modeler). If there is a need to select the type use #getProcessFormByType * @param containerId container identifier where task resides * @param taskId unique task id * @param language language that form should be filtered for * @return string representation (json or xml depending on client marshaling selection) of the task form */ String getTaskForm(String containerId, Long taskId, String language); /** * Returns task form for given task id that belongs to given container. * @param containerId container identifier where task resides * @param taskId unique task id * @param language language that form should be filtered for * @param formType type of form to be returned (FORM - default (form modeler), FRM - v7 forms, FTL - freemarker template) * @return string representation (json or xml depending on client marshaling selection) of the task form */ String getTaskFormByType(String containerId, Long taskId, String language, String formType); /** * Returns task form for given task id that belongs to given container as raw content - without filtering values by language. * It returns default form type which is (FORM - build with form modeler). If there is a need to select the type use #getProcessFormByType * @param containerId container identifier where task resides * @param taskId unique task id * @return string representation (json or xml depending on client marshaling selection) of the task form */ String getTaskForm(String containerId, Long taskId); /** * Returns task form for given task id that belongs to given container as raw content - without filtering values by language. * It returns default form type which is (FORM - build with form modeler). If there is a need to select the type use #getProcessFormByType * @param containerId container identifier where task resides * @param taskId unique task id * @return string representation of the task form without any marshalling */ String getTaskRawForm(String containerId, Long taskId); /** * Returns task form for given task id that belongs to given container as raw content - without filtering values by language. * It returns default form type which is (FORM - build with form modeler). If there is a need to select the type use #getProcessFormByType * @param containerId container identifier where task resides * @param taskId unique task id * @param formType type of form to be returned (FORM - default (form modeler), FRM - v7 forms, FTL - freemarker template) * @return string representation (json or xml depending on client marshaling selection) of the task form */ String getTaskFormByType(String containerId, Long taskId, String formType); /** * Returns process image (svg) of the given process id that belongs to given container * @param containerId container identifier where process resides * @param processId unique process id * @return svg (xml) representing process image */ String getProcessImage(String containerId, String processId); /** * Returns process image (svg) with annotated active and completed nodes for given process instance * that belongs to given container * @param containerId container identifier where process resides * @param processInstanceId unique process instance id * @return svg (xml) representing process image annotated with active (in red) and completed (in grey) nodes */ String getProcessInstanceImage(String containerId, Long processInstanceId); /** * Override default response handler to change interaction pattern. Applies only to JMS * based integration. * @param responseHandler */ void setResponseHandler(ResponseHandler responseHandler); }