Share via


The ItineraryStep Class

Retired Content

This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This page may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

The ItineraryStep class is a container for the values of a specific itinerary stage. The ItineraryHelper class returns an instance of the ItineraryStep class from its CurrentStep method.

The ItineraryStep class is part of the project named ESB.Itinerary.csproj, located in the \Source\Core\Source\ESB.Itinerary** **folder. The ESB Guidance Core installer installs and registers the ItineraryStep class in the global assembly cache.

The ItineraryStep class exposes several public properties that provide information about the current Itinerary step. These properties include the following:

  • BizTalkSegment. This is an instance of the BizTalkSegment class that contains message identifiers and other values from the message.
  • CurrentPosition. This is the current position in the itinerary as an Integer value.
  • CurrentResolverGroup. This is a String that contains the name of the resolver group currently providing resolution services for the message.
  • CurrentServiceName. This is a String that contains the name of the service currently processing the message.
  • CurrentServiceType. This is a value from the ItineraryServiceType enumeration that indicates the type of service processing the message. Valid values are Messaging, Orchestration, and Unknown.
  • HasNextService. This is a Boolean value that indicates whether there is a next step available in the itinerary.
  • IsRequestResponse. This is a Boolean value that indicates whether the message itinerary is a request/response type.
  • Itinerary. This is a String containing the complete itinerary as a comma-delimited list, including the current processing instruction.
  • NextServiceName. This is a String containing the name of the next service in the itinerary.
  • NextServiceType. This is a value from the ItineraryServiceType enumeration that indicates the type of the next service that will process the message. Valid values are Messaging, Orchestration, and Unknown.
  • ResolverCollection. This is an instance of the ResolverCollection class that contains a list of the resolvers currently providing resolution services for the message.

Using the ItineraryHelper and ItineraryStep Classes

The following code shows how the ESB Dynamic Transformation agent uses the AdvanceItinerary method of the ItineraryHelper class and the ItineraryStep class to manipulate its itinerary.

itineraryStep = 
  Microsoft.Practices.ESB.Itinerary.ItineraryHelper.CurrentStep(
                                                    InboundMessage);
Microsoft.Practices.ESB.Itinerary.ItineraryHelper.AdvanceItinerary(
                                  OutboundMessage, itineraryStep);