1 | <?php |
||
2 | |||
3 | namespace CfdiUtils\Validate; |
||
4 | |||
5 | use CfdiUtils\CadenaOrigen\XsltBuilderPropertyInterface; |
||
6 | use CfdiUtils\CadenaOrigen\XsltBuilderPropertyTrait; |
||
7 | use CfdiUtils\Validate\Contracts\RequireXmlResolverInterface; |
||
8 | use CfdiUtils\Validate\Contracts\RequireXmlStringInterface; |
||
9 | use CfdiUtils\Validate\Contracts\RequireXsltBuilderInterface; |
||
10 | use CfdiUtils\Validate\Contracts\ValidatorInterface; |
||
11 | use CfdiUtils\Validate\Traits\XmlStringPropertyTrait; |
||
12 | use CfdiUtils\XmlResolver\XmlResolverPropertyInterface; |
||
13 | use CfdiUtils\XmlResolver\XmlResolverPropertyTrait; |
||
14 | |||
15 | class Hydrater implements XmlResolverPropertyInterface, XsltBuilderPropertyInterface |
||
16 | { |
||
17 | use XmlResolverPropertyTrait; |
||
18 | use XmlStringPropertyTrait; |
||
19 | use XsltBuilderPropertyTrait; |
||
20 | |||
21 | 109 | public function hydrate(ValidatorInterface $validator) |
|
22 | { |
||
23 | 109 | if ($validator instanceof RequireXmlStringInterface) { |
|
24 | 73 | $validator->setXmlString($this->getXmlString()); |
|
25 | } |
||
26 | 109 | if ($this->hasXmlResolver() && $validator instanceof RequireXmlResolverInterface) { |
|
27 | 93 | $validator->setXmlResolver($this->getXmlResolver()); |
|
28 | } |
||
29 | 109 | if ($validator instanceof RequireXsltBuilderInterface) { |
|
30 | 91 | $validator->setXsltBuilder($this->getXsltBuilder()); |
|
31 | } |
||
32 | } |
||
33 | } |
||
34 |