ConsoleTools: ezcConsoleOption
[ ]
[ ]
[ ]
[ ]
[ ]
Class: ezcConsoleOption
|
Objects of this class store data about a single option for ezcConsoleInput. [
source]
This class represents a single command line option, which can be handled by the ezcConsoleInput class. This classes only purpose is the storage of the parameter data, the handling of options and arguments is done by the class
ezcConsoleInput.
Member Variables
|
protected array(string=>ezcConsoleParamemterRule) |
$dependencies
= array()
Dependency rules of this parameter. |
|
protected array(string=>ezcConsoleParamemterRule) |
$exclusions
= array()
Exclusion rules of this parameter. |
|
protected array(string) |
$properties
= array( 'short' => '', 'long' => '', )
Properties, which provide only read access. |
|
public mixed |
$value
= false
The value the parameter was assigned to when being submitted. |
Method Summary
|
public ezcConsoleOption |
__construct(
[$short = ''], $long, [$type = ezcConsoleInput::TYPE_NONE], [$default = null], [$multiple = false], [$shorthelp = 'No help available.'], [$longhelp = 'Sorry, there is no help text available for this parameter.'], [$dependencies = array()], [$exclusions = array()], [$arguments = true], [$mandatory = false], [$isHelpOption = false] )
Create a new parameter struct. |
|
public void |
addDependency(
$rule )
|
|
public void |
addExclusion(
$rule )
|
|
public array |
getDependencies(
)
Returns the dependency rules registered with this parameter. |
|
public array |
getExclusions(
)
Returns the exclusion rules registered with this parameter. |
|
public bool |
hasDependency(
$param, $rule )
Returns if a given dependency rule is registered with the parameter. |
|
public bool |
hasExclusion(
$param, $rule )
Returns if a given exclusion rule is registered with the parameter. |
|
public void |
removeAllDependencies(
$param )
Remove all dependency rule referring to a parameter. |
|
public void |
removeAllExclusions(
$param )
Remove all exclusion rule referring to a parameter. |
|
public void |
removeDependency(
$rule )
Remove a dependency rule from a parameter. |
|
public void |
removeExclusion(
$rule )
Remove a exclusion rule from a parameter. |
|
public void |
resetDependencies(
)
Reset existing dependency rules. |
|
public void |
resetExclusions(
)
Reset existing exclusion rules. |
|
public static bool |
validateOptionName(
$name )
Returns if a given name if valid for use as a parameter name a parameter. |
|
public mixed |
__get(
$key )
Property read access. |
|
public bool |
__isset(
$key )
Property isset access. |
|
public void |
__set(
$key, $val )
Property write access. |
Methods
__construct
ezcConsoleOption __construct(
[string
$short = ''], string
$long, [int
$type = ezcConsoleInput::TYPE_NONE], [mixed
$default = null], [bool
$multiple = false], [string
$shorthelp = 'No help available.'], [string
$longhelp = 'Sorry, there is no help text available for this parameter.'], [
$dependencies = array()], [
$exclusions = array()], [bool
$arguments = true], [bool
$mandatory = false], [bool
$isHelpOption = false] )
Create a new parameter struct.
Creates a new basic parameter struct with the base information "$short" (the short name of the parameter) and "$long" (the long version). You simply apply these parameters as strings (without '-' or '--'). So
will result in a parameter that can be accessed using
or
The newly created parameter contains only it's 2 names and each other attribute is set to it's default value. You can simply manipulate those attributes by accessing them directly.
Parameters
| Name |
Type |
Description |
$short |
string |
Short name of the parameter without '-' (eg. 'f'). |
$long |
string |
Long name of the parameter without '--' (eg. 'file'). |
$type |
int |
Value type of the parameter. One of ezcConsoleInput::TYPE_*. |
$default |
mixed |
Default value the parameter holds if not submitted. |
$multiple |
bool |
If the parameter may be submitted multiple times. |
$shorthelp |
string |
Short help text. |
$longhelp |
string |
Long help text. |
$dependencies |
array(int=>ezcConsoleOptionRule) |
Dependency rules. |
$exclusions |
array(int=>ezcConsoleOptionRule) |
Exclusion rules. |
$arguments |
bool |
Whether supplying arguments is allowed when this parameter is set. |
$mandatory |
bool |
Whether the parameter must be always submitted. |
$isHelpOption |
bool |
Indicates that the given parameter is a help option. If a help option is set, all rule checking is skipped (dependency/exclusion/ mandatory). |
Throws
| Class | Description |
ezcConsoleInvalidOptionNameException |
If the option names start with a "-" sign or contain whitespaces. |
addDependency
Parameters
addExclusion
Parameters
getDependencies
array getDependencies(
)
Returns the dependency rules registered with this parameter.
Returns an array of registered dependencies.
getExclusions
array getExclusions(
)
Returns the exclusion rules registered with this parameter.
Returns an array of registered exclusions.
hasDependency
Returns if a given dependency rule is registered with the parameter.
Returns true if the given rule is registered with this parameter, otherwise false.
Parameters
hasExclusion
Returns if a given exclusion rule is registered with the parameter.
Returns true if the given rule is registered with this parameter, otherwise false.
Parameters
removeAllDependencies
Remove all dependency rule referring to a parameter.
This removes all dependency rules from a parameter, that refer to as specific parameter. If no rule is registered with this parameter as reference, the method call will simply be ignored.
Parameters
removeAllExclusions
Remove all exclusion rule referring to a parameter.
This removes all exclusion rules from a parameter, that refer to as specific parameter. If no rule is registered with this parameter as reference, the method call will simply be ignored.
Parameters
removeDependency
Remove a dependency rule from a parameter.
This removes a given rule from a parameter, if it exists. If the rule is not registered with the parameter, the method call will simply be ignored.
Parameters
removeExclusion
Remove a exclusion rule from a parameter.
This removes a given rule from a parameter, if it exists. If the rule is not registered with the parameter, the method call will simply be ignored.
Parameters
resetDependencies
void resetDependencies(
)
Reset existing dependency rules.
Deletes all registered dependency rules from the parameter definition.
resetExclusions
void resetExclusions(
)
Reset existing exclusion rules.
Deletes all registered exclusion rules from the parameter definition.
validateOptionName
bool validateOptionName(
string
$name )
Returns if a given name if valid for use as a parameter name a parameter.
Checks if a given parameter name is generally valid for use. It checks a) that the name does not start with '-' or '--' and b) if it contains whitespaces. Note, that this method does not check any conflicts with already used parameter names.
Parameters
| Name |
Type |
Description |
$name |
string |
The name to check. |
__get
mixed __get(
string
$key )
Property read access.
Provides read access to the properties of the object.
Parameters
| Name |
Type |
Description |
$key |
string |
The name of the property. |
__isset
bool __isset(
string
$key )
Property isset access.
Parameters
| Name |
Type |
Description |
$key |
string |
Name of the property. |
__set
void __set(
string
$key, mixed
$val )
Property write access.
Parameters
| Name |
Type |
Description |
$key |
string |
Name of the property. |
$val |
mixed |
The value for the property. |
Throws
| Class | Description |
ezcBasePropertyPermissionException |
If the property you try to access is read-only. |
Last updated: Wed, 28 Nov 2007