Interface ExtensionRefManagementMBean
-
public interface ExtensionRefManagementMBean
TheExtensionRefManagementMBean
provides management operations for creating, removing, viewing, and configuring SIS extension component references installed in a SIS RA entity.
-
-
Field Summary
Fields Modifier and Type Field Description static String
SIS_MANAGEMENT_TYPE
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
createServiceExtensionRef(String name, ExtensionType extensionType, ServiceID serviceID)
Create an extension reference in the SIS.long
getDefaultTimeout(ExtensionRefID extensionRefID)
Get the default invocation timeout for an extension reference.CompositeData
getDescriptor(ExtensionRefID extensionRefID)
Get information about an extension reference in the SIS.ExtensionRefID[]
getExtensionRefs()
Get the component identifiers of all extension references in the SIS.SISComponent[]
getReferringComponents(ExtensionRefID extensionRefID)
Get the set of components that depend on a given extension reference component.void
removeExtensionRef(ExtensionRefID extensionRefID)
Remove an extension reference from the SIS.void
replaceExtensionRef(ExtensionRefID extensionRefID, ServiceID serviceID)
Replace an extension reference in the SIS with a new reference.void
setDefaultTimeout(ExtensionRefID extensionRefID, long timeout)
Set the default invocation timeout for an extension reference.
-
-
-
Field Detail
-
SIS_MANAGEMENT_TYPE
static final String SIS_MANAGEMENT_TYPE
- See Also:
- Constant Field Values
-
-
Method Detail
-
createServiceExtensionRef
void createServiceExtensionRef(String name, ExtensionType extensionType, ServiceID serviceID) throws NullPointerException, AlreadyDeployedException, DeploymentException, ManagementException
Create an extension reference in the SIS.- Parameters:
name
- the name for the new extension reference. The name is used in compositions to identify the extension to be invoked.extensionType
- the type of the extension.serviceID
- the SLEE component ID of the service implementing the extension.- Throws:
NullPointerException
- if any argument isnull
.AlreadyDeployedException
- if the specified name is already in use in the SIS RA entity.DeploymentException
- if the extension reference cannot be created due to a missing dependency.ManagementException
- if the extension reference could not be created due to a system-level-failure.
-
replaceExtensionRef
void replaceExtensionRef(ExtensionRefID extensionRefID, ServiceID serviceID) throws NullPointerException, UnrecognizedComponentException, DeploymentException, ManagementException
Replace an extension reference in the SIS with a new reference.The extension type of an extension reference cannot be changed by replacing the reference. For example, an extension reference for an interceptor extension component cannot be changed to reference a service composition selection extension component instead.
- Parameters:
extensionRefID
- the component identifier of the extension reference to replace.serviceID
- the SLEE component ID of the service implementing the extension.- Throws:
NullPointerException
- if either argument isnull
.UnrecognizedComponentException
- ifextensionRefID
does not match a current extension reference.DeploymentException
- if the extension reference cannot be created due to a missing dependency.ManagementException
- if the extension reference could not be created due to a system-level-failure.
-
removeExtensionRef
void removeExtensionRef(ExtensionRefID extensionRefID) throws NullPointerException, UnrecognizedComponentException, DependencyException, ManagementException
Remove an extension reference from the SIS.- Parameters:
extensionRefID
- the component identifier of the extension reference to remove.- Throws:
NullPointerException
- ifextensionRefID
isnull
.UnrecognizedComponentException
- ifextensionRefID
does not match a current extension reference.DependencyException
- if the extension reference cannot currently be removed due to a composition dependency on it.ManagementException
- if the extension reference could not be removed due to a system-level failure.
-
setDefaultTimeout
void setDefaultTimeout(ExtensionRefID extensionRefID, long timeout) throws NullPointerException, IllegalArgumentException, UnrecognizedComponentException, ManagementException
Set the default invocation timeout for an extension reference. This is the period of time the SIS will wait for a response from the extension component, when required, before assuming no response is forthcoming.The minimum timeout is 100ms. A value of zero may also be specified to indicate that the SIS's global default service timeout should be used for this extension component.
- Parameters:
extensionRefID
- the component identifier of the extension reference to update.timeout
- the timeout value, measured in milliseconds. Must be either0
or a value equal to or greater than100
- Throws:
NullPointerException
- ifextensionRefID
isnull
.IllegalArgumentException
- iftimeout
is invalid.UnrecognizedComponentException
- ifextensionRefID
does not match a current extension reference.ManagementException
- if the extension reference could not be updated due to a system-level failure.- See Also:
getDefaultTimeout(com.opencloud.slee.resources.sis.components.ExtensionRefID)
-
getDefaultTimeout
long getDefaultTimeout(ExtensionRefID extensionRefID) throws NullPointerException, UnrecognizedComponentException, ManagementException
Get the default invocation timeout for an extension reference.- Parameters:
extensionRefID
- the component identifier of the extension reference to update.- Returns:
- the default timeout.
- Throws:
NullPointerException
- ifextensionRefID
isnull
.UnrecognizedComponentException
- ifextensionRefID
does not match a current extension reference.ManagementException
- if the extension reference could not be interrogated due to a system-level failure- See Also:
setDefaultTimeout(com.opencloud.slee.resources.sis.components.ExtensionRefID, long)
-
getExtensionRefs
ExtensionRefID[] getExtensionRefs() throws ManagementException
Get the component identifiers of all extension references in the SIS.- Returns:
- the identifiers of all extension references in the SIS.
- Throws:
ManagementException
- if the extension references could not be obtained due to a system-level failure.
-
getDescriptor
CompositeData getDescriptor(ExtensionRefID extensionRefID) throws NullPointerException, UnrecognizedComponentException, ManagementException
Get information about an extension reference in the SIS.This method returns a CompositeData type with the following fields:
Field Open Type Description name String The name of the extension reference. extension-type String The type of the extension component referenced, either "SCS" or "INTERCEPTOR". ref-type String The type of the extension reference. Currently only "service" is supported. serviceName String The name component of the referenced extension service component identifier. serviceVendor String The vendor component of the referenced extension service component identifier. serviceVersion String The version component of the referenced extension service component identifier. defaultTimeout Long The default timeout configured for the extension component. - Parameters:
extensionRefID
- the component identifier of the extension reference.- Returns:
- a
CompositeData
object as described above. - Throws:
NullPointerException
- ifextensionRefID
isnull
.UnrecognizedComponentException
- ifextensionRefID
does not match a current extension reference.ManagementException
- if the extension reference descriptor could not be obtained due to a system-level failure.
-
getReferringComponents
SISComponent[] getReferringComponents(ExtensionRefID extensionRefID) throws NullPointerException, UnrecognizedComponentException, ManagementException
Get the set of components that depend on a given extension reference component. An extension reference component may be referred to by:- Parameters:
extensionRefID
- the component identifier of the extension reference.- Returns:
- the set of referring components.
- Throws:
NullPointerException
- ifid
isnull
.UnrecognizedComponentException
- ifid
does not match an installed component.ManagementException
- if the referring components could not be retrieved due to a system-level failure.
-
-