10Extending the Connector

Extending the Connector

Overview of Extending the Connector

A hook point is a service you can use to extend a composite. It uses input that you provide to communicate with a composite and it returns a result from the composite. You can use hook points to extend the following items:

  • Schema

  • Mediator

  • BPEL flow

Note the following:

  • This integration uses each hook point as a placeholder in a BPEL flow.

  • A hook point does not include any functionality or perform any manipulation other than to access a composite.

  • Every hook point uses a synchronous request and reply model.

  • You can use hook points to extend a direct integration flow.

  • This integration disables every hook point by default. To use a hook point, you must set a DVM (domain value map) parameter for the hook point parameter to true. For more information, see Parameters You Must Set in the Parameter Definition File.

  • If you use a hook point, then make sure you avoid a name space conflict in the implementation.

The following illustrates a generic flow that includes hook points.

Generic Flow That Includes Hook Points. This image is described in the surrounding text.

    Explanation of Callouts

    This integration performs the following work for most hook points:

    1. Hook Point 1. The input for hook point 1 is the Siebel request message. For example, the Siebel input for the appointment booking flow is absInput. The output of hook point 1 is the extended Siebel request message.

    2. Hook Point 2. The input for hook point 2 is the extended Siebel request message to the composite and the Oracle Real-Time Scheduler request message for the operation. The composite that calls the hook point determines this operation. The output for hook point 2 is the Oracle Real-Time Scheduler requested message for the called operation. For more information, see Hook Point Operations That This Integration Calls.

    3. Hook Point 3. The input for hook point 3 is the Oracle Real-Time Scheduler response message. The composite that calls the hook point determines this output. For example, the Siebel output for the appointment booking flow is absReply. The output for hook point 3 is the Siebel response message.

    4. ORS Web Service. The external Web service that the composite calls.

      Process of Extending the Connector

      This topic describes one example of extending the connector. You might use this feature differently, depending on your business model. To extend the connector, perform the following tasks:

      1. Creating Siebel CRM Objects

      2. Incorporating Your Extensions in Oracle Fusion Middleware

      In this example, you add the following new fields to the book appointment flow:

      • Minimum Offset

      • Maximum Offset

      • Primary Activity

        Creating Siebel CRM Objects

        This task is a step in Process of Extending the Connector.

        In this topic, you create Siebel CRM objects.

        To create Siebel CRM objects

        1. Open Siebel Tools or Web Tools as Administrator and create a new Workspace.

        2. Display the object types you must modify:

          1. Click the View menu, and then the Options menu item.

          2. In the Development Tools Options dialog box, click the Object Explorer tab.

          3. In the Object Explorer Hierarchy window, make sure the Integration Object tree contains a check mark, and then click OK.

        3. Create new table columns:

          1. In the Object Explorer, click Table.

          2. In the Tables list, query the Name property for S_EVT_ACT.

          3. Right-click the S_EVT_ACT table, and then choose Lock Object.

          4. In the Object Explorer, expand the Table tree, and then click Column.

          5. In the Columns list, add three new columns using values from the following table.

            Name Physical Type Length Type

            X_MAX_OFFSET

            Varchar

            30

            Extension

            X_MIN_OFFSET

            Varchar

            30

            Extension

            X_PRIMARY_ACT_ID

            Varchar

            30

            Extension

          6. In the Tables list, click Apply/DDL.

        4. Create new business component fields:

          1. In the Object Explorer, click Business Component.

          2. In the Business Components list, query the Name property for Action.

          3. In the Object Explorer, expand the Business Component tree and then click Field.

          4. In the Fields list, add three new fields using values from the following table.

            Name Column Default Value

            Max Offset

            X_MAX_OFFSET

            00:40:00

            Min Offset

            X_MIN_OFFSET

            00:10:00

            Primary Activity Id

            X_PRIMARY_ACT_ID

            Field: "Id"

            This configuration uses default values. Siebel CRM includes these values in the fields of each new activity record.

        5. Create new integration component fields:

          1. In the Object Explorer, click Integration Object.

          2. In the Integration Object list, query the Name property for Abssiebel.

            The Abssiebel integration object is predefined with this integration.

          3. In the Object Explorer, expand the Integration Object tree, and then click Integration Component.

          4. In the Integration Component list, query the Name property for Action.

          5. In the Object Explorer, expand the Integration Component tree, and then click Integration Component Field.

          6. In the Integration Component Fields list, add a new field using values from the following table.

            Property Value

            Name

            Max Offset

            Data Type

            DTYPE_TEXT

            External Name

            Max Offset

            External Data Type

            DTYPE_TEXT

            External Sequence

            656

            XML Tag

            MaxOffset

          7. In the Integration Component Fields list, add a new field using values from the following table.

            Property Value

            Name

            Min Offset

            Data Type

            DTYPE_TEXT

            External Name

            Min Offset

            External Data Type

            DTYPE_TEXT

            External Sequence

            655

            XML Tag

            MinOffset

          8. In the Integration Component Fields list, add a new field using values from the following table.

            Property Value

            Name

            Primary Activity Id

            Data Type

            DTYPE_TEXT

            External Name

            Primary Activity Id

            External Data Type

            DTYPE_TEXT

            External Sequence

            654

            XML Tag

            PrimaryActivityId

        6. Deliver the changes to the Integration Branch for the following projects:

          • Activity

          • AdvScheduler

        The AdvScheduler project is predefined with this integration.

          Incorporating Your Extensions in Oracle Fusion Middleware

          This task is a step in Process of Extending the Connector.

          In this topic, you incorporate your extensions in Oracle Fusion Middleware. To configure this example, you must possess detailed expertise and knowledge of using Oracle JDeveloper.

          To incorporate your extensions in Oracle Fusion Middleware

          1. Open the Oracle SOA Composer for your integration.

            For example, open Internet Explorer, and then navigate to the following address:

            http://computer_address:soa_server_port/soa/composer
            
          2. At the login screen, enter your user name and password, and then click Login.

          3. Enable the hook point you use in this example:

            1. Click Open, and then choose Open DVM.

            2. In the Select a DVM dialog box, click SBL_ORS_Parameter_Definition.dvm, and then click Open.

            3. In the SBL_ORS_Parameter_Definition.dvm screen, enable the CustomExtn_BookAppt_Hook2_Enabled parameter using values from the following table.

              Parameter Value

              CustomExtn_BookAppt_Hook2_Enabled

              true

              For more information, see Parameters You Must Set in the Parameter Definition File.

          4. Open Oracle JDeveloper, and then do the following work:

            1. Add three new fields:

              • Use the same name and type that you used in Step 4 in Creating Siebel CRM Objects.

              • Add these fields in the absSiebel.xsd input XSD. This XSD is located in the following directory:

                oramds:/apps/SBL_ORS_INTRG/v1/XSD
                
              • Add these fields in the Action complexType element.

            2. Add the fields that you added in the previous step to the mediator XSLT files:

              Mediator_Input_To_BPEL_ApptBookingSys_BookAppt.xsl

              This XSLT file is located in the following directory in Oracle MDS:

              oramds:/apps/SBL_ORS_INTRG/v1/XSLT
              

              This step configures this integration to route the changes you make in Siebel CRM through the mediator to Oracle Fusion Middleware.

            3. Add the extra fields that you added in Step A to hook point 2 in the following file:

              CustomExtn_BookAppt_Hook2_Inpt.xsl

              This step configures this integration to send information about the new fields to the hook point.

            4. To manipulate the transformation from Siebel CRM to Oracle Real-Time Scheduler, map the following fields in the input for hook point 2.

              Siebel CRM Oracle Real-Time Scheduler

              PrimaryActivityId

              PRIMARY_STOP_ID

              MinOffset

              MIN_OFFSET

              MaxOffset

              MAX_OFFSET

              To avoid a conflict, make sure all names you use are unique.

          5. Deploy the main composite and the hook point:

            1. To make sure this integration updates the Oracle Meta Data Services with your changes, use the updateMDS ant command.

              For more information, see Ant Commands You Can Use to Compile and Deploy Composites.

            2. Compile and deploy your changes.

              For more information, see Compiling and Deploying Oracle Fusion Middleware Artifacts.

          6. Test your changes.

          To test your extension you run the appointment booking flow. For more information, see Siebel Field Service Integration to Oracle Real-Time Scheduler Installation and Administration Guide.

            Using Hook Point 1 and Hook Point 3

            This topic describes how to use only hook point 2. To make sure the output is correct, hook point 1 and hook point 3 are disabled. If you require hook point 1 or hook point 3, then make sure you do the following work:

            • Modify the XSLT transformation files for hook point 1 and hook point 3.

            • Set the corresponding DVM parameters to true.

              Other Examples of Extending the Connector

              This topic describes other examples of extending the connector.

                Transforming Fields

                You can use this integration to transform fields. For example, assume you must transform the employee Start Depot Address field and End Depot Address field instead of the Employee Start Home field and End Home address field. In this situation, you must configure this integration to send the Employee Logon field and Employee Logoff field to Oracle Real-Time Scheduler.

                Siebel CRM Oracle Fusion Middleware Oracle Real-Time Scheduler

                You can do the following work:

                • Add a new field in the Employee business component. If necessary, extend the S_EMP_PER table.

                • Make sure the corresponding integration object includes the new integration component fields. For example:

                  • StartDepotAddress

                  • EndDepotAddress

                You can do the following work:

                • Manually update the XSD in Oracle MDS.

                • Update the XSLT file of the transfer mediator.

                • Modify hook point 1 of the AdminDataManagement_EBF composite to include the extra field in the Web service request to Oracle Real-Time Scheduler.

                No configuration.

                  Reference Information for Extending the Connector

                  This topic describes reference information for extending the connector. It includes the following topics:

                    Predefined Hook Points You Can Use in Integration Flows

                      Hook Points That Book an Appointment

                      Hook Point Name Placement of Hook Point How You Can Use the Hook Point

                      BookAppointment_Hook1

                      In the integration flow to book an appointment as soon as the input from Siebel CRM reaches Oracle Fusion Middleware. For more information, see Step 1 in Explanation of Callouts.

                      Manipulate the input from Siebel CRM as soon as it reaches Oracle Fusion Middleware.

                      BookAppointment_Hook2

                      In the integration flow to book an appointment before this integration calls the CHS_SLOT method. For more information, see Step 5 in Explanation of Callouts.

                      Manipulate the input to the CHS_SLOT method.

                      BookAppointment_Hook3

                      In the integration flow to book an appointment before this integration sends the output from the CHS_SLOT method to Siebel CRM. For more information, see Step 7 in Explanation of Callouts.

                      Manipulate the output from the CHS_SLOT method.

                      ConfirmAppointment_Hook1

                      In the integration flow to confirm an appointment as soon as the input from Siebel CRM reaches Oracle Fusion Middleware. For more information, see Step 1 in Explanation of Callouts.

                      Manipulate the input from Siebel CRM as soon as it reaches Oracle Fusion Middleware.

                      ConfirmAppointment_Hook2

                      In the integration flow to confirm an appointment before this integration calls the ASSIGN_JOB_COND method. For more information, see Step 5 in Explanation of Callouts.

                      Manipulate the input to the ASSIGN_JOB_COND method.

                      ConfirmAppointment_Hook3

                      In the integration flow to book an appointment before this integration sends the output from the ASSIGN_JOB_COND method to Siebel CRM. For more information, see Step 7 in Explanation of Callouts.

                      Manipulate the output from the CHS_SLOT method.

                      UpsertActivity_Hook1

                      In the integration flow to update and insert an appointment as soon as the input from Siebel CRM reaches Oracle Fusion Middleware. For more information, see Step 1 in Explanation of Callouts.

                      Manipulate the input from Siebel CRM as soon as it reaches Oracle Fusion Middleware.

                      UpsertActivity_Hook2

                      In the integration flow to update and insert an appointment before this integration calls the UPDATE_STOP method. For more information, see Step 5 in Explanation of Callouts.

                      Manipulate the input to the UPDATE_STOP method.

                      UpsertActivity_Hook3

                      In the integration flow to book an appointment before this integration sends the output from the UPDATE_STOP method to Siebel CRM. For more information, see Step 7 in Explanation of Callouts.

                      Manipulate the output from the UPDATE_STOP method.

                      For more information about each flow that this table describes, see Integration Flows That Book an Appointment.

                        Hook Points That Retrieve Activity Details fromOracle Real-Time Scheduler

                        Hook Point Name Placement of Hook Point How You Can Use the Hook Point

                        RefreshActivity_Hook1

                        As soon as the input from Siebel CRM reaches Oracle Fusion Middleware. For more information, see Step 1 in Explanation of Callouts.

                        Manipulate the input from Siebel CRM as soon as it reaches Oracle Fusion Middleware.

                        RefreshActivity_Hook2

                        Before this integration calls the GET_STOP method. For more information, see Step 5 in Explanation of Callouts

                        Manipulate the input to the GET_STOP method.

                        Refresh Activity_Hook3

                        Before this integration sends the output from the GET_STOP method to Siebel CRM. For more information, see Step 7 in Explanation of Callouts.

                        Manipulate the output from the GET_STOP method.

                        For more information about each flow described in this table, see Integration Flow That Retrieves Activity Details from Oracle Real-Time Scheduler.

                          Hook Points That Synchronize a Shift, Break, or POU Status

                          Hook Point Name Placement of Hook Point How You Can Use the Hook Point

                          SyncBackShift_Hook1

                          Before this integration calls the GET_SHIFT method of the ORS Web service.

                          Manipulate the input to the GET_SHIFT method.

                          SyncBackShift_Hook2

                          After this integration calls the ORS_WebService Web service.

                          Manipulate the output from the GET_SHIFT method.

                          SyncBackDeleteShift_Hook1

                          Before this integration calls the IntegratedPOUShiftBreakORSWS_Delete method of the deleteShift Web service in the syncback shift flow.

                          Manipulate the input to the IntegratedPOUShiftBreakORSWS_Delete method.

                          SyncBackPOU_Hook1

                          Before this integration calls the GET_POU method of the ORS_WebService Web service.

                          Manipulate the input to the GET_POU method.

                          SyncBackPOU_Hook2

                          After this integration calls the GET_POU method of the ORS_WebService Web service.

                          Manipulate the output to the GET_POU method.

                          SyncBackPOU_Hook3

                          Before this integration calls the POUUpsert method of the POUShiftBreakUpdate Web service.

                          Manipulate the input to the POUUpsert method.

                          SyncBackShift_Hook3

                          Before this integration calls the POUUpsert method of the POUShiftBreakUpdate Web service. The SyncBackShift_Hook3 hook point calls the same operation and Web service as the SyncBackPOU_Hook3 hook point.

                          Manipulate the input to the POUUpsert method.

                          SyncBackBreak_Hook

                          Before this integration calls the POUUpsert method of the POUShiftBreakUpdate Web service.

                          Manipulate the input to the POUUpsert method.

                          SyncBackActivity_Hook1

                          Before this integration calls the GET_STOP method of the ORS_WebService Web service.

                          Manipulate the input to the GET_STOP method.

                          SyncBackActivity_Hook2

                          After this integration receives a reply from the GET_STOP method of the ORS Web service.

                          Manipulate the output from the GET_STOP method.

                          SyncBackActivity_Hook3

                          Before this integration calls the ActivitySyncORSWS_Update method of the ORS Web service.

                          Manipulate the input to the ActivitySyncORSWS_Update method.

                          For more information about each flow described in this table, see Integration Flow That Synchronizes a Shift, Break, or POU Status from Siebel CRM to Oracle Real-Time Scheduler.

                            Hook Points That Update Employee Data

                            Hook Point Name Placement of Hook Point How You Can Use the Hook Point

                            EmployeeUpsert_Hook1

                            In the integration flow to update employee data as soon as the input from Siebel CRM reaches Oracle Fusion Middleware. For more information, see Step 1 in Explanation of Callouts.

                            Manipulate the input from Siebel CRM as soon as it reaches Oracle Fusion Middleware.

                            EmployeeUpsert_Hook2

                            In the integration flow to update employee data before this integration calls the UPDATE_DRIVER method. For more information, see Step 5 in Explanation of Callouts.

                            Manipulate the input to the UPDATE_DRIVER method.

                            EmployeeUpsert_Hook3

                            In the integration flow to update employee data before this integration sends the output from the UPDATE_DRIVER method to Siebel CRM. For more information, see Step 6 in Explanation of Callouts.

                            Manipulate the output from the UPDATE_DRIVER method.

                            AddressUpsert_Hook1

                            In the integration flow to update an address as soon as the input from Siebel CRM reaches Oracle Fusion Middleware.

                            Manipulate the input from Siebel CRM as soon as it reaches Oracle Fusion Middleware.

                            AddressUpsert_Hook2

                            In the integration flow to update an address before this integration calls the UPDATE_COMMON_ADDRESS method.

                            Manipulate the input to the UPDATE_COMMON_ADDRESS method.

                            AddressUpsert_Hook3

                            In the integration flow to update an address before this integration sends the output from the UPDATE_COMMON_ADDRESS method to Siebel CRM.

                            Manipulate the output from the UPDATE_COMMON_ADDRESS method.

                            For more information about each flow described in this table, see Integration Flows That Update Employee Data in Real Time.

                              Hook Points That Perform a Service Region Data Transfer

                              Table Predefined Hook Points That Perform a Service Region Data Transfer

                              Hook Point Name Placement of Hook Point How You Can Use the Hook Point

                              StartAddressTransfer

                              Before this integration calls the UPSERT_ADDRESS method in the start address data transfer flow. For more information, see Step 6 in Explanation of Callouts.

                              Manipulate the input to the UPSERT_ADDRESS method.

                              EndAddressTransfer

                              Before this integration calls the UPSERT_ADDRESS method in the end address data transfer flow. For more information, see Step 6 in Explanation of Callouts.

                              Manipulate the input to the UPSERT_ADDRESS method.

                              EmployeeTransfer

                              Before this integration calls the UPSERT_EMPLOYEE method.

                              Manipulate the input to the UPSERT_EMPLOYEE method.

                              ActivityTransfer

                              Before this integration calls the Upsert_Activity method. For more information, see Step 10 in Explanation of Callouts.

                              Manipulate the input to the Upsert_Activity method.

                              For more information about each flow described in this table, see Integration Flow That Performs a Service Region Data Transfer. These hook points occur in a subflow in the address transfer flow. Integration Flow That Performs a Service Region Data Transfer does not display this subflow.

                                Hook Point Operations That This Integration Calls

                                Table Hook Point Operations That This Integration Calls

                                Hook Point Name Operation That This Integration Calls

                                BookAppointment_Hook1

                                custom_extension_book

                                BookAppointment_Hook2

                                custom_extension_bookappt_hook2

                                BookAppointment_Hook3

                                custom_extension_book_hook3

                                ConfirmAppointment_Hook1

                                custom_extension_confirm

                                ConfirmAppointment_Hook2

                                custom_extension_confirmappt_hook2

                                ConfirmAppointment_Hook3

                                custom_extension_confirm_hook3

                                UpsertActivity_Hook1

                                custom_extension_upsertactivity_hook1

                                UpsertActivity_Hook2

                                custom_extension_upsertactivity_hook2

                                UpsertActivity_Hook3

                                custom_extension_book_hook3

                                EmployeeUpsert_Hook1

                                custom_extension_employee_upsert

                                EmployeeUpsert_Hook2

                                custom_extension_employeeupsert_hook2

                                EmployeeUpsert_Hook3

                                custom_extension_employeeupsert_hook3

                                AddressUpsert_Hook1

                                custom_extension_book

                                AddressUpsert_Hook2

                                custom_extension_addressupsert_hook2

                                AddressUpsert_Hook3

                                custom_extension_book_hook3

                                RefreshActivity_Hook1

                                custom_refresh_activitystatus_hook1

                                RefreshActivity_Hook2

                                custom_refresh_activitystate_hook2

                                Refresh Activity_Hook3

                                custom_refresh_activitystate_hook3

                                StartAddressTransfer_Hook

                                custom_serviceregncutover_addresstransfer_hook

                                EndAddressTransfer_Hook

                                custom_serviceregncutover_addresstransfer_hook

                                EmployeeTransfer_Hook

                                custom_serviceregncutover_employeetransfer_hook

                                ActivityTransfer_Hook

                                custom_serviceregncutover_activitytransfer_hook

                                SyncBackShift_Hook1

                                custom_extension_syncback_shift_hook1

                                SyncBackShift_Hook2

                                custom_extn_syncback_shift_hook2

                                SyncBackDeleteShift_Hook1

                                custom_extn_shiftdelete_hook1

                                SyncBackPOU_Hook1

                                custom_extn_syncback_pou_hook1

                                SyncBackPOU_Hook2

                                custom_extn_syncbackpou_hook2

                                SyncBackPOU_Hook3

                                custom_extn_syncbackpou_hook3

                                SyncBackShift_Hook3

                                custom_extn_syncbackshift_hook3

                                SyncBackBreak_Hook

                                custom_extn_syncback_break_hook1

                                SyncBackActivity_Hook1

                                custom_extn_syncback_activity_hook1

                                SyncBackActivity_Hook2

                                custom_extn_syncback_activity_hook2

                                SyncBackActivity_Hook3

                                custom_extn_syncback_activity_hook3

                                  Parameters You Must Set in the Parameter Definition File

                                  To use a hook point, you must set the enable parameter for the hook point to true. For example, to use the BookAppointment_Hook1 hook point, you must set the following DVM parameter in the SBL_ORS_Parameter_Definition.dvm file to true:

                                  CustomExtn_BookAppt_Hook1_Enabled

                                  Hook Point Name Parameter

                                  BookAppointment_Hook1

                                  CustomExtn_BookAppt_Hook1_Enabled

                                  BookAppointment_Hook2

                                  CustomExtn_BookAppt_Hook2_Enabled

                                  BookAppointment_Hook3

                                  CustomExtn_BookAppt_Hook3_Enabled

                                  ConfirmAppointment_Hook1

                                  CustomExtn_ConfirmAppt_Hook1_Enabled

                                  ConfirmAppointment_Hook2

                                  CustomExtn_ConfirmAppt_Hook2_Enabled

                                  ConfirmAppointment_Hook3

                                  CustomExtn_ConfirmAppt_Hook3_Enabled

                                  UpsertActivity_Hook1

                                  CustomExtn_UpsertActivity_Hook1_Enabled

                                  UpsertActivity_Hook2

                                  CustomExtn_UpsertActivity_Hook2_Enabled

                                  UpsertActivity_Hook3

                                  CustomExtn_UpsertActivity_Hook3_Enabled

                                  EmployeeUpsert_Hook1

                                  CustomExtn_EmployeeUpsert_Hook1_Enabled

                                  EmployeeUpsert_Hook2

                                  CustomExtn_EmployeeUpsert_Hook2_Enabled

                                  EmployeeUpsert_Hook3

                                  CustomExtn_EmployeeUpsert_Hook3_Enabled

                                  AddressUpsert_Hook1

                                  CustomExtn_AddressUpsert_Hook1_Enabled

                                  AddressUpsert_Hook2

                                  CustomExtn_AddressUpsert_Hook2_Enabled

                                  AddressUpsert_Hook3

                                  CustomExtn_AddressUpsert_Hook3_Enabled

                                  RefreshActivity_Hook1

                                  CustomExtn_RefreshActivity_Hook1_Enabled

                                  RefreshActivity_Hook2

                                  CustomExtn_RefreshActivity_Hook2_Enabled

                                  Refresh Activity_Hook3

                                  CustomExtn_RefreshActivity_Hook3_Enabled

                                  StartAddressTransfer_Hook

                                  CustomExtn_ServiceRegnCutover_AddressTranfer_Hook_Enabled

                                  EndAddressTransfer_Hook

                                  CustomExtn_ServiceRegnCutover_EndAddressTansfer_Hook_Enabled

                                  EmployeeTransfer_Hook

                                  CustomExtn_ServiceRegnCutover_EmployeeTransfer_Hook_Enabled

                                  ActivityTransfer_Hook

                                  CustomExtn_ServiceRegnCutover_ActivityTransfer_Hook_Enabled

                                  SyncBackShift_Hook1

                                  CustomExtn_SyncBackActivity_Hook1_Enabled

                                  SyncBackShift_Hook2

                                  CustomExtn_SyncBackActivity_Hook2_Enabled

                                  SyncBackDeleteShift_Hook1

                                  CustomExtn_SyncShiftDelete_Hook_Enabled

                                  SyncBackPOU_Hook1

                                  CustomExtn_SyncBackPOU_Hook1_Enabled

                                  SyncBackPOU_Hook2

                                  CustomExtn_SyncBackPOU_Hook2_Enabled

                                  SyncBackPOU_Hook3

                                  CustomExtn_SyncBackPOU_Hook3_Enabled

                                  SyncBackShift_Hook3

                                  CustomExtn_SyncBackShift_Hook3_Enabled

                                  SyncBackBreak_Hook

                                  CustomExtn_SyncBackBreak_Hook_Enabled

                                  SyncBackActivity_Hook1

                                  CustomExtn_SyncBackActivity_Hook1_Enabled

                                  SyncBackActivity_Hook2

                                  CustomExtn_SyncBackActivity_Hook2_Enabled

                                  SyncBackActivity_Hook3

                                  CustomExtn_SyncBackActivity_Hook3_Enabled