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

NAME

Toader - This holds a blog/article/whatever entry.

VERSION

Version 0.0.0

SYNOPSIS

For information on the storage and rendering of entries, please see 'Documentation/Entry.pod'.

NEW METHODS

If any of the new methods error, the error is permanent.

new

This creates the a object that represents a entry.

args hash

renderer

This is the rendering engine the body should use.

If not defined, html will be used.

body

This is the body.

title

This is the title of the entry.

from

This is the from address to use.

publish

If it should be published or not.

The default value is '1'.

summary

This is a summary of the entry.

files

This is a list of files that will be made available with this entry.

    my $foo = Toader::isaToaderDir->new(\%args);
    if ($foo->error){
        warn('Error:'.$foo->error.': '.$foo->errorString);
    }

newFromString

This creates a new entry from a string.

One argument is accepted and it is the name string to use.

    my $foo=Toader::Entry->newFromString($entryString);
    if($foo->error){
        warn('Error:'.$foo->error.': '.$foo->errorString);
    }

GENERAL METHODS

as_string

This returns the entry as a string.

    my $mimeString=$foo->as_string;
    if($foo->error)
        warn('Error:'.$foo->error.': '.$foo->errorString);
    }

bodyGet

This gets body.

    my $body=$foo->bodyGet;
    if($foo->error){
        warn('Error:'.$foo->error.': '.$foo->errorString);
    }

bodySet

This sets the body.

One argument is required and it is the body.

    $foo->bodySet($body);
    if($foo->error){
        warn('Error:'.$foo->error.': '.$foo->errorString);
    }

dirGet

This gets Toader directory this entry is associated with.

This will only error if a permanent error is set.

This will return undef if no directory has been set.

    my $dir=$foo->dirGet;
    if($foo->error){
        warn('Error:'.$foo->error.': '.$foo->errorString);
    }

dirSet

This sets Toader directory this entry is associated with.

One argument is taken and it is the Toader directory to set it to.

    my $dir=$foo->dirSet($toaderDirectory);
    if($foo->error){
        warn('Error:'.$foo->error.': '.$foo->errorString);
    }

entryNameGet

This gets Toader directory this entry is associated with.

This will only error if a permanent error is set.

This will return undef if no entry name has been set.

    my $entryName=$foo->entryNameGet;
    if($foo->error){
        warn('Error:'.$foo->error.': '.$foo->errorString);
    }

entryNameSet

This sets Toader directory this entry is associated with.

One argument is taken and it is the Toader directory to set it to. If none is specified it will be generated.

    $foo->entryNameSet($entryName);
    if($foo->error){
        warn('Error:'.$foo->error.': '.$foo->errorString);
    }

fromGet

This returns the from.

    my $from=$foo->fromGet;
    if($foo->error){
        warn('error: '.$foo->error.":".$foo->errorString);
    }

fromSet

This sets the from.

One argument is taken and it is the name.

    $foo->fromSet($name);
    if($foo->error){
        warn('error: '.$foo->error.":".$foo->errorString);
    }

publishGet

This returns the publish value.

    my $publish=$foo->publishGet;
    if($foo->error){
        warn('error: '.$foo->error.":".$foo->errorString);
    }

publishSet

This sets the publish value.

One argument is taken and it is the publish value.

    $foo->publishSet($publish);
    if($foo->error){
        warn('error: '.$foo->error.":".$foo->errorString);
    }

summaryGet

This returns the summary.

    my $summary=$foo->summaryGet;
    if($foo->error){
        warn('error: '.$foo->error.":".$foo->errorString);
    }

summarySet

This sets the summary.

One argument is taken and it is the summary.

    $foo->summarySet($summary);
    if($foo->error){
        warn('error: '.$foo->error.":".$foo->errorString);
    }

titleGet

This returns the title.

    my $name=$foo->titleGet;
    if($foo->error){
        warn('error: '.$foo->error.":".$foo->errorString);
    }

titleSet

This sets the title.

One argument is taken and it is the title.

    $foo->titleSet($title);
    if($foo->error){
        warn('error: '.$foo->error.":".$foo->errorString);
    }

rendererGet

This returns the renderer type.

    my $renderer=$foo->rendererGet;
    if($foo->error){
        warn('error: '.$foo->error.":".$foo->errorString);
    }

rendererSet

This sets the renderer type.

One argument is taken and it is the render type.

A value of undef sets it to the default, 'html'.

    my $renderer=$foo->rendererGet;
    if($foo->error){
        warn('error: '.$foo->error.":".$foo->errorString);
    }

subpartsAdd

This adds a new file as a subpart.

One argument is required and it is the path to the file.

    $foo->subpartsAdd( $file );
    if ( $foo->error ){
        warn('Error:'.$foo->error.': '.$foo->errorString);
    }

subpartsExtract

This extracts the subparts of a entry.

One argument is extracted, it is the directory to extract the files to.

    $foo->subpartsExtract( $dir );
    if ( $foo->error ){
        warn('Error:'.$foo->error.': '.$foo->errorString);
    }

subpartsGet

This returns the results from the subparts methods from the internal Email::MIME object.

    my @parts=$foo->subpartsGet;
    if ( $foo->error ){
        warn('Error:'.$foo->error.': '.$foo->errorString);
    }

subpartsList

This returns a list filenames for the subparts.

    my @files=$foo->subpartsList;
    if ( $foo->error ){
        warn('Error:'.$foo->error.': '.$foo->errorString);
    }

subpartsRemove

This removes the specified subpart.

One argument is required and it is the name of the file to remove.

    $foo->subpartsRemove( $filename );
    if ( $foo->error ){
        warn('Error:'.$foo->error.': '.$foo->errorString);
    }

write

This writes the entry out to a file.

This requires a Toader directory to have been specified.

        $foo->write;
    if($foo->error){
        warn('error: '.$foo->error.":".$foo->errorString);
    }

REQUIRED RENDERING METHODS

filesDir

This returns the file directory for the object.

This is not a full path, but a partial path that should be appended the directory current directory being outputted to.

locationID

This returns the location ID.

This one requires the object to be initialized.

renderDir

This is the directory that it will be rendered to.

The base directory that will be used for rendering.

renderUsing

This returns the module to use for rendering.

    my $module=$foo->renderUsing;

toaderRenderable

This method returns true and marks it as being Toader renderable.

toDir

This returns the directory that will return the directory that contains where this object should be rendered to.

This is not a full path, but a partial path that should be appended the directory current directory being outputted to.

ERROR CODES

1

No name specified.

2

Unable to create Email::MIME object.

3

Has files specified, but the passed object is not a array.

4

The file does not exist or is not a file.

5

File::MimeInfo->mimetype returned undef, meaning the file does not exist or is not readable.

6

Unable to open the file.

7

Unable to create a Email::MIME object for one of the parts/files.

8

No body defined.

9

Not a valid entry name.

10

The specified directory is not a Toader directory.

11

No directory specified.

12

No directory has been set yet.

13

The directory is no longer a Toader directory. It looks like it has been removed.

14

The entries directory did not exist and was not able to create it.

15

No summary specified.

16

No entry name has been set.

17

The directory does not exist or is a not a directory.

18

No file specified.

19

Invalid publish value.

AUTHOR

Zane C. Bowers-Hadley, <vvelox at vvelox.net>

BUGS

Please report any bugs or feature requests to bug-toader at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Toader. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

    perldoc Toader::Entry

You can also look for information at:

ACKNOWLEDGEMENTS

LICENSE AND COPYRIGHT

Copyright 2011 Zane C. Bowers-Hadley.

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.