Package com.redwood.scheduler.api.model
Interface PeriodFunction
-
- All Superinterfaces:
ApplicationObject
,BusinessKeyObject
,ExecutableSchedulerEntity
,NamedRootObject
,NamedRootObjectComp
,PartitionableObject
,PartitionableObjectComp
,Readable
,Root
,SchedulerEntity
,SchedulerEntityComp
,UniqueNamedApplicationObject
public interface PeriodFunction extends UniqueNamedApplicationObject, ExecutableSchedulerEntity, Readable
A period function is used to define which days in the month a time window interval is open. Period functions are classes (written in Java) that calculate when a time window interval is open.
-
-
Field Summary
Fields Modifier and Type Field Description static String
OBJECT_TYPE
String that will be returned fromSchedulerEntity.getObjectType()
for "PeriodFunction" 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<PeriodFunction>
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 List<Period>
allStatusChanges(DateTimeZone startTime, DateTimeZone endTime, TimeZone timeZone, String params)
All changes of the open-close status of this period function.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.String
getClassname()
Get the value for Classname.Library
getLibrary()
Get the Library.String
getParameterComment()
Get the value for ParameterComment.String
getParameterDefaults()
Get the value for ParameterDefaults.Validity
getValidity()
Get the value for Validity.Set<Variable>
getVariables()
Get the Set of Variables related to PeriodFunction objects.boolean
isOpen(DateTimeZone atTime, TimeZone timeZone, String params)
Returns status of this period function at timestamp atTimevoid
setClassname(String newClassname)
Set the value for Classname.void
setLibrary(Library newLibrary)
Set the value for Library.void
setParameterComment(String newParameterComment)
Set the value for ParameterComment.void
setParameterDefaults(String newParameterDefaults)
Set the value for ParameterDefaults.void
validate(String params)
Throws runtime exception if the parameters are not valid for this period function.-
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 "PeriodFunction" objects.- See Also:
- Constant Field Values
-
TYPE
static final QueryObjectType<PeriodFunction> 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
-
getClassname
String getClassname()
Get the value for Classname. (The class that implements the PeriodFunction.)- 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.
-
getParameterComment
String getParameterComment()
Get the value for ParameterComment. (Comment describing parameters and legal values)- 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.
-
getParameterDefaults
String getParameterDefaults()
Get the value for ParameterDefaults. ( Default values for parameters for period functions. These values will be used to prefill the control when the period function is selected. Parameters are represented with one line per parameter, of the form parameter-name = value. )- 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.
-
setClassname
void setClassname(String newClassname)
Set the value for Classname. (The class that implements the PeriodFunction.) This value is optional.- Parameters:
newClassname
- the new value for Classname.- 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.
-
setParameterComment
void setParameterComment(String newParameterComment)
Set the value for ParameterComment. (Comment describing parameters and legal values) This value is optional.- Parameters:
newParameterComment
- the new value for ParameterComment.- 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.
-
setParameterDefaults
void setParameterDefaults(String newParameterDefaults)
Set the value for ParameterDefaults. ( Default values for parameters for period functions. These values will be used to prefill the control when the period function is selected. Parameters are represented with one line per parameter, of the form parameter-name = value. ) This value is optional.- Parameters:
newParameterDefaults
- the new value for ParameterDefaults.- 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.
-
allStatusChanges
List<Period> allStatusChanges(DateTimeZone startTime, DateTimeZone endTime, TimeZone timeZone, String params)
All changes of the open-close status of this period function. Returns all status changes of the interval in the period AFTERstartTime
and BEFOREendTime
.- Parameters:
startTime
- Starting time stampendTime
- Ending time stamptimeZone
- The TimeZone to use for startTime and endTime.params
- Period function parameters, represented by a string of Java properties, read-only.- Returns:
- Sorted list with status changes between (
startTime
,endTime
)
-
isOpen
boolean isOpen(DateTimeZone atTime, TimeZone timeZone, String params)
Returns status of this period function at timestamp atTime- Parameters:
atTime
- As of what datetimeZone
- The TimeZone to use.params
- Period function parameters, represented by a string of Java properties, read-only.- Returns:
- Is open?
-
validate
void validate(String params)
Throws runtime exception if the parameters are not valid for this period function.- Parameters:
params
- Period function parameters, represented by a string of Java properties, read-only.
-
getVariables
Set<Variable> getVariables()
Get the Set of Variables related to PeriodFunction objects.- Specified by:
getVariables
in interfaceExecutableSchedulerEntity
- Returns:
- Set of
Variable
for PeriodFunction.
-
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.
-
setLibrary
void setLibrary(Library newLibrary)
Set the value for Library. This value is optional.- Parameters:
newLibrary
- is the object to set Library to. The library that the PeriodFunction depends upon.
-
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.
-
-