private void processResponseFormat(final GetObservationType xbGetObs, final ParameterShell shell) { if (shell != null) { xbGetObs.setResponseFormat((String) shell.getSpecifiedValue()); } }
private void addObservableProperties(final ParameterContainer parameters, final InsertSensorType xbInsertSensorType) { // add observable property final ParameterShell observedPropertyPS = parameters.getParameterShellWithServiceSidedName(REGISTER_SENSOR_OBSERVED_PROPERTY_PARAMETER); if (observedPropertyPS != null) { if (observedPropertyPS.hasSingleSpecifiedValue()) { xbInsertSensorType.addObservableProperty((String) observedPropertyPS.getSpecifiedValue()); } else { final String[] properties = observedPropertyPS.getSpecifiedTypedValueArray(String[].class); for (final String property : properties) { xbInsertSensorType.addObservableProperty(property); } } } }
/** * @return set of parameters * @throws OXFException */ public Map<String, Object> getParameters() throws OXFException { // preparing multiple occurrence of observed property parameter for SOSWrapper final String[] observedProperties = observedPropertyList.toArray(new String[observedPropertyList.size()]); final Parameter observedPropertyParameter = new Parameter(GET_OBSERVATION_OBSERVED_PROPERTY_PARAMETER, true, new StringValueDomain(observedProperties), GET_OBSERVATION_OBSERVED_PROPERTY_PARAMETER); final ParameterShell observedPropertiesPs = new ParameterShell(observedPropertyParameter, observedProperties); parameters.put(GET_OBSERVATION_OBSERVED_PROPERTY_PARAMETER, observedPropertiesPs); // preparing multiple occurrence of event time parameter for SOSWrapper if (!eventTimeList.isEmpty()) { final String[] eventTimes = eventTimeList.toArray(new String[eventTimeList.size()]); final Parameter eventTimeParameter = new Parameter(GET_OBSERVATION_EVENT_TIME_PARAMETER, true, new StringValueDomain(eventTimes), GET_OBSERVATION_EVENT_TIME_PARAMETER); final ParameterShell eventTimesPs = new ParameterShell(eventTimeParameter, eventTimes); parameters.put(GET_OBSERVATION_EVENT_TIME_PARAMETER, eventTimesPs); } // preparing multiple occurrence of procedure parameter for SOSWrapper if (!procedureList.isEmpty()) { final String[] procedures = procedureList.toArray(new String[procedureList.size()]); final Parameter procedureParameter = new Parameter(GET_OBSERVATION_PROCEDURE_PARAMETER, true, new StringValueDomain(procedures), GET_OBSERVATION_PROCEDURE_PARAMETER); final ParameterShell proceduresPs = new ParameterShell(procedureParameter, procedures); parameters.put(GET_OBSERVATION_PROCEDURE_PARAMETER, proceduresPs); } return parameters; }
protected void processFeatureOfInterest(final GetObservationType xb_getObs, final ParameterShell shell) { if (shell == null) { return; // optional parameter } final ParameterShell foiParamShell = shell; if (foiParamShell.hasMultipleSpecifiedValues()) { final String[] fois = foiParamShell.getSpecifiedTypedValueArray(String[].class); xb_getObs.setFeatureOfInterestArray(fois); } else { final Object foi = foiParamShell.getSpecifiedValue(); xb_getObs.addNewFeatureOfInterest().setStringValue((String) foi); } }
/** * */ @Override public String toString() { final StringBuilder sb = new StringBuilder(); sb.append("ParameterContainer:\n["); for (final ParameterShell ps : parameterShells) { sb.append("ServiceSidedName: "); sb.append(ps.getParameter().getServiceSidedName()); sb.append(" CommonName: "); sb.append(ps.getParameter().getCommonName()); sb.append(" Value: "); sb.append(ps.getSpecifiedValue()); sb.append("\n"); } sb.append("]"); return sb.toString(); }
if (observedPropertyPS.hasMultipleSpecifiedValues()) { observedProperties = observedPropertyPS.getSpecifiedTypedValueArray(String[].class); else if (observedPropertyPS.hasSingleSpecifiedValue()) { observedProperties = new String[] {(String) observedPropertyPS.getSpecifiedValue()};
/** * @return the specifiedValueArray * @deprecated * Use {@link #getSpecifiedTypedValueArray(Class<T[]>)} instead, * e.g. <tt>getSpecifiedTypedValueArray(String[].class)</tt>. */ @Deprecated public Object[] getSpecifiedValueArray() { return getSpecifiedTypedValueArray(Object[].class); }
xb_getObs.setService((String) parameters.getParameterShellWithServiceSidedName(GET_OBSERVATION_SERVICE_PARAMETER).getSpecifiedValue()); xb_getObs.setVersion((String) parameters.getParameterShellWithServiceSidedName(GET_OBSERVATION_VERSION_PARAMETER).getSpecifiedValue()); xb_getObs.setOffering((String) parameters.getParameterShellWithServiceSidedName(GET_OBSERVATION_OFFERING_PARAMETER).getSpecifiedValue()); xb_getObs.setResponseFormat((String) parameters.getParameterShellWithServiceSidedName(GET_OBSERVATION_RESPONSE_FORMAT_PARAMETER).getSpecifiedValue()); String[] observedProperties = observedPropertyPS.getSpecifiedTypedValueArray(String[].class); xb_getObs.setObservedPropertyArray(observedProperties); Object timeParamValue = parameters.getParameterShellWithServiceSidedName(GET_OBSERVATION_EVENT_TIME_PARAMETER).getSpecifiedValue(); if (timeParamValue instanceof ITime) { specifiedTime = (ITime) timeParamValue; xb_getObs.setProcedureArray(proceduresShell.getSpecifiedTypedValueArray(String[].class)); xb_getObs.addNewFeatureOfInterest().setObjectIDArray(featuresShell.getSpecifiedTypedValueArray(String[].class)); String filter = (String) parameters.getParameterShellWithServiceSidedName(GET_OBSERVATION_RESULT_PARAMETER).getSpecifiedValue(); xb_getObs.setResultModel((new QName("http://www.opengis.net/om/1.0", // http://www.opengis.net/sos/0.0 (String) parameters.getParameterShellWithServiceSidedName( GET_OBSERVATION_RESULT_MODEL_PARAMETER).getSpecifiedValue()))); ResponseModeType.Enum responseModeEnum = ResponseModeType.Enum.forString((String) parameters.getParameterShellWithServiceSidedName(GET_OBSERVATION_RESPONSE_MODE_PARAMETER).getSpecifiedValue()); xb_getObs.setResponseMode(responseModeEnum);
String oldSRS = (String) parameterContainer.getParameterShellWithCommonName(Parameter.COMMON_NAME_SRS).getSpecifiedValue(); new StringValueDomain(contextBBox.getSRS()), Parameter.COMMON_NAME_SRS); parameterContainer.addParameterShell(new ParameterShell(srsParam, contextBBox.getSRS())); refreshed = true; BoundingBox oldBBox = (BoundingBox) parameterContainer.getParameterShellWithCommonName(Parameter.COMMON_NAME_BBOX).getSpecifiedValue(); contextBBox.asCommonCapabilitiesBoundingBox(), Parameter.COMMON_NAME_BBOX); parameterContainer.addParameterShell(new ParameterShell(bboxParam, contextBBox.asCommonCapabilitiesBoundingBox())); refreshed = true; if (parameterContainer.getParameterShellWithCommonName(Parameter.COMMON_NAME_HEIGHT).getSpecifiedValue() != null) { oldHeight = (Integer) parameterContainer.getParameterShellWithCommonName(Parameter.COMMON_NAME_HEIGHT).getSpecifiedValue(); new IntegerRangeValueDomain(0, Integer.MAX_VALUE), Parameter.COMMON_NAME_HEIGHT); parameterContainer.addParameterShell(new ParameterShell(heightParam, window.getHeight())); refreshed = true; if (parameterContainer.getParameterShellWithCommonName(Parameter.COMMON_NAME_WIDTH).getSpecifiedValue() != null) { oldWidth = (Integer) parameterContainer.getParameterShellWithCommonName(Parameter.COMMON_NAME_WIDTH).getSpecifiedValue(); new IntegerRangeValueDomain(0, Integer.MAX_VALUE), Parameter.COMMON_NAME_WIDTH); parameterContainer.addParameterShell(new ParameterShell(widthParam, window.getWidth()));
public JFreeChart renderChart(OXFFeatureCollection observationCollection, ParameterContainer paramCon) { ParameterShell observedPropertyPS = paramCon.getParameterShellWithServiceSidedName("observedProperty"); if (observedPropertyPS.hasMultipleSpecifiedValues()) { String[] observedProperties =observedPropertyPS.getSpecifiedTypedValueArray(String[].class);; observedPropertyX = observedProperties[0]; observedPropertyY = observedProperties[1]; } else { throw new IllegalArgumentException("2 observedProperties needed."); } String[] foiIdArray = paramCon.getParameterShellWithServiceSidedName("featureOfInterest").getSpecifiedTypedValueArray(String[].class); ObservationSeriesCollection tupleFinder = new ObservationSeriesCollection(observationCollection, foiIdArray, new String[] {observedPropertyX, observedPropertyY}, true); return drawChart(tupleFinder.getAllTuples()); }
private boolean isBindingParameterSpecified(final ParameterContainer parameters) { return parameters.getParameterShellWithCommonName(ISOSRequestBuilder.BINDING) != null && parameters.getParameterShellWithCommonName(ISOSRequestBuilder.BINDING).hasSingleSpecifiedValue() && parameters.getParameterShellWithCommonName(ISOSRequestBuilder.BINDING) .getSpecifiedValue() instanceof String; }
private boolean isParameterNameEqual(final String parameterName, final ParameterShell shell) { return shell.getParameter().getCommonName().equalsIgnoreCase(parameterName) || shell.getParameter().getServiceSidedName().equalsIgnoreCase(parameterName); }
/** * @return true if the parameter is associated with just one specified value. */ public boolean hasSingleSpecifiedValue() { return !hasMultipleSpecifiedValues(); }
if (observedPropertyPS.hasMultipleSpecifiedValues()) { observedProperties = observedPropertyPS.getSpecifiedTypedValueArray(String[].class); else if (observedPropertyPS.hasSingleSpecifiedValue()) { observedProperties = new String[] {(String) observedPropertyPS.getSpecifiedValue()};
String resultModel = (String)paramCon.getParameterShellWithServiceSidedName("resultModel").getSpecifiedValue(); if ( ! isResultModelSupported(resultModel)) { throw new OXFException("Renderer does not support the specified resultModel '" + resultModel + "'"); if (observedPropertyPS.hasMultipleSpecifiedValues()) { observedProperties = observedPropertyPS.getSpecifiedTypedValueArray(String[].class);
private String[] getArrayValueFor(String commonName, ParameterContainer parameters) { ParameterShell value = parameters.getParameterShellWithCommonName(commonName); if (value != null && value.getSpecifiedTypedValueArray(String[].class) != null) { return value.getSpecifiedTypedValueArray(String[].class); } return null; }
xb_format.setStringValue((String) parameterContainer.getParameterShellWithCommonName(Parameter.COMMON_NAME_FORMAT).getSpecifiedValue()); builder.append("<DimensionList>"); builder.append("<Dimension name=\"time\">"); builder.append(parameterContainer.getParameterShellWithCommonName(Parameter.COMMON_NAME_TIME).getSpecifiedValue()); builder.append("</Dimension>"); if (ps.getParameter().getCommonName() == null) { if (ps.getSpecifiedValue() instanceof IGenericParameterValue) { if (firstGenericParam) { builder.append("<GenericParameterList>"); hasGenericParams = true; IGenericParameterValue genericParam = (IGenericParameterValue) ps.getSpecifiedValue(); genericParam.writeTo(this);
if (observedPropertyPS.hasMultipleSpecifiedValues()) { String[] observedProperties = observedPropertyPS.getSpecifiedTypedValueArray(String[].class); observedProperty = observedProperties[0];
/** * @param serviceSidedName * @return the ParameterShell whose parameter has the specified serviceSidedName (ignoring case). If there * isn't such a ParameterShell <code>null</code> will be returned. */ public ParameterShell getParameterShellWithServiceSidedName(final String serviceSidedName) { for (final ParameterShell ps : parameterShells) { if (ps.getParameter().getServiceSidedName() != null && ps.getParameter().getServiceSidedName().equalsIgnoreCase(serviceSidedName)) { return ps; } } return null; }
/** * @param commonName the common parameter name. * @param parameters the parameter container. * @return the parameter's specificValue if set, <code>null</code> otherwise. */ private String getStringValueFor(String commonName, ParameterContainer parameters) { ParameterShell value = parameters.getParameterShellWithCommonName(commonName); return value == null ? null : (String) value.getSpecifiedValue(); }