InterviewSolution
| 1. |
What Are Branch Nodes And Route Nodes? |
|
Answer» A branch node allows processing to proceed down exactly one of several possible PATHS. Branching is driven by a simple lookup table with each branch tagged with a simple but unique string value. A variable in the message context is DESIGNATED as the lookup variable for that node, and its value is used to determine which branch to follow. If no branch matches the value of the lookup variable, then a default branch is followed. The value of the lookup variable must be set before reaching the branch node. This approach ensures that exceptions do not OCCUR within the branch node itself. A branch node may have several descendants in the message flow TREE: one for each branch including the default branch. The route node is used to PERFORM request and response communication with another service. It represents the boundary between request and response processing for the proxy service, and therefore, cannot have any descendants in the message flow tree. When the route node dispatches a request message, request processing is considered finished. When the route node receives a response message, response processing begins. The route node is very flexible in its specification and supports conditional routing as well as outbound and response transformations. It allows if structures and case structures to be combined (and nested) to define a single endpoint and operation to route the message. A branch node allows processing to proceed down exactly one of several possible paths. Branching is driven by a simple lookup table with each branch tagged with a simple but unique string value. A variable in the message context is designated as the lookup variable for that node, and its value is used to determine which branch to follow. If no branch matches the value of the lookup variable, then a default branch is followed. The value of the lookup variable must be set before reaching the branch node. This approach ensures that exceptions do not occur within the branch node itself. A branch node may have several descendants in the message flow tree: one for each branch including the default branch. The route node is used to perform request and response communication with another service. It represents the boundary between request and response processing for the proxy service, and therefore, cannot have any descendants in the message flow tree. When the route node dispatches a request message, request processing is considered finished. When the route node receives a response message, response processing begins. The route node is very flexible in its specification and supports conditional routing as well as outbound and response transformations. It allows if structures and case structures to be combined (and nested) to define a single endpoint and operation to route the message. |
|