|
/home/cpanrun/depot/main/contrib-patched/perl/CPAN/src/Bio-MAGE/blib/lib/Bio/MAGE/Association.pm |
use Bio::MAGE::Association qw(:CARD);
# creating an empty instance my $association = Bio::MAGE::Association->new();
# populating the instance in the constructor
my $association = Bio::MAGE::Association->new(self=>$assoc_end1,
other=>$assoc_end2);
# setting and retrieving the association ends my $self_end = $association->self(); $association->self($value);
my $other_end = $association->other(); $association->other($value);
This class holds the two association ends for each UML
association. self is the end nearest the class of interest, while
other is the end furthest away. The ends are of type
Bio::MAGE::Association::End.
Associations in UML have a cardinality that determines how many
objects can be associated. In the Bio::MAGE::Association
modulte, cardinality has two primary dimensions: optional or
required, and single or list. So there are four combinations
of the two dimensions:
There are four constants defined in this module for handling the cardinalities, and they can be imported into an application using the CARD import tag:
use Bio::MAGE::Association qw(:CARD);
The four constants are: CARD_0_OR_1, CARD_1, CARD_0_TO_N, and CARD_1_TO_N.
use Bio::MAGE::Association qw(:CARD);
# creating an empty instance my $assoc_end = Bio::MAGE::Association::End->new();
# populating the instance in the constructor
my $assoc_end = Bio::MAGE::Association::End->new(
name=>$name,
is_ref=>$bool,
cardinality=>CARD_0_TO_N,
class_name=>$class_name,
documentation=>$doc_string,
rank=>$rank,
ordered=>$bool,
);
# setting and retrieving object attributes my $name = $assoc_end->name(); $assoc_end->name($value);
my $is_ref = $assoc_end->is_ref(); $assoc_end->is_ref($value);
my $cardinality = $assoc_end->cardinality(); $assoc_end->cardinality($value);
my $class_name = $assoc_end->class_name(); $assoc_end->class_name($value);
my $documentation = $assoc_end->documentation(); $assoc_end->documentation($value);
my $rank = $assoc_end->rank(); $assoc_end->rank($value);
my $ordered = $assoc_end->ordered(); $assoc_end->ordered($value);
# # Utility methods #
# does this end of list cardinality (0..N or 1..N) my $bool = $assoc_end->is_list();
This class stores the information in a single UML association end.
|
/home/cpanrun/depot/main/contrib-patched/perl/CPAN/src/Bio-MAGE/blib/lib/Bio/MAGE/Association.pm |