<<

NAME

Konstrukt::Doc::PluginDevelopment - Create your own plugins

BASICS

Basically you subclass the SimplePlugin or Plugin module and add your own logic by overwriting the stub methods. So you might want to take a look at the documentation of those plugins, which explains the plugin creation interfaces.

PARSE-TREE AND CACHING

TODO: Motivation, tree, nodes, caching.

CORE MODULES

Our goals include rapid development and code reuse. This includes that most nasty work like session management and so on will already be done for you.

You are encouraged to use the existing core modules and plugins to do the basic work and focus on your application.

MOSTLY INTERESTING FOR PLUGIN DEVELOPMENT

Here's a list of the core modules, which are immediately interesting for plugin development.

MOSTLY INTERESTING FOR CORE DEVELOPMENT

This are the remaining core modules, which you probably won't need to develop your own plugins. These are rather used internally.

EXISTING PLUGINS

Also most of the plugins have a perl interface that offers some methods to utilize these plugins.

This will usually be done like this:

        my $someplugin = use_plugin 'someplugin';
        $someplugin->method($arg);

The perl interface of each plugin is documented in the SYNOPSIS and the DESCRIPTION of the plugins. Additionally each method of each plugin is also documented with it's purpose, parameters and return value.

So the best idea would be just to take a look at the documentation of the plugins.

A complete list of the plugins that are shipped with this package is available here.

TROUBLESHOOTING

The prepare method won't be executed

If you feel like the prepare-method of your plugin doesn't get executed, the reason will probably be that you're using a cached page.

One main feature of the cache architecture is to run prepare only once and cache the results.

To fix this, delete the cached file or disable the cache if you're working on your plugin.

TODO

Complete this document.

AUTHOR

Copyright 2006 Thomas Wittek (mail at gedankenkonstrukt dot de). All rights reserved.

This document is free software. It is distributed under the same terms as Perl itself.

SEE ALSO

Konstrukt::Doc

<<