ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
ilWorkspaceCopyDefinition Class Reference

Copy definition for workspace folders. More...

+ Inheritance diagram for ilWorkspaceCopyDefinition:
+ Collaboration diagram for ilWorkspaceCopyDefinition:

Public Member Functions

 getCopyDefinitions ()
 
 setCopyDefinitions (array $a_definitions)
 Set copy definitions. More...
 
 getTempDir ()
 
 setTempDir (string $temp_dir)
 Set directory name located in /temp/ directory. More...
 
 getObjectWspIds ()
 
 setObjectWspIds (array $object_wps_ids, bool $append=false)
 
 getNumFiles ()
 
 setNumFiles (int $num_files)
 
 getSumFileSizes ()
 
 setSumFileSizes (int $sum_file_sizes)
 
 getAdheresToLimit ()
 
 setAdheresToLimit (BooleanValue $adheres_to_limit)
 
 addCopyDefinition (string $a_source, string $a_target)
 
 equals (Value $other)
 
 getHash ()
 
 serialize ()
 
 setValue ($value)
 Set value. More...
 
 unserialize ($data)
 Unserialize definitions. More...
 
- Public Member Functions inherited from ILIAS\BackgroundTasks\Implementation\Values\AbstractValue
 getType ()
 
 getParentTask ()
 
 setParentTask (Task $parentTask)
 
 hasParentTask ()
 
 __serialize ()
 
 __unserialize (array $data)
 
 getHash ()
 
 equals (Value $other)
 
 getType ()
 
 setParentTask (Task $parentTask)
 
 getParentTask ()
 
 hasParentTask ()
 
 setValue ($value)
 
 __serialize ()
 
 __unserialize (array $data)
 

Data Fields

const COPY_SOURCE_DIR = 'source'
 
const COPY_TARGET_DIR = 'target'
 

Private Attributes

array $copy_definitions = []
 Copy Jobs: source file => relative target file in zip directory. More...
 
string $temp_dir
 
array $object_wsp_ids = []
 
int $num_files = 0
 
int $sum_file_sizes = 0
 
BooleanValue $adheres_to_limit = null
 

Additional Inherited Members

- Protected Attributes inherited from ILIAS\BackgroundTasks\Implementation\Values\AbstractValue
Task $parentTask
 

Detailed Description

Copy definition for workspace folders.

Author
Alexander Killing killi.nosp@m.ng@l.nosp@m.eifos.nosp@m..de

Definition at line 27 of file class.ilWorkspaceCopyDefinition.php.

Member Function Documentation

◆ addCopyDefinition()

ilWorkspaceCopyDefinition::addCopyDefinition ( string  $a_source,
string  $a_target 
)

Definition at line 119 of file class.ilWorkspaceCopyDefinition.php.

119 : void
120 {
121 $this->copy_definitions[] =
122 [
123 self::COPY_SOURCE_DIR => $a_source,
124 self::COPY_TARGET_DIR => $a_target
125 ];
126 }

◆ equals()

ilWorkspaceCopyDefinition::equals ( Value  $other)

Implements ILIAS\BackgroundTasks\Value.

Definition at line 128 of file class.ilWorkspaceCopyDefinition.php.

128 : bool
129 {
130 return strcmp($this->getHash(), $other->getHash());
131 }

References ILIAS\BackgroundTasks\Value\getHash().

+ Here is the call graph for this function:

◆ getAdheresToLimit()

ilWorkspaceCopyDefinition::getAdheresToLimit ( )

◆ getCopyDefinitions()

ilWorkspaceCopyDefinition::getCopyDefinitions ( )

Definition at line 43 of file class.ilWorkspaceCopyDefinition.php.

43 : array
44 {
46 }
array $copy_definitions
Copy Jobs: source file => relative target file in zip directory.

References $copy_definitions.

◆ getHash()

ilWorkspaceCopyDefinition::getHash ( )
Returns
string Gets a hash for this Value. If two objects are the same the hash must be the same! if two objects are different you need to have as view collisions as possible.

Implements ILIAS\BackgroundTasks\Value.

Definition at line 133 of file class.ilWorkspaceCopyDefinition.php.

133 : string
134 {
135 return md5($this->serialize());
136 }

◆ getNumFiles()

ilWorkspaceCopyDefinition::getNumFiles ( )

Definition at line 89 of file class.ilWorkspaceCopyDefinition.php.

◆ getObjectWspIds()

ilWorkspaceCopyDefinition::getObjectWspIds ( )
Returns
string[]

Definition at line 73 of file class.ilWorkspaceCopyDefinition.php.

73 : array
74 {
76 }

References $object_wsp_ids.

◆ getSumFileSizes()

ilWorkspaceCopyDefinition::getSumFileSizes ( )

Definition at line 99 of file class.ilWorkspaceCopyDefinition.php.

99 : int
100 {
102 }

◆ getTempDir()

ilWorkspaceCopyDefinition::getTempDir ( )

Definition at line 57 of file class.ilWorkspaceCopyDefinition.php.

57 : string
58 {
59 return $this->temp_dir;
60 }

References $temp_dir.

◆ serialize()

ilWorkspaceCopyDefinition::serialize ( )

Definition at line 138 of file class.ilWorkspaceCopyDefinition.php.

138 : string
139 {
140 return serialize(
141 [
142 "copy_definition" => $this->getCopyDefinitions(),
143 "temp_dir" => $this->getTempDir(),
144 "object_wsp_ids" => implode(",", $this->getObjectWspIds()),
145 "num_files" => $this->getNumFiles(),
146 "sum_file_sizes" => $this->getSumFileSizes(),
147 "adheres_to_limit" => $this->getAdheresToLimit()
148 ]
149 );
150 }

◆ setAdheresToLimit()

ilWorkspaceCopyDefinition::setAdheresToLimit ( BooleanValue  $adheres_to_limit)

Definition at line 114 of file class.ilWorkspaceCopyDefinition.php.

114 : void
115 {
116 $this->adheres_to_limit = $adheres_to_limit;
117 }

◆ setCopyDefinitions()

ilWorkspaceCopyDefinition::setCopyDefinitions ( array  $a_definitions)

Set copy definitions.

Parameters
string[]$a_definitions

Definition at line 52 of file class.ilWorkspaceCopyDefinition.php.

52 : void
53 {
54 $this->copy_definitions = $a_definitions;
55 }

◆ setNumFiles()

ilWorkspaceCopyDefinition::setNumFiles ( int  $num_files)

Definition at line 94 of file class.ilWorkspaceCopyDefinition.php.

94 : void
95 {
96 $this->num_files = $num_files;
97 }

◆ setObjectWspIds()

ilWorkspaceCopyDefinition::setObjectWspIds ( array  $object_wps_ids,
bool  $append = false 
)

Definition at line 78 of file class.ilWorkspaceCopyDefinition.php.

81 : void {
82 if ($append) {
83 $this->object_wsp_ids = array_merge($this->object_wsp_ids, $object_wps_ids);
84 } else {
85 $this->object_wsp_ids = $object_wps_ids;
86 }
87 }

◆ setSumFileSizes()

ilWorkspaceCopyDefinition::setSumFileSizes ( int  $sum_file_sizes)

Definition at line 104 of file class.ilWorkspaceCopyDefinition.php.

104 : void
105 {
106 $this->sum_file_sizes = $sum_file_sizes;
107 }

◆ setTempDir()

ilWorkspaceCopyDefinition::setTempDir ( string  $temp_dir)

Set directory name located in /temp/ directory.

Definition at line 65 of file class.ilWorkspaceCopyDefinition.php.

65 : void
66 {
67 $this->temp_dir = $temp_dir;
68 }

References $temp_dir.

◆ setValue()

ilWorkspaceCopyDefinition::setValue (   $value)

Set value.

Parameters
$value

Implements ILIAS\BackgroundTasks\Value.

Definition at line 156 of file class.ilWorkspaceCopyDefinition.php.

156 : void
157 {
158 $this->copy_definitions = $value;
159 }

◆ unserialize()

ilWorkspaceCopyDefinition::unserialize (   $data)

Unserialize definitions.

Parameters
string$data

Definition at line 165 of file class.ilWorkspaceCopyDefinition.php.

166 {
167 $elements = unserialize((string) $data, ['allowed_classes' => false]);
168
169 $this->setCopyDefinitions($elements["copy_definition"]);
170 $this->setTempDir($elements['temp_dir']);
171 $this->setObjectWspIds(explode(",", $elements["object_wsp_ids"]));
172 $this->setNumFiles($elements["num_files"]);
173 $this->setSumFileSizes($elements["sum_file_sizes"]);
174 $this->setAdheresToLimit($elements["adheres_to_limit"]);
175 }
setTempDir(string $temp_dir)
Set directory name located in /temp/ directory.
setObjectWspIds(array $object_wps_ids, bool $append=false)
setCopyDefinitions(array $a_definitions)
Set copy definitions.
setAdheresToLimit(BooleanValue $adheres_to_limit)
unserialize($data)
Unserialize definitions.

References $data.

Field Documentation

◆ $adheres_to_limit

BooleanValue ilWorkspaceCopyDefinition::$adheres_to_limit = null
private

Definition at line 41 of file class.ilWorkspaceCopyDefinition.php.

◆ $copy_definitions

array ilWorkspaceCopyDefinition::$copy_definitions = []
private

Copy Jobs: source file => relative target file in zip directory.

Parameters
string[]

Definition at line 36 of file class.ilWorkspaceCopyDefinition.php.

Referenced by getCopyDefinitions().

◆ $num_files

int ilWorkspaceCopyDefinition::$num_files = 0
private

Definition at line 39 of file class.ilWorkspaceCopyDefinition.php.

◆ $object_wsp_ids

array ilWorkspaceCopyDefinition::$object_wsp_ids = []
private

Definition at line 38 of file class.ilWorkspaceCopyDefinition.php.

Referenced by getObjectWspIds().

◆ $sum_file_sizes

int ilWorkspaceCopyDefinition::$sum_file_sizes = 0
private

Definition at line 40 of file class.ilWorkspaceCopyDefinition.php.

◆ $temp_dir

string ilWorkspaceCopyDefinition::$temp_dir
private

Definition at line 37 of file class.ilWorkspaceCopyDefinition.php.

Referenced by getTempDir(), and setTempDir().

◆ COPY_SOURCE_DIR

const ilWorkspaceCopyDefinition::COPY_SOURCE_DIR = 'source'

◆ COPY_TARGET_DIR

const ilWorkspaceCopyDefinition::COPY_TARGET_DIR = 'target'

The documentation for this class was generated from the following file: