Package com.redwood.scheduler.api.model
Interface ExtensionPoint
-
- All Superinterfaces:
ApplicationObject
,BusinessKeyObject
,ExecutableSchedulerEntity
,NamedRootObject
,NamedRootObjectComp
,PartitionableObject
,PartitionableObjectComp
,Readable
,Root
,SchedulerEntity
,SchedulerEntityComp
,UniqueNamedApplicationObject
public interface ExtensionPoint extends UniqueNamedApplicationObject, ExecutableSchedulerEntity, Readable
An extension point is used to provide a custom entry point to generate results.
-
-
Field Summary
Fields Modifier and Type Field Description static String
OBJECT_TYPE
String that will be returned fromSchedulerEntity.getObjectType()
for "ExtensionPoint" objects.static String
SEC_PRIV_CREATE
This privilege can be granted at a group level.static String
SEC_PRIV_DELETE
This privilege can be granted at a group level.static String
SEC_PRIV_EDIT
This privilege can be granted at a group level.static String
SEC_PRIV_VIEW
This privilege can be granted at a group level.static String
SEC_RANK_ALL
This rank is made of the following privileges: create , view , edit , deletestatic String
SEC_RANK_CREATE
This rank is made of the following privileges: createstatic String
SEC_RANK_DELETE
This rank is made of the following privileges: create , view , deletestatic String
SEC_RANK_EDIT
This rank is made of the following privileges: create , view , editstatic String
SEC_RANK_NONE
This rank has no privileges assigned to it.static String
SEC_RANK_VIEW
This rank is made of the following privileges: viewstatic QueryObjectType<ExtensionPoint>
TYPE
Type that can be used inSchedulerSession.executeObjectQuery(QueryObjectType, String, Object...)
.-
Fields inherited from interface com.redwood.scheduler.api.model.SchedulerEntity
ACTION_AUDIT, ACTION_EXPORT, ACTION_READ, BEHAVIOR_DEPRECATED, BEHAVIOR_NONE, BEHAVIOR_SYSTEM
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description RequiredPermission
checkCreatePrivilege()
Check whether or not the create action can be performed on this object.RequiredPermission
checkDeletePrivilege()
Check whether or not the delete action can be performed on this object.RequiredPermission
checkEditPrivilege()
Check whether or not the edit action can be performed on this object.RequiredPermission
checkViewPrivilege()
Check whether or not the view action can be performed on this object.Subject
getActionSubject()
Get the ActionSubject.String
getDeploymentDescriptor()
Get the value for DeploymentDescriptor.ExtensionPointExtendsType
getExtends()
Get the value for Extends.String
getExtensionPointURL(String extension, String source, String objectType, List<RuntimeObject> objects)
Get the URL that can be used to access the Extension Point.String
getExtensionPointURL(String extension, String source, String objectType, List<RuntimeObject> objects, Map<String,String> extraConstants)
Get the URL that can be used to access the Extension Point.Library
getLibrary()
Get the Library.LogLevel
getLogLevel()
Get the value for LogLevel.Long
getMaxBackupFiles()
Get the value for MaxBackupFiles.Long
getMaxLogSize()
Get the value for MaxLogSize.String
getSource()
Get the value for Source.String
getStubSource()
Get the value for StubSource.Validity
getValidity()
Get the value for Validity.Set<Variable>
getVariables()
Get the Set of Variables related to Extension Point objects.ExtensionPointVisibilityType
getVisibility()
Get the value for Visibility.boolean
isEnabled()
Get the value for Enabled.boolean
isLogFileEnabled()
Get the value for LogFileEnabled.void
setActionSubject(Subject newActionSubject)
Set the value for ActionSubject.void
setDeploymentDescriptor(String newDeploymentDescriptor)
Set the value for DeploymentDescriptor.void
setEnabled(boolean newEnabled)
Set the value for Enabled.void
setExtends(ExtensionPointExtendsType newExtends)
Set the value for Extends.void
setLibrary(Library newLibrary)
Set the value for Library.void
setLogFileEnabled(boolean newLogFileEnabled)
Set the value for LogFileEnabled.void
setLogLevel(LogLevel newLogLevel)
Set the value for LogLevel.void
setMaxBackupFiles(Long newMaxBackupFiles)
Set the value for MaxBackupFiles.void
setMaxLogSize(Long newMaxLogSize)
Set the value for MaxLogSize.void
setSource(String newSource)
Set the value for Source.void
setVisibility(ExtensionPointVisibilityType newVisibility)
Set the value for Visibility.-
Methods inherited from interface com.redwood.scheduler.api.model.ApplicationObject
getParentApplication, setParentApplication
-
Methods inherited from interface com.redwood.scheduler.api.model.BusinessKeyObject
getBusinessKey
-
Methods inherited from interface com.redwood.scheduler.api.model.NamedRootObject
createObjectReference, getComment, getDescription, getLinkedObjectReferenceByLinkedObject, getLinkedObjectReferenceByName, getLinkedObjectReferences, getName, getSearchName, getSourceObjectReferences, isHidden, setComment, setDescription, setName
-
Methods inherited from interface com.redwood.scheduler.api.model.PartitionableObject
createObjectTag, getEditablePartitions, getObjectTagByObjectTagDefinition, getObjectTags, getPartition, setPartition
-
Methods inherited from interface com.redwood.scheduler.api.model.Root
getCreationTime, getLastModificationTime, getLastModifierSubject
-
Methods inherited from interface com.redwood.scheduler.api.model.SchedulerEntity
canPerform, createSubjectObjectPrivilegeGrant, deleteObject, getAuditTrail, getAuditTrailSize, getBehavior, getEffectiveBehavior, getErrorNameEN, getErrorNameKey, getLLPVersion, getLOV, getLOVSupport, getObjectType, getParentSchedulerEntities, getRuntime, getSubjectObjectPrivilegeGrantBySubject, getSubjectObjectPrivilegeGrants, getUniqueId, getUrl, getUrl, isCreated, isDeletable, isDeleted, isModifiable, isModified, isSelectVersioned, processRelatedObjects, processRelatedObjects, processRelatedObjects, refreshObject, resetObject, resetObject, resetValuesToDefault, selectForRead
-
-
-
-
Field Detail
-
OBJECT_TYPE
static final String OBJECT_TYPE
String that will be returned fromSchedulerEntity.getObjectType()
for "ExtensionPoint" objects.- See Also:
- Constant Field Values
-
TYPE
static final QueryObjectType<ExtensionPoint> TYPE
Type that can be used inSchedulerSession.executeObjectQuery(QueryObjectType, String, Object...)
.
-
SEC_PRIV_CREATE
static final String SEC_PRIV_CREATE
This privilege can be granted at a group level.- See Also:
- Constant Field Values
-
SEC_PRIV_VIEW
static final String SEC_PRIV_VIEW
This privilege can be granted at a group level. This privilege can be granted at an instance level.- See Also:
- Constant Field Values
-
SEC_PRIV_EDIT
static final String SEC_PRIV_EDIT
This privilege can be granted at a group level. This privilege can be granted at an instance level.- See Also:
- Constant Field Values
-
SEC_PRIV_DELETE
static final String SEC_PRIV_DELETE
This privilege can be granted at a group level. This privilege can be granted at an instance level.- See Also:
- Constant Field Values
-
SEC_RANK_NONE
static final String SEC_RANK_NONE
This rank has no privileges assigned to it.- See Also:
- Constant Field Values
-
SEC_RANK_CREATE
static final String SEC_RANK_CREATE
This rank is made of the following privileges: create- See Also:
- Constant Field Values
-
SEC_RANK_VIEW
static final String SEC_RANK_VIEW
This rank is made of the following privileges: view- See Also:
- Constant Field Values
-
SEC_RANK_EDIT
static final String SEC_RANK_EDIT
This rank is made of the following privileges: create , view , edit- See Also:
- Constant Field Values
-
SEC_RANK_DELETE
static final String SEC_RANK_DELETE
This rank is made of the following privileges: create , view , delete- See Also:
- Constant Field Values
-
SEC_RANK_ALL
static final String SEC_RANK_ALL
This rank is made of the following privileges: create , view , edit , delete- See Also:
- Constant Field Values
-
-
Method Detail
-
getVisibility
ExtensionPointVisibilityType getVisibility()
Get the value for Visibility. (Visibility of the extension point.) This value is mandatory, and therefore will not benull
if this object has been retrieved from the database.- Returns:
- the field
- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
getExtends
ExtensionPointExtendsType getExtends()
Get the value for Extends. (What does the Extension Point extend.) This value is mandatory, and therefore will not benull
if this object has been retrieved from the database.- Returns:
- the field
- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
getLogLevel
LogLevel getLogLevel()
Get the value for LogLevel. (What is the Log Level when logging from the Extension Point.) This value is mandatory, and therefore will not benull
if this object has been retrieved from the database.- Returns:
- the field
- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
getMaxLogSize
Long getMaxLogSize()
Get the value for MaxLogSize. (What is the maximum size of each log file, in MB.) This value is mandatory, and therefore will not benull
if this object has been retrieved from the database.- Returns:
- the field
- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
getMaxBackupFiles
Long getMaxBackupFiles()
Get the value for MaxBackupFiles. (What is the maximum number of backup files to keep.) This value is mandatory, and therefore will not benull
if this object has been retrieved from the database.- Returns:
- the field
- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
isLogFileEnabled
boolean isLogFileEnabled()
Get the value for LogFileEnabled. (Whether the Extension Point's log file is enabled or not.)- Returns:
- the field
- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
getSource
String getSource()
Get the value for Source. (The full source of the Extension Point.)- Returns:
- the field
- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
getDeploymentDescriptor
String getDeploymentDescriptor()
Get the value for DeploymentDescriptor. (Deployment descriptor) This value is mandatory, and therefore will not benull
if this object has been retrieved from the database.- Returns:
- the field
- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
getStubSource
String getStubSource()
Get the value for StubSource. (The source for the stub of the Extension Point.) This value is mandatory, and therefore will not benull
if this object has been retrieved from the database.- Returns:
- the field
- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
isEnabled
boolean isEnabled()
Get the value for Enabled. (True if the extension point is enabled, otherwise false.)- Returns:
- the field
- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
getValidity
Validity getValidity()
Get the value for Validity. (Is this definition valid? That is, can this definition currently be used?) This value is mandatory, and therefore will not benull
if this object has been retrieved from the database.- Returns:
- the field
- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
setVisibility
void setVisibility(ExtensionPointVisibilityType newVisibility)
Set the value for Visibility. (Visibility of the extension point.) This value is mandatory.- Parameters:
newVisibility
- the new value for Visibility. If this isnull
, then the object cannot be persisted.- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
setExtends
void setExtends(ExtensionPointExtendsType newExtends)
Set the value for Extends. (What does the Extension Point extend.) This value is mandatory.- Parameters:
newExtends
- the new value for Extends. If this isnull
, then the object cannot be persisted.- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
setLogLevel
void setLogLevel(LogLevel newLogLevel)
Set the value for LogLevel. (What is the Log Level when logging from the Extension Point.) This value is mandatory.- Parameters:
newLogLevel
- the new value for LogLevel. If this isnull
, then the object cannot be persisted.- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
setMaxLogSize
void setMaxLogSize(Long newMaxLogSize)
Set the value for MaxLogSize. (What is the maximum size of each log file, in MB.) This value is mandatory.- Parameters:
newMaxLogSize
- the new value for MaxLogSize. If this isnull
, then the object cannot be persisted.- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
setMaxBackupFiles
void setMaxBackupFiles(Long newMaxBackupFiles)
Set the value for MaxBackupFiles. (What is the maximum number of backup files to keep.) This value is mandatory.- Parameters:
newMaxBackupFiles
- the new value for MaxBackupFiles. If this isnull
, then the object cannot be persisted.- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
setLogFileEnabled
void setLogFileEnabled(boolean newLogFileEnabled)
Set the value for LogFileEnabled. (Whether the Extension Point's log file is enabled or not.)- Parameters:
newLogFileEnabled
- the new value for LogFileEnabled.- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
setSource
void setSource(String newSource)
Set the value for Source. (The full source of the Extension Point.) This value is optional.- Parameters:
newSource
- the new value for Source.- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
setDeploymentDescriptor
void setDeploymentDescriptor(String newDeploymentDescriptor)
Set the value for DeploymentDescriptor. (Deployment descriptor) This value is mandatory.- Parameters:
newDeploymentDescriptor
- the new value for DeploymentDescriptor. If this isnull
, then the object cannot be persisted.- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
setEnabled
void setEnabled(boolean newEnabled)
Set the value for Enabled. (True if the extension point is enabled, otherwise false.)- Parameters:
newEnabled
- the new value for Enabled.- Throws:
com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- This will be thrown if this method is called while the object is not attached to a session.
-
getVariables
Set<Variable> getVariables()
Get the Set of Variables related to Extension Point objects.- Specified by:
getVariables
in interfaceExecutableSchedulerEntity
- Returns:
- Set of
Variable
for Extension Point.
-
getExtensionPointURL
String getExtensionPointURL(String extension, String source, String objectType, List<RuntimeObject> objects) throws com.redwood.scheduler.api.exception.ExtensionPointURLException
Get the URL that can be used to access the Extension Point.- Parameters:
extension
- Name of the Extension to call. Must match an extension defined in the Deployment Descriptor.source
- Where was the Extension Point invoked: PopupMenu, ToolBar, JobChainEditor, Unknown.objectType
- Indicates the object type of the overview/object when invoked.objects
- Scheduler Entities that need to be sent to the Extension Point. The UniqueId will always be encoded, other fields will be encoded based on the Deployment Descriptor.- Returns:
- The URL that can be used to connect to the Extension Point
- Throws:
com.redwood.scheduler.api.exception.ExtensionPointURLException
- The URL for the requested extension could not be generated for the reason specified.
-
getExtensionPointURL
String getExtensionPointURL(String extension, String source, String objectType, List<RuntimeObject> objects, Map<String,String> extraConstants) throws com.redwood.scheduler.api.exception.ExtensionPointURLException
Get the URL that can be used to access the Extension Point.- Parameters:
extension
- Name of the Extension to call. Must match an extension defined in the Deployment Descriptor.source
- Where was the Extension Point invoked: PopupMenu, ToolBar, JobChainEditor, Unknown.objectType
- Indicates the object type of the overview/object when invoked.objects
- Scheduler Entities that need to be sent to the Extension Point. The UniqueId will always be encoded, other fields will be encoded based on the Deployment Descriptor.extraConstants
- Custom key/value pairs, transformed to Constant-based format- Returns:
- The URL that can be used to connect to the Extension Point
- Throws:
com.redwood.scheduler.api.exception.ExtensionPointURLException
- The URL for the requested extension could not be generated for the reason specified.
-
getLibrary
Library getLibrary()
Get the Library.- Returns:
- Library
- Throws:
com.redwood.scheduler.api.exception.ObjectDeletedException
- If this method is called when the object has been marked for deletion.com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- If this method is called when the object has been removed from it's session.
-
getActionSubject
Subject getActionSubject()
Get the ActionSubject.- Returns:
- ActionSubject
- Throws:
com.redwood.scheduler.api.exception.ObjectDeletedException
- If this method is called when the object has been marked for deletion.com.redwood.scheduler.api.exception.ObjectNotAttachedToSessionException
- If this method is called when the object has been removed from it's session.
-
setLibrary
void setLibrary(Library newLibrary)
Set the value for Library. This value is mandatory.- Parameters:
newLibrary
- is the object to set Library to. The library that the ExtensionPoint depends upon. If this isnull
, then the object cannot be persisted.
-
setActionSubject
void setActionSubject(Subject newActionSubject)
Set the value for ActionSubject. This value is optional.- Parameters:
newActionSubject
- is the object to set ActionSubject to. Who does this ExtensionPoint execute as?
-
checkCreatePrivilege
RequiredPermission checkCreatePrivilege()
Check whether or not the create action can be performed on this object.- Returns:
- a
RequiredPermission
instance indicating whether the current user has the privilege. To check this, use isAllowed() on the returned permission.
-
checkViewPrivilege
RequiredPermission checkViewPrivilege()
Check whether or not the view action can be performed on this object.- Returns:
- a
RequiredPermission
instance indicating whether the current user has the privilege. To check this, use isAllowed() on the returned permission.
-
checkEditPrivilege
RequiredPermission checkEditPrivilege()
Check whether or not the edit action can be performed on this object.- Returns:
- a
RequiredPermission
instance indicating whether the current user has the privilege. To check this, use isAllowed() on the returned permission.
-
checkDeletePrivilege
RequiredPermission checkDeletePrivilege()
Check whether or not the delete action can be performed on this object.- Returns:
- a
RequiredPermission
instance indicating whether the current user has the privilege. To check this, use isAllowed() on the returned permission.
-
-