use of org.n52.shetland.ogc.gml.ReferenceType in project arctic-sea by 52North.
the class ParameterHolder method addSpatialFilteringProfileParameter.
/**
* Add sampling geometry to observation
*
* @param samplingGeometry The sampling geometry to set
*
* @return this
*/
public ParameterHolder addSpatialFilteringProfileParameter(Geometry samplingGeometry) {
final NamedValue<Geometry> namedValue = new NamedValue<>();
namedValue.setName(new ReferenceType(OmConstants.PARAM_NAME_SAMPLING_GEOMETRY));
namedValue.setValue(new GeometryValue(samplingGeometry));
addParameter(namedValue);
return this;
}
use of org.n52.shetland.ogc.gml.ReferenceType in project arctic-sea by 52North.
the class OmObservationTest method should_have_SpatialFilteringProfileParameter.
@Test
public final void should_have_SpatialFilteringProfileParameter() throws OwsExceptionReport, DecodingException {
OmObservation omObservation = new OmObservation();
NamedValue<Geometry> namedValue = new NamedValue<>();
namedValue.setName(new ReferenceType(OmConstants.PARAM_NAME_SAMPLING_GEOMETRY));
GeometryFactory fac = new GeometryFactory(new PrecisionModel(PrecisionModel.FLOATING), 4326);
namedValue.setValue(new GeometryValue(fac.createPoint(new Coordinate(34.5, 76.4))));
// test no parameter is set
assertFalse(omObservation.isSetParameter());
assertFalse(omObservation.isSetSpatialFilteringProfileParameter());
omObservation.addParameter(namedValue);
// test with set SpatialFilteringProfile parameter
assertTrue(omObservation.isSetParameter());
assertTrue(omObservation.isSetSpatialFilteringProfileParameter());
assertThat(omObservation.getSpatialFilteringProfileParameter(), is(equalTo(namedValue)));
}
use of org.n52.shetland.ogc.gml.ReferenceType in project arctic-sea by 52North.
the class AbstractGmlDecoderv321 method parseNamedValueType.
protected NamedValue<?> parseNamedValueType(NamedValuePropertyType namedValueProperty) throws DecodingException {
if (namedValueProperty.isSetNamedValue()) {
NamedValueType namedValue = namedValueProperty.getNamedValue();
NamedValue<?> sosNamedValue = parseNamedValueValue(namedValue.getValue());
org.n52.shetland.ogc.gml.ReferenceType referenceType = (org.n52.shetland.ogc.gml.ReferenceType) decodeXmlObject(namedValue.getName());
sosNamedValue.setName(referenceType);
return sosNamedValue;
} else if (namedValueProperty.isSetHref()) {
NamedValue<org.n52.shetland.ogc.gml.ReferenceType> sosNamedValue = new NamedValue<>();
org.n52.shetland.ogc.gml.ReferenceType referenceType = new org.n52.shetland.ogc.gml.ReferenceType(namedValueProperty.getHref());
if (namedValueProperty.isSetTitle()) {
referenceType.setTitle(namedValueProperty.getTitle());
}
sosNamedValue.setName(referenceType);
return sosNamedValue;
} else {
throw new UnsupportedDecoderInputException(this, namedValueProperty);
}
}
use of org.n52.shetland.ogc.gml.ReferenceType in project arctic-sea by 52North.
the class ObservationEncoder method encodeReferenceValue.
private JsonNode encodeReferenceValue(ReferenceValue value) {
ReferenceType ref = value.getValue();
ObjectNode node = nodeFactory().objectNode();
node.put(JSONConstants.HREF, ref.getHref());
if (ref.isSetRole()) {
node.put(JSONConstants.ROLE, ref.getRole());
}
if (ref.isSetTitle()) {
node.put(JSONConstants.TITLE, ref.getTitle());
}
return node;
}
use of org.n52.shetland.ogc.gml.ReferenceType in project arctic-sea by 52North.
the class SpecimenDecoderv20 method parseSpatialSamplingFeature.
private AbstractFeature parseSpatialSamplingFeature(final SFSpecimenType sfst) throws DecodingException {
final SfSpecimen specimen = new SfSpecimen(null, sfst.getId());
// parse identifier, names, description
parseAbstractFeatureType(sfst, specimen);
specimen.setSampledFeatures(getSampledFeatures(sfst.getSampledFeatureArray()));
specimen.setXml(getXmlDescription(sfst));
if (sfst.getParameterArray() != null) {
specimen.setParameters(parseNamedValueTypeArray(sfst.getParameterArray()));
}
// TODO
sfst.getMaterialClass();
specimen.setMaterialClass((ReferenceType) decodeXmlElement(sfst.getMaterialClass()));
specimen.setSamplingTime(getSamplingTime(sfst));
// samplingLocation
if (sfst.isSetSamplingLocation()) {
specimen.setSamplingLocation(getGeometry(sfst));
}
// sfst.getProcessingDetailsArray();
if (sfst.isSetSize()) {
specimen.setSize(getSize(sfst.getSize()));
}
// }
if (sfst.isSetSpecimenType()) {
specimen.setSpecimenType((ReferenceType) decodeXmlElement(sfst.getSpecimenType()));
}
return specimen;
}
Aggregations