view release on metacpan or search on metacpan
examples/helloworld/app/lib/Dwarf.pm view on Meta::CPAN
use Dwarf::Request;
use Dwarf::Response;
use Dwarf::Trigger;
use Dwarf::Util qw/capitalize read_file filename installed load_class dwarf_log/;
use Cwd 'abs_path';
use Data::Dumper;
use File::Basename 'dirname';
use File::Spec::Functions 'catfile';
use Module::Find;
use Router::Simple;
use Scalar::Util qw/weaken/;
our $VERSION = '1.83';
use constant {
BEFORE_DISPATCH => 'before_dispatch',
DISPATCHING => 'dispatching',
AFTER_DISPATCH => 'after_dispatch',
FINISH_DISPATCHING => 'Dwarf Finish Dispatching Message',
ERROR => 'error',
NOT_FOUND => 'not_found',
examples/helloworld/app/lib/Dwarf.pm view on Meta::CPAN
rw => [qw/stash request_handler_prefix request_handler_method/],
};
sub _build_config {
my $self = shift;
$self->{config} ||= do {
my $class = join '::', $self->namespace, 'Config';
$class .= '::' . ucfirst $self->config_name if $self->can('config_name');
load_class($class);
my $config = $class->new(context => $self);
weaken($config->{context});
$config;
};
}
sub _build_error {
my $self = shift;
$self->{error} ||= Dwarf::Error->new;
}
sub _build_request {
examples/helloworld/app/lib/Dwarf.pm view on Meta::CPAN
eval {
eval {
my $controller = $self->route->{controller};
return $self->handle_not_found unless $controller;
Dwarf::Util::load_class($controller);
$self->{handler_class} = $controller;
$self->{handler} = $controller->new(context => $self);
weaken($self->{handler}->{context});
my $method = $self->find_method;
return $self->not_found unless $method;
$self->handler->init($self);
my $body = $self->handler->$method($self, @_);
$self->body($body);
$self->handler->did_dispatch($self, $body);
examples/helloworld/app/lib/Dwarf.pm view on Meta::CPAN
die "package name must be specified to create module."
unless defined $package;
my $prefix = $self->namespace;
unless ($package =~ m/^$prefix/) {
$package = $prefix . '::' . $package;
}
load_class($package);
my $module = $package->new(context => $self, @_);
weaken $module->{context};
$module->init($self);
return $module;
}
sub call_before_trigger {
my $self = shift;
if ($self->state eq BEFORE_DISPATCH) {
$self->call_trigger(BEFORE_DISPATCH => $self, $self->request);
$self->{state} = DISPATCHING;
}
examples/helloworld/app/lib/Dwarf/Module.pm view on Meta::CPAN
package Dwarf::Module;
use Dwarf::Pragma;
use Dwarf::Module::DSL;
use Dwarf::Util qw/load_class dwarf_log/;
use Scalar::Util qw/weaken/;
use Dwarf::Accessor {
ro => [qw/context dsl/],
rw => [qw/prefix/]
};
sub _build_prefix { shift->context->namespace . '::Model' }
sub _build_dsl {
my $self = shift;
my $dsl = Dwarf::Module::DSL->new(
context => $self->context,
module => $self,
);
weaken $dsl->{context};
weaken $dsl->{module};
return $dsl;
}
sub new {
my $class = shift;
my $self = bless { @_ }, $class;
dwarf_log 'new Module';
$self->dsl->export_symbols($class);
return $self;
}
examples/helloworld/app/lib/Dwarf/Module/DSL.pm view on Meta::CPAN
package Dwarf::Module::DSL;
use Dwarf::Pragma;
use Dwarf::Data::Validator;
use Dwarf::Util qw/load_class dwarf_log/;
use Carp qw/croak/;
use Scalar::Util qw/weaken/;
use Dwarf::Accessor {
ro => [qw/context module/],
rw => [qw/prefix/]
};
our @FUNC = qw/
self app c model m
conf db error e env log debug
session param parameters
examples/helloworld/app/lib/Dwarf/Module/DSL.pm view on Meta::CPAN
my $prefix = $self->prefix;
unless ($package =~ m/^$prefix/) {
$package = $prefix . '::' . $package;
}
dwarf_log "create model: $package";
load_class($package);
my $model = $package->new(context => $self->context, @_);
weaken $model->{context};
$model->init($self->context);
return $model;
}
sub export_symbols {
my ($self, $to) = @_;
no strict 'refs';
no warnings 'redefine';
my $super = *{"${to}::ISA"}{ARRAY};
examples/test-validate-json-body/app/lib/Dwarf.pm view on Meta::CPAN
use Dwarf::Request;
use Dwarf::Response;
use Dwarf::Trigger;
use Dwarf::Util qw/capitalize read_file filename installed load_class dwarf_log/;
use Cwd 'abs_path';
use Data::Dumper;
use File::Basename 'dirname';
use File::Spec::Functions 'catfile';
use Module::Find;
use Router::Simple;
use Scalar::Util qw/weaken/;
our $VERSION = '1.83';
use constant {
BEFORE_DISPATCH => 'before_dispatch',
DISPATCHING => 'dispatching',
AFTER_DISPATCH => 'after_dispatch',
FINISH_DISPATCHING => 'Dwarf Finish Dispatching Message',
ERROR => 'error',
NOT_FOUND => 'not_found',
examples/test-validate-json-body/app/lib/Dwarf.pm view on Meta::CPAN
rw => [qw/stash request_handler_prefix request_handler_method/],
};
sub _build_config {
my $self = shift;
$self->{config} ||= do {
my $class = join '::', $self->namespace, 'Config';
$class .= '::' . ucfirst $self->config_name if $self->can('config_name');
load_class($class);
my $config = $class->new(context => $self);
weaken($config->{context});
$config;
};
}
sub _build_error {
my $self = shift;
$self->{error} ||= Dwarf::Error->new;
}
sub _build_request {
examples/test-validate-json-body/app/lib/Dwarf.pm view on Meta::CPAN
unshift @a, $controller if $controller;
my ($class, $ext) = $self->find_class(join "/", @a);
$controller = $class if $class;
}
return $self->handle_not_found unless $controller;
Dwarf::Util::load_class($controller);
$self->{handler_class} = $controller;
$self->{handler} = $controller->new(context => $self);
weaken($self->{handler}->{context});
my $method = $self->find_method;
return $self->not_found unless $method;
# ããã»ã¹åã«å¦çä¸ã®ã³ã³ããã¼ã©ã¼åã表示ãã
$self->proctitle(sprintf "[Dwarf] %s::%s() (%s)", $controller, lc $self->method, $self->base_dir);
$self->handler->init($self);
my $body = $self->handler->$method($self, @_);
examples/test-validate-json-body/app/lib/Dwarf.pm view on Meta::CPAN
die "package name must be specified to create module."
unless defined $package;
my $prefix = $self->namespace;
unless ($package =~ m/^$prefix/) {
$package = $prefix . '::' . $package;
}
load_class($package);
my $module = $package->new(context => $self, @_);
weaken $module->{context};
$module->init($self);
return $module;
}
sub proctitle {
my ($self, $title) = @_;
$title ||= $0;
if ($^O eq 'linux' and load_class("Sys::Proctitle")) {
Sys::Proctitle::setproctitle($title);
examples/test-validate-json-body/app/lib/Dwarf/Module.pm view on Meta::CPAN
package Dwarf::Module;
use Dwarf::Pragma;
use Dwarf::Module::DSL;
use Dwarf::Util qw/load_class dwarf_log/;
use Scalar::Util qw/weaken/;
use Dwarf::Accessor {
ro => [qw/context dsl/],
rw => [qw/prefix/]
};
sub _build_prefix { shift->context->namespace . '::Model' }
sub _build_dsl {
my $self = shift;
my $dsl = Dwarf::Module::DSL->new(
context => $self->context,
module => $self,
);
weaken $dsl->{context};
weaken $dsl->{module};
return $dsl;
}
sub new {
my $class = shift;
my $self = bless { @_ }, $class;
dwarf_log 'new Module';
$self->dsl->export_symbols($class);
return $self;
}
examples/test-validate-json-body/app/lib/Dwarf/Module/DSL.pm view on Meta::CPAN
package Dwarf::Module::DSL;
use Dwarf::Pragma;
use Dwarf::Util qw/load_class dwarf_log/;
use Carp qw/croak/;
use Data::Validator;
use Scalar::Util qw/weaken/;
use Dwarf::Accessor {
ro => [qw/context module/],
rw => [qw/prefix/]
};
our @FUNC = qw/
self app c model m
conf db error e env log debug
session param parameters
examples/test-validate-json-body/app/lib/Dwarf/Module/DSL.pm view on Meta::CPAN
my $prefix = $self->prefix;
unless ($package =~ m/^$prefix/) {
$package = $prefix . '::' . $package;
}
dwarf_log "create model: $package";
load_class($package);
my $model = $package->new(context => $self->context, @_);
weaken $model->{context};
$model->init($self->context);
return $model;
}
sub export_symbols {
my ($self, $to) = @_;
no strict 'refs';
no warnings 'redefine';
my $super = *{"${to}::ISA"}{ARRAY};
share/app/lib/Dwarf.pm view on Meta::CPAN
use Dwarf::Request;
use Dwarf::Response;
use Dwarf::Trigger;
use Dwarf::Util qw/capitalize read_file filename installed load_class dwarf_log/;
use Cwd 'abs_path';
use Data::Dumper;
use File::Basename 'dirname';
use File::Spec::Functions 'catfile';
use Module::Find;
use Router::Simple;
use Scalar::Util qw/weaken/;
our $VERSION = '1.83';
use constant {
BEFORE_DISPATCH => 'before_dispatch',
DISPATCHING => 'dispatching',
AFTER_DISPATCH => 'after_dispatch',
FINISH_DISPATCHING => 'Dwarf Finish Dispatching Message',
ERROR => 'error',
NOT_FOUND => 'not_found',
share/app/lib/Dwarf.pm view on Meta::CPAN
rw => [qw/stash request_handler_prefix request_handler_method/],
};
sub _build_config {
my $self = shift;
$self->{config} ||= do {
my $class = join '::', $self->namespace, 'Config';
$class .= '::' . ucfirst $self->config_name if $self->can('config_name');
load_class($class);
my $config = $class->new(context => $self);
weaken($config->{context});
$config;
};
}
sub _build_error {
my $self = shift;
$self->{error} ||= Dwarf::Error->new;
}
sub _build_request {
share/app/lib/Dwarf.pm view on Meta::CPAN
eval {
eval {
my $controller = $self->route->{controller};
return $self->handle_not_found unless $controller;
Dwarf::Util::load_class($controller);
$self->{handler_class} = $controller;
$self->{handler} = $controller->new(context => $self);
weaken($self->{handler}->{context});
my $method = $self->find_method;
return $self->not_found unless $method;
$self->handler->init($self);
my $body = $self->handler->$method($self, @_);
$self->body($body);
$self->handler->did_dispatch($self, $body);
share/app/lib/Dwarf.pm view on Meta::CPAN
die "package name must be specified to create module."
unless defined $package;
my $prefix = $self->namespace;
unless ($package =~ m/^$prefix/) {
$package = $prefix . '::' . $package;
}
load_class($package);
my $module = $package->new(context => $self, @_);
weaken $module->{context};
$module->init($self);
return $module;
}
sub call_before_trigger {
my $self = shift;
if ($self->state eq BEFORE_DISPATCH) {
$self->call_trigger(BEFORE_DISPATCH => $self, $self->request);
$self->{state} = DISPATCHING;
}
share/app/lib/Dwarf/Module.pm view on Meta::CPAN
package Dwarf::Module;
use Dwarf::Pragma;
use Dwarf::Module::DSL;
use Dwarf::Util qw/load_class dwarf_log/;
use Scalar::Util qw/weaken/;
use Dwarf::Accessor {
ro => [qw/context dsl/],
rw => [qw/prefix/]
};
sub _build_prefix { shift->context->namespace . '::Model' }
sub _build_dsl {
my $self = shift;
my $dsl = Dwarf::Module::DSL->new(
context => $self->context,
module => $self,
);
weaken $dsl->{context};
weaken $dsl->{module};
return $dsl;
}
sub new {
my $class = shift;
my $self = bless { @_ }, $class;
dwarf_log 'new Module';
$self->dsl->export_symbols($class);
return $self;
}
share/app/lib/Dwarf/Module/DSL.pm view on Meta::CPAN
package Dwarf::Module::DSL;
use Dwarf::Pragma;
use Dwarf::Data::Validator;
use Dwarf::SQLBuilder;
use Dwarf::Util qw/load_class dwarf_log/;
use Carp qw/croak/;
use Scalar::Util qw/weaken/;
use Dwarf::Accessor {
ro => [qw/context module/],
rw => [qw/prefix/]
};
our @FUNC = qw/
self app c model m
conf db error e env log debug
session param parameters
share/app/lib/Dwarf/Module/DSL.pm view on Meta::CPAN
my $prefix = $self->prefix;
unless ($package =~ m/^$prefix/) {
$package = $prefix . '::' . $package;
}
dwarf_log "create model: $package";
load_class($package);
my $model = $package->new(context => $self->context, @_);
weaken $model->{context};
$model->init($self->context);
return $model;
}
sub export_symbols {
my ($self, $to) = @_;
no strict 'refs';
no warnings 'redefine';
my $super = *{"${to}::ISA"}{ARRAY};