Class: I2CE MagicData: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
This article desrcibes the class '''I2CE_MagicData''' | This article desrcibes the class '''I2CE_MagicData'''. | ||
*Extends the class: [[Class: I2CE_MagicDataNode | I2CE_MagicDataNode]]. | |||
It is contained in the module [[iHRIS Module List#I2CE|I2CE]] in the package [https://launchpad.net/i2ce I2CE] | It is contained in the module [[iHRIS Module List#I2CE|I2CE]] in the package [https://launchpad.net/i2ce I2CE] | ||
Line 35: | Line 36: | ||
*Signature: protected function __construct($name,$parent,$check_key) | *Signature: protected function __construct($name,$parent,$check_key) | ||
Parameters: | Parameters: | ||
* [http://www.php.net/manual/en/language.types.string.php string] $name<br/>The name of this configuration setting. | * [http://www.php.net/manual/en/language.types.string.php string ] $name<br/>The name of this configuration setting. | ||
**Default Value: null | **Default Value: null | ||
* [[Class: I2CE_MagicDataNode | I2CE_MagicDataNode]] $parent<br/>The parent of this configuration setting. | * [[Class: I2CE_MagicDataNode | I2CE_MagicDataNode]] $parent<br/>The parent of this configuration setting. | ||
**Default Value: null | **Default Value: null | ||
* [http://www.php.net/manual/en/language.types.boolean.php boolean] $check_key<br/>Defaults to true in which case we check that the key is valid. | * [http://www.php.net/manual/en/language.types.boolean.php boolean ] $check_key<br/>Defaults to true in which case we check that the key is valid. | ||
**Default Value: true | **Default Value: true | ||
===addStorage()=== | ===addStorage()=== | ||
Line 55: | Line 56: | ||
storage mechanism. | storage mechanism. | ||
*Signature: public function clearCache() | *Signature: public function clearCache() | ||
*Returns: [http://www.php.net/manual/en/language.types.boolean.php boolean] | *Returns: [http://www.php.net/manual/en/language.types.boolean.php boolean ] | ||
===destroy()=== | ===destroy()=== | ||
Destroy the specified node from each of the storage mechanisms | Destroy the specified node from each of the storage mechanisms | ||
*Signature: public function destroy($node) | *Signature: public function destroy($node) | ||
*Returns: [http://www.php.net/manual/en/language.types.boolean.php boolean] true on success | *Returns: [http://www.php.net/manual/en/language.types.boolean.php boolean ] true on success | ||
Parameters: | Parameters: | ||
*$node | *$node | ||
Line 65: | Line 66: | ||
Return the full path to this configuration setting. | Return the full path to this configuration setting. | ||
*Signature: public function getPath($show_top) | *Signature: public function getPath($show_top) | ||
*Returns: [http://www.php.net/manual/en/language.types.string.php string] | *Returns: [http://www.php.net/manual/en/language.types.string.php string ] | ||
Parameters: | Parameters: | ||
* [http://www.php.net/manual/en/language.types.boolean.php boolean] $show_top<br/>defaults to true if we are to show the parent | * [http://www.php.net/manual/en/language.types.boolean.php boolean ] $show_top<br/>defaults to true if we are to show the parent | ||
**Default Value: true | **Default Value: true | ||
===getPermanentStorageClass()=== | ===getPermanentStorageClass()=== | ||
Gets the class of the permanent storage object (the last one added) | Gets the class of the permanent storage object (the last one added) | ||
*Signature: public function getPermanentStorageClass() | *Signature: public function getPermanentStorageClass() | ||
*Returns: [http://www.php.net/manual/en/language.types.string.php string] | *Returns: [http://www.php.net/manual/en/language.types.string.php string ] | ||
===instance()=== | ===instance()=== | ||
Return an instance of this class based on the index given. | Return an instance of this class based on the index given. | ||
Line 81: | Line 82: | ||
*Returns: [[Class: I2CE_MagicData | I2CE_MagicData]] | *Returns: [[Class: I2CE_MagicData | I2CE_MagicData]] | ||
Parameters: | Parameters: | ||
* [http://www.php.net/manual/en/language.types.string.php string] $index | * [http://www.php.net/manual/en/language.types.string.php string ] $index | ||
**Default Value: NULL | **Default Value: NULL | ||
* [http://www.php.net/manual/en/language.types.boolean.php boolean] $replace<br/>Defaults to false. If true and | * [http://www.php.net/manual/en/language.types.boolean.php boolean ] $replace<br/>Defaults to false. If true and | ||
**Default Value: FALSE | **Default Value: FALSE | ||
===pathDivider()=== | ===pathDivider()=== | ||
Return the path divider for this MagicDataNode object | Return the path divider for this MagicDataNode object | ||
*Signature: protected function pathDivider() | *Signature: protected function pathDivider() | ||
*Returns: [http://www.php.net/manual/en/language.types.string.php string] | *Returns: [http://www.php.net/manual/en/language.types.string.php string ] | ||
===retrieve()=== | ===retrieve()=== | ||
Retrieve the given magic data node (which should be a | Retrieve the given magic data node (which should be a | ||
descendent of this instance.) | descendent of this instance.) | ||
*Signature: public function retrieve($node) | *Signature: public function retrieve($node) | ||
*Returns: [http://www.php.net/manual/en/language.types.array.php array] | *Returns: [http://www.php.net/manual/en/language.types.array.php array ] | ||
Parameters: | Parameters: | ||
* [[Class: I2CE_MagicDataNode | I2CE_MagicDataNode]] $node | * [[Class: I2CE_MagicDataNode | I2CE_MagicDataNode]] $node | ||
Line 110: | Line 111: | ||
mechanisms | mechanisms | ||
*Signature: public function store($node,$max) | *Signature: public function store($node,$max) | ||
*Returns: [http://www.php.net/manual/en/language.types.boolean.php boolean] true on success. | *Returns: [http://www.php.net/manual/en/language.types.boolean.php boolean ] true on success. | ||
Parameters: | Parameters: | ||
* [[Class: I2CE_MagicDataNode | I2CE_MagicDataNode]] $node | * [[Class: I2CE_MagicDataNode | I2CE_MagicDataNode]] $node |
Revision as of 22:25, 16 October 2009
This article desrcibes the class I2CE_MagicData.
- Extends the class: I2CE_MagicDataNode.
It is contained in the module I2CE in the package I2CE
The class is defined in the file: lib/I2CE_MagicData.php
Configuration class to lookup and save configuration options.
Variables
$instances
A list of named instances of this class.
- Type: static protected y $instances
$last_instance
The index of the last accessed stored instance of this class
- Type: static protected ng $last_instance
$instance
The instance index for this configuration grouping.
- Type: protected ng $instance
$storage
A list of storage objects to use to store and retrieve values. Values will be saved using all storage objects and retrieved until a match is found in the order the objects are assigned.
- Type: protected y $storage
$num_storage
- Type: protected $num_storage
$locales
- Type: protected $locales
Methods
__construct()
Construct a new configuration value or grouping.
- Signature: protected function __construct($name,$parent,$check_key)
Parameters:
- string $name
The name of this configuration setting.- Default Value: null
- I2CE_MagicDataNode $parent
The parent of this configuration setting.- Default Value: null
- boolean $check_key
Defaults to true in which case we check that the key is valid.- Default Value: true
addStorage()
Add the given storage object to this instance. The last one added is considered to be the "definitive" one -- the one whose contents should be considered correct. The first one added should be the one which has quickest access
- Signature: public function addStorage($storage)
Parameters:
- I2CE_MagicDataStorage $storage
clearCache()
Clear caching for each of the storage mechanisms @param I2CE_MagicDataNode $node. The node we wish to remove from the cache. If null ( default) we call the clear() method for all but the last added storage mecahnism. If non-null, we call the destory() method for the node on all but the last storage mechanism.
- Signature: public function clearCache()
- Returns: boolean
destroy()
Destroy the specified node from each of the storage mechanisms
- Signature: public function destroy($node)
- Returns: boolean true on success
Parameters:
- $node
getPath()
Return the full path to this configuration setting.
- Signature: public function getPath($show_top)
- Returns: string
Parameters:
- boolean $show_top
defaults to true if we are to show the parent- Default Value: true
getPermanentStorageClass()
Gets the class of the permanent storage object (the last one added)
- Signature: public function getPermanentStorageClass()
- Returns: string
instance()
Return an instance of this class based on the index given. This will create the instance if it doesn't exist.
$index is non null, then we create a new instance at $index.
- Signature: static public function instance($index,$replace)
- Returns: I2CE_MagicData
Parameters:
- string $index
- Default Value: NULL
- boolean $replace
Defaults to false. If true and- Default Value: FALSE
pathDivider()
Return the path divider for this MagicDataNode object
- Signature: protected function pathDivider()
- Returns: string
retrieve()
Retrieve the given magic data node (which should be a descendent of this instance.)
- Signature: public function retrieve($node)
- Returns: array
Parameters:
- I2CE_MagicDataNode $node
setLocales()
- Signature: public function setLocales($locales)
Parameters:
- $locales
store()
Store the given magic data node (which should be a descendent of this instance.) Starts storing at the last added storage mechanism until it reaches the first storage mechanism. If it fails saving at any storage mechanis, it will call the destroy method on that storage mechanism and any remaining one.
Defaults to -1 meaning we store on all mechanisms
- Signature: public function store($node,$max)
- Returns: boolean true on success.
Parameters:
- I2CE_MagicDataNode $node
- integer $max
The max index of storage objects to save.- Default Value: -1
tearDown()
Clean up all MagicData instances. Normally, this should not be used. Primarily for unit testing.
- Signature: static public function tearDown()
Inherited Variables
$type
Theis protected variable is inherited from I2CE_MagicDataNode->$type
$name
Theis protected variable is inherited from I2CE_MagicDataNode->$name
$value
Theis protected variable is inherited from I2CE_MagicDataNode->$value
$children
Theis protected variable is inherited from I2CE_MagicDataNode->$children
$parent
Theis protected variable is inherited from I2CE_MagicDataNode->$parent
$parentPath
Theis protected variable is inherited from I2CE_MagicDataNode->$parentPath
$parentPathTop
Theis protected variable is inherited from I2CE_MagicDataNode->$parentPathTop
$top
Theis protected variable is inherited from I2CE_MagicDataNode->$top
$volatile
Theis protected variable is inherited from I2CE_MagicDataNode->$volatile
$attributes
Theis protected variable is inherited from I2CE_MagicDataNode->$attributes