# com.bea.wli.management.configuration
ProcessConfigurationMBean Interface

public interface ProcessConfigurationMBean
extends `ConfigurationMBean`

MBean for managing properties of a particular type of process. This mbean exposes certain configurable properties of a process type and allows them to be dynamically changed. There is one instance of ProcessConfigurationMBean for each service type. Use `ProcessRuntimeMBean``` to manage instances of a process.

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`() Return the activation time in seconds since 1/1/1970 GMT.
`public `String`` | `getAppName`() Returns the application name where this process is deployed.
`public `ArchivingPolicy`` | `getArchivingPolicy`() Returns the archiving policy for this process.
`public `String`` | `getCallbackClassName`() Returns the class name for the client callback if there is any.
`public `Set`` | `getControlCallbackPolicy`(`String` controlId) Returns the callback authorization policy for a given control.
`public long` | `getDeactivationTime`() Returns the deactivation time in seconds since 1/1/1970 GMT.
`public `String`` | `getDeploymentId`() Return id which is different for each deployment of this process.
`public `String`` | `getDescription`() Returns the description for this process type.
`public `String`` | `getDisplayName`() Returns the display name.
`public `String`[]` | `getExternalCallbackControls`() Returns the names of all controls in this process which are externall callback targets.
`public `String`` | `getFlowTag`() Returns the flow definiton in String format.
`public `String`` | `getInheritedPolicy`(`String` methodName) Returns the effective authorization policy expression for the given method when no policy has been explicitly assigned to the method.
`public `Map`` | `getMethodControlInfo`() Return info about a method's associated control.
`public `Set`` | `getMethodPolicy`(`String` methodName) Returns the method authorization policy.
`public `ProcessNodeInfo`[]` | `getNodes`() Returns an array of all the nodes in the process definition.
`public `ProcessNodeInfo`[]` | `getNodes`(int type) Returns an array of nodes of a certain type.
`public `Set`` | `getProcessPolicy`() Returns the process-level authorization policy.
`public `ProcessVariable`` | `getProcessVariable`(`String` varName) Returns the type information for the given process variable.
`public `ProcessVariable`[]` | `getProcessVariables`() Returns type information about process variables (excluding controls, callbacks, and other special variables).
`public `String`` | `getPublicURI`() Returns the public URI of this process type.
`public `String`` | `getRelativeEJBPath`() Returns the relative EJB path where the ejb for this process resides.
`public `String`` | `getRunAs`() Returns the run-as attribute for this process.
`public `String`` | `getServiceURI`() Returns the service of the process type represented by this MBean.
`public `URL`` | `getServiceURL`() Returns the service URL for this process.
`public long` | `getSLA`() Returns the SLA in milliseconds.
`public double` | `getSLAWarningThreshold`() Returns the SLA warning threshold as fraction of the actual SLAin milliseconds.
`public `TrackingLevel`` | `getTrackingLevel`() Returns the tracking level for this process.
`public `String`` | `getTypeName`() Returns the type name (name of the class implementing this process).
`public `String`` | `getWebappName`() Returns the name of the webapp where this process is deployed.
`public boolean` | `hasDeclarativeAuthorization`() Returns true if: 1) there is a roles-allowed annotation at the class level, 2) there is a callback-roles-allowed annotation at the class level or, 3) there is a roles-allowed annotation on at least one method in this process.
`public boolean` | `isExecutionPolicyModifiable`() Returns false if there is a common:security annotation on the jpd file, otherwise returns true.
`public boolean` | `isRunnable`() Returns whether the process is runnable.
`public boolean` | `isSinglePrincipalRequired`() Returns true iff this process requires that all incoming client requests come from the same principal.
`public boolean` | `isStateless`() Returns whether the process is stateless.
`public boolean` | `isVersioned`() Returns `true` if this process is part of a version group.
`public void` | `setActivationAttributes`(boolean runnable, long activationTime, long deactivationTime) Set all activation attributes for the process.
`public void` | `setActivationTime`(long time) Set the activation time in seconds since 1/1/1970 GMT.
`public void` | `setArchivingPolicy`(`ArchivingPolicy` archivingPolicy) Sets the archiving policy for this process type.
`public void` | `setControlCallbackPolicy`(`String` controlId, `Set` roles) Sets the callback authorization policy for a given control.
`public void` | `setDeactivationTime`(long time) Set the deactivation time in seconds since 1/1/1970 GMT.
`public void` | `setDisplayName`(`String` displayName) Sets the display name.
`public void` | `setMethodPolicy`(`String` methodName, `Set` roles) Sets the method authorization policy.
`public void` | `setProcessPolicy`(`Set` roles) Sets the process-level authorization policy.
`public void` | `setRunAs`(`String` runAs) Sets the run-as attribute for this process.
`public void` | `setRunnable`(boolean runnable) Enable or disable process.
`public void` | `setSinglePrincipalRequired`(boolean flag) Sets the single-principal flag for this process.
`public void` | `setSLA`(long sla) Sets the SLA.
`public void` | `setSLAWarningThreshold`(double ratio) Sets the SLA warning threshold.
`public void` | `setTrackingLevel`(`TrackingLevel` trackingLevel) Sets the tracking level for this process type.

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() Method

    public long getActivationTime()

Return the activation time in seconds since 1/1/1970 GMT.

### getAppName() Method

    public String getAppName()
         throws ProcessNotFoundException

Returns the application name where this process is deployed.

#### Exceptions

``ProcessNotFoundException``
  if the process is not found

### getArchivingPolicy() Method

    public ArchivingPolicy getArchivingPolicy()
         throws MBeanException

Returns the archiving policy for this process.

#### Exceptions

``MBeanException``

### getCallbackClassName() Method

    public String getCallbackClassName()
         throws ProcessNotFoundException

Returns the class name for the client callback if there is any.

#### Returns

callback class name, null if there is no callback

#### Exceptions

``ProcessNotFoundException``
  if the process is not found

### getControlCallbackPolicy(String) Method

    public Set getControlCallbackPolicy(String controlId)
         throws MBeanException, ProcessNotFoundException

Returns the callback authorization policy for a given control.

#### Parameters

controlId
  the id of an external callback target control on this process.

#### Returns

the set of roles authorized at the control callback points.

#### Exceptions

``MBeanException``
  if there is any other error getting the policy
``ProcessNotFoundException``
  if the process is not found

### getDeactivationTime() Method

    public long getDeactivationTime()

Returns the deactivation time in seconds since 1/1/1970 GMT.

#### Returns

the deactivation time in seconds since 1/1/1970 GMT.

### getDeploymentId() Method

    public String getDeploymentId()
         throws ProcessNotFoundException

Return id which is different for each deployment of this process. Internal use only.

#### Exceptions

``ProcessNotFoundException``
  if the process is not found

### getDescription() Method

    public String getDescription()
         throws ProcessNotFoundException

Returns the description for this process type. THis is the same as the description text entered for the top level node in the workshop.

#### Exceptions

``ProcessNotFoundException``
  if the process is not found

### getDisplayName() Method

    public String getDisplayName()
         throws MBeanException

Returns the display name. This is mainly used for pretty printing in the Console.

#### Exceptions

``MBeanException``

### getExternalCallbackControls() Method

    public String[] getExternalCallbackControls()
         throws ProcessNotFoundException

Returns the names of all controls in this process which are externall callback targets. These controls can have authorization policies assigned to their callbacks. Returns an empty array if there are no external callback target controls in this process.

#### Returns

an array of control names.

#### Exceptions

``ProcessNotFoundException``
  if the process is not found

### getFlowTag() Method

    public String getFlowTag()
         throws ProcessNotFoundException, ProcessNotFoundException

Returns the flow definiton in String format.

#### Exceptions

``ProcessNotFoundException``
  if the process is not found
``ProcessNotFoundException``
  if the process is not found

### getInheritedPolicy(String) Method

    public String getInheritedPolicy(String methodName)
         throws MBeanException, ProcessNotFoundException, NoSuchMethodException

Returns the effective authorization policy expression for the given method when no policy has been explicitly assigned to the method.

#### Returns

a policy expression

#### Exceptions

``MBeanException``
``ProcessNotFoundException``
  if the process is not found
``NoSuchMethodException``
  if there is no method by the given name.

### getMethodControlInfo() Method

    public Map getMethodControlInfo()
         throws ProcessNotFoundException

Return info about a method's associated control. Currently only relevant for controlSend nodes. Used to get correct icon for process graph. Internal use only.

#### Exceptions

``ProcessNotFoundException``
  if the process is not found

### getMethodPolicy(String) Method

    public Set getMethodPolicy(String methodName)
         throws MBeanException, ProcessNotFoundException, NoSuchMethodException

Returns the method authorization policy. The policy is a set of roles. If a method policy is specified, a user is allowed to invoke the method if he belongs to at least one of the roles. This method will return an empty array if no method-level policy has been set.

#### Returns

an array of role names (the allowed roles), or an empty array if no method-level policy has been set.

#### Exceptions

``MBeanException``
``ProcessNotFoundException``
  if the process is not found
``NoSuchMethodException``
  if there is no method by the given name.

### getNodes() Method

    public ProcessNodeInfo[] getNodes()
         throws ProcessNotFoundException

Returns an array of all the nodes in the process definition.

#### Exceptions

``ProcessNotFoundException``
  if the process is not found

### getNodes(int) Method

    public ProcessNodeInfo[] getNodes(int type)
         throws ProcessNotFoundException

Returns an array of nodes of a certain type.

#### Parameters

type
  the type of the nodes to be returned. Types are defined in ``

#### Returns

an array of nodes of the given type. If there are no nodes of that type an empty array is returned.

#### Exceptions

``ProcessNotFoundException``
  if the process is not found

### getProcessPolicy() Method

    public Set getProcessPolicy()
         throws MBeanException, ProcessNotFoundException

Returns the process-level authorization policy. The policy is a set of roles. A user is allowed to invoke an operation on the process if he belongs to at least one of those roles. This policy applies to all operations on the process, but individual methods can expand the policy by allowing additional roles, effectively relaxing restrictions (see `ProcessConfigurationMBean.setMethodPolicy(String, Set)```).

#### Returns

an array of role names (the allowed roles), or an empty array if no process-level policy has been set.

#### Exceptions

``MBeanException``
``ProcessNotFoundException``
  if the process is not found

### getProcessVariable(String) Method

    public ProcessVariable getProcessVariable(String varName)
         throws MBeanException, ProcessNotFoundException

Returns the type information for the given process variable.

#### Parameters

varName
  name of the variable

#### Exceptions

``MBeanException``
``ProcessNotFoundException``
  if the process is not found

### getProcessVariables() Method

    public ProcessVariable[] getProcessVariables()
         throws MBeanException, ProcessNotFoundException

Returns type information about process variables (excluding controls, callbacks, and other special variables).

#### Exceptions

``MBeanException``
``ProcessNotFoundException``
  if the process is not found

### getPublicURI() Method

    public String getPublicURI()

Returns the public URI of this process type. If the process is a part of a version group then the group URI of the version group is returned. Otherwise the service URI is returned as the public URI

### getRelativeEJBPath() Method

    public String getRelativeEJBPath()
         throws ProcessNotFoundException

Returns the relative EJB path where the ejb for this process resides.

#### Exceptions

``ProcessNotFoundException``
  if the process is not found

### getRunAs() Method

    public String getRunAs()
         throws MBeanException, ProcessNotFoundException

Returns the run-as attribute for this process. This is either: <start-user>, null or a principal name. A null return value means invocations run under the caller's identity.

#### Returns

the run-as attribute.

#### Exceptions

``MBeanException``
``ProcessNotFoundException``
  if the process is not found

### getServiceURI() Method

    public String getServiceURI()

Returns the service of the process type represented by this MBean.

### getServiceURL() Method

    public URL getServiceURL()
         throws ProcessNotFoundException

Returns the service URL for this process.

#### Exceptions

``ProcessNotFoundException``

### getSLA() Method

    public long getSLA()
         throws MBeanException

Returns the SLA in milliseconds. A return value that is less than or equal to `0` indicates that SLA is not defined for this process type

#### Exceptions

``MBeanException``

### getSLAWarningThreshold() Method

    public double getSLAWarningThreshold()
         throws MBeanException

Returns the SLA warning threshold as fraction of the actual SLAin milliseconds. A return value that is less than or equal to `0.0` indicates that SLA warning is not defined for this process type

#### Exceptions

``MBeanException``

### getTrackingLevel() Method

    public TrackingLevel getTrackingLevel()
         throws MBeanException

Returns the tracking level for this process.

#### Exceptions

``MBeanException``

### getTypeName() Method

    public String getTypeName()
         throws ProcessNotFoundException

Returns the type name (name of the class implementing this process).

#### Exceptions

``ProcessNotFoundException``
  if the process is not found

### getWebappName() Method

    public String getWebappName()
         throws ProcessNotFoundException

Returns the name of the webapp where this process is deployed.

#### Exceptions

``ProcessNotFoundException``
  if the process is not found

### hasDeclarativeAuthorization() Method

    public boolean hasDeclarativeAuthorization()
         throws ProcessNotFoundException

Returns true if: 1) there is a roles-allowed annotation at the class level, 2) there is a callback-roles-allowed annotation at the class level or, 3) there is a roles-allowed annotation on at least one method in this process. Otherwise returns false. If the jpd file has declarative security then authorization policies cannot be set dynamically.

#### Returns

true/false

#### Exceptions

``ProcessNotFoundException``
  if the process is not found

### isExecutionPolicyModifiable() Method

    public boolean isExecutionPolicyModifiable()
         throws ProcessNotFoundException

Returns false if there is a common:security annotation on the jpd file, otherwise returns true.

#### Returns

true/false

#### Exceptions

``ProcessNotFoundException``
  if the process is not found

### isRunnable() Method

    public boolean isRunnable()

Returns whether the process is runnable.

### isSinglePrincipalRequired() Method

    public boolean isSinglePrincipalRequired()
         throws MBeanException, ProcessNotFoundException

Returns true iff this process requires that all incoming client requests come from the same principal.

#### Returns

true/flase

#### Exceptions

``MBeanException``
``ProcessNotFoundException``
  if the process is not found

### isStateless() Method

    public boolean isStateless()
         throws ProcessNotFoundException

Returns whether the process is stateless.

#### Exceptions

``ProcessNotFoundException``
  if the process is not found

### isVersioned() Method

    public boolean isVersioned()

Returns `true` if this process is part of a version group.

### setActivationAttributes(boolean, long, long) Method

    public void setActivationAttributes(boolean runnable,
                                        long activationTime,
                                        long deactivationTime)

Set all activation attributes for the process.

#### Parameters

runnable
  is this process runnable?

activationTime
  time from which the process will be active. (in seconds since 1/1/1970 GMT)

deactivationTime
  time at which the process cease to be active. (in seconds since 1/1/1970 GMT)

### setActivationTime(long) Method

    public void setActivationTime(long time)

Set the activation time in seconds since 1/1/1970 GMT.

#### Parameters

time
  time in seconds since 1/1/1970 GMT.

### setArchivingPolicy(ArchivingPolicy) Method

    public void setArchivingPolicy(ArchivingPolicy archivingPolicy)
         throws MBeanException, InvalidAttributeValueException

Sets the archiving policy for this process type.

#### Parameters

archivingPolicy
  the new archiving policy.

#### Exceptions

``MBeanException``
``InvalidAttributeValueException``

### setControlCallbackPolicy(String, Set) Method

    public void setControlCallbackPolicy(String controlId,
                                         Set roles)
         throws MBeanException, ProcessNotFoundException

Sets the callback authorization policy for a given control. If there are any roles-allowed annotations on the jpd file, authorization policies cannot be dynamically changed.

#### Parameters

controlId
  the id of an external callback target control on this process.

roles
  the set of roles authorized at the control callback points.

#### Exceptions

``MBeanException``
  if policies are read-only, or if there is no externall callback target control by the given controlId.
``ProcessNotFoundException``
  if the process is not found

### setDeactivationTime(long) Method

    public void setDeactivationTime(long time)

Set the deactivation time in seconds since 1/1/1970 GMT.

#### Parameters

time
  deactivation time in seconds since 1/1/1970

### setDisplayName(String) Method

    public void setDisplayName(String displayName)
         throws MBeanException

Sets the display name. This can be any short descriptive name.

#### Exceptions

``MBeanException``

### setMethodPolicy(String, Set) Method

    public void setMethodPolicy(String methodName,
                                Set roles)
         throws MBeanException, ProcessNotFoundException, NoSuchMethodException

Sets the method authorization policy. The policy is a set of roles. If there is a method policy, a user is allowed to invoke an operation on the process if he belongs to at least one of the roles. Note that if there is a process-level policy, all the roles in the process policy are added to the roles specified in this call to determine the actual method policy. Calling this method with an empty array clears the process policy (subject, of course, to the process policy). If there are any roles-allowed annotations on the jpd file, authorization policies cannot be dynamically set.

#### Exceptions

``MBeanException``
  if policies are read-only
``ProcessNotFoundException``
  if the process is not found
``NoSuchMethodException``
  or if there is no method by the given name.

### setProcessPolicy(Set) Method

    public void setProcessPolicy(Set roles)
         throws MBeanException, ProcessNotFoundException

Sets the process-level authorization policy. The policy is a set of roles. A user is allowed to invoke an operation on the process if he belongs to at least one of those roles. This policy applies to all operations on the process, but individual methods can expand the policy by allowing additional roles, effectively relaxing restrictions (see `ProcessConfigurationMBean.setMethodPolicy(String, Set)```). Calling this method with an empty array clears the process policy. If there are any roles-allowed annotations on the jpd file, authorization policies cannot be dynamically set. NOTE: when changing the process policy, any roles in the new process policy which were not present in the overwritten process policy are automatically added to all method policies. On the other hand, dropping roles from the process policy does not cause any side-effect on the method policies.

#### Parameters

roles
  an array of role names.

#### Exceptions

``MBeanException``
  if policies are read-only.
``ProcessNotFoundException``
  if the process is not found

### setRunAs(String) Method

    public void setRunAs(String runAs)
         throws MBeanException, ProcessNotFoundException

Sets the run-as attribute for this process. A `null` argument represents the `"callers-identity"` execution policy (this is the default policy). Note that if there is a common:security annotation on the jpd file, then the run-as attribute is read-only and any attempt to call this method will throw an exception.

#### Parameters

runAs
  either "<start-user>", a WLS username or null.

#### Exceptions

``MBeanException``
  if the argument is invalid or if there is a common:security annotation in the jpd file.
``ProcessNotFoundException``
  if the process is not found

### setRunnable(boolean) Method

    public void setRunnable(boolean runnable)

Enable or disable process.

### setSinglePrincipalRequired(boolean) Method

    public void setSinglePrincipalRequired(boolean flag)
         throws MBeanException, ProcessNotFoundException

Sets the single-principal flag for this process. Note that this can only be set if it was not already set via an annotation on the jpd file.

#### Parameters

flag
  the new single-principal flag

#### Exceptions

``MBeanException``
  if there is already a single-principal annotation on the jpd.
``ProcessNotFoundException``
  if the process is not found

### setSLA(long) Method

    public void setSLA(long sla)
         throws MBeanException

Sets the SLA.

#### Parameters

sla
  SLA in milliseconds. A value that is less than or equal to 0 unsets the SLA

#### Exceptions

``MBeanException``

### setSLAWarningThreshold(double) Method

    public void setSLAWarningThreshold(double ratio)
         throws MBeanException

Sets the SLA warning threshold.

#### Parameters

ratio
  SLA warning threshold as a fraction of actual SLA. A value that is less than or equal to 0 unsets the SLA warning.

#### Exceptions

``MBeanException``

### setTrackingLevel(TrackingLevel) Method

    public void setTrackingLevel(TrackingLevel trackingLevel)
         throws MBeanException, InvalidAttributeValueException, ProcessNotFoundException

Sets the tracking level for this process type.

#### Parameters

trackingLevel
  the new tracking level.

#### Exceptions

``MBeanException``
``InvalidAttributeValueException``
``ProcessNotFoundException``
  if the process is not found