Sean Blanton > App-Services > App::Services

Download:
App-Services-0.002.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  1
Open  0
View/Report Bugs
Module Version: 0.002   Source  

NAME ^

App::Services - Makes reusable services easy

VERSION ^

version 0.002

SYNOPSIS ^

  use App::Services::<service>::Container;

  my $cntnr = App::Services::<service>::Container->new(
          %service_config,
  );

  my $svc = $cntnr->resolve( service => '<service_name>' );

  $svc->do_something;

DESCRIPTION ^

App::Services::* are a set of modules that provide common functionality where much of the low-level coding and configuration is already done. If one is starting a new Perl application, the intent is that by using App::Services, more rapid development can be achieved by focusing on the application's main purpose and minimizing time spent on minutiae and learning details of multiple ancillary CPAN modules. The existence of this module is a testament to its utility in our own application development.

The types of functionality provide by App::Services are convenient implementations to logging, database connections, forking, email and a persistent object store.

App::Services::* provides a layer of abstraction that hides the implementation of the functionality and minimizes the configuration to common bare essentials. This allows for coding at a high, single layer of abstraction for application code. The abstraction layer used is inversion of control using Moose and Bread::Board. The App::Services module itself serves only as the root and main document for the distribution.

There are pre-packaged container classes, App::Services::<service>::Container, included that can be used to instantiate the services, but in many cases you will want to write your own.

LIST OF SERVICES ^

App:Services::Logger

Easy access to a Log::Log4perl logger.

App:Services::Forker

A simple fork service.

App:Services::Email

Email!

App:Services::DB

Get a database connection real quick.

App:Services::ObjStore

A persistent object store based on KiokuDB

Authors ^

Sean Blanton

TODO ^

Docs barely exist.

AUTHOR ^

Sean Blanton <sean@blanton.com>

COPYRIGHT AND LICENSE ^

This software is copyright (c) 2013 by Sean Blanton.

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

syntax highlighting: