Configuring Siebel Open UI > Post-Upgrade Configuration Tasks > Overriding Plug-In Wrappers >

Overview of the Skeleton Structure of a Plug-in Wrapper


This topic describes the skeleton structure of a plug-in wrapper.

In releases previous to Siebel Innovation Pack 2014, you may have customized Siebel Open UI to control behavior in physical renderers. This type of customization will now need to be moved into custom plugin wrappers. The skeleton structure in this topic provides a broad overview of what parts of a plug-in wrapper you will need to customize to achieve parity with your previous customizations.

Figure 59 illustrates the basic structure of the code you use to override a plug-in wrapper. The example code, would be contained in an independent file in the following directory:

INSTALL_DIR\eappweb\PUBLIC\language_code\build_number\scripts\siebel\custom

For information about deployment and manifest configuration, see Example of Customizing Siebel Open UI.

Figure 59. Skeleton Structure of the Plug-in Wrapper

Explanation of Callouts

  1. Definition of the Custom Plug-In Wrapper. Defines a custom wrapper by following the same ideology as presentation models and physical renderers. It lists the file of the wrapper and lists the dependencies. This will act as a module identifier to the RequireJS plug-in that Siebel Open UI uses to manage all client side modules.

    NOTE:  Controls that use 3rd party files list the dependencies here. They must be moved out of the renderer that listed this external dependency.

  2. Constructor. Does the required changes and calls the superclass. The choice of class from which to extend is decided in this section. It can be a new plug-in wrapper, or subset deviation from an existing plug-in wrapper.
  3. Lifecycle Methods. Specifies the methods that have been overridden. There is no need to override methods that have not been customized, because the superclass method will be called in instead. Here are the methods that are overridden in this example:
    • ShowUI. Override this method to modify display level changes to the control. You can create new DOM or modify an existing DOM that is created by the superclass.
    • BindEvents. Override this method to customize event handlers for the control. You can create new handlers in addition to those being added by the superclass or create an entirely different set by not calling the BindEvents in the superclass.
    • SetValue. Override this method to affect any value changes to the control. Decorate the exiting value display mechanism or change it completely by avoiding the call to the superclass.
    • SetState. Override this method to affect any state changes to the control. Control the behavior when changes to the state; such as editability, focus, and others; are requested. One or more states can be affected by controlling calls to the superclass.
  4. Private Methods. Use private methods like in presentation models and physical renderers to handle custom functionality, for example: Event Handler definitions.
  5. Declaration of Custom Plug-in Wrappers. This is the section that declares to the framework that a custom plug-in wrapper has been deployed. It describes the conditions under which the plug-in wrapper needs to be used. Its parameters are:
    • Control Type. The SWE constant for the type of control for which the functionality is trying to be overridden.
    • PW Class. The class name of the custom plug-in wrapper.

      Return Conditions. This describes the conditions under which the extended plug-in wrapper should be used. A return of true will attach the extension.

    • Control Object. The instance of the control object for which the decision needs to be made. All control object APIs are available here. Use this object and its APIs to evaluate the return value to true for the specific control or controls for which the extension needs to be applicable.
    • objName. The name of the object, applet or view for which the decision needs to be made. Use this to evaluate the return value to true for the specific applet for which the extension needs to be applicable.
Configuring Siebel Open UI Copyright © 2015, Oracle and/or its affiliates. All rights reserved. Legal Notices.