public DescribeSensorResponseDocument describeSensor(DescribeSensorDocument describeSensor) throws OwsException, OwsExceptionReport { LOGGER.debug("describeSensor: {}" + describeSensor.xmlText(XmlHelper.DEBUG_OPTIONS)); checkSupportingSwesRequestExtensions(describeSensor.getExtensibleRequest()); checkForValidParameters(describeSensor.getDescribeSensor()); String procedure = describeSensor.getDescribeSensor().getProcedure(); String format = describeSensor.getDescribeSensor().getProcedureDescriptionFormat(); DescribeSensorResponseDocument response = DescribeSensorResponseDocument.Factory.newInstance(); DescribeSensorResponseType describeSensorResponse = response.addNewDescribeSensorResponse(); describeSensorResponse.setProcedureDescriptionFormat(format); SensorPlugin sensorPlugin = getSensorInstance(procedure); SensorConfiguration sensorConfiguration = sensorPlugin.getSensorConfiguration(); SensorDescriptionDownloadHandler downloadHandler = new SensorDescriptionDownloadHandler(sensorConfiguration); downloadHandler.addSensorDescriptions(describeSensorResponse, format); return response; }
@Override public String buildDescribeSensorRequest(final ParameterContainer parameters) throws OXFException { final DescribeSensorDocument descSensorDoc = DescribeSensorDocument.Factory.newInstance(); final DescribeSensorType descSensor = descSensorDoc.addNewDescribeSensor(); // set required elements: descSensor.setService((String) parameters.getParameterShellWithServiceSidedName(SERVICE) .getSpecifiedValue()); descSensor.setVersion((String) parameters.getParameterShellWithServiceSidedName(VERSION) .getSpecifiedValue()); processProcedure(descSensor, getShellForServerParameter(parameters, DESCRIBE_SENSOR_PROCEDURE_PARAMETER)); processProcedureDescriptionFormat(descSensor, getShellForServerParameter(parameters, DESCRIBE_SENSOR_PROCEDURE_DESCRIPTION_FORMAT)); doLaxRequestValidation(descSensorDoc); return descSensorDoc.xmlText(XmlUtil.FAST); }