Description

File Based HSM Module Service.
This File Based Module supports a WORM (write once, read many) like storage.
Therefore the file is set to readonly.
The access time of the file is set to current date + RetentionTime to indicate how long a file should be in WORM state. (This feature must be supported by the underlying filesystem/storage!)
This module supports synchronization of file status by checking existence of files with specific extendions (see StatusExtensions and queryStatus).

Attributes

#RetentionTime

Time in y (years), M (month) or d (days) a modification / deletion of a file is not permitted.
Use a leading '+' to set access time after the file is set ReadOnly. (default is before ; Please ensure that your filesystem/command allows setting access time when file is ReadOnly!)

Default Value: 3y

#AccessTimeCmd

External command to set Access Time of a file (retention), with
%f will be replaced by the file
%d will be replaced by the retention date (current date + retentionTime)
NONE = Access Time of file will not be changed.

Default Value: touch -a -t %d %f

#DatePattern

Date pattern that is used to format retention date for %d in AccessTimeCmd.

Default Value: yyyyMMddhhmm

#StatusExtensions

File extension to File Status mapping.
Used in queryStatus to get actual status of a file. Enumerated status values: DEFAULT, TO_ARCHIVE, ARCHIVED, QUERY_HSM_FAILED
Format: <extension>=<status>
A entry without <extension>= is used if no file with configured extension exists. This could also be set to NONE (do not change the file status).

Default Value: {{.archived=ARCHIVED
NONE}}

#CheckMD5forStatusChange

Enable verification of tar files when a status file (file with status extension) exists. Set file status to MD5_CHECK_FAILED (-3) if verify failed.

Default Value: false

#FileCopyServiceName

Used internally. Do NOT modify.

Default Value: dcm4chee.archive:service=FileCopy

#Name

The class name of the MBean

#State

The status of the MBean

#StateString

The status of the MBean in text form

Operations

#create

Standard MBean lifecycle method

#start

The start lifecycle operation

#stop

The stop lifecycle operation

#destroy

The destroy lifecycle operation

#jbossInternalLifecycle

The detyped lifecycle operation (for internal use only)

#prepareHSMFile

Prepare File for storage to HSM. Return File Object that is used in FileCopy Service.

#storeHSMFile

Store given File to HSM. Return filename (fileID).

#failedHSMFile

Called if FileCopy failed.

#fetchHSMFile

Fetch a File from HSM.

#queryStatus

Query status of file in HSM.