Bio::MAGE::NameValueType

SYNOPSIS

  use Bio::MAGE::NameValueType;
    # creating an empty instance
  my $namevaluetype = Bio::MAGE::NameValueType->new();
    # creating an already populated instance
  my $namevaluetype = Bio::MAGE::NameValueType->new(value=>$value_value,
                        name=>$name_value,
                        type=>$type_value,
                        propertySets=>$propertySets_value);
    # setting and retrieving object attributes
  my $value_val = $namevaluetype->value();
  $namevaluetype->value($value);
  my $name_val = $namevaluetype->name();
  $namevaluetype->name($value);
  my $type_val = $namevaluetype->type();
  $namevaluetype->type($value);
    # setting and retrieving object associations
  my $propertySets_val = $namevaluetype->propertySets();
  $namevaluetype->propertySets($value);

DESCRIPTION

From the MAGE-OM documentation for the NameValueType class:

A tuple designed to store data, keyed by a name and type.

CLASS METHODS

The following methods can all be called without first having an instance of the class via the Bio::MAGE::NameValueType->methodname() syntax.

new()
new(%args)
The object constructor new() accepts the following optional named-value style arguments:
$obj->set_slots(%parameters)
$obj->set_slots(\@name_list, \@value_list)
The set_slots() method is used to set a number of slots at the same time. It has two different invocation methods. The first takes a named parameter list, and the second takes two array references.

Return value: none

Side effects: will call croak() if a slot_name is used that the class does not define.

$obj->get_slots(@name_list)
The get_slots() method is used to get the values of a number of slots at the same time.

Return value: a list of instance objects

Side effects: none

$val = $obj->set_slot($name,$val)
The set_slot() method sets the slot $name to the value $val

Return value: the new value of the slot, i.e. $val

Side effects: none

$val = $obj->get_slot($name)
The get_slot() method is used to get the values of a number of slots at the same time.

Return value: a single slot value, or undef if the slot has not been initialized.

Side effects: none

@names = $obj->get_slot_names()
The get_slot_names() method is used to retrieve the name of all slots defined for a given object.

Return value: a single slot value, or undef if the slot has not been initialized.

Side effects: none

$name = class_name()
Returns the full class name for this class, Bio::MAGE::NameValueType.

$package_name = package()
Returns the unresolved package name (i.e. no 'Bio::MAGE::') of the package that contains class, Bio::MAGE::NameValueType.

@classes = subclasses()
returns the list of subclasses for this class.

@classes = superclasses()
returns the list of superclasses for this class.

@methods = attribute_methods()
returns the list of attribute accessor methods for this class.

@methods = association_methods()
returns the list of association accessor methods for this class.

%assns = associations()
returns the association meta-information in a hash where the keys are the association names and the values are Bio::MAGE::Association objects that provide the meta-information for the association.

ATTRIBUTES

Attributes are simple data types that belong to a single instance of a class. In the Perl implementation of the MAGE-OM classes, the interface to attributes is implemented using separate setter and getter methods for each attribute.

Bio::MAGE::NameValueType: has the following attribute accessor methods:

value
From the MAGE-OM documentation for the value attribute:

The value of the name.

$val = $namevaluetype->setValue($val)
The restricted setter method for the value attribute.

Input parameters: the value to which the value attribute will be set

Return value: the current value of the value attribute

Side effects: none

Exceptions: will call croak() if no input parameters are specified, or if too many input parameters are specified

$val = $namevaluetype->getValue()
The restricted getter method for the value attribute.

Input parameters: none

Return value: the current value of the value attribute

Side effects: none

Exceptions: will call croak() if any input parameters are specified

name
From the MAGE-OM documentation for the name attribute:

The name of the key.

$val = $namevaluetype->setName($val)
The restricted setter method for the name attribute.

Input parameters: the value to which the name attribute will be set

Return value: the current value of the name attribute

Side effects: none

Exceptions: will call croak() if no input parameters are specified, or if too many input parameters are specified

$val = $namevaluetype->getName()
The restricted getter method for the name attribute.

Input parameters: none

Return value: the current value of the name attribute

Side effects: none

Exceptions: will call croak() if any input parameters are specified

type
From the MAGE-OM documentation for the type attribute:

The type of the key.

$val = $namevaluetype->setType($val)
The restricted setter method for the type attribute.

Input parameters: the value to which the type attribute will be set

Return value: the current value of the type attribute

Side effects: none

Exceptions: will call croak() if no input parameters are specified, or if too many input parameters are specified

$val = $namevaluetype->getType()
The restricted getter method for the type attribute.

Input parameters: none

Return value: the current value of the type attribute

Side effects: none

Exceptions: will call croak() if any input parameters are specified

ASSOCIATIONS

Associations are references to other class objects which can be shared by multiple class instances at the same time. In the Perl implementation of MAGE-OM classes, associations are implemented using three separate methods:

get*
Retrieves the current value. If the association has list cardinality, an array reference is returned.

set*
Sets the current value replacing any existing value. If the association has list cardinality, the argument must be an array reference. Unless you know what you are doing, you probably should be using the add* methods.

add*
This method exists only for associations with list cardinality. It appends a list of objects to any values that may already be stored in the association.

Bio::MAGE::NameValueType: has the following association accessor methods:

propertySets
From the MAGE-OM documentation for the propertySets association:

Allows nested specification of name/value pairs

$array_ref = $namevaluetype->setPropertySets($array_ref)
The restricted setter method for the propertySets association.

Input parameters: the value to which the propertySets association will be set : a reference to an array of objects of type Bio::MAGE::NameValueType

Return value: the current value of the propertySets association : a reference to an array of objects of type Bio::MAGE::NameValueType

Side effects: none

Exceptions: will call croak() if no input parameters are specified, or if too many input parameters are specified , or if $array_ref is not a reference to an array class Bio::MAGE::NameValueType instances

$array_ref = $namevaluetype->getPropertySets()
The restricted getter method for the propertySets association.

Input parameters: none

Return value: the current value of the propertySets association : a reference to an array of objects of type Bio::MAGE::NameValueType

Side effects: none

Exceptions: will call croak() if any input parameters are specified

$namevaluetype->addPropertySets(@vals)
Because the propertySets association has list cardinality, it may store more than one value. This method adds the current list of objects in the propertySets association.

Input parameters: the list of values @vals to add to the propertySets association. NOTE: submitting a single value is permitted.

Return value: none

Side effects: none

Exceptions: will call croak() if no input parameters are specified , or if any of the objects in @vals is not an instance of class Bio::MAGE::NameValueType


BUGS

Please send bug reports to mged-mage@lists.sf.net


AUTHOR

Jason E. Stewart (www.openinformatics.com)


SEE ALSO

perl(1).