|
|
@@ -21,17 +21,6 @@ class Api_WfsData extends ApiRouteBase {// TODO: extends Api_WfsBase which exten
|
|
|
$this->setLogger($wfsLogger);
|
|
|
$this->reqDBG($request);
|
|
|
|
|
|
- /* TODO: return response xml document
|
|
|
- $responseDocument = null;
|
|
|
- try {
|
|
|
- $responseDocument = $this->wfsServerAction($request);
|
|
|
- } catch (Api_WfsException $e) {// TODO: create WfsException - http://schemas.opengis.net/wfs/1.0.0/OGC-exception.xsd
|
|
|
- //} catch (Exception $e) {// TODO: create WfsException - http://schemas.opengis.net/wfs/1.0.0/OGC-exception.xsd
|
|
|
- $responseDocument = $this->wfsExceptionAction($request, $e);
|
|
|
- }
|
|
|
- return $responseDocument;
|
|
|
- */
|
|
|
-
|
|
|
if (empty($request->segments)) {
|
|
|
//$this->mainWpsAction($request);// show list of posible data source
|
|
|
throw new HttpException("Bad Request", 400);
|
|
|
@@ -41,13 +30,10 @@ class Api_WfsData extends ApiRouteBase {// TODO: extends Api_WfsBase which exten
|
|
|
try {
|
|
|
$this->dataSourceAction($request);
|
|
|
} catch (Api_WfsException $e) {
|
|
|
- $responseDocument = $this->wfsExceptionAction($e);
|
|
|
- header('Content-type: application/xml');
|
|
|
- echo $responseDocument;
|
|
|
+ $e->sendResponseXml();
|
|
|
} catch (Exception $e) {
|
|
|
- $responseDocument = $this->wfsExceptionAction($e);
|
|
|
- header('Content-type: application/xml');
|
|
|
- echo $responseDocument;
|
|
|
+ $wfsException = new Api_WfsException($e->getMessage(), $e->getCode(), $e);
|
|
|
+ $wfsException->sendResponseXml();
|
|
|
}
|
|
|
$this->DBG("dataSourceAction() END", __LINE__);
|
|
|
}
|
|
|
@@ -59,22 +45,6 @@ class Api_WfsData extends ApiRouteBase {// TODO: extends Api_WfsBase which exten
|
|
|
public function wfsServerAction($request) {
|
|
|
}
|
|
|
|
|
|
- public function wfsExceptionAction($e) {
|
|
|
- $dom = new DOMDocument('1.0', 'utf-8');
|
|
|
- $dom->formatOutput = true;
|
|
|
- $dom->preserveWhiteSpace = false;
|
|
|
- $rootNode = $dom->createElementNS('http://www.opengis.net/ogc', 'ServiceExceptionReport');
|
|
|
- $dom->appendChild($rootNode);
|
|
|
- $rootNode->setAttributeNS('http://www.w3.org/2000/xmlns/', 'xmlns:xsi', 'http://www.w3.org/2001/XMLSchema-instance');
|
|
|
- $rootNode->setAttributeNS('http://www.w3.org/2001/XMLSchema-instance', 'schemaLocation', 'http://www.opengis.net/ogc http://schemas.opengis.net/wfs/1.0.0/OGC-exception.xsd');
|
|
|
- $rootNode->setAttribute('version', '1.2.0');
|
|
|
-
|
|
|
- $srvExNode = $dom->createElement('ServiceException', $e->getMessage());
|
|
|
- $rootNode->appendChild($srvExNode);
|
|
|
-
|
|
|
- return $dom->saveXML();
|
|
|
- }
|
|
|
-
|
|
|
public function dataSourceAction($request) {
|
|
|
$document = '';
|
|
|
//$userAcl = User::getAcl();
|