Changeset 13209 for lang/perl/XMPP-Bomber
- Timestamp:
- 06/04/08 16:15:31 (5 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
lang/perl/XMPP-Bomber/trunk/lib/XMPP/Bomber/Types.pm
r13199 r13209 3 3 4 4 use XMPP::Bomber::Account; 5 use XMPP::Bomber::Server; 5 6 use XMPP::Bomber::Role::ContentProvider; 6 7 use XMPP::Bomber::Role::UserProvider; … … 24 25 => from 'HashRef' 25 26 => via { 26 my $h = $_; 27 my $module = __resolve_module_name($h->{module}, "XMPP::Bomber::ContentProvider"); 28 29 $module->new( %{$h->{args}} ); 27 __module_from_hash($_, "XMPP::Bomber::ContentProvider"); 30 28 } 31 29 ; … … 34 32 => from 'HashRef' 35 33 => via { 36 my $h = $_; 37 my $module = __resolve_module_name($h->{module}, "XMPP::Bomber::UserProvider"); 38 39 $module->new( %{$h->{args}} ); 34 __auto_object_from_hash($_, "XMPP::Bomber::UserProvider"); 40 35 } 41 36 ; 37 38 coerce 'XMPP::Bomber::Server' 39 => from 'HashRef' 40 => via { 41 __object_from_hash($_, "XMPP::Bomber::Server"); 42 } 43 ; 44 42 45 43 46 no Moose; … … 53 56 }; 54 57 58 sub __auto_object_from_hash { 59 my ($h, $prefix) = @_; 60 my $module = __resolve_module_name($h->{module}, $prefix); 61 __object_from_hash($h, $module); 62 } 63 64 sub __object_from_hash { 65 my ($h, $module) = @_; 66 $module->new( %{$h->{args}} ); 67 } 68 55 69 1;
![(please configure the [header_logo] section in trac.ini)](/share/chrome/site/your_project_logo.png)