
UMMF::Core::Configurable - Configurable object base class.

use base qw(UMMF::Core::Configurable) my $configurable = ...->new(); my $value = $configurable->config_value($modelElement, $name, $default);

This superclass is used by UMMF::UML::Export and UMMF::UML::XForm to get configuration data for a particular ModelELement, from mulitple sources:
override hashThis minimizes coupling between the Model, the Model transforms applied and control of the Model transforms.
The $self->config_*($model_element, $key, $default) methods all search for values in a particular order:
UMMF::Config::Profile.where $name is the fully-qualified name of the $model_element, and $kind is $self->config_kind.
If $default is a CODE ref, the $default->() result is used.
This allows options during Model processing to be handled in a general manner, and be specific for a particular transformation.
Thus, 'ummf.Perl.foobar' will be selected before 'ummf.foobar' if $self->config_kind eq 'Perl'.

my $value = $configurable->config_*($model_element, $key, $default);

None exported.

Kurt Stephens, kstephens@users.sourceforge.net 2003/08/05


$Revision: 1.9 $

Returns the prefix used for this configurable object.
For example, UMMF::UML::Export::Perl::config_kind returns 'Perl' to select 'ummf.Perl.*' TaggedValues before others.
Subclasses must define this.