Cogwheel

 view release on metacpan or  search on metacpan

lib/Cogwheel.pm  view on Meta::CPAN

package Cogwheel;
our $VERSION = 0.03;
use Moose;
use Cogwheel::Object;
use Cogwheel::Types;
{

    sub import {
        my $CALLER = caller();

        strict->import;
        warnings->import;

        # we should never export to main
        return if $CALLER eq 'main';
        Moose::init_meta( $CALLER, 'Cogwheel::Object' );
        Moose->import( { into => $CALLER } );

        # Do my custom framework stuff

        return 1;
    }

    sub unimport {
        goto Moose->can('unimport');
    }
}

no Moose;
1;
__END__


=head1 NAME

Cogwheel - A Client/Server Networking Framework based on Moose and Sprocket

=head1 VERSION

Version 0.01

=cut

=head1 SYNOPSIS

    package main;
    use MyApp::Plugin;
    use Cogwheel::Client;
    use Cogwheel::Server;

    my $server = Cogwheel::Server->new(
        Plugins => [
            {
                plugin   => MyApp::Plugin;->new(),
                priority => 0,
            },
        ],
    );

    my $client = Cogwheel::Client->new(
        ClientList => ['localhost:31337'],
        Plugins    => [
            {
                Plugin   => MyApp::Plugin;->new(),
                Priority => 0,
            },
        ],
    );

    POE::Kernel->run();



( run in 1.159 second using v1.01-cache-2.11-cpan-5511b514fd6 )