The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Class::Scaffold::Environment - large-scale OOP application support

SYNOPSIS

    Class::Scaffold::Environment->new;

DESCRIPTION

METHODS

clear_configurator
    $obj->clear_configurator;

Deletes the object.

clear_context
    $obj->clear_context;

Clears the value.

clear_multiplex_transaction_omit
    $obj->clear_multiplex_transaction_omit;

Deletes all keys and values from the hash. Since this is a class variable, the value will be changed for all instances of this class.

clear_rollback_mode
    $obj->clear_rollback_mode;

Clears the boolean value by setting it to 0.

clear_storage_cache
    $obj->clear_storage_cache;

Deletes all keys and values from the hash. Since this is a class variable, the value will be changed for all instances of this class.

clear_test_mode
    $obj->clear_test_mode;

Clears the value.

configurator
    my $object = $obj->configurator;
    $obj->configurator($object);
    $obj->configurator(@args);

If called with an argument object of type Class::Scaffold::Environment::Configurator it sets the object; further arguments are discarded. If called with arguments but the first argument is not an object of type Class::Scaffold::Environment::Configurator, a new object of type Class::Scaffold::Environment::Configurator is constructed and the arguments are passed to the constructor.

If called without arguments, it returns the Class::Scaffold::Environment::Configurator object stored in this slot; if there is no such object, a new Class::Scaffold::Environment::Configurator object is constructed - no arguments are passed to the constructor in this case - and stored in the configurator slot before returning it.

configurator_clear
    $obj->configurator_clear;

Deletes the object.

context
    my $value = $obj->context;
    $obj->context($value);

A basic getter/setter method. If called without an argument, it returns the value. If called with a single argument, it sets the value.

context_clear
    $obj->context_clear;

Clears the value.

core_storage_args
    $obj->core_storage_args(@args);
    $obj->core_storage_args;

Calls core_storage_args() with the given arguments on the object stored in the configurator slot. If there is no such object, a new Class::Scaffold::Environment::Configurator object is constructed - no arguments are passed to the constructor - and stored in the configurator slot before forwarding core_storage_args() onto it.

core_storage_name
    $obj->core_storage_name(@args);
    $obj->core_storage_name;

Calls core_storage_name() with the given arguments on the object stored in the configurator slot. If there is no such object, a new Class::Scaffold::Environment::Configurator object is constructed - no arguments are passed to the constructor - and stored in the configurator slot before forwarding core_storage_name() onto it.

delete_multiplex_transaction_omit
    $obj->delete_multiplex_transaction_omit(@keys);

Takes a list of keys and deletes those keys from the hash. Since this is a class variable, the value will be changed for all instances of this class.

delete_storage_cache
    $obj->delete_storage_cache(@keys);

Takes a list of keys and deletes those keys from the hash. Since this is a class variable, the value will be changed for all instances of this class.

exists_multiplex_transaction_omit
    if ($obj->exists_multiplex_transaction_omit($key)) { ... }

Takes a key and returns a true value if the key exists in the hash, and a false value otherwise. Since this is a class variable, the value will be changed for all instances of this class.

exists_storage_cache
    if ($obj->exists_storage_cache($key)) { ... }

Takes a key and returns a true value if the key exists in the hash, and a false value otherwise. Since this is a class variable, the value will be changed for all instances of this class.

keys_multiplex_transaction_omit
    my @keys = $obj->keys_multiplex_transaction_omit;

Returns a list of all hash keys in no particular order. Since this is a class variable, the value will be changed for all instances of this class.

keys_storage_cache
    my @keys = $obj->keys_storage_cache;

Returns a list of all hash keys in no particular order. Since this is a class variable, the value will be changed for all instances of this class.

memory_storage_name
    $obj->memory_storage_name(@args);
    $obj->memory_storage_name;

Calls memory_storage_name() with the given arguments on the object stored in the configurator slot. If there is no such object, a new Class::Scaffold::Environment::Configurator object is constructed - no arguments are passed to the constructor - and stored in the configurator slot before forwarding memory_storage_name() onto it.

multiplex_transaction_omit
    my %hash     = $obj->multiplex_transaction_omit;
    my $hash_ref = $obj->multiplex_transaction_omit;
    my $value    = $obj->multiplex_transaction_omit($key);
    my @values   = $obj->multiplex_transaction_omit([ qw(foo bar) ]);
    $obj->multiplex_transaction_omit(%other_hash);
    $obj->multiplex_transaction_omit(foo => 23, bar => 42);

Get or set the hash values. If called without arguments, it returns the hash in list context, or a reference to the hash in scalar context. If called with a list of key/value pairs, it sets each key to its corresponding value, then returns the hash as described before.

If called with exactly one key, it returns the corresponding value.

If called with exactly one array reference, it returns an array whose elements are the values corresponding to the keys in the argument array, in the same order. The resulting list is returned as an array in list context, or a reference to the array in scalar context.

If called with exactly one hash reference, it updates the hash with the given key/value pairs, then returns the hash in list context, or a reference to the hash in scalar context.

This is a class variable, so it is shared between all instances of this class. Changing it in one object will change it for all other objects as well.

multiplex_transaction_omit_clear
    $obj->multiplex_transaction_omit_clear;

Deletes all keys and values from the hash. Since this is a class variable, the value will be changed for all instances of this class.

multiplex_transaction_omit_delete
    $obj->multiplex_transaction_omit_delete(@keys);

Takes a list of keys and deletes those keys from the hash. Since this is a class variable, the value will be changed for all instances of this class.

multiplex_transaction_omit_exists
    if ($obj->multiplex_transaction_omit_exists($key)) { ... }

Takes a key and returns a true value if the key exists in the hash, and a false value otherwise. Since this is a class variable, the value will be changed for all instances of this class.

multiplex_transaction_omit_keys
    my @keys = $obj->multiplex_transaction_omit_keys;

Returns a list of all hash keys in no particular order. Since this is a class variable, the value will be changed for all instances of this class.

multiplex_transaction_omit_values
    my @values = $obj->multiplex_transaction_omit_values;

Returns a list of all hash values in no particular order. Since this is a class variable, the value will be changed for all instances of this class.

rollback_mode
    $obj->rollback_mode($value);
    my $value = $obj->rollback_mode;

If called without an argument, returns the boolean value (0 or 1). If called with an argument, it normalizes it to the boolean value. That is, the values 0, undef and the empty string become 0; everything else becomes 1.

rollback_mode_clear
    $obj->rollback_mode_clear;

Clears the boolean value by setting it to 0.

rollback_mode_set
    $obj->rollback_mode_set;

Sets the boolean value to 1.

set_rollback_mode
    $obj->set_rollback_mode;

Sets the boolean value to 1.

storage_cache
    my %hash     = $obj->storage_cache;
    my $hash_ref = $obj->storage_cache;
    my $value    = $obj->storage_cache($key);
    my @values   = $obj->storage_cache([ qw(foo bar) ]);
    $obj->storage_cache(%other_hash);
    $obj->storage_cache(foo => 23, bar => 42);

Get or set the hash values. If called without arguments, it returns the hash in list context, or a reference to the hash in scalar context. If called with a list of key/value pairs, it sets each key to its corresponding value, then returns the hash as described before.

If called with exactly one key, it returns the corresponding value.

If called with exactly one array reference, it returns an array whose elements are the values corresponding to the keys in the argument array, in the same order. The resulting list is returned as an array in list context, or a reference to the array in scalar context.

If called with exactly one hash reference, it updates the hash with the given key/value pairs, then returns the hash in list context, or a reference to the hash in scalar context.

This is a class variable, so it is shared between all instances of this class. Changing it in one object will change it for all other objects as well.

storage_cache_clear
    $obj->storage_cache_clear;

Deletes all keys and values from the hash. Since this is a class variable, the value will be changed for all instances of this class.

storage_cache_delete
    $obj->storage_cache_delete(@keys);

Takes a list of keys and deletes those keys from the hash. Since this is a class variable, the value will be changed for all instances of this class.

storage_cache_exists
    if ($obj->storage_cache_exists($key)) { ... }

Takes a key and returns a true value if the key exists in the hash, and a false value otherwise. Since this is a class variable, the value will be changed for all instances of this class.

storage_cache_keys
    my @keys = $obj->storage_cache_keys;

Returns a list of all hash keys in no particular order. Since this is a class variable, the value will be changed for all instances of this class.

storage_cache_values
    my @values = $obj->storage_cache_values;

Returns a list of all hash values in no particular order. Since this is a class variable, the value will be changed for all instances of this class.

test_mode
    my $value = $obj->test_mode;
    $obj->test_mode($value);

A basic getter/setter method. If called without an argument, it returns the value. If called with a single argument, it sets the value.

test_mode_clear
    $obj->test_mode_clear;

Clears the value.

values_multiplex_transaction_omit
    my @values = $obj->values_multiplex_transaction_omit;

Returns a list of all hash values in no particular order. Since this is a class variable, the value will be changed for all instances of this class.

values_storage_cache
    my @values = $obj->values_storage_cache;

Returns a list of all hash values in no particular order. Since this is a class variable, the value will be changed for all instances of this class.

Class::Scaffold::Environment inherits from Class::Scaffold::Base.

The superclass Class::Scaffold::Base defines these methods and functions:

    new(), FIRST_CONSTRUCTOR_ARGS(), MUNGE_CONSTRUCTOR_ARGS(),
    add_autoloaded_package(), init(), log()

The superclass Data::Inherited defines these methods and functions:

    every_hash(), every_list(), flush_every_cache_by_key()

The superclass Data::Comparable defines these methods and functions:

    comparable(), comparable_scalar(), dump_comparable(),
    prepare_comparable(), yaml_dump_comparable()

The superclass Class::Scaffold::Delegate::Mixin defines these methods and functions:

    delegate()

The superclass Class::Scaffold::Accessor defines these methods and functions:

    mk_framework_object_accessors(), mk_framework_object_array_accessors(),
    mk_readonly_accessors()

The superclass Class::Accessor::Complex defines these methods and functions:

    mk_abstract_accessors(), mk_array_accessors(), mk_boolean_accessors(),
    mk_class_array_accessors(), mk_class_hash_accessors(),
    mk_class_scalar_accessors(), mk_concat_accessors(),
    mk_forward_accessors(), mk_hash_accessors(), mk_integer_accessors(),
    mk_new(), mk_object_accessors(), mk_scalar_accessors(),
    mk_set_accessors(), mk_singleton()

The superclass Class::Accessor defines these methods and functions:

    _carp(), _croak(), _mk_accessors(), accessor_name_for(),
    best_practice_accessor_name_for(), best_practice_mutator_name_for(),
    follow_best_practice(), get(), make_accessor(), make_ro_accessor(),
    make_wo_accessor(), mk_accessors(), mk_ro_accessors(),
    mk_wo_accessors(), mutator_name_for(), set()

The superclass Class::Accessor::Installer defines these methods and functions:

    install_accessor()

The superclass Class::Accessor::Constructor defines these methods and functions:

    _make_constructor(), mk_constructor(), mk_constructor_with_dirty(),
    mk_singleton_constructor()

The superclass Class::Accessor::FactoryTyped defines these methods and functions:

    clear_factory_typed_accessors(), clear_factory_typed_array_accessors(),
    count_factory_typed_accessors(), count_factory_typed_array_accessors(),
    factory_typed_accessors(), factory_typed_accessors_clear(),
    factory_typed_accessors_count(), factory_typed_accessors_index(),
    factory_typed_accessors_pop(), factory_typed_accessors_push(),
    factory_typed_accessors_set(), factory_typed_accessors_shift(),
    factory_typed_accessors_splice(), factory_typed_accessors_unshift(),
    factory_typed_array_accessors(), factory_typed_array_accessors_clear(),
    factory_typed_array_accessors_count(),
    factory_typed_array_accessors_index(),
    factory_typed_array_accessors_pop(),
    factory_typed_array_accessors_push(),
    factory_typed_array_accessors_set(),
    factory_typed_array_accessors_shift(),
    factory_typed_array_accessors_splice(),
    factory_typed_array_accessors_unshift(),
    index_factory_typed_accessors(), index_factory_typed_array_accessors(),
    mk_factory_typed_accessors(), mk_factory_typed_array_accessors(),
    pop_factory_typed_accessors(), pop_factory_typed_array_accessors(),
    push_factory_typed_accessors(), push_factory_typed_array_accessors(),
    set_factory_typed_accessors(), set_factory_typed_array_accessors(),
    shift_factory_typed_accessors(), shift_factory_typed_array_accessors(),
    splice_factory_typed_accessors(),
    splice_factory_typed_array_accessors(),
    unshift_factory_typed_accessors(),
    unshift_factory_typed_array_accessors()

The superclass Class::Scaffold::Factory::Type defines these methods and functions:

    factory_log()

The superclass Class::Factory::Enhanced defines these methods and functions:

    add_factory_type(), make_object_for_type(), register_factory_type()

The superclass Class::Factory defines these methods and functions:

    factory_error(), get_factory_class(), get_factory_type_for(),
    get_loaded_classes(), get_loaded_types(), get_my_factory(),
    get_my_factory_type(), get_registered_class(),
    get_registered_classes(), get_registered_types(),
    remove_factory_type(), unregister_factory_type()

The superclass Class::Accessor::Constructor::Base defines these methods and functions:

    STORE(), clear_dirty(), clear_hygienic(), clear_unhygienic(),
    contains_hygienic(), contains_unhygienic(), delete_hygienic(),
    delete_unhygienic(), dirty(), dirty_clear(), dirty_set(),
    elements_hygienic(), elements_unhygienic(), hygienic(),
    hygienic_clear(), hygienic_contains(), hygienic_delete(),
    hygienic_elements(), hygienic_insert(), hygienic_is_empty(),
    hygienic_size(), insert_hygienic(), insert_unhygienic(),
    is_empty_hygienic(), is_empty_unhygienic(), set_dirty(),
    size_hygienic(), size_unhygienic(), unhygienic(), unhygienic_clear(),
    unhygienic_contains(), unhygienic_delete(), unhygienic_elements(),
    unhygienic_insert(), unhygienic_is_empty(), unhygienic_size()

The superclass Tie::StdHash defines these methods and functions:

    CLEAR(), DELETE(), EXISTS(), FETCH(), FIRSTKEY(), NEXTKEY(), SCALAR(),
    TIEHASH()

BUGS AND LIMITATIONS

No bugs have been reported.

Please report any bugs or feature requests through the web interface at http://rt.cpan.org.

INSTALLATION

See perlmodinstall for information and options on installing Perl modules.

AVAILABILITY

The latest version of this module is available from the Comprehensive Perl Archive Network (CPAN). Visit <http://www.perl.com/CPAN/> to find a CPAN site near you. Or see <http://www.perl.com/CPAN/authors/id/M/MA/MARCEL/>.

AUTHORS

Florian Helmberger <fh@univie.ac.at>

Achim Adam <ac@univie.ac.at>

Mark Hofstetter <mh@univie.ac.at>

Heinz Ekker <ek@univie.ac.at>

Marcel Grünauer, <marcel@cpan.org>

COPYRIGHT AND LICENSE

Copyright 2004-2009 by the authors.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.