126 |
|
|
127 |
=cut |
=cut |
128 |
|
|
129 |
my $parser = XML::Rules->new( |
sub parse { |
130 |
|
my $self = shift; |
131 |
|
|
132 |
|
my $xml = shift || confess "no xml?"; |
133 |
|
|
134 |
|
$state = {}; |
135 |
|
|
136 |
|
my $parser = XML::Rules->new( |
137 |
# start_rules => [ |
# start_rules => [ |
138 |
# '^division_name,fax' => 'skip', |
# '^division_name,fax' => 'skip', |
139 |
# ], |
# ], |
145 |
'urn:dslforum-org:cwmp-1-0' => '', |
'urn:dslforum-org:cwmp-1-0' => '', |
146 |
}, |
}, |
147 |
rules => $rules, |
rules => $rules, |
148 |
); |
); |
149 |
|
|
150 |
sub parse { |
warn "## created $parser\n"; |
|
my $self = shift; |
|
151 |
|
|
152 |
my $xml = shift || confess "no xml?"; |
$parser->parsestring( $xml ); |
153 |
|
|
154 |
$state = {}; |
undef $parser; |
155 |
|
|
|
$parser->parsestring( $xml ); |
|
156 |
if ( my $trigger = $state->{_trigger} ) { |
if ( my $trigger = $state->{_trigger} ) { |
157 |
warn "### call_trigger( $trigger )\n"; |
warn "### call_trigger( $trigger )\n"; |
158 |
$self->call_trigger( $trigger, $state ); |
$self->call_trigger( $trigger, $state ); |