46 {
47 if ($config->get('URI.Disable')) {
48 return false;
49 }
50
52
53
54 $uri = $this->parser->parse($uri);
55 if ($uri === false) {
56 return false;
57 }
58
59
60 $context->register('EmbeddedURI', $this->embedsResource);
61
63 do {
64
65
66 $result = $uri->validate($config, $context);
68 break;
69 }
70
71
72 $uri_def = $config->getDefinition('URI');
73 $result = $uri_def->filter($uri, $config, $context);
75 break;
76 }
77
78
79 $scheme_obj = $uri->getSchemeObj($config, $context);
80 if (!$scheme_obj) {
81 break;
82 }
83 if ($this->embedsResource && !$scheme_obj->browsable) {
84 break;
85 }
86 $result = $scheme_obj->validate($uri, $config, $context);
88 break;
89 }
90
91
92 $result = $uri_def->postFilter($uri, $config, $context);
94 break;
95 }
96
97
99
100 } while (false);
101
102 $context->destroy('EmbeddedURI');
104 return false;
105 }
106
107 return $uri->toString();
108 }
parseCDATA($string)
Convenience method that parses a string as if it were CDATA.