Name
CatalystX::Usul::Model::Config - Read and write configuration files
Version
0.5.$Revision: 1139 $
Synopsis
use base qw(CatalystX::Usul::Model::Config);
Description
Provides CRUD methods for read and write configuration files. For each schema a subclass is defined that inherits from this class
Subroutines/Methods
COMPONENT
The constructor sets up the ctrldir
attribute which acts as a default directory if one is not supplied in the file name
build_per_context_instance
Creates a new CatalystX::Usul::File object and takes a copy of the stashed language
config_form
$c->model( q(Config::*) )->config_form;
Creates the form to edit an element
create
Creates a new element. The $args
hash requires these keys; file the name of the file to edit, name the name of the element to edit and fields is a hash containing the attributes of the new element. Missing attributes are defaulted from the defaults attribute of the CatalystX::Usul::File::Schema object
create_or_update
$c->model( q(Config::*) )->create_or_update( $args );
Creates a new element if one does not exist or updates the existing one if it does exist
delete
$c->model( q(Config::*) )->delete( $args );
Deletes an element
find
$c->model( q(Config::*) )->find( $ns, $name );
list
$c->model( q(Config::*) )->list( $ns, $name );
Retrieves the named element and a list of elements
load
$config = $c->model( q(Config) )->load( @{ $files } );
Loads the required configuration files. Returns a hash ref
push_attribute
$c->model( q(Config::*) )->push_attribute( $args );
Add new items to an attribute list. The $args
hash requires these keys; file the name of the file to edit, name the name of the element to edit, list the attribute of the named element containing the list of existing items, req the request object and field the field on the request object containing the list of new items
search
@elements = $c->model( q(Config::*) )->search( $args );
Searches the given file for elements matching the given criteria. Returns an array of element objects
splice_attribute
$c->model( q(Config::*) )->splice_attribute( $args );
Removes items from an attribute list
update
Updates the named element
update_list
$bool = $c->model( q(Config::*) )->update_list( $namespace, $args );
Calls update_group_membership which will push/splice attributes to/from the selected list
_resultset
Return a File::DataClass::ResultSet for the supplied file
Diagnostics
None
Configuration and Environment
None
Dependencies
Incompatibilities
There are no known incompatibilities in this module
Bugs and Limitations
There are no known bugs in this module. Please report problems to the address below. Patches are welcome
Author
Peter Flanigan, <Support at RoxSoft.co.uk>
License and Copyright
Copyright (c) 2008 Peter Flanigan. All rights reserved
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic
This program is distributed in the hope that it will be useful, but WITHOUT WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE