Introduction to Enabling Provider ABCS for Extension

13-4 Developers Guide for Oracle Application Integration Architecture Foundation Pack Figure 13–2 Requester-Specific ABCS Using Fire-and-Forget Interaction Style The first extensibility point made available to the implementers of the requester ABCS can be used to perform custom message inspection. This extensibility point can be used to inject code to perform tasks such as custom validation, message alteration, message filtering and so on. The custom code has access to the ABM that is about to be transformed and can return either an enhanced ABM or raise a fault. The second extensibility point can be used to perform custom message augmentation. The extensibility point can be used to inject code to perform tasks such as EBM enhancement, custom validation and so on. The custom code has access to EBM that is about to be used for invocation of EBS and can return either an enhanced EBM or raise a fault. The third extensibility point can be used to inject code to perform tasks such as custom validation, message alteration, message filtering and so on. The custom code has access to EBM that is about to be transformed to ABM. The custom code can return either an altered EBM or raise a fault. The fourth extensibility point can be used to inject code to perform tasks such as ABM enhancement, custom validation and so on. The custom code has access to ABM that is about to be used for invocation of callback services. The custom code can return either an altered ABM or raise a fault

13.1.2 Introduction to Enabling Provider ABCS for Extension

For requestresponse Requester ABCS, you can hook your custom code to four extensibility points: 1. Customer extension just prior to the execution of the EBM to ABM transformation. Use this configuration property name: ABCSExtension.PreXformEBMtoABM. Completing ABCS Development 13-5 2. Customer extension just prior to the invocation of application service. Use this configuration property name: ABCSExtension.PreInvokeABS. 3. Customer extension just prior to the execution of the ABM to EBM transformation and after invoking Application Service. Use this configuration property name: ABCSExtension.PostInvokeABS. 4. Customer extension just prior to the invocation of Enterprise Business Service and after transforming Application Message to Enterprise Business Message. Use this configuration property name: ABCSExtension.PostXformABMtoEBM. The third and fourth extension points are available only in the ABCS implementing request-response pattern. For Fire and Forget Requester ABCS, you can hook your custom code to two extensibility points: 1. Customer extension just prior to the execution of the EBM to ABM transformation. Use this configuration property name: ABCSExtension.PreXformEBMtoABM. 2. Customer extension just prior to the invocation of application service.Use this configuration property name: ABCSExtension.PreInvokeABS. For more information about configuration parameters, see section 15.1.3.1. Figure 13–3 depicts the high-level flow of activities in a provider-specific ABCS. The diagram assumes that the EBS with which it is interacting employs a request-response interaction style. 13-6 Developers Guide for Oracle Application Integration Architecture Foundation Pack Figure 13–3 Provider-Specific ABCS Using Request-Response Interaction Style Figure 13–4 depicts the high-level flow of activities in a provider-specific ABCS. The diagram assumes that the EBS with which it is interacting employs a fire-and-forget interaction style. Completing ABCS Development 13-7 Figure 13–4 Provider-Specific ABCS Using Fire-and-Forget Interaction Style The first extensibility point made available to the implementers of the Provider ABCS can be used to inject code to perform tasks such as custom validation, message alteration, message filtering and so on. The custom code has access to EBM that is about to be transformed. The custom code can return either an enhanced EBM or raise a fault. The second extensibility point can be used to perform custom message augmentation. The extensibility point can be used to inject code to perform tasks such as ABM enhancement, custom validation and so on. The custom code has access to ABM that is about to be used for invocation of application service. The custom code can return either an enhanced ABM or raise a fault. The third extensibility point can be used to inject code to perform tasks such as custom validation, message alteration, message filtering and so on. The custom code has access to ABM that is about to be transformed to EBM. The custom code can return either an altered ABM or raise a fault. The fourth extensibility point can be used to perform custom message augmentation. The extensibility point can be used to inject code to perform tasks such as EBM enhancement, custom validation and so on. The custom code has access to EBM that is about to be used for invocation of callback services. The custom code can return either an altered EBM or raise a fault.

13.1.3 How to Design Extensions-Aware ABCS