The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
package Catalyst::Helper::Model::MongoDB;
BEGIN {
  $Catalyst::Helper::Model::MongoDB::AUTHORITY = 'cpan:GETTY';
}
{
  $Catalyst::Helper::Model::MongoDB::VERSION = '0.12';
}
# ABSTRACT: Helper for MongoDB models
use strict;
use warnings;


sub mk_compclass {
    my ( $self, $helper, $host, $port, $dbname, $collectionname, $gridfs ) = @_;

	my %args = (
		host => $host,
		port => $port,
		dbname => $dbname,
		collectionname => $collectionname,
		gridfs => $gridfs,
	);
	
    $helper->render_file('modelclass', $helper->{file}, \%args);
    return 1;
}

sub mk_comptest {
    my ($self, $helper) = @_;
    $helper->render_file('modeltest', $helper->{test});
}


1;

=pod

=head1 NAME

Catalyst::Helper::Model::MongoDB - Helper for MongoDB models

=head1 VERSION

version 0.12

=head1 SYNOPSIS

  script/myapp_create.pl model MyModel MongoDB [host] [port] [dbname] [collectionname] [gridfs]

=head1 DESCRIPTION

Helper for the L<Catalyst> MongoDB model.

=head1 USAGE

=head1 METHODS

=head2 mk_compclass

Makes the model class.

=head2 mk_comptest

Makes tests.

=head1 SUPPORT

IRC

  Join #catalyst on irc.perl.org and ask for Getty.

Repository

  http://github.com/Getty/p5-catalyst-model-mongodb
  Pull request and additional contributors are welcome

Issue Tracker

  http://github.com/Getty/p5-catalyst-model-mongodb/issues

=head1 AUTHOR

Torsten Raudssus <torsten@raudssus.de> L<http://www.raudssus.de/>

=head1 COPYRIGHT AND LICENSE

This software is copyright (c) 2010 by Raudssus Social Software.

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

=cut

__DATA__

=begin pod_to_ignore

__modelclass__
package [% class %];

use Moose;
BEGIN { extends 'Catalyst::Model::MongoDB' };

__PACKAGE__->config(
	host => '[% host || 'localhost' %]',
	port => '[% port || '27017' %]',
	dbname => '[% dbname %]',
	collectionname => '[% collectionname %]',
	gridfs => '[% gridfs %]',
);

=head1 NAME

[% class %] - MongoDB Catalyst model component

=head1 SYNOPSIS

See L<[% app %]>.

=head1 DESCRIPTION

MongoDB Catalyst model component.

=head1 AUTHOR

[% author %]

=head1 LICENSE

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

=cut

no Moose;
__PACKAGE__->meta->make_immutable;

1;
__modeltest__
use strict;
use warnings;
use Test::More tests => 2;

use_ok('Catalyst::Test', '[% app %]');
use_ok('[% class %]');