@@ 569-603 (lines=35) @@ | ||
566 | } |
|
567 | } |
|
568 | ||
569 | class RpcMemberHandler extends XmlTagHandler |
|
570 | { |
|
571 | ||
572 | /** |
|
573 | * @return string |
|
574 | */ |
|
575 | public function getName() |
|
576 | { |
|
577 | return 'member'; |
|
578 | } |
|
579 | ||
580 | /** |
|
581 | * @param SaxParser $parser |
|
582 | * @param array $attributes |
|
583 | * @return void |
|
584 | */ |
|
585 | public function handleBeginElement(SaxParser $parser, &$attributes) |
|
586 | { |
|
587 | if (!is_a($parser,'XoopsXmlRpcParser')) return; |
|
588 | $parser->setWorkingLevel(); |
|
589 | $parser->resetTempMember(); |
|
590 | } |
|
591 | ||
592 | /** |
|
593 | * @param SaxParser $parser |
|
594 | * @return void |
|
595 | */ |
|
596 | public function handleEndElement(SaxParser $parser) |
|
597 | { |
|
598 | if (!is_a($parser,'XoopsXmlRpcParser')) return; |
|
599 | $member = $parser->getTempMember(); |
|
600 | $parser->releaseWorkingLevel(); |
|
601 | $parser->setTempStruct($member); |
|
602 | } |
|
603 | } |
|
604 | ||
605 | class RpcArrayHandler extends XmlTagHandler |
|
606 | { |
|
@@ 605-638 (lines=34) @@ | ||
602 | } |
|
603 | } |
|
604 | ||
605 | class RpcArrayHandler extends XmlTagHandler |
|
606 | { |
|
607 | ||
608 | /** |
|
609 | * @return string |
|
610 | */ |
|
611 | public function getName() |
|
612 | { |
|
613 | return 'array'; |
|
614 | } |
|
615 | ||
616 | /** |
|
617 | * @param SaxParser $parser |
|
618 | * @param array $attributes |
|
619 | * @return void |
|
620 | */ |
|
621 | public function handleBeginElement(SaxParser $parser, &$attributes) |
|
622 | { |
|
623 | if (!is_a($parser,'XoopsXmlRpcParser')) return; |
|
624 | $parser->setWorkingLevel(); |
|
625 | $parser->resetTempArray(); |
|
626 | } |
|
627 | ||
628 | /** |
|
629 | * @param SaxParser $parser |
|
630 | * @return void |
|
631 | */ |
|
632 | public function handleEndElement(SaxParser $parser) |
|
633 | { |
|
634 | if (!is_a($parser,'XoopsXmlRpcParser')) return; |
|
635 | $parser->setTempValue($parser->getTempArray()); |
|
636 | $parser->releaseWorkingLevel(); |
|
637 | } |
|
638 | } |
|
639 | ||
640 | class RpcStructHandler extends XmlTagHandler |
|
641 | { |
|
@@ 640-673 (lines=34) @@ | ||
637 | } |
|
638 | } |
|
639 | ||
640 | class RpcStructHandler extends XmlTagHandler |
|
641 | { |
|
642 | ||
643 | /** |
|
644 | * @return string |
|
645 | */ |
|
646 | public function getName() |
|
647 | { |
|
648 | return 'struct'; |
|
649 | } |
|
650 | ||
651 | /** |
|
652 | * @param SaxParser $parser |
|
653 | * @param array $attributes |
|
654 | * @return void |
|
655 | */ |
|
656 | public function handleBeginElement(SaxParser $parser, &$attributes) |
|
657 | { |
|
658 | if (!is_a($parser,'XoopsXmlRpcParser')) return; |
|
659 | $parser->setWorkingLevel(); |
|
660 | $parser->resetTempStruct(); |
|
661 | } |
|
662 | ||
663 | /** |
|
664 | * @param SaxParser $parser |
|
665 | * @return void |
|
666 | */ |
|
667 | public function handleEndElement(SaxParser $parser) |
|
668 | { |
|
669 | if (!is_a($parser,'XoopsXmlRpcParser')) return; |
|
670 | $parser->setTempValue($parser->getTempStruct()); |
|
671 | $parser->releaseWorkingLevel(); |
|
672 | } |
|
673 | } |
|
674 |