Interface ICrossViewScopeRequest<T extends Serializable>
-
- Type Parameters:
T
- Type of the requested data.
- All Superinterfaces:
Serializable
- All Known Subinterfaces:
IDesignerConversationRequest<T>
- All Known Implementing Classes:
AddNewStateRequest
,FetchDesignerPlaceholdersRequest
,FetchWebFormPersistRequest
,FetchWorkflowConfigRequest
,FetchWorkflowPersistRequest
,FileUploadedRequest
,LoadWebFormPersistJsonRequest
,LoadWebFormPersistLivecycleRequest
,LoadWorkflowPersistRequest
public interface ICrossViewScopeRequest<T extends Serializable> extends Serializable
Base interface for a cross-view scope request for a piece of data.Assume there are two view scope A and B. A method running in the scope of A wishes to obtain some data form B. It needs to send a message (such as via an event bus) to B. However, when the message handler of B is invoked synchronously, it will still be within the scope of A and will not have access to the state of B.
To solve this, A can first store the request data within the shared conversation state. A can send a push message via a web socket to the client (web browser) of B, which can then initiate an AJAX call to the view scope of B. Now B can access the request data from the shared conversation state, create the requested data and store the requested data in the conversation state. Afterwards, B sends a push message to the client (browser) of A, which initiates another AJAX call to the view scope of A. Finally, A can access the response from the conversation state and proceed to process that response.
- Since:
- 7.0.0
- Author:
- XIMA MEDIA GmbH
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Class<? extends T>
getResponseType()
-