VersioningConfigurationMBean Interface

com.bea.wli.management.configuration
VersioningConfigurationMBean Interface

public interface VersioningConfigurationMBean

    extends ConfigurationMBean

Configuration MBean interface for Processes' Versioning.
Declare versioning information lookups and configuration settings at run-time.

Versioned processes are defined by:
  • A Component group URI : public URI that is used as an alias to invoke the current active version. A Component group URI does not correspond to any physical process file.
  • A set of component URIs: all the alternate versions that can be used for the group URI. Each component URI corresponds to an actual physical Process file.
  • A default component URI: Component URI of the version used as reference for all versions of a group. The default component defines the minimum set of operations and callbacks a version must implement in order to be a valid alternate version for a group.

    There is one instance of VersioningConfigurationMBean per versioned group. That is, each versioning MBean is identified by its service's group URI that can be accessed with :
    getGroup()

    You can get the current active component for a this group by calling:

    String activeURI = getActiveComponent ()
    .
    For instance, the resulting activeURI could be "/webappName/relativePath/process_v1.jpd" which would be one of the component URI registered for this group.

    Additionally, this MBean can access and set the attributes of each component as well as the group's attributes such as:

  • the interface URI of the group
  • the set of component URIs that belongs to the group
  • the active flag of a component
  • the activation date of a component
  • the deactivation date of a component

  • Once you modified the configuration, you may want to check that it is still valid. Run the validate() method to ensure that the modifications did not break the versioning integrity.

    Note that this MBean does not allow to add or remove a version component.


    All Superinterfaces
    ConfigurationMBean, DynamicMBean, MBeanRegistration, NotificationBroadcaster, WebLogicMBean

    Field Summary

    public static final long
    CACHING_STUB_SVUID
    The magic number that is used to generate the serialVersionUID of the generated MBean Stub (xxxMBean_Stub).
       
    Fields from interface weblogic.management.configuration.ConfigurationMBean
    CACHING_STUB_SVUID, DEFAULT_EMPTY_BYTE_ARRAY
     

    Method Summary

    public long
    getActivationTime(String componentURI)
    Get the activation time for a particular component
    public String
    getActiveComponent()
    Get the current runtime active component for this MBean's group The current active component for a group is selected as follows:
  • its active flag is "true"
  • it has the most recent activation date among all the active components in its group
  • it complies to the interface defined by the default component of the group
  • public String[]
    getComponentArray()
    Get the array of component URIs that belongs to the component group
    public long
    getDeactivationTime(String componentURI)
    Get the deactivation time for a particular component
    public String
    getDefaultComponent()
    Get the String URI of the default component (or interface) for a particular group
    public String
    getGroup()
    Get the component group URI for this MBean
    public boolean
    isEnabled(String componentURI)
    Is the component enabled?
    public boolean
    isVersioningEnabled()
    Is Version Manager enabled and initialized?
    public void
    set(String componentURI, boolean active, long activationDate)
    Set both the activation date and the active flag of a particular component.
    public void
    set(String componentURI, boolean active, long activationDate, long deactivationDate)
    Set both the activation date and the active flag of a particular component.
    public void
    setActivationTime(String componentURI, long activationTime)
    Set the activation time of a particular component , keep the same activation date.
    public void
    setDeactivationTime(String componentURI, long deactivationTime)
    Set the activation time of a particular component , keep the same activation date.
    public void
    setEnabled(String componentURI, boolean active)
    Enable or disable a particular component active attribute
    public String[]
    validate()
    Validate the current Version configuration, keep the same active flag A configuration is valid if there is only one currently active version or if there are multiple active versions and each of them has distinct activation dates.
     
    Methods from interface weblogic.management.configuration.ConfigurationMBean
    freezeCurrentValue, getAttributeStringValue, getComments, getNotes, getSetFields, getXml, getXmlConverter, isDefaultedMBean, isPersistenceEnabled, preDeregister, registerConfigMBean, restoreDefaultValue, setComments, setDefaultedMBean, setNotes, setPersistenceEnabled, touch, unRegisterConfigMBean
     
    Methods from interface javax.management.DynamicMBean
    getAttribute, getAttributes, getMBeanInfo, invoke, setAttribute, setAttributes
     
    Methods from interface javax.management.MBeanRegistration
    postDeregister, postRegister, preDeregister, preRegister
     
    Methods from interface javax.management.NotificationBroadcaster
    addNotificationListener, getNotificationInfo, removeNotificationListener
     
    Methods from interface weblogic.management.WebLogicMBean
    getMBeanInfo, getName, getObjectName, getParent, getType, isCachingDisabled, isRegistered, setName, setParent
       

    Field Detail

    CACHING_STUB_SVUID

    public static final long CACHING_STUB_SVUID
    
    The magic number that is used to generate the serialVersionUID of the generated MBean Stub (xxxMBean_Stub). You must change this value whenever you make one of the changes to this interface:

    - remove an existing method.
    - change the signature of an existing "getter" or "setter" method.
    - change the signature of an existing "boolean getter", i.e, "boolean isEnabled()"

    Otherwise you don't need to change this value. For instance you can add new methods, or you can change the signature of methods that don't start with "get", "set" or "is". If you are in doubt then change the SVUID. It is a good idea to increment this value when changing.

     

    Method Detail

    getActivationTime(String) Method

    public long getActivationTime(String componentURI)
    throws VersionException
    Get the activation time for a particular component

    Parameters

    componentURI
    String URI of component

    Returns

    activation time

    Exceptions

    VersionException

    getActiveComponent() Method

    public String getActiveComponent()
    throws VersionException
    Get the current runtime active component for this MBean's group The current active component for a group is selected as follows:
  • its active flag is "true"
  • it has the most recent activation date among all the active components in its group
  • it complies to the interface defined by the default component of the group
  • Returns

    String URI of current active component or null if none is currently active

    Exceptions

    VersionException

    getComponentArray() Method

    public String[] getComponentArray()
    throws VersionException
    Get the array of component URIs that belongs to the component group

    Returns

    String array of component URIs

    Exceptions

    VersionException

    getDeactivationTime(String) Method

    public long getDeactivationTime(String componentURI)
    throws VersionException
    Get the deactivation time for a particular component

    Parameters

    componentURI
    String URI of component

    Returns

    deactivation time

    Exceptions

    VersionException

    getDefaultComponent() Method

    public String getDefaultComponent()
    throws MBeanException
    Get the String URI of the default component (or interface) for a particular group

    Returns

    String URI of default version

    Exceptions

    MBeanException

    getGroup() Method

    public String getGroup()
    
    Get the component group URI for this MBean

    Returns

    String URI of the component group

    isEnabled(String) Method

    public boolean isEnabled(String componentURI)
    throws VersionException
    Is the component enabled?

    Parameters

    componentURI
    String URI of component

    Returns

    component's enabled flag value

    Exceptions

    VersionException
    if the versioning manager is disabled or an unexpected error happened.

    isVersioningEnabled() Method

    public boolean isVersioningEnabled()
    
    Is Version Manager enabled and initialized?

    Returns

    true or false

    set(String, boolean, long) Method

    public void set(String componentURI, 
                    boolean active, 
                    long activationDate)
    throws VersionException
    Set both the activation date and the active flag of a particular component. set the deactivation date to default -1 value, which means that the component has no deactivation date)

    Parameters

    componentURI
    String URI of this component
    active
    toggle activation value
    activationDate
    time of activation in seconds since 01.01.1970 00:00.00 GMT

    Exceptions

    VersionException

    set(String, boolean, long, long) Method

    public void set(String componentURI, 
                    boolean active, 
                    long activationDate, 
                    long deactivationDate)
    throws VersionException
    Set both the activation date and the active flag of a particular component.

    Parameters

    componentURI
    String URI of this component
    active
    toggle activation value
    activationDate
    time of activation in seconds since 01.01.1970 00:00.00 GMT
    deactivationDate
    time of deactivation in seconds since 01.01.1970 00:00.00 GMT

    Exceptions

    VersionException

    setActivationTime(String, long) Method

    public void setActivationTime(String componentURI, 
                                  long activationTime)
    throws VersionException
    Set the activation time of a particular component , keep the same activation date.

    Parameters

    componentURI
    String URI of component
    activationTime
    time of activation in seconds since 01.01.1970 00:00.00 GMT

    Exceptions

    VersionException

    setDeactivationTime(String, long) Method

    public void setDeactivationTime(String componentURI, 
                                    long deactivationTime)
    throws VersionException
    Set the activation time of a particular component , keep the same activation date.

    Parameters

    componentURI
    String URI of component
    deactivationTime
    time of deactivation in seconds since 01.01.1970 00:00.00 GMT

    Exceptions

    VersionException

    setEnabled(String, boolean) Method

    public void setEnabled(String componentURI, 
                           boolean active)
    throws VersionException
    Enable or disable a particular component active attribute

    Parameters

    componentURI
    String URI of this component
    active
    toggle activation value

    Exceptions

    VersionException

    validate() Method

    public String[] validate()
    throws VersionException
    Validate the current Version configuration, keep the same active flag A configuration is valid if there is only one currently active version or if there are multiple active versions and each of them has distinct activation dates.

    Returns

    String array of diagnostics if there are errors or empty array if configuration is valid

    Exceptions

    VersionException