comparison Lib/IMPL/Web/RestContract.pm @ 199:e743a8481327

Added REST support for forms (with only get and post methods)
author sergey
date Mon, 23 Apr 2012 01:36:52 +0400
parents 2ffe6f661605
children a9dbe534d236
comparison
equal deleted inserted replaced
198:2ffe6f661605 199:e743a8481327
22 $this->templates->{-default} = sub { die ForbiddenException->new(); }; 22 $this->templates->{-default} = sub { die ForbiddenException->new(); };
23 $this->templates->{TRestResource} = sub { $_[0] }; 23 $this->templates->{TRestResource} = sub { $_[0] };
24 } 24 }
25 25
26 sub ProcessTemplate { 26 sub ProcessTemplate {
27 my ($this,$t,$obj,@args) = @_; 27 my ($this,$t,$obj,$props) = @_;
28
29 $props ||= {};
28 30
29 if (ref $t eq 'HASH') { 31 if (ref $t eq 'HASH') {
30 my $factory = $t->{factory} || TRestResource; 32 my $factory = $t->{factory} || TRestResource;
31 return $factory->new(%$t, target => $obj); 33 return $factory->new(%$t, target => $obj, %$props);
32 } elsif (ref $t eq 'CODE') { 34 } elsif (ref $t eq 'CODE') {
33 return $this->$t($obj,@args); 35 return $this->$t($obj,$props);
34 } else { 36 } else {
35 die InvalidOpException->new(); 37 die InvalidOpException->new();
36 } 38 }
37 } 39 }
38 40