49
|
1 package IMPL::DOM::Schema::ValidationError;
|
|
2 use strict;
|
|
3 use warnings;
|
|
4
|
|
5 use base qw(IMPL::Object);
|
|
6 use IMPL::Class::Property;
|
|
7 use IMPL::Class::Property::Direct;
|
|
8 use IMPL::Resources::Format qw(FormatMessage);
|
|
9
|
|
10 BEGIN {
|
|
11 public _direct property Node => prop_get;
|
|
12 public _direct property Schema => prop_get;
|
|
13 public _direct property Source => prop_get;
|
|
14 public _direct property Message => prop_get;
|
|
15 }
|
|
16
|
|
17 sub CTOR {
|
|
18 my ($this,%args) = @_;
|
|
19
|
|
20 $this->{$Node} = $args{Node} or die new IMPL::InvalidArgumentException("Node is a required parameter");
|
|
21 $this->{$Schema} = $args{Schema} if $args{Schema};
|
|
22 $this->{$Source} = $args{Source} if $args{Source};
|
|
23 $this->{$Message} = FormatMessage(delete $args{Message}, \%args) if $args{Message};
|
|
24 }
|
|
25
|
|
26 1;
|