psdi.iface.migexits

Class ExitProcessor

  • java.lang.Object
    • psdi.iface.migexits.ExitProcessor


  • public final class ExitProcessor
    extends java.lang.Object
    Process exits for Inbound and Outbound processes For OUTBOUND: set mbos on struc always (even if null due to retain mbo flag) create stru only if rule/exits exists, then set list of mbo, then call break data outgoing mechanisms are - invoke, publish (export), query-resp, create-resp for export (multinoun array) exits gets called only once for entire xml; user would need to know the index in the array is specific mbo is needed incoming mechanisms - create, upd, del, sync (import), query, invoke-resp For INBOUND: Rules are not part this exit processor here. They are handled in MicSetIn because rules are to be applied after Mic process calls Assignment manager which does data assignment only after exits have transformed the data.
    • Constructor Detail

      • ExitProcessor

        public ExitProcessor()
        Constructor get called many places such as Publish, Invoke, MicSetIn(for inbound process) and Query
    • Method Detail

      • processExitsOutForInProcess

        public byte[] processExitsOutForInProcess(EnterpriseServiceInfo serviceInfo,
                                                  java.lang.String extSystem,
                                                  byte[] pubXmlData,
                                                  MXTransaction mxTx,
                                                  java.util.List usedMboList,
                                                  UserInfo userInfo)
                                           throws MXException,
                                                  java.rmi.RemoteException
        Exit called as part of incoming process's response Called from: Query's response, Create's response
        Parameters:
        serviceInfo - Enterprise Service Info object
        extSystem - Name of the external system
        pubXmlData - Byte array of response Data that is going out
        mxTx - MXTransaction object
        usedMboList - List of Mbos that are used in current MX Transaction
        Returns:
        Transformed byte array
        Throws:
        MXException - - MAXIMO exception
        java.rmi.RemoteException - - Remote exception
      • processExitsOut

        public byte[] processExitsOut(InvokeInfo invkInfo,
                                      byte[] xmlData,
                                      MXTransaction mxTx,
                                      java.util.List usedMboList,
                                      UserInfo userInfo)
                               throws MXException,
                                      java.rmi.RemoteException
        Exit called as part of invocation process Called from: Invoke
        Parameters:
        invkInfo - Invoke Info object
        xmlData - Byte array of response Data that is going out
        mxTx - MXTransaction object
        usedMboList - List of Mbos that are used in current MX Transaction
        Returns:
        Transformed byte array
        Throws:
        MXException - - MAXIMO exception
        java.rmi.RemoteException - - Remote exception
      • processExitsAndRulesOut

        public java.util.Map processExitsAndRulesOut(PublishInfo pubInfo,
                                                     java.lang.String forExtSystem,
                                                     byte[] pubXmlData,
                                                     boolean isEvent,
                                                     MXTransaction mxTx,
                                                     java.util.List usedMboList,
                                                     UserInfo userInfo)
                                              throws MXException,
                                                     java.rmi.RemoteException
        Exits and Rules task being called as part of publish process Called from: Publish Channel
        Parameters:
        pubInfo - Publish Info object
        forExtSystem - If meant for a specific external system
        pubXmlData - Byte array of response Data that is going out
        isEvent - If event fired or not (indication of currently implemented export action)
        mxTx - MXTransaction object
        usedMboList - List of Mbos that are used in current MX Transaction
        Returns:
        Transformed byte array
        Throws:
        MXException - - MAXIMO exception
        java.rmi.RemoteException - - Remote exception
      • getExitHandle

        public static java.lang.Object getExitHandle(java.lang.String exitClassName,
                                                     int type)
                                              throws MXException
        Throws:
        MXException
      • mapData

        public byte[] mapData(byte[] inXML,
                              java.lang.String mapName,
                              java.util.Map params)
                       throws MXException
        Return Mapped Data
        Parameters:
        inXML - XML in byte array form
        mapName - Name of th XSL used for transformation
        params - currently not used. Place holder for future use if user wants to pass in interface name etc. (mechanism of getting user params will need to be implemented).
        Returns:
        Transformed byte array
        Throws:
        MXException - - MAXIMO exception
      • mapData

        public StructureData mapData(StructureData inData,
                                     java.lang.String mapName,
                                     java.util.Map params)
                              throws MXException
        Return Mapped Data
        Parameters:
        inData - XML in byte array form
        mapName - Name of th XSL used for transformation
        params - currently not used. Place holder for future use if user wants to pass in interface name etc. (mechanism of getting user params will need to be implemented).
        Returns:
        Transformed byte array
        Throws:
        MXException - - MAXIMO exception
      • processExitsIn

        public StructureData processExitsIn(EnterpriseServiceInfo inInfo,
                                            UserInfo userInfo,
                                            java.lang.String extSystem,
                                            byte[] erData,
                                            MXTransaction mxTrans)
                                     throws MXException,
                                            java.rmi.RemoteException
        Exit called as part of incoming query process Called from: Query
        Parameters:
        inInfo - Enterprise Service Info object
        userInfo - User Info object
        extSystem - External System
        erData - the query xml in byte[] format
        mxTrans - MXTransaction object
        Returns:
        Transformed byte array
        Throws:
        MXException - - MAXIMO exception
        java.rmi.RemoteException - - Remote exception
      • processExitsIn

        public StructureData processExitsIn(EnterpriseServiceInfo inInfo,
                                            UserInfo userInfo,
                                            java.lang.String extSystem,
                                            StructureData exitInputData,
                                            MXTransaction mxTrans)
                                     throws MXException,
                                            java.rmi.RemoteException
        Exit called as part of incoming data sync processes Called from: integration services - create, update, delete, sync
        Parameters:
        inInfo - Enterprise Service Info object
        userInfo - User Info object
        extSystem - External System
        exitInputData - Incoming data instantiated in StructureData form to prepare for exit processing
        mxTrans - MXTransaction object
        Returns:
        Transformed byte array
        Throws:
        MXException - - MAXIMO exception
        java.rmi.RemoteException - - Remote exception
      • processExitsIn

        public StructureData processExitsIn(InvokeInfo invkInfo,
                                            byte[] xmlData,
                                            MXTransaction mxTx,
                                            UserInfo userInfo)
                                     throws MXException,
                                            java.rmi.RemoteException
        Exit called as part of invocation process's response Called from: Invoke
        Parameters:
        invkInfo - Invoke Info object
        xmlData - the input xml in byte[] format
        mxTx - MXTransaction object
        userInfo - User Info object
        Returns:
        Transformed byte array
        Throws:
        MXException - - MAXIMO exception
        java.rmi.RemoteException - - Remote exception