1 package OpenSRF::DOM::Element::searchCriteria;
2 use base 'OpenSRF::DOM::Element';
4 use OpenSRF::DOM::Element::searchCriterium;
8 my $class = ref($self) || $self;
10 if (@_ == 3 and !ref($_[1])) {
15 my ($joiner,@crits) = @_;
22 my $collection = $class->SUPER::new(joiner => $joiner);
24 for my $crit (@crits) {
25 if (ref($crit) and ref($crit) =~ /ARRAY/) {
27 $collection->appendChild( $class->new(@$crit) );
29 $collection->appendChild( OpenSRF::DOM::Element::searchCriterium->new( @$crit ) );
32 $collection->appendChild($crit);
42 for my $kid ($self->childNodes) {
43 push @parts, $kid->toSQL;
45 return '(' . join(' '.$self->getAttribute('joiner').' ', @parts) . ')';