org.apache.ode.bpel.engine

## Class IMAManager

- java.lang.Object
- - org.apache.ode.bpel.engine.IMAManager

- All Implemented Interfaces:
    java.io.Serializable

      public class IMAManager
      extends java.lang.Object
      implements java.io.Serializable

  This class handles behaviour of IMAs (Inbound Message Activities) as specified in WS BPEL. This includes detecting conflictingReceive and conflictingRequest faults.

  See Also:
    Serialized Form

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `class` | `IMAManager.Entry`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `java.util.Map<java.lang.String,IMAManager.Entry>` | `_byChannel`
    `java.util.Map<org.apache.ode.bpel.engine.IMAManager.OutstandingRequestIdTuple,java.lang.String>` | `_byOrid`
    `java.util.Map<org.apache.ode.bpel.engine.IMAManager.RequestIdTuple,IMAManager.Entry>` | `_byRid`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `IMAManager()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `migrateRids(java.util.Map<OutstandingRequestManager.RequestIdTuple,OutstandingRequestManager.Entry> oldRids)`
    `java.lang.String` | `release(PartnerLinkInstance plinkInstnace, java.lang.String opName, java.lang.String mexId)` Release Open IMA.
    `java.lang.String[]` | `releaseAll()` "Release" all Open IMAs
    `java.lang.String` | `toString()`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### _byRid

          public final java.util.Map<org.apache.ode.bpel.engine.IMAManager.RequestIdTuple,IMAManager.Entry> _byRid

    - #### _byOrid

          public final java.util.Map<org.apache.ode.bpel.engine.IMAManager.OutstandingRequestIdTuple,java.lang.String> _byOrid

    - #### _byChannel

          public final java.util.Map<java.lang.String,IMAManager.Entry> _byChannel

  - ### Constructor Detail

    - #### IMAManager

          public IMAManager()

  - ### Method Detail

    - #### release

          public java.lang.String release(PartnerLinkInstance plinkInstnace,
                                          java.lang.String opName,
                                          java.lang.String mexId)

      Release Open IMA.
      Parameters:
        `plinkInstnace` - partner link
        `opName` - operation
        `mexId` - message exchange identifier IN THE BPEL SENSE OF THE TERM (i.e. a receive/reply disambiguator).
      Returns:
        message exchange identifier associated with the registration that matches the parameters

    - #### migrateRids

          public void migrateRids(java.util.Map<OutstandingRequestManager.RequestIdTuple,OutstandingRequestManager.Entry> oldRids)

    - #### releaseAll

          public java.lang.String[] releaseAll()

      "Release" all Open IMAs
      Returns:
        a list of message exchange identifiers for message exchanges that were begun (receive/pick got a message) but not yet completed (reply not yet sent)

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`