NAME

OpusVL::AppKit::Builder

VERSION

version 2.25

SYNOPSIS

See: OpusVL::AppKit

Inheriting this app using AppBuilder will give your application the following:

    Catalyst::Plugin::Static::Simple
    Catalyst::Plugin::CustomErrorMessage
    Catalyst::Plugin::Authentication
    Catalyst::Plugin::Authorization::Roles
    Catalyst::Plugin::Session
    Catalyst::Plugin::Session::Store::FastMmap
    Catalyst::Plugin::Session::State::Cookie
    CatalystX::SimpleLogin
    CatalystX::VirtualComponents
    OpusVL::AppKit::Plugin::AppKit

    Controller::Root

    View::AppKitTT
    View::Email
    View::Download
    View::JSON
    View::Excel

Plugins
    All the standard ones we use as per their documentation.
    We have created our own AppKit Plugin, which is used to drive the AppKit specific code . At the moment it is used
    for ACL rules, Portlets and Navigation... I guess in time it will evolve, but now works ok.

Controllers

The Root controller is used to drive the GUI, it is pretty simple so could be over written if required (i think?).
The Root controller (and any you want to work with the GUI) are based on the L<OpusVL::AppKit::Base::Controller>, this
turns a controller into an "AppKit aware" controller and it can tell the AppKit what its name is, what Porlets it has, etc.
See L<OpusVL::AppKit::Base::Controller> for more information.

Views

Currently only the AppKitTT view is used and this is to create the GUI... the view is configured for the GUI, but it could be reused (i think).
The other views are available to be utilised in furture development.

DESCRIPTION

This extends CatalystX::AppBuilder so the OpusVL::AppKit can be inherited.

Here we set the configuration required for the AppKit to run (inside another app)

The supporting files like templates etc. are stored in the modules 'auto' directory
see. L<File::ShareDir>

This creates a catalyst app with the following Plugins loaded:
    L<Catalyst::Plugin::Static::Simple>
    L<Catalyst::Plugin::Unicode>
    L<Catalyst::Plugin::CustomErrorMessage>
    L<Catalyst::Plugin::Authentication>
    L<Catalyst::Plugin::Authorization::Roles>
    L<Catalyst::Plugin::Session>
    L<Catalyst::Plugin::Session::Store::FastMmap>
    L<Catalyst::Plugin::Session::State::Cookie>
    L<CatalystX::SimpleLogin>
    L<CatalystX::VirtualComponents>
    L<OpusVL::AppKit::Plugin::AppKit>

This also configures the application in the following way:

    default_view                    - Set to 'AppKitTT'
    custom-error-message            - enable customer error msg.
    static                          - set static to auto dir
    OpusVL::AppKit::Plugin::AppKit  - used to config ACL rules.
    View::AppKitTT                  - set include paths, wrapper, etc.
    Plugin::Authentication          - used to authenicate users.
    View::Email                     - use to send any emails

NAME

OpusVL::AppKit::Builder - Builder class for OpusVL::AppKit

SEE ALSO

L<File::ShareDir>,
L<CatalystX::AppBuilder>,
L<OpusVL::AppKit>,
L<Catalyst>

AUTHOR

OpusVL - www.opusvl.com

COPYRIGHT AND LICENSE

This software is copyright (c) 2010 by OpusVL - www.opusvl.com.

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