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

NAME

Meta::Development::Module - a single development module.

COPYRIGHT

Copyright (C) 2001, 2002 Mark Veltzer; All rights reserved.

LICENSE

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.

DETAILS

        MANIFEST: Module.pm
        PROJECT: meta
        VERSION: 0.09

SYNOPSIS

        package foo;
        use Meta::Development::Module qw();
        my($object)=Meta::Development::Module->new();
        my($result)=$object->method();

DESCRIPTION

This class serves as an abstractization of a development module. Each class wanting to deal with development modules must go through this class. The class provides a module name, revision information and absolute path to the current file containing the module.

future plans: this class will provide the modules content and the module itself could be stored inside an RDBMS.

FUNCTIONS

        BEGIN()
        new_name($$);
        get_abs_path($)
        get_sgml_name($)
        get_temp_sgml_tag($$)
        get_xml_def_name($)
        get_lily_filename($)
        get_lily_title($)
        get_lily_subtitle($)
        get_lily_composer($)
        get_lily_enteredby($)
        get_lily_copyright($)
        get_lily_style($)
        get_lily_source($)
        linkit($$$$)
        get_self_link($$)
        get_link($$$)
        get_2_link($$$$)
        get_3_link($$$$$)
        get_pgn_games($)
        get_xml_num_elems($$)
        get_xml_sum_elems($$)
        TEST($)

FUNCTION DOCUMENTATION

BEGIN()

Intializer method which sets up accessor methods for the following attributes: 1. name - the name of the module.

new_name($$)

Constructor which also accepts a name for the module.

get_abs_path($)

This method retrieves the path to the file that containts the current version of the module.

get_sgml_name($)

Retreives the name of the document from an SGML/Docbook document.

get_temp_sgml_tag($$)

This method retrieves a specific tag from an SGML file according to an XPath expression. You have to make sure to create an XPath expression which returns just a single element.

get_xml_def_name($)

This method retrieve the name of the XML/DEF database from the actual XML file.

get_lily_filename($)

This method retrieves the lilypond filename of the current module.

get_lily_title($)

This method retrieves the lilypond title of the current module.

get_lily_subtitle($)

This method retrieves the lilypond subtitle of the current module.

get_lily_composer($)

This method retrieves the lilypond composer of the current module.

get_lily_enteredby($)

This method retrieves the lilypond enteredby of the current module.

get_lily_copyright($)

This method retrieves the lilypond copyright of the current module.

get_lily_style($)

This method retrieves the lilypond style of the current module.

get_lily_source($)

This method retrieves the lilypond source of the current module.

linkit($$$$)

Generate a general purpose link.

get_self_link($$)

This method retrieves a link suitable for html for the current module.

get_link($$$)

This method retrieves a link suitable for html for the current modules transformation to the specified suffix.

get_2_link($$$$)

This method retrieves a link suitable for html for the current moduels 2 times transformation to the specified suffix number 1 and then to the specified suffix number 2.

get_3_link($$$$$)

This method retrieves a link suitable for html for the current moduels 3 times transformation to the specified suffix number 1, then to the specified suffix number 2 and then to the specified suffix number 3.

get_pgn_games($)

This method will retrieve how many pgn games are stored in the current file. The method is just to grep for the "Event" string in the file and count the appearances.

get_xml_num_elems($$)

This method will count how many times a specific element appears in an XML file.

get_xml_sum_elems($$)

This method will count the sum of all content in a specific element in an XML file (under the assumption that it is numeric ofcourse).

TEST($)

Test suite for this module.

SUPER CLASSES

None.

BUGS

None.

AUTHOR

        Name: Mark Veltzer
        Email: mailto:veltzer@cpan.org
        WWW: http://www.veltzer.org
        CPAN id: VELTZER

HISTORY

        0.00 MV web site development
        0.01 MV more web page stuff
        0.02 MV web site automation
        0.03 MV SEE ALSO section fix
        0.04 MV put all tests in modules
        0.05 MV move tests into modules
        0.06 MV web site development
        0.07 MV weblog issues
        0.08 MV more pdmt stuff
        0.09 MV md5 issues

SEE ALSO

Error(3), Meta::Baseline::Lang::Temp(3), Meta::Class::MethodMaker(3), Meta::Lang::Lily::InfoParser(3), Meta::Lang::Xml::Xml(3), Meta::Utils::File::Dir(3), Meta::Utils::Text::Counter(3), Meta::Utils::Utils(3), Meta::Xml::Dom(3), Meta::Xml::Parsers::Dom(3), XML::Parser(3), XML::XPath(3), strict(3)

TODO

-make caching of the lilypond parsing information so that I wont have to parse each time again.

-move the linkit routine out of here!!! (where the &%*^?)

-the routine get_sgml_temp_tag returns the tag content without processing. Add text processing option to it (text wrapping etc...).