@NotMutable @ThreadSafety(level=COMPLETELY_THREADSAFE) public final class FileRetentionTask extends Task
NOTE: This class, and other classes within the
com.unboundid.ldap.sdk.unboundidds
package structure, are only
supported for use against Ping Identity, UnboundID, and
Nokia/Alcatel-Lucent 8661 server products. These classes provide support
for proprietary functionality or for external specifications that are not
considered stable or mature enough to be guaranteed to work in an
interoperable way with other types of LDAP servers.
FileRetentionTaskTimestampFormat
enum for the
set of defined timestamp formats.Constructor and Description |
---|
FileRetentionTask()
Creates a new, uninitialized file retention task instance that should only
be used for obtaining general information about this task, including the
task name, description, and supported properties.
|
FileRetentionTask(Entry entry)
Creates a new file retention task from the provided entry.
|
FileRetentionTask(java.util.Map<TaskProperty,java.util.List<java.lang.Object>> properties)
Creates a new file retention task from the provided set of task properties.
|
FileRetentionTask(java.lang.String targetDirectory,
java.lang.String filenamePattern,
FileRetentionTaskTimestampFormat timestampFormat,
java.lang.Integer retainFileCount,
java.lang.Long retainFileAgeMillis,
java.lang.Long retainAggregateFileSizeBytes)
Creates a new file retention task with the provided information.
|
FileRetentionTask(java.lang.String taskID,
java.lang.String targetDirectory,
java.lang.String filenamePattern,
FileRetentionTaskTimestampFormat timestampFormat,
java.lang.Integer retainFileCount,
java.lang.Long retainFileAgeMillis,
java.lang.Long retainAggregateFileSizeBytes,
java.util.Date scheduledStartTime,
java.util.List<java.lang.String> dependencyIDs,
FailedDependencyAction failedDependencyAction,
java.util.List<java.lang.String> notifyOnStart,
java.util.List<java.lang.String> notifyOnCompletion,
java.util.List<java.lang.String> notifyOnSuccess,
java.util.List<java.lang.String> notifyOnError,
java.lang.Boolean alertOnStart,
java.lang.Boolean alertOnSuccess,
java.lang.Boolean alertOnError)
Creates a new file retention task with the provided information.
|
Modifier and Type | Method and Description |
---|---|
protected java.util.List<Attribute> |
getAdditionalAttributes()
Retrieves a list of the additional attributes (other than attributes common
to all task types) that should be included when creating new task entries
of this type.
|
protected java.util.List<java.lang.String> |
getAdditionalObjectClasses()
Retrieves a list of the additional object classes (other than the base
"top" and "ds-task" classes) that should be included when creating new task
entries of this type.
|
java.lang.String |
getFilenamePattern()
Retrieves the filename pattern that the task should use to identify which
files to examine.
|
java.lang.Long |
getRetainAggregateFileSizeBytes()
Retrieves the minimum aggregate size (in bytes) of files to retain, if
defined.
|
java.lang.Long |
getRetainFileAgeMillis()
Retrieves the minimum age (in milliseconds) of files to retain, if defined.
|
java.lang.Integer |
getRetainFileCount()
Retrieves the minimum number of files to retain, if defined.
|
java.lang.String |
getTargetDirectory()
Retrieves the path to the directory (on the server filesystem) containing
the files to examine.
|
java.lang.String |
getTaskDescription()
Retrieves a human-readable description for this task.
|
java.lang.String |
getTaskName()
Retrieves a human-readable name for this task.
|
java.util.Map<TaskProperty,java.util.List<java.lang.Object>> |
getTaskPropertyValues()
Retrieves the values of the task properties for this task.
|
java.util.List<TaskProperty> |
getTaskSpecificProperties()
Retrieves a list of task-specific properties that may be provided when
scheduling a task of this type.
|
FileRetentionTaskTimestampFormat |
getTimestampFormat()
Retrieves the format to use to interpret the timestamp element in the
filename pattern.
|
createTaskEntry, decodeTask, getActualStartTime, getAlertOnError, getAlertOnStart, getAlertOnSuccess, getAvailableTaskTypes, getCommonTaskProperties, getCompletionTime, getDependencyIDs, getFailedDependencyAction, getLogMessages, getNotifyOnCompletionAddresses, getNotifyOnErrorAddresses, getNotifyOnStartAddresses, getNotifyOnSuccessAddresses, getScheduledStartTime, getState, getTaskClassName, getTaskEntry, getTaskEntryDN, getTaskID, isCompleted, isPending, isRunning, parseBoolean, parseBooleanValue, parseDate, parseLong, parseString, parseStringList, parseStrings, toString, toString
public FileRetentionTask()
public FileRetentionTask(@NotNull java.lang.String targetDirectory, @NotNull java.lang.String filenamePattern, @NotNull FileRetentionTaskTimestampFormat timestampFormat, @Nullable java.lang.Integer retainFileCount, @Nullable java.lang.Long retainFileAgeMillis, @Nullable java.lang.Long retainAggregateFileSizeBytes)
targetDirectory
- The path to the directory containing the files to examine.
This must be provided, and the target directory must exist on
the server filesystem.filenamePattern
- A pattern that identifies the files to examine. The pattern
may include zero or more (non-consecutive) asterisks that act
as wildcards and match zero or more characters. The pattern
may also contain at most one occurrence of the "${timestamp}"
token, which indicates that the filename includes a timestamp
with the format specified in the timestampFormat
argument. This must not be null
or empty.timestampFormat
- The expected format for the timestamp that may appear in the
filename pattern. This must not be null
, even if the
filename pattern does not contain a "${timestamp}" token.retainFileCount
- The minimum number of the most recent files that should be
retained. This may be null
if only age-based or
size-based retention criteria should be used. At least one of
the retainFileCount
, retainFileAgeMillis
, and
retainAggregateFileSizeBytes
values must be
non-null
. If this value is non-null
, then it
must be greater than or equal to zero.retainFileAgeMillis
- The minimum age, in milliseconds, for files that should be
retained. This may be null
if only count-based or
size-based retention criteria should be used. At least one of
the retainFileCount
, retainFileAgeMillis
, and
retainAggregateFileSizeBytes
values must be
non-null
. If this value is non-null
, then
it must be greater than zero.retainAggregateFileSizeBytes
- The minimum amount of disk space, in bytes, that should be
consumed by the files to be retained. This may be
null
if only count-based or age-based retention
criteria should be used. At least one of the
retainFileCount
, retainFileAgeMillis
, and
retainAggregateFileSizeBytes
values must be
non-null
. If this value is non-null
, then it
must be greater than zero.public FileRetentionTask(@Nullable java.lang.String taskID, @NotNull java.lang.String targetDirectory, @NotNull java.lang.String filenamePattern, @NotNull FileRetentionTaskTimestampFormat timestampFormat, @Nullable java.lang.Integer retainFileCount, @Nullable java.lang.Long retainFileAgeMillis, @Nullable java.lang.Long retainAggregateFileSizeBytes, @Nullable java.util.Date scheduledStartTime, @Nullable java.util.List<java.lang.String> dependencyIDs, @Nullable FailedDependencyAction failedDependencyAction, @Nullable java.util.List<java.lang.String> notifyOnStart, @Nullable java.util.List<java.lang.String> notifyOnCompletion, @Nullable java.util.List<java.lang.String> notifyOnSuccess, @Nullable java.util.List<java.lang.String> notifyOnError, @Nullable java.lang.Boolean alertOnStart, @Nullable java.lang.Boolean alertOnSuccess, @Nullable java.lang.Boolean alertOnError)
taskID
- The task ID to use for this task. If it is null
then
a UUID will be generated for use as the task ID.targetDirectory
- The path to the directory containing the files to examine.
This must be provided, and the target directory must exist on
the server filesystem.filenamePattern
- A pattern that identifies the files to examine. The pattern
may include zero or more (non-consecutive) asterisks that act
as wildcards and match zero or more characters. The pattern
may also contain at most one occurrence of the "${timestamp}"
token, which indicates that the filename includes a timestamp
with the format specified in the timestampFormat
argument. This must not be null
or empty.timestampFormat
- The expected format for the timestamp that may appear in the
filename pattern. This must not be null
, even if the
filename pattern does not contain a "${timestamp}" token.retainFileCount
- The minimum number of the most recent files that should be
retained. This may be null
if only age-based or
size-based retention criteria should be used. At least one of
the retainFileCount
, retainFileAgeMillis
, and
retainAggregateFileSizeBytes
values must be
non-null
. If this value is non-null
, then it
must be greater than or equal to zero.retainFileAgeMillis
- The minimum age, in milliseconds, for files that should be
retained. This may be null
if only count-based or
size-based retention criteria should be used. At least one of
the retainFileCount
, retainFileAgeMillis
, and
retainAggregateFileSizeBytes
values must be
non-null
. If this value is non-null
, then
it must be greater than zero.retainAggregateFileSizeBytes
- The minimum amount of disk space, in bytes, that should be
consumed by the files to be retained. This may be
null
if only count-based or age-based retention
criteria should be used. At least one of the
retainFileCount
, retainFileAgeMillis
, and
retainAggregateFileSizeBytes
values must be
non-null
. If this value is non-null
, then it
must be greater than zero.scheduledStartTime
- The time that this task should start running.dependencyIDs
- The list of task IDs that will be required to complete before
this task will be eligible to start.failedDependencyAction
- Indicates what action should be taken if any of the
dependencies for this task do not complete successfully.notifyOnStart
- The list of e-mail addresses of individuals that should be
notified when this task starts.notifyOnCompletion
- The list of e-mail addresses of individuals that should be
notified when this task completes.notifyOnSuccess
- The list of e-mail addresses of individuals that should be
notified if this task completes successfully.notifyOnError
- The list of e-mail addresses of individuals that should be
notified if this task does not complete successfully.alertOnStart
- Indicates whether the server should send an alert notification
when this task starts.alertOnSuccess
- Indicates whether the server should send an alert notification
if this task completes successfully.alertOnError
- Indicates whether the server should send an alert notification
if this task fails to complete successfully.public FileRetentionTask(@NotNull Entry entry) throws TaskException
entry
- The entry to use to create this file retention task.TaskException
- If the provided entry cannot be parsed as a file
retention task entry.public FileRetentionTask(@NotNull java.util.Map<TaskProperty,java.util.List<java.lang.Object>> properties) throws TaskException
properties
- The set of task properties and their corresponding
values to use for the task. It must not be
null
.TaskException
- If the provided set of properties cannot be used to
create a valid file retention task.@NotNull public java.lang.String getTaskName()
getTaskName
in class Task
@NotNull public java.lang.String getTaskDescription()
getTaskDescription
in class Task
@NotNull public java.lang.String getTargetDirectory()
@NotNull public java.lang.String getFilenamePattern()
@NotNull public FileRetentionTaskTimestampFormat getTimestampFormat()
@Nullable public java.lang.Integer getRetainFileCount()
null
if there
is no count-based retention criteria.@Nullable public java.lang.Long getRetainFileAgeMillis()
null
if there is no age-based retention criteria.@Nullable public java.lang.Long getRetainAggregateFileSizeBytes()
null
if there is no size-based retention criteria.@NotNull protected java.util.List<java.lang.String> getAdditionalObjectClasses()
getAdditionalObjectClasses
in class Task
@NotNull protected java.util.List<Attribute> getAdditionalAttributes()
getAdditionalAttributes
in class Task
@NotNull public java.util.List<TaskProperty> getTaskSpecificProperties()
getTaskSpecificProperties
in class Task
@NotNull public java.util.Map<TaskProperty,java.util.List<java.lang.Object>> getTaskPropertyValues()
Boolean
,
Date
, Long
, or String
. Task properties which do
not have any values will be included in the map with an empty value list.
super.getTaskPropertyValues()
and the
values of their own task-specific properties.getTaskPropertyValues
in class Task