NAME
    Catmandu::Exporter::Template - a TT2 Template exporter in Catmandu style

SYNOPSIS
        use Catmandu::Exporter::Template;

        my $exporter = Catmandu::Exporter::Template->new(
                    fix => 'myfix.txt'
                    xml => 1,
                    template_before => '<path>/header.xml' ,
                    template => '<path>/record.xml' ,
                    template_after => '<path>/footer.xml' ,
               );

        $exporter->add_many($arrayref);
        $exporter->add_many($iterator);
        $exporter->add_many(sub { });

        $exporter->add($hashref);

        $exporter->commit; # trigger the template_after

        printf "exported %d objects\n" , $exporter->count;

DESCRIPTION
    This Catmandu::Exporter can be used to export records using Template
    Toolkit. If you are new to Catmandu see Catmandu::Tutorial.

METHODS
    Catmandu::Exporter::Template derives from Catmandu::Exporter with all of
    its methods ("add", "add_many", "count", and "log"). The following
    methods are supported in addition:

  new(%opts)
    The only required argument is 'template' which points to a file to
    render for each exported object. Set the 'template_before' and
    'template_before' to add output at the start and end of the export.
    Optionally provide an 'xml' indicator to include a XML header.

    *   template: Required. Must contain path to the template.

    *   xml: Optional. Value: 0 or 1. Prepends xml header to the template.

    *   template_before: Optional. Prepend template.

    *   template_after: Optional. Append template.

    *   fix: Optional. Apply Catmandu fixes while exporting.

    *   start_tag

    *   end_tag

    *   tag_style

    *   interpolate

    *   eval_perl

  commit
    Commit all changes and execute the template_after if given.

AUTHOR
    Nicolas Steenlant, "<nicolas.steenlant at ugent.be>"

CONTRIBUTOR
    Vitali Peil, "<vitali.peil at uni-bielefeld.de>"

    Jakob Voss, "<jakob.voss at gbv.de>"

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

SEE ALSO
    Catmandu::Exporter, Template

