view release on metacpan or search on metacpan
lib/Ambrosia/Addons/Session.pm view on Meta::CPAN
121314151617181920212223242526272829303132our
@EXPORT
=
qw/session/
;
our
$VERSION
= 0.010;
{
our
$__SESSION__
;
sub
new : Private
{
return
shift
->SUPER::new(
@_
);
}
sub
instance
{
return
$__SESSION__
||=
@_
?
shift
()->new(
@_
) : new Ambrosia::core::Nil;
}
sub
destroy
{
undef
$__SESSION__
;
lib/Ambrosia/Addons/Session/Cookie.pm view on Meta::CPAN
1415161718192021222324252627282930313233{
public
=> [
qw/expires path/
],
private
=> [
qw/__cookie/
]
};
our
$VERSION
= 0.010;
sub
_init
{
my
$self
=
shift
;
$self
->SUPER::_init(
@_
);
my
@cookie
= fetch CGI::Cookie;
$self
->__cookie =
scalar
@cookie
&&
@cookie
% 2 == 0 ? {
@cookie
} : {};
$self
->path ||=
'/'
;
}
sub
getSessionName
{
return
'cookie'
;
}
lib/Ambrosia/BaseManager.pm view on Meta::CPAN
2122232425262728293031323334353637383940sub
INTERNALREDIRECT() { 1 }
sub
FORWARD() { 2 }
our
@EXPORT
=
qw/controller/
;
{
my
$__CONTROLLER__
;
sub
instance
{
$__CONTROLLER__
=
shift
->SUPER::new(
@_
)
unless
$__CONTROLLER__
;
return
$__CONTROLLER__
;
}
sub
controller
{
no
warnings;
return
__PACKAGE__->instance(
@_
);
}
}
lib/Ambrosia/CommonGatewayInterface/ApacheRequest.pm view on Meta::CPAN
2627282930313233343536373839404142434445
$self
->_handler = new Apache::Request(
$r
);
if
(
$params
)
{
$self
->delete_all;
foreach
(
keys
%$params
)
{
$self
->_handler->param(
$_
,
$params
->{
$_
});
}
}
$self
->SUPER::
open
();
return
$self
->_handler;
}
################################################################################
sub
input_data
{
shift
->_handler->param(
@_
);
}
lib/Ambrosia/CommonGatewayInterface/CGI.pm view on Meta::CPAN
2122232425262728293031323334353637383940
$self
->_handler ||= new CGI;
if
(
$params
)
{
$self
->delete_all;
foreach
(
keys
%$params
)
{
$self
->_handler->param(
$_
,
$params
->{
$_
});
}
}
$self
->SUPER::
open
();
return
$self
->_handler;
}
################################################################################
sub
input_data
{
shift
->_handler->param(
@_
);
}
lib/Ambrosia/CommonGatewayInterface/Options.pm view on Meta::CPAN
151617181920212223242526272829303132333435our
$VERSION
= 0.010;
sub
open
{
my
$self
=
shift
;
my
(
$opt
,
$usage
) = describe_options(@{
$self
->options_spec});
$self
->_handler = new Ambrosia::CommonGatewayInterface::Options::ICGI(
__opt
=>
$opt
,
__usage
=>
$usage
);
return
$self
->SUPER::
open
();
}
sub
error
{
return
$_
[0]->_handler->usage()->text();
}
sub
input_data
{
my
$self
=
shift
;
lib/Ambrosia/Context.pm view on Meta::CPAN
373839404142434445464748495051525354555657
my
$package
=
shift
;
my
%params
=
@_
== 1 ? %{
$_
[0]} :
@_
;
assert {
$params
{engine_name}}
'Context must instance before first call "Context" or you not set "engine_name" in params.'
;
#throw Ambrosia::error::Exception::BadUsage('Context must instance before first call "Context"') unless $params{engine_name};
my
(
$engine_name
,
$engine_params
) =
@params
{
qw/engine_name engine_params/
};
delete
@params
{
qw/engine_name engine_params/
};
my
$cgi
= Ambrosia::core::ClassFactory::create_object(
'Ambrosia::CommonGatewayInterface::'
.
$engine_name
,
$engine_params
);
$_CONTEXT
=
$package
->SUPER::new(
__cgi
=>
$cgi
,
%params
);
}
return
$_CONTEXT
;
}
sub
destroy
{
undef
$_CONTEXT
;
}
sub
Context
lib/Ambrosia/DataProvider.pm view on Meta::CPAN
293031323334353637383940414243444546474849
__PACKAGE__->export_to_level(1,
@EXPORT
);
}
sub
assign
{
$PROCESS_MAP
{$$} =
shift
;
}
sub
new : Private
{
return
shift
->SUPER::new(
@_
);
}
sub
instance
{
my
$package
=
shift
;
my
$key
=
shift
;
unless
(
$STORAGE
{
$key
} )
{
my
%params
=
@_
== 1 ? %{
$_
[0]} :
@_
;
lib/Ambrosia/DataProvider/BaseDriver.pm view on Meta::CPAN
121314151617181920212223242526272829303132{
public
=> [
qw/type catalog schema host port/
],
protected
=> [
qw/_handler _cql_query _cache/
],
};
our
$VERSION
= 0.010;
sub
_init
{
my
$self
=
shift
;
$self
->SUPER::_init(
@_
);
$self
->_cql_query = [];
}
sub
cache
{
return
$_
[0]->_cache;
}
######################## CONNECTION/TRANSACTION ########################
#Open connection. Return handler.
lib/Ambrosia/DataProvider/DBIDriver.pm view on Meta::CPAN
1920212223242526272829303132333435363738394041424344454647484950515253
engine_params
additional_params
additional_action
__sth
/]
};
sub
_init
{
my
$self
=
shift
;
$self
->SUPER::_init(
@_
);
$self
->_cache ||= new Ambrosia::Utils::Container;
}
our
$VERSION
= 0.010;
sub
reset
{
my
$self
=
shift
;
if
(
$self
->__sth )
{
$self
->__sth->finish;
$self
->__sth =
undef
;
}
$self
->SUPER::
reset
();
return
$self
;
}
sub
_name :Abstract :Protected {}
sub
_connection_params
{
my
$self
=
shift
;
return
'dbi:'
.
$self
->_name()
lib/Ambrosia/DataProvider/ResourceDriver.pm view on Meta::CPAN
678910111213141516171819202122232425262728293031323334use
Ambrosia::Meta;
class
{
extends
=> [
qw/Ambrosia::DataProvider::BaseDriver/
],
private
=> [
qw/__start/
],
};
sub
_init
{
my
$self
=
shift
;
$self
->SUPER::_init(
@_
);
$self
->_cache = new Ambrosia::core::Nil();
}
our
$VERSION
= 0.010;
sub
reset
{
my
$self
=
shift
;
$self
->SUPER::
reset
();
$self
->__start = 0;
return
$self
;
}
################################################################################
sub
begin_transaction
{
}
lib/Ambrosia/Dispatcher.pm view on Meta::CPAN
91011121314151617181920212223242526272829use
Ambrosia::Meta;
class sealed {
private
=> [
qw/__check_access/
],
};
our
$VERSION
= 0.010;
sub
_init
{
my
$self
=
shift
;
$self
->SUPER::_init(
@_
);
$self
->__check_access =
sub
{1};
$self
->on_error(
sub
{
warn
"Error: @_\n"
;1;});
}
sub
on_check_access
{
my
$self
=
shift
;
my
$proc
=
shift
;
if
(
$proc
&&
ref
$proc
eq
'CODE'
)
{
lib/Ambrosia/EntityDataModel.pm view on Meta::CPAN
2324252627282930313233343536373839404142our
$VERSION
= 0.010;
################################################################################
sub
_map() {
return
shift
->__AMBROSIA_ALIAS_FIELDS__ || {} }
sub
_init
{
my
$self
=
shift
;
$self
->SUPER::_init(
@_
);
if
(
$self
->key_value() )
{
$self
->SET_LOADED;
}
else
{
$self
->SET_NEW;
}
}
lib/Ambrosia/Event.pm view on Meta::CPAN
383940414243444546474849505152535455565758596061626364
};
}
{
my
%__EVENT_HANDLER__
= ();
sub
new : Private {};
sub
instance
{
return
$__EVENT_HANDLER__
{$$} ||= __PACKAGE__->SUPER::new();
}
}
sub
_init
{
my
$self
=
shift
;
$self
->SUPER::_init(
@_
);
$self
->_handlers = {};
}
sub
attachHandler
{
my
$class
=
shift
;
my
$type
=
ref
$class
||
$class
||
''
;
my
$name
=
shift
;
my
$handler
=
shift
;
lib/Ambrosia/QL.pm view on Meta::CPAN
3132333435363738394041424344454647484950{
}
sub
_TRUE { 1 }
sub
from(&)
{
my
$proto
=
shift
;
my
$class
=
ref
$proto
||
$proto
;
return
$class
->SUPER::new(
source
=>
shift
,
driver
=> new Ambrosia::core::Nil(),
__variable
=>
shift
|| \
my
$tmp
,
__predicate
=> \
&_TRUE
,
__on
=> \
&_TRUE
,
__limit
=> 0,
__skip
=> 0,
);
}
lib/Ambrosia/RPC.pm view on Meta::CPAN
293031323334353637383940414243444546474849}
sub
assign
{
$PROCESS_MAP
{$$} =
shift
;
}
{
sub
new : Private
{
return
shift
->SUPER::new(
@_
);
}
sub
instance
{
my
$package
=
shift
;
my
$key
=
shift
;
unless
(
$RPC
{
$key
} )
{
my
%params
=
@_
== 1 ? %{
$_
[0]} :
@_
;
lib/Ambrosia/RPC/Service/SOAP/Lite.pm view on Meta::CPAN
8910111213141516171819202122232425262728class
{
private
=> [
qw/__soap __proxy __outputxml __readable __default_ns __ns __soapversion __timeout __on_error/
]
};
our
$VERSION
= 0.010;
sub
_init
{
my
$self
=
shift
;
$self
->SUPER::_init(
@_
);
$self
->__outputxml =
undef
if
$self
->__outputxml ne
'true'
;
$self
->__soapversion =
'1.2'
unless
$self
->__soapversion;
$self
->__soap =
undef
;
$self
->__on_error =
sub
{
my
$soap
=
shift
;
my
$som
=
shift
;
my
$error_msg
=
join
"\n"
, (
ref
$som
? (
'SOAP FAULT: '
,
'code: '
.
$som
->faultcode,
'desc: '
.
$som
->faultstring)
lib/Ambrosia/Utils/Container.pm view on Meta::CPAN
8910111213141516171819202122232425262728class
{
private
=> [
qw/__data/
]
};
our
$VERSION
= 0.010;
sub
_init
{
my
$self
=
shift
;
$self
->SUPER::_init(
@_
);
$self
->__data ||= {};
}
sub
TIEHASH {
$_
[1]; }
sub
STORE { }
sub
FETCH {
$_
[0]->__data->{
$_
[1]} }
sub
FIRSTKEY {
each
%{
$_
[0]->__data}; }
sub
NEXTKEY {
each
%{
$_
[0]->__data} }
sub
EXISTS {
exists
$_
[0]->__data->{
$_
[1]} }
sub
DELETE { }
#delete $_[0]->__data->{$_[1]} }
lib/Ambrosia/Utils/Container.pm view on Meta::CPAN
125126127128129130131132133134135136137138139140141142143144
return
$obj
;
}
}
sub
as_hash
{
my
$self
=
shift
;
if
(
@_
)
{
return
$self
->SUPER::as_hash(1)->{__data};
}
return
{
map
{
$_
=>
$self
->__data->{
$_
} }
keys
%{
$self
->__data} };
}
sub
info
{
my
$self
=
shift
;
return
join
"\n"
,
map
{
my
$d
=
$self
->__data->{
$_
};
$_
.
'='
. (
ref
$d
||
$d
) }
keys
%{
$self
->__data};
}
lib/Ambrosia/Utils/Queue.pm view on Meta::CPAN
91011121314151617181920212223242526272829
private
=> [
qw/__list __strategy/
]
};
our
$VERSION
= 0.010;
use
Ambrosia::Utils::Enumeration
property
=>
__strategy
=> (
STRATEGY_LIFO
=> 1,
STRATEGY_FIFO
=> 2);
sub
_init
{
my
$self
=
shift
;
$self
->SUPER::_init(
@_
);
$self
->__list ||= [];
$self
->SET_STRATEGY_FIFO();
}
sub
add
{
my
$self
=
shift
;
push
@{
$self
->__list},
@_
;
$self
;
}
lib/Ambrosia/Validator.pm view on Meta::CPAN
89101112131415161718192021222324252627class abstract
{
protected
=> [
qw/_prototype _violations _data/
],
};
our
$VERSION
= 0.010;
sub
_init
{
my
$self
=
shift
;
$self
->SUPER::_init(
@_
);
$self
->_violations = new Ambrosia::Validator::Violation(
prototype
=>
$self
->_prototype);
$self
->_data = {};
}
my
$qr_trim
=
qr/(?:^\s+)|(?:\s+$)/
;
sub
get_value
{
return
(
map
{
$_
=~ s/
$qr_trim
//sg;
$_
; }
grep
defined
$_
,
@_
);
}
lib/Ambrosia/Validator/Constraint.pm view on Meta::CPAN
101112131415161718192021222324252627282930{
public
=> [
qw/name errorMessage/
],
private
=> [
qw/constraint/
],
};
our
$VERSION
= 0.010;
sub
_init
{
my
$self
=
shift
;
$self
->SUPER::_init(
@_
);
$self
->errorMessage = [];
$self
->constraint =
sub
() {
return
(
shift
(), [], []) };
}
sub
check
{
my
$self
=
shift
;
my
$v
;
(
$v
,
$self
->errorMessage) =
$self
->constraint->(
@_
);
lib/Ambrosia/Validator/Violation.pm view on Meta::CPAN
121314151617181920212223242526272829303132
public
=> [
qw/prototype count/
],
private
=> [
qw/__data/
],
};
our
$VERSION
= 0.010;
sub
_init
{
my
$self
=
shift
;
$self
->__data = {};
$self
->SUPER::_init(
@_
);
$self
->count = 0;
#no strict 'refs';
#*{__PACKAGE__ . '::fields'} = sub() { keys %{$_[0]->__data} };
}
sub
add
{
my
$self
=
shift
;
my
$f
=
shift
;
lib/Ambrosia/Validator/Violation.pm view on Meta::CPAN
8990919293949596979899100101102103104105106107108109class
{
public
=> [
qw/value errorMessage/
],
};
our
$VERSION
= 0.010;
sub
_init
{
my
$self
=
shift
;
$self
->SUPER::_init(
@_
);
$self
->errorMessage ||= [];
}
1;
__END__
=head1 NAME
Ambrosia::Validator::Violation - it is used for a wrapping of checked object in case of a bad data.
lib/Ambrosia/core/Object.pm view on Meta::CPAN
649650651652653654655656657658659660661662663664665666667668669class
{
public
=> [
qw/foo_pub1 foo_pub2/
],
protected
=> [
qw/foo_pro1 foo_pro2/
],
private
=> [
qw/foo_pri1 foo_pri2/
],
};
sub
_init
{
my
$self
=
shift
;
$self
->SUPER::_init(
@_
);
$self
->foo_pub1 ||=
'foo_pub1'
;
$self
->foo_pub2 ||=
'foo_pub2'
;
$self
->foo_pri1 ||=
'foo_pri1'
;
$self
->foo_pri2 ||=
'foo_pri2'
;
$self
->foo_pro1 ||= 2;
$self
->foo_pro2 ||=
'foo_pro2'
;
}
sub
count
lib/Ambrosia/core/Object.pm view on Meta::CPAN
684685686687688689690691692693694695696697698699700701702703704
public
=> [
qw/bar_pub1 bar_pub2/
],
protected
=> [
qw/bar_pro1 bar_pro2/
],
private
=> [
qw/bar_pri1 bar_pri2 list/
],
};
sub
_init
{
my
$self
=
shift
;
#Ignore all input data
$self
->SUPER::_init(
foo_pri1
=>4);
$self
->bar_pub1 =
'bar_pub1'
;
$self
->bar_pub2 =
'bar_pub2'
;
$self
->bar_pri1 =
'bar_pri1'
;
$self
->bar_pri2 =
'bar_pri2'
;
$self
->bar_pro1 =
'bar_pro1'
;
$self
->bar_pro2 =
'bar_pro2'
;
$self
->list = []
unless
defined
$self
->list;
push
@{
$self
->list}, (new Foo(
foo_pub1
=>
'list1.1'
,
foo_pub2
=>
'list1.2'
),
lib/Ambrosia/error/Exceptions.pm view on Meta::CPAN
789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263######################################################################
package
Ambrosia::error::Exception;
use
base
qw/https://metacpan.org/pod/Ambrosia::error::Exception::Error">Ambrosia::error::Exception::Error/
;
our
$VERSION
= 0.010;
sub
CODE() {
'E0000'
}
sub
throw
{
return
shift
->SUPER::throw(CODE,
@_
);
}
######################################################################
package
Ambrosia::error::Exception::BadUsage;
use
base
qw/https://metacpan.org/pod/Ambrosia::error::Exception::Error">Ambrosia::error::Exception::Error/
;
our
$VERSION
= 0.010;
sub
CODE() {
'E0001'
}
sub
throw
{
return
shift
->SUPER::throw(CODE,
@_
);
}
######################################################################
use
base
qw/https://metacpan.org/pod/Ambrosia::error::Exception::Error">Ambrosia::error::Exception::Error/
;
our
$VERSION
= 0.010;
sub
CODE() {
'E0002'
}
sub
throw
{
return
shift
->SUPER::throw(CODE,
@_
);
}
######################################################################
use
base
qw/https://metacpan.org/pod/Ambrosia::error::Exception::Error">Ambrosia::error::Exception::Error/
;
our
$VERSION
= 0.010;
sub
CODE() {
'E0003'
}
sub
throw
{
return
shift
->SUPER::throw(CODE,
@_
);
}
1;
__END__
=head1 NAME
Ambrosia::error::Exception - an unspecified exception.
Ambrosia::error::Exception::BadUsage - this exception will occur if you use something incorrect.
share/Managers/buildApp.pm view on Meta::CPAN
171819202122232425262728293031323334353637class sealed {
private
=> [
qw/parser source xslt application/
],
extends
=> [
qw/Ambrosia::BaseManager/
]
};
our
$VERSION
= 0.010;
sub
_init
{
my
$self
=
shift
;
$self
->SUPER::_init(
@_
);
$self
->parser = XML::LibXML->new();
$self
->xslt = XML::LibXSLT->new();
my
$source
=
$self
->source =
$self
->parser->parse_file(Context->param(
'data'
));
$self
->application = (
$source
->getElementsByTagName(
'Application'
))[0]->cloneNode(0);
$self
->application->addChild((
$source
->getElementsByTagName(
'Config'
))[0]->cloneNode(1));
$self
->application->addChild((
$source
->getElementsByTagName(
'DataSource'
))[0]->cloneNode(1));
8910111213141516171819202122232425262728{
extends
=> [
qw/t::Foo/
],
public
=> [
qw/bar_pub1 bar_pub2/
],
protected
=> [
qw/bar_pro1 bar_pro2 list_pro/
],
private
=> [
qw/bar_pri1 bar_pri2 list_pri/
],
};
sub
_init
{
my
$self
=
shift
;
$self
->SUPER::_init(
foo_pri1
=>
'value for bar foo_pri1'
);
#Ignore all input parameters
$self
->bar_pub1 =
'bar_pub1'
;
$self
->bar_pub2 =
'bar_pub2'
;
$self
->bar_pri1 =
'bar_pri1'
;
$self
->bar_pri2 =
'bar_pri2'
;
$self
->bar_pro1 =
'bar_pro1'
;
$self
->bar_pro2 =
'bar_pro2'
;
$self
->list_pro = [];
push
@{
$self
->list_pro}, ( new t::Foo(
foo_pub1
=>
'pro list1.1'
,
foo_pub2
=>
'pro list1.2'
),
new t::Foo(
foo_pub1
=>
'pro list2.1'
,
foo_pub2
=>
'pro list2.2'
)
);
8910111213141516171819202122232425262728class
{
public
=> [
qw/foo_pub1 foo_pub2/
],
protected
=> [
qw/foo_pro1 foo_pro2/
],
private
=> [
qw/foo_pri1 foo_pri2/
],
};
sub
_init
{
my
$self
=
shift
;
$self
->SUPER::_init(
@_
);
$self
->foo_pub1 ||=
'foo_pub1'
;
$self
->foo_pub2 ||=
'foo_pub2'
;
$self
->foo_pro1 ||=
'foo_pro1'
;
$self
->foo_pro2 ||=
'foo_pro2'
;
$self
->foo_pri1 ||=
'foo_pri1'
;
$self
->foo_pri2 ||=
'foo_pri2'
;
}
my
$sum
= 0;