comparison Lib/IMPL/DOM/Schema/SimpleNode.pm @ 152:1e7f03414b65

DOM: schema improvements DOM: saving to XML::Writer feature
author wizard
date Thu, 23 Sep 2010 03:58:43 +0400
parents e30bdd040fe3
children 76515373dac0
comparison
equal deleted inserted replaced
151:e36ffd8c29db 152:1e7f03414b65
3 use warnings; 3 use warnings;
4 4
5 use base qw(IMPL::DOM::Schema::Node); 5 use base qw(IMPL::DOM::Schema::Node);
6 use IMPL::Class::Property; 6 use IMPL::Class::Property;
7 use IMPL::Class::Property::Direct; 7 use IMPL::Class::Property::Direct;
8 use IMPL::DOM::Property qw(_dom);
8 9
9 BEGIN { 10 BEGIN {
10 public _direct property inflator => prop_get; 11 public _dom _direct property inflator => prop_get;
11 public _direct property messageInflateError => prop_get; 12 public _dom _direct property messageInflateError => prop_get;
12 } 13 }
13 14
14 our %CTOR = ( 15 our %CTOR = (
15 'IMPL::DOM::Schema::Node' => sub { 16 'IMPL::DOM::Schema::Node' => sub {
16 my %args = @_; 17 my %args = @_;
21 ); 22 );
22 23
23 sub CTOR { 24 sub CTOR {
24 my ($this,%args) = @_; 25 my ($this,%args) = @_;
25 26
26 $this->{$inflator} = $args{inflator} if $args{inflator}; 27 if ( $args{inflator} ) {
27 $this->{$messageInflateError} = $args{messageInflateError} || 'Failed to inflate nodeValue %Node.path%: %Error%'; 28 $this->{$inflator} = $args{inflator} ;
29 $this->{$messageInflateError} = exists $args{messageInflateError} ? $args{messageInflateError} : 'Failed to inflate nodeValue %Node.path%: %Error%';
30 }
28 } 31 }
29 32
30 sub Validate { 33 sub Validate {
31 my ($this,$node,$ctx) = @_; 34 my ($this,$node,$ctx) = @_;
32 35