├── .github └── workflows │ └── gradle_build.yml ├── .gitignore ├── .gitmodules ├── LICENSE ├── README.md ├── build.gradle ├── codetemplates.xml ├── common.gradle ├── dist ├── main │ ├── config.json │ ├── launch.bat │ ├── launch.sh │ └── logback.xml └── osgi │ ├── config.json │ ├── launch.bat │ ├── launch.sh │ └── logback.xml ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── lib-ogc ├── .gitignore ├── ogc-services-common │ ├── build.gradle │ └── src │ │ ├── main │ │ ├── java │ │ │ ├── net │ │ │ │ └── opengis │ │ │ │ │ ├── fes │ │ │ │ │ └── v20 │ │ │ │ │ │ ├── After.java │ │ │ │ │ │ ├── And.java │ │ │ │ │ │ ├── AnyInteracts.java │ │ │ │ │ │ ├── BBOX.java │ │ │ │ │ │ ├── Before.java │ │ │ │ │ │ ├── Begins.java │ │ │ │ │ │ ├── BegunBy.java │ │ │ │ │ │ ├── Beyond.java │ │ │ │ │ │ ├── BinaryComparisonOp.java │ │ │ │ │ │ ├── BinaryLogicOp.java │ │ │ │ │ │ ├── BinarySpatialOp.java │ │ │ │ │ │ ├── BinaryTemporalOp.java │ │ │ │ │ │ ├── ComparisonOperator.java │ │ │ │ │ │ ├── ComparisonOperatorName.java │ │ │ │ │ │ ├── ComparisonOps.java │ │ │ │ │ │ ├── Conformance.java │ │ │ │ │ │ ├── Contains.java │ │ │ │ │ │ ├── Crosses.java │ │ │ │ │ │ ├── DWithin.java │ │ │ │ │ │ ├── Disjoint.java │ │ │ │ │ │ ├── DistanceBuffer.java │ │ │ │ │ │ ├── During.java │ │ │ │ │ │ ├── EndedBy.java │ │ │ │ │ │ ├── Ends.java │ │ │ │ │ │ ├── Equals.java │ │ │ │ │ │ ├── Expression.java │ │ │ │ │ │ ├── Factory.java │ │ │ │ │ │ ├── FilterCapabilities.java │ │ │ │ │ │ ├── FilterPredicate.java │ │ │ │ │ │ ├── GMLExpression.java │ │ │ │ │ │ ├── Intersects.java │ │ │ │ │ │ ├── Literal.java │ │ │ │ │ │ ├── LogicOps.java │ │ │ │ │ │ ├── LogicOpsElement.java │ │ │ │ │ │ ├── LowerBoundary.java │ │ │ │ │ │ ├── MatchAction.java │ │ │ │ │ │ ├── Measure.java │ │ │ │ │ │ ├── Meets.java │ │ │ │ │ │ ├── MetBy.java │ │ │ │ │ │ ├── Not.java │ │ │ │ │ │ ├── Or.java │ │ │ │ │ │ ├── OverlappedBy.java │ │ │ │ │ │ ├── Overlaps.java │ │ │ │ │ │ ├── PropertyIsBetween.java │ │ │ │ │ │ ├── PropertyIsEqualTo.java │ │ │ │ │ │ ├── PropertyIsGreaterThan.java │ │ │ │ │ │ ├── PropertyIsGreaterThanOrEqualTo.java │ │ │ │ │ │ ├── PropertyIsLessThan.java │ │ │ │ │ │ ├── PropertyIsLessThanOrEqualTo.java │ │ │ │ │ │ ├── PropertyIsLike.java │ │ │ │ │ │ ├── PropertyIsNil.java │ │ │ │ │ │ ├── PropertyIsNotEqualTo.java │ │ │ │ │ │ ├── PropertyIsNull.java │ │ │ │ │ │ ├── ScalarCapabilities.java │ │ │ │ │ │ ├── SpatialCapabilities.java │ │ │ │ │ │ ├── SpatialOperator.java │ │ │ │ │ │ ├── SpatialOperatorName.java │ │ │ │ │ │ ├── SpatialOps.java │ │ │ │ │ │ ├── TContains.java │ │ │ │ │ │ ├── TEquals.java │ │ │ │ │ │ ├── TOverlaps.java │ │ │ │ │ │ ├── TemporalCapabilities.java │ │ │ │ │ │ ├── TemporalOperator.java │ │ │ │ │ │ ├── TemporalOperatorName.java │ │ │ │ │ │ ├── TemporalOps.java │ │ │ │ │ │ ├── Touches.java │ │ │ │ │ │ ├── UnaryLogicOp.java │ │ │ │ │ │ ├── UpperBoundary.java │ │ │ │ │ │ ├── ValueReference.java │ │ │ │ │ │ ├── VersionActionTokens.java │ │ │ │ │ │ ├── Within.java │ │ │ │ │ │ ├── bind │ │ │ │ │ │ └── XMLStreamBindings.java │ │ │ │ │ │ └── impl │ │ │ │ │ │ ├── AfterImpl.java │ │ │ │ │ │ ├── AndImpl.java │ │ │ │ │ │ ├── AnyInteractsImpl.java │ │ │ │ │ │ ├── BBOXImpl.java │ │ │ │ │ │ ├── BeforeImpl.java │ │ │ │ │ │ ├── BeginsImpl.java │ │ │ │ │ │ ├── BegunByImpl.java │ │ │ │ │ │ ├── BeyondImpl.java │ │ │ │ │ │ ├── BinaryComparisonOpImpl.java │ │ │ │ │ │ ├── BinaryLogicOpImpl.java │ │ │ │ │ │ ├── BinarySpatialOpImpl.java │ │ │ │ │ │ ├── BinaryTemporalOpImpl.java │ │ │ │ │ │ ├── ComparisonOperatorImpl.java │ │ │ │ │ │ ├── ConformanceImpl.java │ │ │ │ │ │ ├── ContainsImpl.java │ │ │ │ │ │ ├── CrossesImpl.java │ │ │ │ │ │ ├── DWithinImpl.java │ │ │ │ │ │ ├── DisjointImpl.java │ │ │ │ │ │ ├── DistanceBufferImpl.java │ │ │ │ │ │ ├── DuringImpl.java │ │ │ │ │ │ ├── EndedByImpl.java │ │ │ │ │ │ ├── EndsImpl.java │ │ │ │ │ │ ├── EqualsImpl.java │ │ │ │ │ │ ├── FESFactory.java │ │ │ │ │ │ ├── FilterCapabilitiesImpl.java │ │ │ │ │ │ ├── GMLExpressionImpl.java │ │ │ │ │ │ ├── IntersectsImpl.java │ │ │ │ │ │ ├── LiteralImpl.java │ │ │ │ │ │ ├── LogicOpsImpl.java │ │ │ │ │ │ ├── LowerBoundaryImpl.java │ │ │ │ │ │ ├── MeasureImpl.java │ │ │ │ │ │ ├── MeetsImpl.java │ │ │ │ │ │ ├── MetByImpl.java │ │ │ │ │ │ ├── NotImpl.java │ │ │ │ │ │ ├── OrImpl.java │ │ │ │ │ │ ├── OverlappedByImpl.java │ │ │ │ │ │ ├── OverlapsImpl.java │ │ │ │ │ │ ├── PropertyIsBetweenImpl.java │ │ │ │ │ │ ├── PropertyIsEqualToImpl.java │ │ │ │ │ │ ├── PropertyIsGreaterThanImpl.java │ │ │ │ │ │ ├── PropertyIsGreaterThanOrEqualToImpl.java │ │ │ │ │ │ ├── PropertyIsLessThanImpl.java │ │ │ │ │ │ ├── PropertyIsLessThanOrEqualToImpl.java │ │ │ │ │ │ ├── PropertyIsLikeImpl.java │ │ │ │ │ │ ├── PropertyIsNilImpl.java │ │ │ │ │ │ ├── PropertyIsNotEqualToImpl.java │ │ │ │ │ │ ├── PropertyIsNullImpl.java │ │ │ │ │ │ ├── ScalarCapabilitiesImpl.java │ │ │ │ │ │ ├── SpatialCapabilitiesImpl.java │ │ │ │ │ │ ├── SpatialOperatorImpl.java │ │ │ │ │ │ ├── TContainsImpl.java │ │ │ │ │ │ ├── TEqualsImpl.java │ │ │ │ │ │ ├── TOverlapsImpl.java │ │ │ │ │ │ ├── TemporalCapabilitiesImpl.java │ │ │ │ │ │ ├── TemporalOperatorImpl.java │ │ │ │ │ │ ├── TouchesImpl.java │ │ │ │ │ │ ├── UnaryLogicOpImpl.java │ │ │ │ │ │ ├── UpperBoundaryImpl.java │ │ │ │ │ │ ├── ValueReferenceImpl.java │ │ │ │ │ │ └── WithinImpl.java │ │ │ │ │ └── ows │ │ │ │ │ └── v11 │ │ │ │ │ ├── Domain.java │ │ │ │ │ ├── DomainMetadata.java │ │ │ │ │ ├── Metadata.java │ │ │ │ │ ├── Range.java │ │ │ │ │ ├── UnNamedDomain.java │ │ │ │ │ └── impl │ │ │ │ │ ├── DomainImpl.java │ │ │ │ │ ├── DomainMetadataImpl.java │ │ │ │ │ ├── MetadataImpl.java │ │ │ │ │ ├── RangeImpl.java │ │ │ │ │ └── UnNamedDomainImpl.java │ │ │ └── org │ │ │ │ └── vast │ │ │ │ └── ows │ │ │ │ ├── AbstractCapabilitiesReader.java │ │ │ │ ├── AbstractRequestReader.java │ │ │ │ ├── AbstractRequestWriter.java │ │ │ │ ├── AbstractResponseReader.java │ │ │ │ ├── AbstractResponseWriter.java │ │ │ │ ├── GetCapabilitiesReader.java │ │ │ │ ├── GetCapabilitiesRequest.java │ │ │ │ ├── GetCapabilitiesWriter.java │ │ │ │ ├── OWSBindingProvider.java │ │ │ │ ├── OWSCapabilitiesReaderV0.java │ │ │ │ ├── OWSCapabilitiesReaderV11.java │ │ │ │ ├── OWSCapabilitiesWriterV0.java │ │ │ │ ├── OWSCapabilitiesWriterV11.java │ │ │ │ ├── OWSCommonReaderV11.java │ │ │ │ ├── OWSCommonUtils.java │ │ │ │ ├── OWSCommonWriterV11.java │ │ │ │ ├── OWSException.java │ │ │ │ ├── OWSExceptionReader.java │ │ │ │ ├── OWSExceptionReport.java │ │ │ │ ├── OWSExceptionWriter.java │ │ │ │ ├── OWSIdentification.java │ │ │ │ ├── OWSLayerCapabilities.java │ │ │ │ ├── OWSNotificationService.java │ │ │ │ ├── OWSReference.java │ │ │ │ ├── OWSReferenceGroup.java │ │ │ │ ├── OWSRequest.java │ │ │ │ ├── OWSRequestReader.java │ │ │ │ ├── OWSRequestWriter.java │ │ │ │ ├── OWSResponse.java │ │ │ │ ├── OWSResponseReader.java │ │ │ │ ├── OWSResponseWriter.java │ │ │ │ ├── OWSServiceCapabilities.java │ │ │ │ ├── OWSUtils.java │ │ │ │ ├── ParameterizedRequest.java │ │ │ │ ├── ParameterizedResponse.java │ │ │ │ ├── SweDataWriter.java │ │ │ │ ├── SweEncodedMessageProcessor.java │ │ │ │ ├── fes │ │ │ │ ├── FESRequestUtils.java │ │ │ │ ├── FESStaxBindings.java │ │ │ │ └── FESUtils.java │ │ │ │ ├── server │ │ │ │ └── OWSServlet.java │ │ │ │ └── util │ │ │ │ └── PostRequestFilter.java │ │ └── resources │ │ │ └── org │ │ │ └── vast │ │ │ └── ows │ │ │ └── OWSRegistry.xml │ │ └── test │ │ └── java │ │ └── org │ │ └── vast │ │ └── ows │ │ └── test │ │ └── OWSTestCase.java ├── ogc-services-sos │ ├── build.gradle │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── vast │ │ │ │ └── ows │ │ │ │ └── sos │ │ │ │ ├── DataStructFilter.java │ │ │ │ ├── GetFeatureOfInterestRequest.java │ │ │ │ ├── GetFeatureOfInterestResponse.java │ │ │ │ ├── GetFoiReaderV20.java │ │ │ │ ├── GetFoiWriterV20.java │ │ │ │ ├── GetObservationReaderV20.java │ │ │ │ ├── GetObservationRequest.java │ │ │ │ ├── GetObservationWriterV20.java │ │ │ │ ├── GetResultReaderV20.java │ │ │ │ ├── GetResultRequest.java │ │ │ │ ├── GetResultTemplateReaderV20.java │ │ │ │ ├── GetResultTemplateRequest.java │ │ │ │ ├── GetResultTemplateResponse.java │ │ │ │ ├── GetResultTemplateResponseReaderV20.java │ │ │ │ ├── GetResultTemplateResponseWriterV20.java │ │ │ │ ├── GetResultTemplateWriterV20.java │ │ │ │ ├── GetResultWriterV20.java │ │ │ │ ├── InsertObservationReaderV20.java │ │ │ │ ├── InsertObservationRequest.java │ │ │ │ ├── InsertObservationResponse.java │ │ │ │ ├── InsertObservationResponseReaderV20.java │ │ │ │ ├── InsertObservationResponseWriterV20.java │ │ │ │ ├── InsertObservationWriterV20.java │ │ │ │ ├── InsertResultReaderV20.java │ │ │ │ ├── InsertResultRequest.java │ │ │ │ ├── InsertResultResponse.java │ │ │ │ ├── InsertResultResponseReaderV20.java │ │ │ │ ├── InsertResultResponseWriterV20.java │ │ │ │ ├── InsertResultTemplateReaderV20.java │ │ │ │ ├── InsertResultTemplateRequest.java │ │ │ │ ├── InsertResultTemplateResponse.java │ │ │ │ ├── InsertResultTemplateResponseReaderV20.java │ │ │ │ ├── InsertResultTemplateResponseWriterV20.java │ │ │ │ ├── InsertResultTemplateWriterV20.java │ │ │ │ ├── InsertResultWriterV20.java │ │ │ │ ├── InsertSensorReaderV20.java │ │ │ │ ├── InsertSensorRequest.java │ │ │ │ ├── InsertSensorResponse.java │ │ │ │ ├── InsertSensorWriterV20.java │ │ │ │ ├── SOSCapabilitiesReaderV20.java │ │ │ │ ├── SOSCapabilitiesWriterV20.java │ │ │ │ ├── SOSException.java │ │ │ │ ├── SOSInsertionCapabilities.java │ │ │ │ ├── SOSOfferingCapabilities.java │ │ │ │ ├── SOSServiceCapabilities.java │ │ │ │ ├── SOSServlet.java │ │ │ │ └── SOSUtils.java │ │ └── resources │ │ │ ├── META-INF │ │ │ └── services │ │ │ │ └── org.vast.ows.OWSBindingProvider │ │ │ └── org │ │ │ └── vast │ │ │ └── ows │ │ │ └── sos │ │ │ └── SOSRegistry.xml │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── vast │ │ │ └── ows │ │ │ └── sos │ │ │ └── test │ │ │ ├── TestSosDescribeBindingsV20.java │ │ │ ├── TestSosGetCapsBindingsV20.java │ │ │ ├── TestSosGetObsBindingsV20.java │ │ │ ├── TestSosGetResultBindingsV20.java │ │ │ ├── TestSosInsertObsBindingsV20.java │ │ │ ├── TestSosInsertResultBindingsV20.java │ │ │ └── TestSosInsertSensorBindingsV20.java │ │ └── resources │ │ └── org │ │ └── vast │ │ └── ows │ │ └── sos │ │ └── test │ │ └── examples_v20 │ │ ├── _useCase_airbase_station_network │ │ ├── GetCapabilities.xml │ │ ├── GetCapabilities_response.xml │ │ ├── GetFeatureOfInterest.xml │ │ ├── GetFeatureOfInterest_Response.xml │ │ ├── GetObservation.xml │ │ └── GetObservation_response.xml │ │ ├── _useCase_homogeneous_sensor_network │ │ ├── GetCapabilities_response_homogeneous_sensor_network.xml │ │ ├── GetFeatureOfInterest.xml │ │ ├── GetFeatureOfInterest_Response.xml │ │ ├── GetObservation.xml │ │ └── GetObservation_response.xml │ │ ├── _useCase_mobile_sensors │ │ ├── GetCapabilities_response_mobile_sensor.xml │ │ ├── GetObservation.xml │ │ └── GetObservation_response.xml │ │ ├── core │ │ ├── DescribeSensor1.xml │ │ ├── DescribeSensor1_response.xml │ │ ├── DescribeSensorWithTime.xml │ │ ├── Exception_ResponseExceedsSizeLimit.xml │ │ ├── GetCapabilities1.xml │ │ ├── GetCapabilities1_response.xml │ │ ├── GetObservation1_obsProps.xml │ │ ├── GetObservation1_obsProps_response.xml │ │ ├── GetObservation2_obsProps_Procedure.xml │ │ ├── GetObservation2_obsProps_Procedure_response.xml │ │ ├── GetObservation3_foiIDFilter.xml │ │ ├── GetObservation3_foiIDFilter_response.xml │ │ ├── GetObservation4_spatialFilter.xml │ │ ├── GetObservation4_spatialFilter_response.xml │ │ └── GetObservationKVP.txt │ │ ├── enhancedOperations │ │ ├── GetFOI1.xml │ │ ├── GetFOI1_response.xml │ │ ├── GetFOI2.xml │ │ ├── GetFOI2_response.xml │ │ ├── GetFOI3.xml │ │ ├── GetFOI3_response.xml │ │ ├── GetObservationById.xml │ │ └── GetObservationById_response.xml │ │ ├── resultHandling │ │ ├── GetResult1.xml │ │ ├── GetResult1_response.xml │ │ ├── GetResult1_resultingDataArray.xml │ │ ├── GetResult2.xml │ │ ├── GetResult3.xml │ │ ├── GetResultKVP.txt │ │ ├── GetResultTemplate1.xml │ │ ├── GetResultTemplate1_response.xml │ │ ├── GetResultTemplateKVP.txt │ │ ├── InsertResult1.xml │ │ ├── InsertResult1_response.xml │ │ ├── InsertResultTemplate1.xml │ │ └── InsertResultTemplate1_response.xml │ │ ├── spatialFilteringProfile │ │ ├── GetObservation1_spatialFilteringProfile.xml │ │ └── GetObservation1_spatialFilteringProfile_response.xml │ │ └── transactional │ │ ├── DeleteSensor1.xml │ │ ├── DeleteSensor1_response.xml │ │ ├── InsertObservation1.xml │ │ ├── InsertObservation1_response.xml │ │ ├── InsertSensor1.xml │ │ ├── InsertSensor1_response.xml │ │ ├── UpdateSensorDescription1.xml │ │ └── UpdateSensorDescription1_response.xml ├── ogc-services-sps │ ├── build.gradle │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── vast │ │ │ │ └── ows │ │ │ │ └── sps │ │ │ │ ├── Alternative.java │ │ │ │ ├── CancelRequest.java │ │ │ │ ├── CancelRequestReaderV20.java │ │ │ │ ├── CancelRequestWriterV20.java │ │ │ │ ├── CancelResponse.java │ │ │ │ ├── ConfirmRequest.java │ │ │ │ ├── ConfirmRequestReaderV20.java │ │ │ │ ├── ConfirmRequestWriterV20.java │ │ │ │ ├── ConfirmResponse.java │ │ │ │ ├── ConnectTaskingReaderV20.java │ │ │ │ ├── ConnectTaskingRequest.java │ │ │ │ ├── ConnectTaskingWriterV20.java │ │ │ │ ├── DescribeResultAccessReference.java │ │ │ │ ├── DescribeResultAccessRequest.java │ │ │ │ ├── DescribeResultAccessRequestReaderV20.java │ │ │ │ ├── DescribeResultAccessRequestWriterV20.java │ │ │ │ ├── DescribeResultAccessResponse.java │ │ │ │ ├── DescribeResultAccessResponseReaderV20.java │ │ │ │ ├── DescribeResultAccessResponseWriterV20.java │ │ │ │ ├── DescribeTaskingRequest.java │ │ │ │ ├── DescribeTaskingRequestReaderV20.java │ │ │ │ ├── DescribeTaskingRequestWriterV20.java │ │ │ │ ├── DescribeTaskingResponse.java │ │ │ │ ├── DescribeTaskingResponseReaderV20.java │ │ │ │ ├── DescribeTaskingResponseWriterV20.java │ │ │ │ ├── DirectTaskingReaderV20.java │ │ │ │ ├── DirectTaskingRequest.java │ │ │ │ ├── DirectTaskingResponse.java │ │ │ │ ├── DirectTaskingWriterV20.java │ │ │ │ ├── FeasibilityReport.java │ │ │ │ ├── GetFeasibilityRequest.java │ │ │ │ ├── GetFeasibilityRequestReaderV20.java │ │ │ │ ├── GetFeasibilityRequestWriterV20.java │ │ │ │ ├── GetFeasibilityResponse.java │ │ │ │ ├── GetFeasibilityResponseReaderV20.java │ │ │ │ ├── GetFeasibilityResponseWriterV20.java │ │ │ │ ├── GetStatusRequest.java │ │ │ │ ├── GetStatusRequestReaderV20.java │ │ │ │ ├── GetStatusRequestWriterV20.java │ │ │ │ ├── GetStatusResponse.java │ │ │ │ ├── GetStatusResponseReaderV20.java │ │ │ │ ├── GetStatusResponseWriterV20.java │ │ │ │ ├── InsertSensorReaderV20.java │ │ │ │ ├── InsertSensorRequest.java │ │ │ │ ├── InsertSensorResponse.java │ │ │ │ ├── InsertSensorWriterV20.java │ │ │ │ ├── InsertTaskingTemplateReaderV20.java │ │ │ │ ├── InsertTaskingTemplateRequest.java │ │ │ │ ├── InsertTaskingTemplateResponse.java │ │ │ │ ├── InsertTaskingTemplateResponseReaderV20.java │ │ │ │ ├── InsertTaskingTemplateResponseWriterV20.java │ │ │ │ ├── InsertTaskingTemplateWriterV20.java │ │ │ │ ├── ReservationReport.java │ │ │ │ ├── ReserveRequest.java │ │ │ │ ├── ReserveRequestReaderV20.java │ │ │ │ ├── ReserveRequestWriterV20.java │ │ │ │ ├── ReserveResponse.java │ │ │ │ ├── SPSCapabilitiesReaderV20.java │ │ │ │ ├── SPSCapabilitiesWriterV20.java │ │ │ │ ├── SPSCommonReaderV20.java │ │ │ │ ├── SPSCommonWriterV20.java │ │ │ │ ├── SPSException.java │ │ │ │ ├── SPSOfferingCapabilities.java │ │ │ │ ├── SPSServiceCapabilities.java │ │ │ │ ├── SPSUtils.java │ │ │ │ ├── StatusReport.java │ │ │ │ ├── SubmitRequest.java │ │ │ │ ├── SubmitRequestReaderV20.java │ │ │ │ ├── SubmitRequestWriterV20.java │ │ │ │ ├── SubmitResponse.java │ │ │ │ ├── Task.java │ │ │ │ ├── TaskingRequest.java │ │ │ │ ├── TaskingRequestReaderV20.java │ │ │ │ ├── TaskingRequestWriterV20.java │ │ │ │ ├── TaskingResponse.java │ │ │ │ ├── TaskingResponseReaderV20.java │ │ │ │ ├── TaskingResponseWriterV20.java │ │ │ │ ├── UpdateRequest.java │ │ │ │ ├── UpdateRequestReaderV20.java │ │ │ │ ├── UpdateRequestWriterV20.java │ │ │ │ └── UpdateResponse.java │ │ └── resources │ │ │ ├── META-INF │ │ │ └── services │ │ │ │ └── org.vast.ows.OWSBindingProvider │ │ │ └── org │ │ │ └── vast │ │ │ └── ows │ │ │ └── sps │ │ │ └── SPSRegistry.xml │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── vast │ │ │ └── ows │ │ │ └── sps │ │ │ └── test │ │ │ ├── SPSTestCase.java │ │ │ ├── TestSpsDirectTaskingBindingsV20.java │ │ │ ├── TestSpsGetCapsBindingsV20.java │ │ │ ├── TestSpsInsertSensorBindingsV20.java │ │ │ ├── TestSpsInsertTaskingBindingsV20.java │ │ │ └── TestSpsTaskingBindingsV20.java │ │ └── resources │ │ └── org │ │ └── vast │ │ └── ows │ │ └── sps │ │ └── test │ │ └── examples_v20 │ │ ├── DirectTasking1.xml │ │ ├── DirectTasking1_response.xml │ │ ├── spsCancel.xml │ │ ├── spsCancelResponse.xml │ │ ├── spsCapabilities.xml │ │ ├── spsCapabilities_SOAP.xml │ │ ├── spsConfirm.xml │ │ ├── spsConfirmResponse.xml │ │ ├── spsDescribeResultAccess.xml │ │ ├── spsDescribeResultAccessResponse_forProcedure.xml │ │ ├── spsDescribeResultAccessResponse_forTask_SOAP.xml │ │ ├── spsDescribeResultAccess_forTask_SOAP.xml │ │ ├── spsDescribeTasking.xml │ │ ├── spsDescribeTaskingResponse.xml │ │ ├── spsExampleService.wsdl │ │ ├── spsExampleService_withWSNotification.wsdl │ │ ├── spsExampleTopicSet.xml │ │ ├── spsException_InvalidParameterValue_SOAP12Fault.xml │ │ ├── spsException_InvalidRequest_SOAP12Fault.xml │ │ ├── spsException_StatusInformationExpired_SOAP12Fault.xml │ │ ├── spsGetCapabilities_SOAP.xml │ │ ├── spsGetFeasibility.xml │ │ ├── spsGetFeasibilityResponse.xml │ │ ├── spsGetStatus.xml │ │ ├── spsGetStatusResponse.xml │ │ ├── spsGetStatusResponse_forRequestWithSinceParameter.xml │ │ ├── spsGetStatusResponse_pendingUpdateAccepted.xml │ │ ├── spsGetStatusResponse_pendingUpdateExpired.xml │ │ ├── spsGetStatusResponse_reservationExpired.xml │ │ ├── spsGetStatus_pendingUpdate.xml │ │ ├── spsGetStatus_sinceParameter.xml │ │ ├── spsGetTask.xml │ │ ├── spsGetTaskResponse.xml │ │ ├── spsGetTaskResponse_taskCompleted.xml │ │ ├── spsNotification_DataPublished_SOAP12.xml │ │ ├── spsNotification_TaskCompleted_SOAP12.xml │ │ ├── spsNotification_TaskingRequestAccepted_SOAP12.xml │ │ ├── spsReserve.xml │ │ ├── spsReserveResponse.xml │ │ ├── spsSubmit.xml │ │ ├── spsSubmitNoOptionalChoice1.xml │ │ ├── spsSubmitNoOptionalChoice2.xml │ │ ├── spsSubmitResponse.xml │ │ ├── spsSubscribeResponse_task_SOAP12.xml │ │ ├── spsSubscribe_task_SOAP12.xml │ │ ├── spsTaskingParameters_forUpdates.xml │ │ ├── spsTopicNamespace.xml │ │ ├── spsUpdateNoOptionalChoice1.xml │ │ ├── spsUpdateResponse_moveLeft.xml │ │ ├── spsUpdateResponse_moveLeft_pending.xml │ │ ├── spsUpdate_moveLeft.xml │ │ ├── tasking_parameters │ │ ├── encodedParameterData_for_full_taskingParameters.xml │ │ └── full_taskingParameters_DataRecord.xml │ │ ├── transactional │ │ ├── DeleteSensor1.xml │ │ ├── DeleteSensor1_response.xml │ │ ├── InsertSensor1.xml │ │ ├── InsertSensor1_response.xml │ │ ├── InsertTaskingTemplate1.xml │ │ ├── InsertTaskingTemplate1_response.xml │ │ ├── UpdateSensorDescription1.xml │ │ └── UpdateSensorDescription1_response.xml │ │ └── with_ws-addressing │ │ ├── spsCapabilities_SOAP12_WSA.xml │ │ ├── spsDescribeResultAccessResponse_forTask_SOAP12_WSA.xml │ │ ├── spsDescribeResultAccess_forTask_SOAP12_WSA.xml │ │ ├── spsException_InvalidParameterValue_SOAP12Fault_WSA.xml │ │ ├── spsException_InvalidRequest_SOAP12Fault_WSA.xml │ │ ├── spsException_StatusInformationExpired_SOAP12Fault_WSA.xml │ │ ├── spsGetCapabilities_SOAP12_WSA.xml │ │ ├── spsSubscribeResponse_task_SOAP12_WSA.xml │ │ └── spsSubscribe_task_SOAP12_WSA.xml ├── ogc-services-swe │ ├── build.gradle │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── vast │ │ └── ows │ │ └── swe │ │ ├── DeleteSensorReaderV20.java │ │ ├── DeleteSensorRequest.java │ │ ├── DeleteSensorResponse.java │ │ ├── DeleteSensorResponseReaderV20.java │ │ ├── DeleteSensorResponseWriterV20.java │ │ ├── DeleteSensorWriterV20.java │ │ ├── DescribeSensorReaderV20.java │ │ ├── DescribeSensorRequest.java │ │ ├── DescribeSensorResponse.java │ │ ├── DescribeSensorResponseReaderV20.java │ │ ├── DescribeSensorResponseWriterV20.java │ │ ├── DescribeSensorWriterV20.java │ │ ├── InsertSensorReaderV20.java │ │ ├── InsertSensorRequest.java │ │ ├── InsertSensorResponse.java │ │ ├── InsertSensorResponseReaderV20.java │ │ ├── InsertSensorResponseWriterV20.java │ │ ├── InsertSensorWriterV20.java │ │ ├── SWERequestReader.java │ │ ├── SWERequestWriter.java │ │ ├── SWEResponseReader.java │ │ ├── SWEResponseWriter.java │ │ ├── SWESCapabilitiesReaderV20.java │ │ ├── SWESCapabilitiesWriterV20.java │ │ ├── SWESOfferingCapabilities.java │ │ ├── SWESUtils.java │ │ ├── UpdateSensorReaderV20.java │ │ ├── UpdateSensorRequest.java │ │ ├── UpdateSensorResponse.java │ │ ├── UpdateSensorResponseReaderV20.java │ │ ├── UpdateSensorResponseWriterV20.java │ │ └── UpdateSensorWriterV20.java ├── sensorml-core │ ├── build.gradle │ └── src │ │ ├── main │ │ ├── java │ │ │ ├── net │ │ │ │ └── opengis │ │ │ │ │ └── sensorml │ │ │ │ │ └── v20 │ │ │ │ │ ├── AbstractAlgorithm.java │ │ │ │ │ ├── AbstractMetadataList.java │ │ │ │ │ ├── AbstractModes.java │ │ │ │ │ ├── AbstractPhysicalProcess.java │ │ │ │ │ ├── AbstractProcess.java │ │ │ │ │ ├── AbstractSettings.java │ │ │ │ │ ├── AggregateProcess.java │ │ │ │ │ ├── ArraySetting.java │ │ │ │ │ ├── CapabilityList.java │ │ │ │ │ ├── CharacteristicList.java │ │ │ │ │ ├── ClassifierList.java │ │ │ │ │ ├── ConfigSetting.java │ │ │ │ │ ├── ConstraintSetting.java │ │ │ │ │ ├── ContactList.java │ │ │ │ │ ├── DataInterface.java │ │ │ │ │ ├── DeployedSystem.java │ │ │ │ │ ├── Deployment.java │ │ │ │ │ ├── DescribedObject.java │ │ │ │ │ ├── DocumentList.java │ │ │ │ │ ├── Event.java │ │ │ │ │ ├── EventList.java │ │ │ │ │ ├── Factory.java │ │ │ │ │ ├── FeatureList.java │ │ │ │ │ ├── IOPropertyList.java │ │ │ │ │ ├── IdentifierList.java │ │ │ │ │ ├── KeywordList.java │ │ │ │ │ ├── Link.java │ │ │ │ │ ├── Mode.java │ │ │ │ │ ├── ModeChoice.java │ │ │ │ │ ├── ModeSetting.java │ │ │ │ │ ├── ObservableProperty.java │ │ │ │ │ ├── PhysicalComponent.java │ │ │ │ │ ├── PhysicalSystem.java │ │ │ │ │ ├── ProcessMethod.java │ │ │ │ │ ├── SMLPropertyList.java │ │ │ │ │ ├── Settings.java │ │ │ │ │ ├── SimpleProcess.java │ │ │ │ │ ├── SpatialFrame.java │ │ │ │ │ ├── Status.java │ │ │ │ │ ├── StatusSetting.java │ │ │ │ │ ├── TemporalFrame.java │ │ │ │ │ ├── Term.java │ │ │ │ │ ├── ValueSetting.java │ │ │ │ │ ├── bind │ │ │ │ │ ├── XMLStreamBindingsV1.java │ │ │ │ │ └── XMLStreamBindingsV2.java │ │ │ │ │ └── impl │ │ │ │ │ ├── AbstractAlgorithmImpl.java │ │ │ │ │ ├── AbstractMetadataListImpl.java │ │ │ │ │ ├── AbstractModesImpl.java │ │ │ │ │ ├── AbstractSettingsImpl.java │ │ │ │ │ ├── ArraySettingImpl.java │ │ │ │ │ ├── CapabilityListImpl.java │ │ │ │ │ ├── CharacteristicListImpl.java │ │ │ │ │ ├── ClassifierListImpl.java │ │ │ │ │ ├── ConstraintSettingImpl.java │ │ │ │ │ ├── ContactListImpl.java │ │ │ │ │ ├── DataInterfaceImpl.java │ │ │ │ │ ├── DeployedSystemImpl.java │ │ │ │ │ ├── DeploymentImpl.java │ │ │ │ │ ├── DescribedObjectImpl.java │ │ │ │ │ ├── DocumentListImpl.java │ │ │ │ │ ├── EventImpl.java │ │ │ │ │ ├── EventListImpl.java │ │ │ │ │ ├── FeatureListImpl.java │ │ │ │ │ ├── IdentifierListImpl.java │ │ │ │ │ ├── KeywordListImpl.java │ │ │ │ │ ├── LinkImpl.java │ │ │ │ │ ├── ModeChoiceImpl.java │ │ │ │ │ ├── ModeImpl.java │ │ │ │ │ ├── ModeSettingImpl.java │ │ │ │ │ ├── ObservablePropertyImpl.java │ │ │ │ │ ├── ProcessMethodImpl.java │ │ │ │ │ ├── SettingsImpl.java │ │ │ │ │ ├── SpatialFrameImpl.java │ │ │ │ │ ├── StatusSettingImpl.java │ │ │ │ │ ├── TemporalFrameImpl.java │ │ │ │ │ ├── TermImpl.java │ │ │ │ │ └── ValueSettingImpl.java │ │ │ └── org │ │ │ │ ├── isotc211 │ │ │ │ └── v2005 │ │ │ │ │ ├── gco │ │ │ │ │ ├── AbstractObject.java │ │ │ │ │ ├── Binary.java │ │ │ │ │ ├── CodeListValue.java │ │ │ │ │ ├── Factory.java │ │ │ │ │ ├── MemberName.java │ │ │ │ │ ├── Multiplicity.java │ │ │ │ │ ├── MultiplicityRange.java │ │ │ │ │ ├── RecordType.java │ │ │ │ │ ├── TypeName.java │ │ │ │ │ ├── UnlimitedInteger.java │ │ │ │ │ ├── bind │ │ │ │ │ │ └── XMLStreamBindings.java │ │ │ │ │ └── impl │ │ │ │ │ │ ├── AbstractObjectImpl.java │ │ │ │ │ │ ├── BinaryImpl.java │ │ │ │ │ │ ├── CodeListValueImpl.java │ │ │ │ │ │ ├── GCOFactory.java │ │ │ │ │ │ ├── MemberNameImpl.java │ │ │ │ │ │ ├── MultiplicityImpl.java │ │ │ │ │ │ ├── MultiplicityRangeImpl.java │ │ │ │ │ │ ├── RecordTypeImpl.java │ │ │ │ │ │ ├── TypeNameImpl.java │ │ │ │ │ │ └── UnlimitedIntegerImpl.java │ │ │ │ │ └── gmd │ │ │ │ │ ├── CIAddress.java │ │ │ │ │ ├── CICitation.java │ │ │ │ │ ├── CIContact.java │ │ │ │ │ ├── CIDate.java │ │ │ │ │ ├── CIOnlineResource.java │ │ │ │ │ ├── CIResponsibleParty.java │ │ │ │ │ ├── CISeries.java │ │ │ │ │ ├── CITelephone.java │ │ │ │ │ ├── Factory.java │ │ │ │ │ ├── MDConstraints.java │ │ │ │ │ ├── MDIdentifier.java │ │ │ │ │ ├── MDKeywords.java │ │ │ │ │ ├── MDLegalConstraints.java │ │ │ │ │ ├── bind │ │ │ │ │ └── XMLStreamBindings.java │ │ │ │ │ └── impl │ │ │ │ │ ├── CIAddressImpl.java │ │ │ │ │ ├── CICitationImpl.java │ │ │ │ │ ├── CIContactImpl.java │ │ │ │ │ ├── CIDateImpl.java │ │ │ │ │ ├── CIOnlineResourceImpl.java │ │ │ │ │ ├── CIResponsiblePartyImpl.java │ │ │ │ │ ├── CISeriesImpl.java │ │ │ │ │ ├── CITelephoneImpl.java │ │ │ │ │ ├── GMDFactory.java │ │ │ │ │ ├── MDConstraintsImpl.java │ │ │ │ │ ├── MDIdentifierImpl.java │ │ │ │ │ ├── MDKeywordsImpl.java │ │ │ │ │ └── MDLegalConstraintsImpl.java │ │ │ │ └── vast │ │ │ │ ├── process │ │ │ │ ├── DataConnection.java │ │ │ │ ├── DataConnectionList.java │ │ │ │ ├── DataQueue.java │ │ │ │ ├── ExecutableChainImpl.java │ │ │ │ ├── ExecutableProcessImpl.java │ │ │ │ ├── IDataConnection.java │ │ │ │ ├── IProcessChainExec.java │ │ │ │ ├── IProcessExec.java │ │ │ │ ├── ProcessException.java │ │ │ │ └── ProcessInfo.java │ │ │ │ └── sensorML │ │ │ │ ├── AbstractProcessImpl.java │ │ │ │ ├── AggregateProcessImpl.java │ │ │ │ ├── IProcessFactory.java │ │ │ │ ├── ISMLStaxBindings.java │ │ │ │ ├── LinkImpl.java │ │ │ │ ├── PhysicalComponentImpl.java │ │ │ │ ├── PhysicalSystemImpl.java │ │ │ │ ├── ProcessLoader.java │ │ │ │ ├── SMLBuilders.java │ │ │ │ ├── SMLException.java │ │ │ │ ├── SMLFactory.java │ │ │ │ ├── SMLHelper.java │ │ │ │ ├── SMLJsonBindings.java │ │ │ │ ├── SMLMetadataBuilders.java │ │ │ │ ├── SMLStaxBindings.java │ │ │ │ ├── SMLStaxBindingsV1.java │ │ │ │ ├── SMLUtils.java │ │ │ │ ├── SimpleProcessImpl.java │ │ │ │ ├── helper │ │ │ │ ├── CommonCapabilities.java │ │ │ │ ├── CommonCharacteristics.java │ │ │ │ ├── CommonClassifiers.java │ │ │ │ ├── CommonConditions.java │ │ │ │ ├── CommonDocuments.java │ │ │ │ ├── CommonIdentifiers.java │ │ │ │ └── SMLPropertiesHelper.java │ │ │ │ ├── json │ │ │ │ ├── SMLJsonStreamReader.java │ │ │ │ └── SMLJsonStreamWriter.java │ │ │ │ └── sampling │ │ │ │ ├── ParametricSamplingFeature.java │ │ │ │ ├── SamplingPointXYZ.java │ │ │ │ ├── SamplingSphere.java │ │ │ │ ├── ViewingFrustum.java │ │ │ │ └── ViewingSector.java │ │ └── resources │ │ │ └── org │ │ │ └── vast │ │ │ └── sensorML │ │ │ └── SMLRegistry.xml │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── vast │ │ │ └── sensorML │ │ │ ├── TestSMLHelper.java │ │ │ └── test │ │ │ ├── AffineTransform1D_Process.java │ │ │ ├── Clip_Process.java │ │ │ ├── TestSMLJsonBindingsV20.java │ │ │ ├── TestSMLJsonBindingsV30.java │ │ │ ├── TestSMLProcessing.java │ │ │ ├── TestSMLStaxBindingsV20.java │ │ │ ├── WindChill2_Process_WithPorts.java │ │ │ └── WindChill_Process.java │ │ └── resources │ │ └── org │ │ └── vast │ │ └── sensorML │ │ └── test │ │ ├── ProcessMap.xml │ │ ├── examples_v20 │ │ ├── AggregateProcess.xml │ │ ├── AggregateProcessWithConfig.xml │ │ ├── AggregateProcessWithConfig_Error1.xml │ │ ├── AggregateProcessWithConfig_Error2.xml │ │ ├── AggregateProcessWithConfig_Error3.xml │ │ ├── Davis_7817.xml │ │ ├── Davis_7817_complete.xml │ │ ├── DetectorArray.xml │ │ ├── KCM-HD Camera.xml │ │ ├── KCM-HD_Camera_inline.xml │ │ ├── LinearInterpolator.xml │ │ ├── ManufacturerDescription.xml │ │ ├── ModeInstance.xml │ │ ├── OwnerInstance.xml │ │ ├── SensorHistory.xml │ │ ├── SensorWithModes.xml │ │ ├── SimpleSensor.xml │ │ ├── SimpleStreaming RS232.xml │ │ ├── WeatherStation.xml │ │ ├── WindChill.xml │ │ ├── WindChill2.xml │ │ ├── WindChill2_Error1.xml │ │ ├── WindChill2_Error2.xml │ │ ├── WindChill2_Error3.xml │ │ ├── WindChill2_Error4.xml │ │ ├── WindChill2_Error5.xml │ │ └── gamma2070_more.xml │ │ └── json │ │ ├── deployment_with_geometry.json │ │ ├── sensor_instance_with_geopose_quat.json │ │ ├── sensor_instance_with_geopose_ypr.json │ │ ├── sensor_instance_with_relpose_quat.json │ │ ├── sensor_instance_with_relpose_ypr.json │ │ ├── weather_station_system.json │ │ └── weather_station_system_typemoved.json ├── sensorml-profile-gen │ └── build.gradle ├── swe-common-core │ ├── build.gradle │ └── src │ │ ├── main │ │ ├── java │ │ │ ├── net │ │ │ │ └── opengis │ │ │ │ │ ├── AbstractBindings.java │ │ │ │ │ ├── AbstractXMLStreamBindings.java │ │ │ │ │ ├── HasCopy.java │ │ │ │ │ ├── HrefResolver.java │ │ │ │ │ ├── HrefResolverXML.java │ │ │ │ │ ├── NamespaceRegister.java │ │ │ │ │ ├── OgcProperty.java │ │ │ │ │ ├── OgcPropertyImpl.java │ │ │ │ │ ├── OgcPropertyList.java │ │ │ │ │ └── swe │ │ │ │ │ └── v20 │ │ │ │ │ ├── AbstractSWE.java │ │ │ │ │ ├── AbstractSWEIdentifiable.java │ │ │ │ │ ├── AllowedGeoms.java │ │ │ │ │ ├── AllowedTimes.java │ │ │ │ │ ├── AllowedTokens.java │ │ │ │ │ ├── AllowedValues.java │ │ │ │ │ ├── BinaryBlock.java │ │ │ │ │ ├── BinaryComponent.java │ │ │ │ │ ├── BinaryEncoding.java │ │ │ │ │ ├── BinaryMember.java │ │ │ │ │ ├── BlockComponent.java │ │ │ │ │ ├── Boolean.java │ │ │ │ │ ├── ByteEncoding.java │ │ │ │ │ ├── ByteOrder.java │ │ │ │ │ ├── Category.java │ │ │ │ │ ├── CategoryOrRange.java │ │ │ │ │ ├── CategoryRange.java │ │ │ │ │ ├── Count.java │ │ │ │ │ ├── CountOrRange.java │ │ │ │ │ ├── CountRange.java │ │ │ │ │ ├── DataArray.java │ │ │ │ │ ├── DataBlock.java │ │ │ │ │ ├── DataChoice.java │ │ │ │ │ ├── DataComponent.java │ │ │ │ │ ├── DataComponentVisitor.java │ │ │ │ │ ├── DataConstraint.java │ │ │ │ │ ├── DataEncoding.java │ │ │ │ │ ├── DataRecord.java │ │ │ │ │ ├── DataStream.java │ │ │ │ │ ├── DataType.java │ │ │ │ │ ├── EncodedValues.java │ │ │ │ │ ├── Factory.java │ │ │ │ │ ├── GeometryData.java │ │ │ │ │ ├── HasCodeSpace.java │ │ │ │ │ ├── HasConstraints.java │ │ │ │ │ ├── HasRefFrames.java │ │ │ │ │ ├── HasUom.java │ │ │ │ │ ├── JSONEncoding.java │ │ │ │ │ ├── Matrix.java │ │ │ │ │ ├── NilValue.java │ │ │ │ │ ├── NilValues.java │ │ │ │ │ ├── Quantity.java │ │ │ │ │ ├── QuantityOrRange.java │ │ │ │ │ ├── QuantityRange.java │ │ │ │ │ ├── RangeComponent.java │ │ │ │ │ ├── ScalarComponent.java │ │ │ │ │ ├── SimpleComponent.java │ │ │ │ │ ├── Text.java │ │ │ │ │ ├── TextEncoding.java │ │ │ │ │ ├── Time.java │ │ │ │ │ ├── TimeIndeterminateValue.java │ │ │ │ │ ├── TimeOrRange.java │ │ │ │ │ ├── TimeRange.java │ │ │ │ │ ├── UnitReference.java │ │ │ │ │ ├── ValidationException.java │ │ │ │ │ ├── Vector.java │ │ │ │ │ ├── XMLEncoding.java │ │ │ │ │ └── bind │ │ │ │ │ └── XMLStreamBindings.java │ │ │ └── org │ │ │ │ └── vast │ │ │ │ ├── cdm │ │ │ │ ├── common │ │ │ │ │ ├── CDMException.java │ │ │ │ │ ├── CompressedStreamParser.java │ │ │ │ │ ├── CompressedStreamWriter.java │ │ │ │ │ ├── DataHandler.java │ │ │ │ │ ├── DataInputExt.java │ │ │ │ │ ├── DataOutputExt.java │ │ │ │ │ ├── DataSink.java │ │ │ │ │ ├── DataSource.java │ │ │ │ │ ├── DataStreamParser.java │ │ │ │ │ ├── DataStreamWriter.java │ │ │ │ │ ├── Encryption.java │ │ │ │ │ ├── ErrorHandler.java │ │ │ │ │ ├── IDataConsumer.java │ │ │ │ │ ├── IDataProvider.java │ │ │ │ │ ├── InputStreamProvider.java │ │ │ │ │ ├── OutputStreamProvider.java │ │ │ │ │ ├── RawDataHandler.java │ │ │ │ │ └── StreamDemux.java │ │ │ │ └── semantics │ │ │ │ │ └── DictionaryURN.java │ │ │ │ ├── data │ │ │ │ ├── AbstractArrayImpl.java │ │ │ │ ├── AbstractDataBlock.java │ │ │ │ ├── AbstractDataComponentImpl.java │ │ │ │ ├── AbstractEncodingImpl.java │ │ │ │ ├── AbstractRangeComponentImpl.java │ │ │ │ ├── AbstractRecordImpl.java │ │ │ │ ├── AbstractSWEIdentifiableImpl.java │ │ │ │ ├── AbstractSWEImpl.java │ │ │ │ ├── AbstractSimpleComponentImpl.java │ │ │ │ ├── AllowedGeomsImpl.java │ │ │ │ ├── AllowedTimesImpl.java │ │ │ │ ├── AllowedTokensImpl.java │ │ │ │ ├── AllowedValuesImpl.java │ │ │ │ ├── BaseTreeVisitor.java │ │ │ │ ├── BinaryBlockImpl.java │ │ │ │ ├── BinaryComponentImpl.java │ │ │ │ ├── BinaryEncodingImpl.java │ │ │ │ ├── BooleanImpl.java │ │ │ │ ├── CategoryImpl.java │ │ │ │ ├── CategoryRangeImpl.java │ │ │ │ ├── CountImpl.java │ │ │ │ ├── CountRangeImpl.java │ │ │ │ ├── DataArrayImpl.java │ │ │ │ ├── DataArrayIndexer.java │ │ │ │ ├── DataBlockBoolean.java │ │ │ │ ├── DataBlockByte.java │ │ │ │ ├── DataBlockCompressed.java │ │ │ │ ├── DataBlockDateTime.java │ │ │ │ ├── DataBlockDouble.java │ │ │ │ ├── DataBlockFactory.java │ │ │ │ ├── DataBlockFloat.java │ │ │ │ ├── DataBlockInstant.java │ │ │ │ ├── DataBlockInt.java │ │ │ │ ├── DataBlockList.java │ │ │ │ ├── DataBlockLong.java │ │ │ │ ├── DataBlockMixed.java │ │ │ │ ├── DataBlockParallel.java │ │ │ │ ├── DataBlockProxy.java │ │ │ │ ├── DataBlockShort.java │ │ │ │ ├── DataBlockString.java │ │ │ │ ├── DataBlockTuple.java │ │ │ │ ├── DataBlockUByte.java │ │ │ │ ├── DataBlockUInt.java │ │ │ │ ├── DataBlockUShort.java │ │ │ │ ├── DataChoiceImpl.java │ │ │ │ ├── DataComponentProperty.java │ │ │ │ ├── DataComponentPropertyList.java │ │ │ │ ├── DataGroupIndexer.java │ │ │ │ ├── DataIndexer.java │ │ │ │ ├── DataIterator.java │ │ │ │ ├── DataList.java │ │ │ │ ├── DataRecordImpl.java │ │ │ │ ├── DataStreamImpl.java │ │ │ │ ├── DataValue.java │ │ │ │ ├── DataValueIndexer.java │ │ │ │ ├── DataVisitor.java │ │ │ │ ├── DateTimeOrDouble.java │ │ │ │ ├── EncodedValuesImpl.java │ │ │ │ ├── GeometryDataImpl.java │ │ │ │ ├── IDataAccessor.java │ │ │ │ ├── JSONEncodingImpl.java │ │ │ │ ├── MatrixImpl.java │ │ │ │ ├── NilValueImpl.java │ │ │ │ ├── NilValuesImpl.java │ │ │ │ ├── QuantityImpl.java │ │ │ │ ├── QuantityRangeImpl.java │ │ │ │ ├── SWEFactory.java │ │ │ │ ├── ScalarIterator.java │ │ │ │ ├── ScalarVisitor.java │ │ │ │ ├── TextEncodingImpl.java │ │ │ │ ├── TextImpl.java │ │ │ │ ├── TimeImpl.java │ │ │ │ ├── TimeRangeImpl.java │ │ │ │ ├── UnitReferenceImpl.java │ │ │ │ ├── VarSizeMapper.java │ │ │ │ ├── VectorImpl.java │ │ │ │ └── XMLEncodingImpl.java │ │ │ │ ├── json │ │ │ │ ├── JsonConstants.java │ │ │ │ ├── JsonInliningWriter.java │ │ │ │ ├── JsonReaderWithBuffer.java │ │ │ │ ├── JsonStreamException.java │ │ │ │ ├── JsonStreamReader.java │ │ │ │ └── JsonStreamWriter.java │ │ │ │ ├── ogc │ │ │ │ ├── OGCException.java │ │ │ │ ├── OGCExceptionReader.java │ │ │ │ ├── OGCRegistry.java │ │ │ │ ├── RequestType.java │ │ │ │ ├── ServiceType.java │ │ │ │ ├── def │ │ │ │ │ ├── DefinitionRef.java │ │ │ │ │ └── IDefinition.java │ │ │ │ ├── gml │ │ │ │ │ └── GMLUnitReader.java │ │ │ │ └── xlink │ │ │ │ │ ├── CachedReference.java │ │ │ │ │ ├── ExternalLink.java │ │ │ │ │ ├── IReferenceResolver.java │ │ │ │ │ ├── IXlinkReference.java │ │ │ │ │ ├── SimpleLink.java │ │ │ │ │ └── XlinkUtils.java │ │ │ │ ├── swe │ │ │ │ ├── AbstractDataParser.java │ │ │ │ ├── AbstractDataWriter.java │ │ │ │ ├── AsciiDataParser.java │ │ │ │ ├── AsciiDataWriter.java │ │ │ │ ├── Base64Decoder.java │ │ │ │ ├── Base64Encoder.java │ │ │ │ ├── BinaryDataParser.java │ │ │ │ ├── BinaryDataWriter.java │ │ │ │ ├── CodecLookup.java │ │ │ │ ├── DataInputStreamBI.java │ │ │ │ ├── DataInputStreamLI.java │ │ │ │ ├── DataOutputStreamBI.java │ │ │ │ ├── DataOutputStreamLI.java │ │ │ │ ├── DataSinkDOM.java │ │ │ │ ├── DataSourceDOM.java │ │ │ │ ├── DataSourceInline.java │ │ │ │ ├── DataSourceString.java │ │ │ │ ├── DataSourceURI.java │ │ │ │ ├── DataTreeVisitor.java │ │ │ │ ├── DefaultParserHandler.java │ │ │ │ ├── DefaultWriterHandler.java │ │ │ │ ├── FilteredWriter.java │ │ │ │ ├── ICodecFactory.java │ │ │ │ ├── IComponentFilter.java │ │ │ │ ├── ISweInputDataStream.java │ │ │ │ ├── ISweOutputDataStream.java │ │ │ │ ├── SWEBuilders.java │ │ │ │ ├── SWEConstants.java │ │ │ │ ├── SWEData.java │ │ │ │ ├── SWEDataTypeUtils.java │ │ │ │ ├── SWEFilter.java │ │ │ │ ├── SWEHelper.java │ │ │ │ ├── SWEJsonBindings.java │ │ │ │ ├── SWEReader.java │ │ │ │ ├── SWEStaxBindings.java │ │ │ │ ├── SWEUtils.java │ │ │ │ ├── SWEValidator.java │ │ │ │ ├── SWEWriter.java │ │ │ │ ├── ScalarIndexer.java │ │ │ │ ├── URIStreamHandler.java │ │ │ │ ├── XmlDataParserDOM.java │ │ │ │ ├── XmlDataWriter.java │ │ │ │ ├── XmlDataWriterDOM.java │ │ │ │ ├── fast │ │ │ │ │ ├── AbstractDataParser.java │ │ │ │ │ ├── AbstractDataWriter.java │ │ │ │ │ ├── BinaryDataParser.java │ │ │ │ │ ├── BinaryDataWriter.java │ │ │ │ │ ├── DataBlockProcessor.java │ │ │ │ │ ├── FilterByDefinition.java │ │ │ │ │ ├── JsonArrayDataParserGson.java │ │ │ │ │ ├── JsonArrayDataWriterGson.java │ │ │ │ │ ├── JsonDataParserGson.java │ │ │ │ │ ├── JsonDataWriter.java │ │ │ │ │ ├── JsonDataWriterGson.java │ │ │ │ │ ├── NullWriter.java │ │ │ │ │ ├── TextDataParser.java │ │ │ │ │ ├── TextDataWriter.java │ │ │ │ │ ├── XmlDataParser.java │ │ │ │ │ └── XmlDataWriter.java │ │ │ │ ├── helper │ │ │ │ │ ├── GeoPosHelper.java │ │ │ │ │ ├── RasterHelper.java │ │ │ │ │ └── VectorHelper.java │ │ │ │ └── json │ │ │ │ │ ├── SWEJsonStreamReader.java │ │ │ │ │ └── SWEJsonStreamWriter.java │ │ │ │ ├── unit │ │ │ │ ├── AbstractUnitConverter.java │ │ │ │ ├── GenericUnitConverter.java │ │ │ │ ├── Unit.java │ │ │ │ ├── UnitConversion.java │ │ │ │ ├── UnitConverter.java │ │ │ │ ├── UnitFunction.java │ │ │ │ ├── UnitFunctionLog.java │ │ │ │ ├── UnitFunctionOffset.java │ │ │ │ ├── UnitParser.java │ │ │ │ ├── UnitParserUCUM.java │ │ │ │ └── UnitParserURI.java │ │ │ │ ├── util │ │ │ │ ├── Asserts.java │ │ │ │ ├── BaseBuilder.java │ │ │ │ ├── DateTime.java │ │ │ │ ├── DateTimeFormat.java │ │ │ │ ├── Interval.java │ │ │ │ ├── MsgUtils.java │ │ │ │ ├── NestedBuilder.java │ │ │ │ ├── NumberUtils.java │ │ │ │ ├── ReaderException.java │ │ │ │ ├── ResolveException.java │ │ │ │ ├── URIResolver.java │ │ │ │ └── WriterException.java │ │ │ │ └── xml │ │ │ │ ├── DOMHelper.java │ │ │ │ ├── DOMHelperException.java │ │ │ │ ├── DelegatingXMLStreamReader.java │ │ │ │ ├── DelegatingXMLStreamWriter.java │ │ │ │ ├── IXMLReaderDOM.java │ │ │ │ ├── IXMLReaderStAX.java │ │ │ │ ├── IXMLWriterDOM.java │ │ │ │ ├── IXMLWriterStAX.java │ │ │ │ ├── IndentingXMLStreamWriter.java │ │ │ │ ├── QName.java │ │ │ │ ├── XMLBindingsUtils.java │ │ │ │ ├── XMLDocument.java │ │ │ │ ├── XMLFragment.java │ │ │ │ ├── XMLImplFinder.java │ │ │ │ ├── XMLNodeList.java │ │ │ │ ├── XMLReaderException.java │ │ │ │ ├── XMLStreamReaderWithLocation.java │ │ │ │ ├── XMLWriterException.java │ │ │ │ └── transform │ │ │ │ ├── DOMTransform.java │ │ │ │ ├── DOMTransformException.java │ │ │ │ └── TransformTemplate.java │ │ └── resources │ │ │ └── org │ │ │ └── vast │ │ │ ├── ogc │ │ │ └── OGCRegistry.xml │ │ │ └── unit │ │ │ └── ucum-essence.xml │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── vast │ │ │ └── swe │ │ │ ├── fast │ │ │ ├── TestBinaryDataParser.java │ │ │ ├── TestJsonDataParser.java │ │ │ ├── TestJsonDataWriter.java │ │ │ └── TestTextDataParser.java │ │ │ └── test │ │ │ ├── TestDataAccessor.java │ │ │ ├── TestDataArrays.java │ │ │ ├── TestGeoPosHelper.java │ │ │ ├── TestGeometries.java │ │ │ ├── TestNumberUtils.java │ │ │ ├── TestRasterHelper.java │ │ │ ├── TestScalarIndexer.java │ │ │ ├── TestSweDomBindingsV20.java │ │ │ ├── TestSweHelper.java │ │ │ ├── TestSweJsonBindingsV20.java │ │ │ ├── TestSweJsonBindingsV21.java │ │ │ ├── TestSweStaxBindingsV20.java │ │ │ ├── TestUcumParser.java │ │ │ ├── TestUnitConversion.java │ │ │ └── TestVectorHelper.java │ │ └── resources │ │ └── org │ │ └── vast │ │ └── swe │ │ └── test │ │ └── examples_v20 │ │ ├── array_with_choice.xml │ │ ├── image_data.xml │ │ ├── nav_data.xml │ │ ├── spec │ │ ├── array_image_band_interleaved.xml │ │ ├── array_image_pixel_interleaved.xml │ │ ├── array_trajectory.xml │ │ ├── array_weather.xml │ │ ├── array_with_ranges.xml │ │ ├── choice_stream.xml │ │ ├── constraints.xml │ │ ├── datastream_with_quality.xml │ │ ├── enc_binary_image.xml │ │ ├── enc_text_choice_stream.xml │ │ ├── enc_text_curve.xml │ │ ├── enc_text_nav_options.xml │ │ ├── enc_text_profile_series.xml │ │ ├── enc_text_stress_matrix.xml │ │ ├── enc_xml_curve.xml │ │ ├── enc_xml_profile_series.xml │ │ ├── extensions.xml │ │ ├── json │ │ │ ├── geometry_line.json │ │ │ ├── geometry_novalue.json │ │ │ ├── geometry_point.json │ │ │ ├── geometry_poly.json │ │ │ └── geometry_poly_holes.json │ │ ├── matrix_rotation.xml │ │ ├── nilValues.xml │ │ ├── nilValues_noxlinks.xml │ │ ├── quality.xml │ │ ├── range_components.xml │ │ ├── record_coefs.xml │ │ ├── record_weather.xml │ │ ├── record_weather_xlinks.xml │ │ ├── simple_components.xml │ │ ├── stream_nav.xml │ │ ├── var_size_array_1D.xml │ │ ├── vector_location.xml │ │ ├── vector_quaternion.xml │ │ └── vector_velocity.xml │ │ ├── sps │ │ ├── TaskingParameter_DataRecord.xml │ │ ├── TaskingParameter_DataRecord_constraints.xml │ │ └── TaskingParameter_DataRecord_optional.xml │ │ └── weather_data.xml └── swe-common-om │ ├── build.gradle │ └── src │ ├── main │ ├── java │ │ ├── net │ │ │ └── opengis │ │ │ │ └── gml │ │ │ │ └── v32 │ │ │ │ ├── AbstractCurve.java │ │ │ │ ├── AbstractFeature.java │ │ │ │ ├── AbstractGML.java │ │ │ │ ├── AbstractGeometry.java │ │ │ │ ├── AbstractRing.java │ │ │ │ ├── AbstractSurface.java │ │ │ │ ├── AbstractTimeGeometricPrimitive.java │ │ │ │ ├── AbstractTimePrimitive.java │ │ │ │ ├── CodeList.java │ │ │ │ ├── CodeOrNilReasonList.java │ │ │ │ ├── CodeWithAuthority.java │ │ │ │ ├── Envelope.java │ │ │ │ ├── Factory.java │ │ │ │ ├── FeatureCollection.java │ │ │ │ ├── LineString.java │ │ │ │ ├── LinearRing.java │ │ │ │ ├── Measure.java │ │ │ │ ├── Point.java │ │ │ │ ├── Polygon.java │ │ │ │ ├── Reference.java │ │ │ │ ├── TimeIndeterminateValue.java │ │ │ │ ├── TimeInstant.java │ │ │ │ ├── TimeIntervalLength.java │ │ │ │ ├── TimePeriod.java │ │ │ │ ├── TimePosition.java │ │ │ │ ├── TimeUnit.java │ │ │ │ ├── bind │ │ │ │ └── XMLStreamBindings.java │ │ │ │ └── impl │ │ │ │ ├── AbstractCurveImpl.java │ │ │ │ ├── AbstractFeatureImpl.java │ │ │ │ ├── AbstractGMLImpl.java │ │ │ │ ├── AbstractGeometryImpl.java │ │ │ │ ├── AbstractTimeGeometricPrimitiveImpl.java │ │ │ │ ├── AbstractTimePrimitiveImpl.java │ │ │ │ ├── CodeListImpl.java │ │ │ │ ├── CodeOrNilReasonListImpl.java │ │ │ │ ├── CodeWithAuthorityImpl.java │ │ │ │ ├── EnvelopeImpl.java │ │ │ │ ├── EnvelopeJTS.java │ │ │ │ ├── FeatureCollectionImpl.java │ │ │ │ ├── GMLFactory.java │ │ │ │ ├── JTSCoordinatesDoubleArray.java │ │ │ │ ├── LineStringImpl.java │ │ │ │ ├── LineStringJTS.java │ │ │ │ ├── LinearRingImpl.java │ │ │ │ ├── LinearRingJTS.java │ │ │ │ ├── MeasureImpl.java │ │ │ │ ├── PointImpl.java │ │ │ │ ├── PointJTS.java │ │ │ │ ├── PolygonImpl.java │ │ │ │ ├── PolygonJTS.java │ │ │ │ ├── ReferenceImpl.java │ │ │ │ ├── TimeInstantImpl.java │ │ │ │ ├── TimeIntervalLengthImpl.java │ │ │ │ ├── TimePeriodImpl.java │ │ │ │ └── TimePositionImpl.java │ │ └── org │ │ │ └── vast │ │ │ ├── ogc │ │ │ ├── geopose │ │ │ │ ├── GeoPoseJsonBindings.java │ │ │ │ ├── Pose.java │ │ │ │ └── PoseImpl.java │ │ │ ├── gml │ │ │ │ ├── ExtensibleFeatureImpl.java │ │ │ │ ├── FeatureRef.java │ │ │ │ ├── GMLBuilders.java │ │ │ │ ├── GMLStaxBindings.java │ │ │ │ ├── GMLUtils.java │ │ │ │ ├── GenericFeature.java │ │ │ │ ├── GenericFeatureImpl.java │ │ │ │ ├── GenericTemporalFeatureImpl.java │ │ │ │ ├── GeoJsonBindings.java │ │ │ │ ├── GmlIdGenerator.java │ │ │ │ ├── IFeature.java │ │ │ │ ├── IFeatureCollection.java │ │ │ │ ├── IFeatureStaxBindings.java │ │ │ │ ├── JTSUtils.java │ │ │ │ ├── SequentialIdGenerator.java │ │ │ │ └── json │ │ │ │ │ ├── GMLJsonStreamReader.java │ │ │ │ │ └── GMLJsonStreamWriter.java │ │ │ └── om │ │ │ │ ├── IObservation.java │ │ │ │ ├── IObservationSeries.java │ │ │ │ ├── IProcedure.java │ │ │ │ ├── IProcedureArray.java │ │ │ │ ├── MovingFeature.java │ │ │ │ ├── OMUtils.java │ │ │ │ ├── ObservationImpl.java │ │ │ │ ├── ObservationReaderV20.java │ │ │ │ ├── ObservationRef.java │ │ │ │ ├── ObservationStreamReader.java │ │ │ │ ├── ObservationWriterV20.java │ │ │ │ ├── ProcedureRef.java │ │ │ │ ├── ProcedureXML.java │ │ │ │ ├── SamplingCurve.java │ │ │ │ ├── SamplingFeature.java │ │ │ │ ├── SamplingFeatureReader.java │ │ │ │ ├── SamplingPoint.java │ │ │ │ └── SamplingSurface.java │ │ │ └── util │ │ │ ├── Bbox.java │ │ │ ├── Contact.java │ │ │ ├── IResource.java │ │ │ ├── ResponsibleParty.java │ │ │ ├── SpatialExtent.java │ │ │ ├── TimeExtent.java │ │ │ └── ZonedTimeExtent.java │ └── resources │ │ └── org │ │ └── vast │ │ └── ogc │ │ └── om │ │ └── OMRegistry.xml │ └── test │ ├── java │ └── org │ │ └── vast │ │ ├── ogc │ │ ├── gml │ │ │ ├── TestGMLBindingsV32.java │ │ │ ├── TestGeoJsonBindings.java │ │ │ └── TestGeometryObjects.java │ │ └── om │ │ │ ├── TestCreateObservations.java │ │ │ └── TestOMBindingsV20.java │ │ └── util │ │ ├── TestBbox.java │ │ └── TestTimeExtent.java │ └── resources │ └── org │ └── vast │ └── ogc │ ├── gml │ ├── examples_v32 │ │ ├── Line2D.xml │ │ ├── Line3D.xml │ │ ├── Point2D.xml │ │ ├── Point3D.xml │ │ ├── Polygon_noInterior.xml │ │ ├── Polygon_withInteriors.xml │ │ ├── TimeInstant_datetime.xml │ │ ├── TimeInstant_now.xml │ │ ├── TimeInstant_unknown.xml │ │ ├── TimePeriod_beginNow.xml │ │ ├── TimePeriod_beginUnknown.xml │ │ ├── TimePeriod_datetime.xml │ │ ├── TimePeriod_endNow.xml │ │ ├── TimePeriod_endUnknown.xml │ │ └── TimePeriod_withTimeStep.xml │ └── geojson │ │ ├── feature_with_link.json │ │ ├── feature_with_links.json │ │ ├── feature_with_point.json │ │ ├── feature_with_point_typemoved.json │ │ ├── feature_with_polygon.json │ │ ├── feature_with_time_props.json │ │ └── feature_with_validtime.json │ └── om │ └── examples_v20 │ ├── sweArrayObservation1.xml │ ├── sweArrayObservation2.xml │ ├── sweRecordObservation3.xml │ ├── sweScalarObservation4.xml │ └── weatherObservation.xml ├── release-text.md ├── release.gradle ├── sensorhub-core-osgi ├── .gitignore ├── build.gradle ├── lib │ └── org.apache.felix.bundlerepository-2.0.10.jar └── src │ ├── main │ ├── java │ │ └── org │ │ │ └── sensorhub │ │ │ └── impl │ │ │ └── osgi │ │ │ ├── DirectoryWatcher.java │ │ │ └── SensorHubOsgi.java │ └── resources │ │ └── logback.xml │ └── test │ ├── java │ ├── TestSensorHubOsgi.java │ └── org │ │ └── sensorhub │ │ └── impl │ │ └── osgi │ │ └── TestOsgi.java │ └── resources │ ├── META-INF │ └── services │ │ └── org.sensorhub.api.processing.IProcessProvider │ ├── config_empty_sost.json │ ├── config_empty_sost_basicauth.json │ ├── logback-test.xml │ ├── test-nodep.jar │ └── test-withdep.jar ├── sensorhub-core ├── build.gradle └── src │ ├── main │ ├── java │ │ └── org │ │ │ └── sensorhub │ │ │ ├── api │ │ │ ├── ISensorHub.java │ │ │ ├── ISensorHubConfig.java │ │ │ ├── client │ │ │ │ ├── ClientConfig.java │ │ │ │ ├── ClientException.java │ │ │ │ └── IClientModule.java │ │ │ ├── comm │ │ │ │ ├── CommProviderConfig.java │ │ │ │ ├── DeviceScanEvent.java │ │ │ │ ├── ICommConfig.java │ │ │ │ ├── ICommNetwork.java │ │ │ │ ├── ICommProvider.java │ │ │ │ ├── IDeviceInfo.java │ │ │ │ ├── IDeviceScanCallback.java │ │ │ │ ├── IDeviceScanner.java │ │ │ │ ├── IMessageQueuePush.java │ │ │ │ ├── INetworkInfo.java │ │ │ │ ├── INetworkManager.java │ │ │ │ ├── INetworkProvider.java │ │ │ │ ├── MessageQueueConfig.java │ │ │ │ └── NetworkConfig.java │ │ │ ├── command │ │ │ │ ├── CommandData.java │ │ │ │ ├── CommandEvent.java │ │ │ │ ├── CommandException.java │ │ │ │ ├── CommandResult.java │ │ │ │ ├── CommandStatus.java │ │ │ │ ├── CommandStatusEvent.java │ │ │ │ ├── CommandStreamAddedEvent.java │ │ │ │ ├── CommandStreamChangedEvent.java │ │ │ │ ├── CommandStreamDisabledEvent.java │ │ │ │ ├── CommandStreamEnabledEvent.java │ │ │ │ ├── CommandStreamEvent.java │ │ │ │ ├── CommandStreamInfo.java │ │ │ │ ├── CommandStreamRemovedEvent.java │ │ │ │ ├── ICommandData.java │ │ │ │ ├── ICommandReceiver.java │ │ │ │ ├── ICommandResult.java │ │ │ │ ├── ICommandStatus.java │ │ │ │ ├── ICommandStreamInfo.java │ │ │ │ ├── IStreamingControlInterface.java │ │ │ │ └── IStreamingControlInterfaceWithResult.java │ │ │ ├── common │ │ │ │ ├── BigId.java │ │ │ │ ├── BigIdBytes.java │ │ │ │ ├── BigIdLong.java │ │ │ │ ├── BigIdZero.java │ │ │ │ ├── IdEncoder.java │ │ │ │ ├── IdEncoders.java │ │ │ │ ├── SensorHubException.java │ │ │ │ └── ValueRange.java │ │ │ ├── config │ │ │ │ └── DisplayInfo.java │ │ │ ├── data │ │ │ │ ├── DataEvent.java │ │ │ │ ├── DataStreamAddedEvent.java │ │ │ │ ├── DataStreamChangedEvent.java │ │ │ │ ├── DataStreamDisabledEvent.java │ │ │ │ ├── DataStreamEnabledEvent.java │ │ │ │ ├── DataStreamEvent.java │ │ │ │ ├── DataStreamInfo.java │ │ │ │ ├── DataStreamRemovedEvent.java │ │ │ │ ├── IDataProducer.java │ │ │ │ ├── IDataProducerModule.java │ │ │ │ ├── IDataStreamInfo.java │ │ │ │ ├── IObsData.java │ │ │ │ ├── IStreamingDataInterface.java │ │ │ │ ├── ObsData.java │ │ │ │ └── ObsEvent.java │ │ │ ├── database │ │ │ │ ├── DatabaseConfig.java │ │ │ │ ├── IDatabase.java │ │ │ │ ├── IDatabaseModuleDescriptor.java │ │ │ │ ├── IDatabaseRegistry.java │ │ │ │ ├── IFeatureDatabase.java │ │ │ │ ├── IFederatedDatabase.java │ │ │ │ ├── IObsSystemDatabase.java │ │ │ │ ├── IObsSystemDatabaseModule.java │ │ │ │ ├── IObsSystemDbAutoPurgePolicy.java │ │ │ │ ├── IProcedureDatabase.java │ │ │ │ └── ISystemStateDatabase.java │ │ │ ├── datastore │ │ │ │ ├── AsyncStream.java │ │ │ │ ├── DataStoreException.java │ │ │ │ ├── EmptyFilterIntersection.java │ │ │ │ ├── FullTextFilter.java │ │ │ │ ├── IDataStore.java │ │ │ │ ├── IQueryFilter.java │ │ │ │ ├── IdProvider.java │ │ │ │ ├── RangeFilter.java │ │ │ │ ├── RangeOrSet.java │ │ │ │ ├── SpatialFilter.java │ │ │ │ ├── TemporalFilter.java │ │ │ │ ├── ValueField.java │ │ │ │ ├── VersionFilter.java │ │ │ │ ├── command │ │ │ │ │ ├── CommandFilter.java │ │ │ │ │ ├── CommandStats.java │ │ │ │ │ ├── CommandStatsQuery.java │ │ │ │ │ ├── CommandStatusFilter.java │ │ │ │ │ ├── CommandStreamFilter.java │ │ │ │ │ ├── CommandStreamKey.java │ │ │ │ │ ├── EmptyCommandStatusStore.java │ │ │ │ │ ├── EmptyCommandStore.java │ │ │ │ │ ├── EmptyCommandStreamStore.java │ │ │ │ │ ├── ICommandStatusStore.java │ │ │ │ │ ├── ICommandStore.java │ │ │ │ │ └── ICommandStreamStore.java │ │ │ │ ├── deployment │ │ │ │ │ ├── DeploymentFilter.java │ │ │ │ │ ├── EmptyDeploymentStore.java │ │ │ │ │ └── IDeploymentStore.java │ │ │ │ ├── feature │ │ │ │ │ ├── EmptyFeatureBaseStore.java │ │ │ │ │ ├── EmptyFoiStore.java │ │ │ │ │ ├── FeatureFilter.java │ │ │ │ │ ├── FeatureFilterBase.java │ │ │ │ │ ├── FeatureKey.java │ │ │ │ │ ├── FoiFilter.java │ │ │ │ │ ├── IFeatureStore.java │ │ │ │ │ ├── IFeatureStoreBase.java │ │ │ │ │ └── IFoiStore.java │ │ │ │ ├── func │ │ │ │ │ └── JavascriptPredicate.java │ │ │ │ ├── obs │ │ │ │ │ ├── DataStreamFilter.java │ │ │ │ │ ├── DataStreamKey.java │ │ │ │ │ ├── EmptyDataStreamStore.java │ │ │ │ │ ├── EmptyObsStore.java │ │ │ │ │ ├── IDataStreamStore.java │ │ │ │ │ ├── IObsStore.java │ │ │ │ │ ├── ObsFilter.java │ │ │ │ │ ├── ObsStats.java │ │ │ │ │ └── ObsStatsQuery.java │ │ │ │ ├── procedure │ │ │ │ │ ├── EmptyProcedureStore.java │ │ │ │ │ ├── IProcedureStore.java │ │ │ │ │ └── ProcedureFilter.java │ │ │ │ ├── property │ │ │ │ │ ├── EmptyPropertyStore.java │ │ │ │ │ ├── IPropertyStore.java │ │ │ │ │ ├── PropertyFilter.java │ │ │ │ │ └── PropertyKey.java │ │ │ │ ├── resource │ │ │ │ │ ├── EmptyResourceStore.java │ │ │ │ │ └── IResourceStore.java │ │ │ │ └── system │ │ │ │ │ ├── EmptySystemStore.java │ │ │ │ │ ├── ISystemDescStore.java │ │ │ │ │ └── SystemFilter.java │ │ │ ├── event │ │ │ │ ├── Event.java │ │ │ │ ├── EventUtils.java │ │ │ │ ├── IEventBus.java │ │ │ │ ├── IEventHandler.java │ │ │ │ ├── IEventListener.java │ │ │ │ ├── IEventMultiTopicProducer.java │ │ │ │ ├── IEventProducer.java │ │ │ │ ├── IEventPublisher.java │ │ │ │ ├── IEventSourceInfo.java │ │ │ │ ├── ISubscriptionBuilder.java │ │ │ │ └── SubscribeOptions.java │ │ │ ├── feature │ │ │ │ ├── FeatureId.java │ │ │ │ ├── FeatureLink.java │ │ │ │ ├── FeatureWrapper.java │ │ │ │ ├── FoiAddedEvent.java │ │ │ │ └── ISmlFeature.java │ │ │ ├── module │ │ │ │ ├── IModule.java │ │ │ │ ├── IModuleBase.java │ │ │ │ ├── IModuleConfigRepository.java │ │ │ │ ├── IModuleManager.java │ │ │ │ ├── IModuleManagerFactory.java │ │ │ │ ├── IModuleProvider.java │ │ │ │ ├── IModuleStateManager.java │ │ │ │ ├── ISubModule.java │ │ │ │ ├── ModuleConfig.java │ │ │ │ ├── ModuleConfigBase.java │ │ │ │ ├── ModuleEvent.java │ │ │ │ └── SubModuleConfig.java │ │ │ ├── procedure │ │ │ │ └── IProcedureWithDesc.java │ │ │ ├── processing │ │ │ │ ├── IDataProcess.java │ │ │ │ ├── IOnDemandProcess.java │ │ │ │ ├── IParallelProcess.java │ │ │ │ ├── IProcessModule.java │ │ │ │ ├── IProcessOutput.java │ │ │ │ ├── IProcessProvider.java │ │ │ │ ├── IProcessingManager.java │ │ │ │ ├── IStreamProcess.java │ │ │ │ ├── OSHProcessInfo.java │ │ │ │ ├── ProcessConfig.java │ │ │ │ ├── ProcessingEvent.java │ │ │ │ └── ProcessingException.java │ │ │ ├── resource │ │ │ │ ├── IVersionedResource.java │ │ │ │ ├── ResourceFilter.java │ │ │ │ └── ResourceKey.java │ │ │ ├── security │ │ │ │ ├── IAuthorizer.java │ │ │ │ ├── IParameterizedPermission.java │ │ │ │ ├── IPermission.java │ │ │ │ ├── IPermissionPath.java │ │ │ │ ├── IPermissionUpdates.java │ │ │ │ ├── IRoleRegistry.java │ │ │ │ ├── ISecurityManager.java │ │ │ │ ├── IUserInfo.java │ │ │ │ ├── IUserPermissions.java │ │ │ │ ├── IUserRegistry.java │ │ │ │ ├── IUserRole.java │ │ │ │ ├── SecurityConfig.java │ │ │ │ └── SecurityModuleConfig.java │ │ │ ├── semantic │ │ │ │ ├── IConceptDef.java │ │ │ │ ├── IDerivedProperty.java │ │ │ │ └── IRelationship.java │ │ │ ├── sensor │ │ │ │ ├── IActuatorDriver.java │ │ │ │ ├── ISensorDriver.java │ │ │ │ ├── ISensorModule.java │ │ │ │ ├── PositionConfig.java │ │ │ │ ├── SensorConfig.java │ │ │ │ ├── SensorDriverConfig.java │ │ │ │ └── SensorException.java │ │ │ ├── service │ │ │ │ ├── CustomFormatConfig.java │ │ │ │ ├── HttpServiceConfig.java │ │ │ │ ├── IHttpServer.java │ │ │ │ ├── IServiceModule.java │ │ │ │ ├── ServiceConfig.java │ │ │ │ └── ServiceException.java │ │ │ ├── system │ │ │ │ ├── IDeploymentWithDesc.java │ │ │ │ ├── ISystemDriver.java │ │ │ │ ├── ISystemDriverDatabase.java │ │ │ │ ├── ISystemDriverRegistry.java │ │ │ │ ├── ISystemGroupDriver.java │ │ │ │ ├── ISystemWithDesc.java │ │ │ │ ├── SystemAddedEvent.java │ │ │ │ ├── SystemChangedEvent.java │ │ │ │ ├── SystemDisabledEvent.java │ │ │ │ ├── SystemEnabledEvent.java │ │ │ │ ├── SystemEvent.java │ │ │ │ └── SystemRemovedEvent.java │ │ │ └── utils │ │ │ │ └── OshAsserts.java │ │ │ ├── impl │ │ │ ├── Activator.java │ │ │ ├── SensorHub.java │ │ │ ├── SensorHubConfig.java │ │ │ ├── comm │ │ │ │ ├── BluetoothConfig.java │ │ │ │ ├── HTTPConfig.java │ │ │ │ ├── IPConfig.java │ │ │ │ ├── IPNetworkUtils.java │ │ │ │ ├── LocalMessageQueue.java │ │ │ │ ├── LocalMessageQueueConfig.java │ │ │ │ ├── LocalMessageQueueDescriptor.java │ │ │ │ ├── NetworkManagerImpl.java │ │ │ │ ├── RobustHTTPConnection.java │ │ │ │ ├── RobustIPConnection.java │ │ │ │ ├── RobustIPConnectionConfig.java │ │ │ │ ├── TCPCommModuleDescriptor.java │ │ │ │ ├── TCPCommProvider.java │ │ │ │ ├── TCPCommProviderConfig.java │ │ │ │ ├── TCPConfig.java │ │ │ │ ├── UARTConfig.java │ │ │ │ ├── UDPCommModuleDescriptor.java │ │ │ │ ├── UDPCommProvider.java │ │ │ │ ├── UDPCommProviderConfig.java │ │ │ │ ├── UDPConfig.java │ │ │ │ └── USBConfig.java │ │ │ ├── command │ │ │ │ └── AbstractControlInterface.java │ │ │ ├── common │ │ │ │ ├── IdEncoderBase32.java │ │ │ │ ├── IdEncoderDES.java │ │ │ │ ├── IdEncodersBase32.java │ │ │ │ └── IdEncodersDES.java │ │ │ ├── data │ │ │ │ └── AbstractDataInterface.java │ │ │ ├── database │ │ │ │ ├── registry │ │ │ │ │ ├── CommandDelegate.java │ │ │ │ │ ├── CommandStatusDelegate.java │ │ │ │ │ ├── DefaultDatabaseRegistry.java │ │ │ │ │ ├── FederatedBaseFeatureStore.java │ │ │ │ │ ├── FederatedCommandStatusStore.java │ │ │ │ │ ├── FederatedCommandStore.java │ │ │ │ │ ├── FederatedCommandStreamStore.java │ │ │ │ │ ├── FederatedDataStreamStore.java │ │ │ │ │ ├── FederatedDatabase.java │ │ │ │ │ ├── FederatedDeploymentStore.java │ │ │ │ │ ├── FederatedFeatureStore.java │ │ │ │ │ ├── FederatedFoiStore.java │ │ │ │ │ ├── FederatedObsStore.java │ │ │ │ │ ├── FederatedProcedureStore.java │ │ │ │ │ ├── FederatedPropertyStore.java │ │ │ │ │ ├── FederatedSystemDescStore.java │ │ │ │ │ ├── FilteredFederatedDatabase.java │ │ │ │ │ └── ObsDelegate.java │ │ │ │ └── system │ │ │ │ │ ├── HistoricalObsAutoPurgeConfig.java │ │ │ │ │ ├── MaxAgeAutoPurgeConfig.java │ │ │ │ │ ├── MaxAgeAutoPurgePolicy.java │ │ │ │ │ ├── SystemDriverDatabase.java │ │ │ │ │ ├── SystemDriverDatabaseConfig.java │ │ │ │ │ └── SystemDriverDatabaseDescriptor.java │ │ │ ├── datastore │ │ │ │ ├── DataStoreFiltersTypeAdapterFactory.java │ │ │ │ ├── DataStoreUtils.java │ │ │ │ ├── EmptyDataStore.java │ │ │ │ ├── IteratorWrapper.java │ │ │ │ ├── MergeSortSpliterator.java │ │ │ │ ├── ReadOnlyDataStore.java │ │ │ │ ├── SpliteratorWrapper.java │ │ │ │ ├── command │ │ │ │ │ ├── CommandStreamInfoWrapper.java │ │ │ │ │ ├── EmptyCommandStatusStore.java │ │ │ │ │ ├── EmptyCommandStore.java │ │ │ │ │ └── EmptyCommandStreamStore.java │ │ │ │ ├── mem │ │ │ │ │ ├── InMemoryBaseFeatureStore.java │ │ │ │ │ ├── InMemoryCommandStatusStore.java │ │ │ │ │ ├── InMemoryCommandStore.java │ │ │ │ │ ├── InMemoryCommandStreamStore.java │ │ │ │ │ ├── InMemoryDataStore.java │ │ │ │ │ ├── InMemoryDataStreamStore.java │ │ │ │ │ ├── InMemoryDeploymentStore.java │ │ │ │ │ ├── InMemoryFeatureStore.java │ │ │ │ │ ├── InMemoryFoiStore.java │ │ │ │ │ ├── InMemoryIdProvider.java │ │ │ │ │ ├── InMemoryObsStore.java │ │ │ │ │ ├── InMemoryProcedureDatabase.java │ │ │ │ │ ├── InMemoryProcedureStore.java │ │ │ │ │ ├── InMemoryPropertyStore.java │ │ │ │ │ ├── InMemoryResourceStore.java │ │ │ │ │ ├── InMemorySystemStateDatabase.java │ │ │ │ │ ├── InMemorySystemStateDbConfig.java │ │ │ │ │ └── InMemorySystemStore.java │ │ │ │ ├── obs │ │ │ │ │ └── DataStreamInfoWrapper.java │ │ │ │ └── view │ │ │ │ │ ├── CommandStatusStoreView.java │ │ │ │ │ ├── CommandStoreView.java │ │ │ │ │ ├── CommandStreamStoreView.java │ │ │ │ │ ├── DataStreamStoreView.java │ │ │ │ │ ├── DeploymentStoreView.java │ │ │ │ │ ├── FeatureStoreViewBase.java │ │ │ │ │ ├── FoiStoreView.java │ │ │ │ │ ├── ObsStoreView.java │ │ │ │ │ ├── ObsSystemDatabaseView.java │ │ │ │ │ ├── ObsSystemDatabaseViewConfig.java │ │ │ │ │ ├── ProcedureDatabaseView.java │ │ │ │ │ ├── ProcedureStoreView.java │ │ │ │ │ ├── PropertyStoreView.java │ │ │ │ │ └── SystemStoreView.java │ │ │ ├── event │ │ │ │ ├── AggregateSubscription.java │ │ │ │ ├── BaseSubscriber.java │ │ │ │ ├── BasicEventHandler.java │ │ │ │ ├── DelegatingSubscriber.java │ │ │ │ ├── DelegatingSubscriberAdapter.java │ │ │ │ ├── DelegatingSubscription.java │ │ │ │ ├── EventBus.java │ │ │ │ ├── EventSourceInfo.java │ │ │ │ ├── EventThreadFactory.java │ │ │ │ ├── FilteredAsyncPublisher.java │ │ │ │ ├── FilteredEventPublisher.java │ │ │ │ ├── FilteredEventPublisherWrapper.java │ │ │ │ ├── FilteredSubmissionPublisherV11.java │ │ │ │ ├── FilteredSubscriber.java │ │ │ │ ├── ListenerSubscriber.java │ │ │ │ ├── SubmissionPublisherRetroflow.java │ │ │ │ ├── SubscriberConsumerAdapter.java │ │ │ │ ├── SubscriberGroup.java │ │ │ │ └── WeakEventHandler.java │ │ │ ├── module │ │ │ │ ├── AbstractModule.java │ │ │ │ ├── AbstractSubModule.java │ │ │ │ ├── DefaultModuleStateManager.java │ │ │ │ ├── InMemoryConfigDb.java │ │ │ │ ├── JarModuleProvider.java │ │ │ │ ├── ModuleClassFinder.java │ │ │ │ ├── ModuleConfigJsonFile.java │ │ │ │ ├── ModuleRegistry.java │ │ │ │ ├── ModuleSecurity.java │ │ │ │ ├── RobustConnection.java │ │ │ │ └── RobustConnectionConfig.java │ │ │ ├── processing │ │ │ │ ├── AbstractProcessDriver.java │ │ │ │ ├── AbstractProcessModule.java │ │ │ │ ├── AbstractProcessProvider.java │ │ │ │ ├── AbstractProcessWrapperModule.java │ │ │ │ ├── CommandStreamSink.java │ │ │ │ ├── DataStreamSource.java │ │ │ │ ├── ISensorHubProcess.java │ │ │ │ ├── OnDemandProcess.java │ │ │ │ ├── ProcessingManagerImpl.java │ │ │ │ ├── SMLInputInterface.java │ │ │ │ ├── SMLOutputInterface.java │ │ │ │ ├── SMLProcessConfig.java │ │ │ │ ├── SMLProcessDescriptor.java │ │ │ │ ├── SMLProcessImpl.java │ │ │ │ └── StreamDataSource.java │ │ │ ├── security │ │ │ │ ├── AbstractPermission.java │ │ │ │ ├── BasicSecurityRealm.java │ │ │ │ ├── BasicSecurityRealmConfig.java │ │ │ │ ├── BasicSecurityRealmDescriptor.java │ │ │ │ ├── BboxPermission.java │ │ │ │ ├── ClientAuth.java │ │ │ │ ├── DefaultAuthorizerImpl.java │ │ │ │ ├── ItemPermission.java │ │ │ │ ├── ItemWithIdPermission.java │ │ │ │ ├── ItemWithParentPermission.java │ │ │ │ ├── ModulePermissions.java │ │ │ │ ├── PermissionFactory.java │ │ │ │ ├── PermissionRequest.java │ │ │ │ ├── PermissionSetting.java │ │ │ │ ├── SecurityManagerImpl.java │ │ │ │ ├── TimeRangePermission.java │ │ │ │ └── WildcardPermission.java │ │ │ ├── semantic │ │ │ │ └── DerivedProperty.java │ │ │ ├── sensor │ │ │ │ ├── AbstractSensorControl.java │ │ │ │ ├── AbstractSensorDriver.java │ │ │ │ ├── AbstractSensorModule.java │ │ │ │ ├── AbstractSensorOutput.java │ │ │ │ ├── DefaultLocationOutput.java │ │ │ │ ├── DefaultLocationOutputLLA.java │ │ │ │ ├── DefaultOrientationOutput.java │ │ │ │ ├── DefaultOrientationOutputEuler.java │ │ │ │ ├── SensorArrayConfig.java │ │ │ │ ├── SensorSystem.java │ │ │ │ ├── SensorSystemConfig.java │ │ │ │ ├── SensorSystemDescriptor.java │ │ │ │ └── VarRateSensorOutput.java │ │ │ ├── service │ │ │ │ ├── AbstractHttpServiceModule.java │ │ │ │ ├── HttpLogoutWrapper.java │ │ │ │ ├── HttpServer.java │ │ │ │ ├── HttpServerConfig.java │ │ │ │ ├── OshLoginService.java │ │ │ │ ├── WebSocketOutputStream.java │ │ │ │ ├── WebSocketUtils.java │ │ │ │ └── ogc │ │ │ │ │ └── OGCServiceConfig.java │ │ │ └── system │ │ │ │ ├── CommandStreamTransactionHandler.java │ │ │ │ ├── DataEventToObsConverter.java │ │ │ │ ├── DataStreamTransactionHandler.java │ │ │ │ ├── DefaultSystemRegistry.java │ │ │ │ ├── SystemDatabaseTransactionHandler.java │ │ │ │ ├── SystemDriverTransactionHandler.java │ │ │ │ ├── SystemRegistryTransactionHandler.java │ │ │ │ ├── SystemSubscriptionHandler.java │ │ │ │ ├── SystemTransactionHandler.java │ │ │ │ ├── SystemUtils.java │ │ │ │ ├── VirtualSystemGroupConfig.java │ │ │ │ └── wrapper │ │ │ │ ├── AggregateProcessWrapper.java │ │ │ │ ├── DeploymentWrapper.java │ │ │ │ ├── PhysicalComponentWrapper.java │ │ │ │ ├── PhysicalSystemWrapper.java │ │ │ │ ├── ProcessWrapper.java │ │ │ │ ├── SimpleProcessWrapper.java │ │ │ │ ├── SmlFeatureWrapper.java │ │ │ │ └── SystemWrapper.java │ │ │ └── utils │ │ │ ├── Async.java │ │ │ ├── AtomicInitializer.java │ │ │ ├── CallbackException.java │ │ │ ├── ConfigCloner.java │ │ │ ├── ConfigValidator.java │ │ │ ├── DataComponentChecks.java │ │ │ ├── FileUtils.java │ │ │ ├── FilterUtils.java │ │ │ ├── Lambdas.java │ │ │ ├── MapWithWildcards.java │ │ │ ├── ModuleUtils.java │ │ │ ├── MsgUtils.java │ │ │ ├── NamedThreadFactory.java │ │ │ ├── NativeClassLoader.java │ │ │ ├── ObjectUtils.java │ │ │ ├── OshBundleActivator.java │ │ │ ├── SWEDataUtils.java │ │ │ ├── SerialExecutor.java │ │ │ └── VarInt.java │ └── resources │ │ ├── META-INF │ │ └── services │ │ │ ├── org.sensorhub.api.module.IModuleProvider │ │ │ └── org.sensorhub.api.processing.IProcessProvider │ │ └── logback.xml │ ├── site │ ├── markdown │ │ ├── adding-new-modules.md │ │ ├── design-principles.md │ │ ├── index.md │ │ ├── sensor-api.md │ │ ├── sensorml-api.md │ │ ├── sensornet-api.md │ │ └── your-first-sensor.md │ └── resources │ │ └── images │ │ ├── bus.png │ │ ├── bus_example.png │ │ ├── sensor_module.png │ │ ├── sensorhub_logo_128.png │ │ ├── sensorml_gen.png │ │ └── sensorml_gen.svg │ └── test │ ├── java │ └── org │ │ └── sensorhub │ │ ├── impl │ │ ├── TestUtils.java │ │ ├── comm │ │ │ ├── TestIpNetworkUtils.java │ │ │ └── TestTcpCommProvider.java │ │ ├── database │ │ │ └── registry │ │ │ │ └── TestFederatedDatabaseRegistry.java │ │ ├── datastore │ │ │ ├── AbstractTestCommandStore.java │ │ │ ├── AbstractTestCommandStreamStore.java │ │ │ ├── AbstractTestDataStreamStore.java │ │ │ ├── AbstractTestFeatureStore.java │ │ │ ├── AbstractTestObsDatabase.java │ │ │ ├── AbstractTestObsStore.java │ │ │ ├── TestDatastoreFilters.java │ │ │ ├── TestGsonFilterTypeAdapters.java │ │ │ ├── TestMergeSortSpliterator.java │ │ │ ├── TestSpatialFilter.java │ │ │ ├── TestTemporalFilter.java │ │ │ └── mem │ │ │ │ ├── TestInMemCommandStore.java │ │ │ │ ├── TestInMemCommandStreamStore.java │ │ │ │ ├── TestInMemDataStreamStore.java │ │ │ │ ├── TestInMemFeatureStore.java │ │ │ │ └── TestInMemObsStore.java │ │ ├── event │ │ │ ├── TestEvent.java │ │ │ └── TestEventBus.java │ │ ├── module │ │ │ ├── AsyncModule.java │ │ │ ├── AsyncModuleConfig.java │ │ │ ├── DummyModule.java │ │ │ ├── MyConfig1.java │ │ │ ├── MyConfig2.java │ │ │ ├── TestAsyncModule.java │ │ │ ├── TestModuleConfigJsonFile.java │ │ │ └── TestModuleRegistry.java │ │ ├── processing │ │ │ ├── TestCommandSinkProcess.java │ │ │ ├── TestLinearEquationDescriptor.java │ │ │ ├── TestLinearEquationProcess.java │ │ │ ├── TestLinearEquationProcessModule.java │ │ │ ├── TestOnDemandProcess.java │ │ │ ├── TestProcessDescriptors.java │ │ │ └── TestStreamProcess.java │ │ ├── sensor │ │ │ ├── AbstractTestSensorDriver.java │ │ │ ├── FakeSensor.java │ │ │ ├── FakeSensorControl1.java │ │ │ ├── FakeSensorControl2.java │ │ │ ├── FakeSensorData.java │ │ │ ├── FakeSensorData2.java │ │ │ ├── FakeSensorNetOnlyFois.java │ │ │ ├── FakeSensorNetWithMembers.java │ │ │ ├── FakeSensorWithPos.java │ │ │ ├── IFakeSensorOutput.java │ │ │ ├── SensorConfigWithPos.java │ │ │ └── TestSensorPosition.java │ │ ├── service │ │ │ ├── TcpRepeater.java │ │ │ └── TestHttpServer.java │ │ └── system │ │ │ └── TestSystemDriverRegistry.java │ │ ├── test │ │ └── AsyncTests.java │ │ └── utils │ │ ├── TestConfigValidator.java │ │ ├── TestDataComponentChecks.java │ │ ├── TestFileUtils.java │ │ ├── TestMapWithWildcards.java │ │ ├── TestSweDataUtils.java │ │ └── TestVariableExpansion.java │ └── resources │ ├── META-INF │ └── services │ │ └── org.sensorhub.api.processing.IProcessProvider │ ├── gamma2070_more.xml │ ├── logback-test.xml │ ├── module-config.json │ ├── org │ └── sensorhub │ │ └── impl │ │ └── datastore │ │ ├── datastream_filters.json │ │ ├── feature_filters.json │ │ ├── obs_filters.json │ │ └── system_filters.json │ ├── test-processchain-controlloop.xml │ ├── test-processchain-datainterface.xml │ ├── test-processchain-datastream.xml │ └── test-processchain.xml ├── sensorhub-datastore-h2 ├── build.gradle └── src │ ├── main │ ├── java │ │ └── org │ │ │ ├── h2 │ │ │ └── mvstore │ │ │ │ ├── MVBTreeMap.java │ │ │ │ ├── MVRadixTreeMap.java │ │ │ │ ├── MVVarLongDataType.java │ │ │ │ ├── RTreeEntryCursor.java │ │ │ │ ├── RadixKeyBytesDataType.java │ │ │ │ ├── RadixKeyDataType.java │ │ │ │ ├── RadixTreeCursor.java │ │ │ │ └── RangeCursor.java │ │ │ └── sensorhub │ │ │ └── impl │ │ │ └── datastore │ │ │ └── h2 │ │ │ ├── Activator.java │ │ │ ├── CommandDataType.java │ │ │ ├── CommandStatusDataType.java │ │ │ ├── CommandStreamInfoDataType.java │ │ │ ├── DataStreamInfoDataType.java │ │ │ ├── FeatureDataType.java │ │ │ ├── FeatureValidTimeAdapter.java │ │ │ ├── FixedSizeWriteBuffer.java │ │ │ ├── H2Utils.java │ │ │ ├── MVBaseFeatureStoreImpl.java │ │ │ ├── MVBaseResourceStoreImpl.java │ │ │ ├── MVCommandSeriesKeyByCommandStreamDataType.java │ │ │ ├── MVCommandStatusKey.java │ │ │ ├── MVCommandStatusKeyDataType.java │ │ │ ├── MVCommandStatusStoreImpl.java │ │ │ ├── MVCommandStoreImpl.java │ │ │ ├── MVCommandStreamKeyDataType.java │ │ │ ├── MVCommandStreamStoreImpl.java │ │ │ ├── MVDataStoreInfo.java │ │ │ ├── MVDataStreamKeyDataType.java │ │ │ ├── MVDataStreamStoreImpl.java │ │ │ ├── MVDatabaseConfig.java │ │ │ ├── MVDeploymentStoreImpl.java │ │ │ ├── MVFeatureDatabase.java │ │ │ ├── MVFeatureDatabaseConfig.java │ │ │ ├── MVFeatureDatabaseDescriptor.java │ │ │ ├── MVFeatureKeyDataType.java │ │ │ ├── MVFeatureParentKey.java │ │ │ ├── MVFeatureParentKeyByIdDataType.java │ │ │ ├── MVFeatureParentKeyDataType.java │ │ │ ├── MVFeatureRef.java │ │ │ ├── MVFeatureRefDataType.java │ │ │ ├── MVFeatureStoreImpl.java │ │ │ ├── MVFoiStoreImpl.java │ │ │ ├── MVObsSeriesKeyByDataStreamDataType.java │ │ │ ├── MVObsSeriesKeyByFoiDataType.java │ │ │ ├── MVObsStoreImpl.java │ │ │ ├── MVObsSystemDatabase.java │ │ │ ├── MVObsSystemDatabaseConfig.java │ │ │ ├── MVObsSystemDatabaseDescriptor.java │ │ │ ├── MVProcedureStoreImpl.java │ │ │ ├── MVPropertyKeyDataType.java │ │ │ ├── MVPropertyStoreImpl.java │ │ │ ├── MVSystemStoreImpl.java │ │ │ ├── MVTimeSeriesInfo.java │ │ │ ├── MVTimeSeriesInfoDataType.java │ │ │ ├── MVTimeSeriesKey.java │ │ │ ├── MVTimeSeriesRecordKey.java │ │ │ ├── MVTimeSeriesRecordKeyDataType.java │ │ │ ├── MVTimeSeriesSystemKey.java │ │ │ ├── MVTimeSeriesSystemKeyDataType.java │ │ │ ├── MVVoidDataType.java │ │ │ ├── ObsClusterDataType.java │ │ │ ├── ObsDataType.java │ │ │ ├── PropertyDataType.java │ │ │ ├── SensorMLDataType.java │ │ │ ├── index │ │ │ ├── FullTextIndex.java │ │ │ ├── ResourceRadixKeyDataType.java │ │ │ └── SpatialIndex.java │ │ │ └── kryo │ │ │ ├── FeatureClassResolver.java │ │ │ ├── KryoDataType.java │ │ │ └── PersistentClassResolver.java │ └── resources │ │ └── META-INF │ │ └── services │ │ └── org.sensorhub.api.module.IModuleProvider │ └── test │ ├── java │ └── org │ │ └── sensorhub │ │ └── impl │ │ └── datastore │ │ └── h2 │ │ ├── PrintDbInfo.java │ │ ├── TestMVCommandStore.java │ │ ├── TestMVCommandStreamStore.java │ │ ├── TestMVDataStreamStore.java │ │ ├── TestMVFeatureStore.java │ │ ├── TestMVObsDatabase.java │ │ └── TestMVObsStore.java │ └── resources │ └── empty ├── sensorhub-service-consys ├── build.gradle └── src │ ├── main │ ├── java │ │ └── org │ │ │ └── sensorhub │ │ │ └── impl │ │ │ └── service │ │ │ └── consys │ │ │ ├── AbstractDataStoreWrapper.java │ │ │ ├── Activator.java │ │ │ ├── BaseHandler.java │ │ │ ├── ConSysApiSecurity.java │ │ │ ├── ConSysApiService.java │ │ │ ├── ConSysApiServiceConfig.java │ │ │ ├── ConSysApiServiceDescriptor.java │ │ │ ├── ConSysApiServlet.java │ │ │ ├── CustomFormatConfig.java │ │ │ ├── InvalidRequestException.java │ │ │ ├── LinkResolver.java │ │ │ ├── ObsSystemDbWrapper.java │ │ │ ├── ResourceParseException.java │ │ │ ├── RestApiSecurity.java │ │ │ ├── RestApiService.java │ │ │ ├── RestApiServlet.java │ │ │ ├── RootHandler.java │ │ │ ├── SWECommonUtils.java │ │ │ ├── ServiceErrors.java │ │ │ ├── UnauthorizedAccessException.java │ │ │ ├── client │ │ │ ├── ConSysApiClient.java │ │ │ ├── ConSysApiClientConfig.java │ │ │ ├── ConSysApiClientDescriptor.java │ │ │ └── ConSysApiClientModule.java │ │ │ ├── deployment │ │ │ ├── DeploymentAssocs.java │ │ │ ├── DeploymentBindingGeoJson.java │ │ │ ├── DeploymentBindingHtml.java │ │ │ ├── DeploymentBindingSmlJson.java │ │ │ ├── DeploymentEventBindingJson.java │ │ │ ├── DeploymentEventsHandler.java │ │ │ ├── DeploymentHandler.java │ │ │ ├── DeploymentMembersHandler.java │ │ │ └── DeploymentStoreWrapper.java │ │ │ ├── event │ │ │ └── ResourceEventsHandler.java │ │ │ ├── feature │ │ │ ├── AbstractFeatureBindingGeoJson.java │ │ │ ├── AbstractFeatureBindingHtml.java │ │ │ ├── AbstractFeatureHandler.java │ │ │ ├── AbstractFeatureHistoryHandler.java │ │ │ ├── AbstractFeatureStoreWrapper.java │ │ │ ├── DynamicFoiBindingGeoJson.java │ │ │ ├── DynamicGeomScanner.java │ │ │ ├── DynamicPropsWriter.java │ │ │ ├── FeatureBindingGeoJson.java │ │ │ ├── FeatureBindingHtml.java │ │ │ ├── FeatureCollectionBindingGeoJson.java │ │ │ ├── FeatureHandler.java │ │ │ ├── FeatureHistoryHandler.java │ │ │ ├── FeatureMembersHandler.java │ │ │ ├── FeatureStoreWrapper.java │ │ │ ├── FeatureUtils.java │ │ │ ├── FoiBindingGeoJson.java │ │ │ ├── FoiBindingHtml.java │ │ │ ├── FoiHandler.java │ │ │ ├── FoiHistoryHandler.java │ │ │ └── FoiStoreWrapper.java │ │ │ ├── home │ │ │ ├── CollectionHandler.java │ │ │ ├── CollectionHtml.java │ │ │ ├── CollectionJson.java │ │ │ ├── ConformanceHandler.java │ │ │ ├── ConformanceHtml.java │ │ │ ├── ConformanceJson.java │ │ │ ├── HomePageHandler.java │ │ │ ├── HomePageHtml.java │ │ │ └── HomePageJson.java │ │ │ ├── json │ │ │ ├── DelegatingJsonWriter.java │ │ │ ├── FilteredJsonWriter.java │ │ │ └── ObjectPatchJsonWriter.java │ │ │ ├── obs │ │ │ ├── CustomObsFormat.java │ │ │ ├── DataStreamAssocs.java │ │ │ ├── DataStreamBindingHtml.java │ │ │ ├── DataStreamBindingJson.java │ │ │ ├── DataStreamEventBindingJson.java │ │ │ ├── DataStreamEventsHandler.java │ │ │ ├── DataStreamHandler.java │ │ │ ├── DataStreamSchemaBindingLogicalJsonSchema.java │ │ │ ├── DataStreamSchemaBindingOmJson.java │ │ │ ├── DataStreamSchemaBindingSweCommon.java │ │ │ ├── DataStreamSchemaHandler.java │ │ │ ├── DataStreamStoreWrapper.java │ │ │ ├── ObsBindingOmJson.java │ │ │ ├── ObsBindingSweCommon.java │ │ │ ├── ObsHandler.java │ │ │ ├── ObsStatsBindingJson.java │ │ │ ├── ObsStatsHandler.java │ │ │ └── ObsStoreWrapper.java │ │ │ ├── procedure │ │ │ ├── ProcedureAssocs.java │ │ │ ├── ProcedureBindingGeoJson.java │ │ │ ├── ProcedureBindingHtml.java │ │ │ ├── ProcedureBindingSmlJson.java │ │ │ ├── ProcedureBindingSmlXml.java │ │ │ ├── ProcedureEventBindingJson.java │ │ │ ├── ProcedureEventsHandler.java │ │ │ ├── ProcedureHandler.java │ │ │ └── ProcedureStoreWrapper.java │ │ │ ├── property │ │ │ ├── PropertyAssocs.java │ │ │ ├── PropertyBindingHtml.java │ │ │ ├── PropertyBindingJson.java │ │ │ ├── PropertyBindingTurtle.java │ │ │ ├── PropertyHandler.java │ │ │ └── PropertyStoreWrapper.java │ │ │ ├── resource │ │ │ ├── AbstractResourceStoreWrapper.java │ │ │ ├── BaseResourceHandler.java │ │ │ ├── IResourceEventListener.java │ │ │ ├── IResourceHandler.java │ │ │ ├── JarStaticResourceHandler.java │ │ │ ├── PropertyFilter.java │ │ │ ├── RequestContext.java │ │ │ ├── ResourceBinding.java │ │ │ ├── ResourceBindingHtml.java │ │ │ ├── ResourceBindingJson.java │ │ │ ├── ResourceBindingXml.java │ │ │ ├── ResourceFormat.java │ │ │ ├── ResourceHandler.java │ │ │ └── ResourceLink.java │ │ │ ├── sensorml │ │ │ ├── DeploymentAdapter.java │ │ │ ├── ProcedureAdapter.java │ │ │ ├── SMLConverter.java │ │ │ ├── SmlFeatureAdapter.java │ │ │ ├── SmlFeatureBindingHtml.java │ │ │ ├── SmlProcessBindingSmlJson.java │ │ │ ├── SmlProcessBindingSmlXml.java │ │ │ └── SystemAdapter.java │ │ │ ├── stream │ │ │ ├── StreamHandler.java │ │ │ └── WebSocketOut.java │ │ │ ├── system │ │ │ ├── SystemAssocs.java │ │ │ ├── SystemBindingGeoJson.java │ │ │ ├── SystemBindingHtml.java │ │ │ ├── SystemBindingSmlJson.java │ │ │ ├── SystemBindingSmlXml.java │ │ │ ├── SystemEventBindingJson.java │ │ │ ├── SystemEventsHandler.java │ │ │ ├── SystemHandler.java │ │ │ ├── SystemHistoryHandler.java │ │ │ ├── SystemMembersHandler.java │ │ │ └── SystemStoreWrapper.java │ │ │ └── task │ │ │ ├── CommandBindingJson.java │ │ │ ├── CommandBindingSweCommon.java │ │ │ ├── CommandHandler.java │ │ │ ├── CommandResultBindingSweCommon.java │ │ │ ├── CommandResultHandler.java │ │ │ ├── CommandStatusBindingJson.java │ │ │ ├── CommandStatusHandler.java │ │ │ ├── CommandStoreWrapper.java │ │ │ ├── CommandStreamAssocs.java │ │ │ ├── CommandStreamBindingHtml.java │ │ │ ├── CommandStreamBindingJson.java │ │ │ ├── CommandStreamEventBindingJson.java │ │ │ ├── CommandStreamEventsHandler.java │ │ │ ├── CommandStreamHandler.java │ │ │ ├── CommandStreamSchemaBindingJson.java │ │ │ ├── CommandStreamSchemaBindingSweCommon.java │ │ │ ├── CommandStreamSchemaHandler.java │ │ │ └── CommandStreamStoreWrapper.java │ └── resources │ │ ├── META-INF │ │ └── services │ │ │ └── org.sensorhub.api.module.IModuleProvider │ │ ├── css │ │ ├── bootstrap-icons.css │ │ ├── bootstrap.min.css │ │ └── fonts │ │ │ └── bootstrap-icons.woff2 │ │ └── js │ │ └── bootstrap.bundle.min.js │ └── test │ ├── java │ └── org │ │ └── sensorhub │ │ └── impl │ │ └── service │ │ └── consys │ │ ├── AbstractTestAllFeatures.java │ │ ├── AbstractTestAllSmlFeatures.java │ │ ├── AbstractTestApiBase.java │ │ ├── TestApiAccessControl.java │ │ ├── TestApiObsWs.java │ │ ├── TestControlStreams.java │ │ ├── TestDataStreams.java │ │ ├── TestDeployments.java │ │ ├── TestFois.java │ │ ├── TestObservations.java │ │ ├── TestObservationsWs.java │ │ ├── TestProcedures.java │ │ ├── TestSystems.java │ │ ├── client │ │ ├── TestClientBase.java │ │ ├── TestClientControlStreams.java │ │ ├── TestClientDataStreams.java │ │ └── TestClientSystems.java │ │ └── demodata │ │ ├── Aanderaa.java │ │ ├── Api.java │ │ ├── Dahua.java │ │ ├── Davis.java │ │ ├── GfsModel.java │ │ ├── Gill.java │ │ ├── Humans.java │ │ ├── IngestDemoData.java │ │ ├── LaserTech.java │ │ ├── MaritimeAis.java │ │ ├── MavicPro.java │ │ ├── Nexrad.java │ │ ├── PhilipsHue.java │ │ ├── Pleiades.java │ │ ├── Rotronic.java │ │ ├── Saildrone.java │ │ ├── Seabird.java │ │ ├── SpotSat.java │ │ ├── Vaisala.java │ │ └── VectorNav.java │ └── resources │ └── org │ └── sensorhub │ └── impl │ └── service │ └── consys │ └── demodata │ └── NexradLocations.txt ├── sensorhub-service-swe ├── build.gradle └── src │ ├── main │ ├── java │ │ └── org │ │ │ └── sensorhub │ │ │ └── impl │ │ │ ├── client │ │ │ ├── sos │ │ │ │ └── SOSClient.java │ │ │ ├── sost │ │ │ │ ├── SOSTClient.java │ │ │ │ ├── SOSTClientConfig.java │ │ │ │ └── SOSTClientDescriptor.java │ │ │ └── sps │ │ │ │ └── SPSClient.java │ │ │ ├── sensor │ │ │ └── swe │ │ │ │ ├── ITaskingCallback.java │ │ │ │ ├── SWEVirtualSensor.java │ │ │ │ ├── SWEVirtualSensorConfig.java │ │ │ │ ├── SWEVirtualSensorControl.java │ │ │ │ ├── SWEVirtualSensorDescriptor.java │ │ │ │ └── SWEVirtualSensorOutput.java │ │ │ └── service │ │ │ ├── sos │ │ │ ├── AbstractAsyncSerializer.java │ │ │ ├── AbstractAsyncSerializerStax.java │ │ │ ├── AbstractObsSerializerStax.java │ │ │ ├── AbstractResultSerializerSwe.java │ │ │ ├── BufferedAsyncOutputStream.java │ │ │ ├── CapabilitiesUpdater.java │ │ │ ├── FeatureSerializerGeoJson.java │ │ │ ├── FeatureSerializerGml.java │ │ │ ├── GetObsMultiProviderSubscriber.java │ │ │ ├── HistoricalDataProvider.java │ │ │ ├── IAsyncResponseSerializer.java │ │ │ ├── ISOSAsyncDataProvider.java │ │ │ ├── ISOSAsyncFeatureSerializer.java │ │ │ ├── ISOSAsyncObsSerializer.java │ │ │ ├── ISOSAsyncProcedureSerializer.java │ │ │ ├── ISOSAsyncResultSerializer.java │ │ │ ├── ISOSAsyncResultTemplateSerializer.java │ │ │ ├── ISOSCustomSerializer.java │ │ │ ├── ISOSDataProvider.java │ │ │ ├── ObsSerializerJson.java │ │ │ ├── ObsSerializerXml.java │ │ │ ├── ProcedureSerializerJson.java │ │ │ ├── ProcedureSerializerXml.java │ │ │ ├── ResultSerializerBinary.java │ │ │ ├── ResultSerializerJson.java │ │ │ ├── ResultSerializerText.java │ │ │ ├── ResultSerializerXml.java │ │ │ ├── ResultTemplateSerializerJson.java │ │ │ ├── ResultTemplateSerializerXml.java │ │ │ ├── SOSCustomFormatConfig.java │ │ │ ├── SOSProviderConfig.java │ │ │ ├── SOSProviderUtils.java │ │ │ ├── SOSSecurity.java │ │ │ ├── SOSService.java │ │ │ ├── SOSServiceConfig.java │ │ │ ├── SOSServiceDescriptor.java │ │ │ ├── SOSServlet.java │ │ │ ├── SOSWebSocketIn.java │ │ │ ├── SOSWebSocketOut.java │ │ │ ├── StreamingDataProvider.java │ │ │ ├── SystemDataProvider.java │ │ │ ├── SystemDataProviderConfig.java │ │ │ └── TimeOutMonitor.java │ │ │ ├── sps │ │ │ ├── CapabilitiesUpdater.java │ │ │ ├── ISPSConnector.java │ │ │ ├── ITask.java │ │ │ ├── ProcedureSerializerXml.java │ │ │ ├── SPSConnectorConfig.java │ │ │ ├── SPSSecurity.java │ │ │ ├── SPSService.java │ │ │ ├── SPSServiceConfig.java │ │ │ ├── SPSServiceDescriptor.java │ │ │ ├── SPSServlet.java │ │ │ ├── SPSWebSocketIn.java │ │ │ ├── SPSWebSocketOut.java │ │ │ ├── SystemTaskingConnector.java │ │ │ ├── SystemTaskingConnectorConfig.java │ │ │ └── Task.java │ │ │ └── swe │ │ │ ├── Activator.java │ │ │ ├── IAsyncOutputStream.java │ │ │ ├── OfferingConfig.java │ │ │ ├── RecordTemplate.java │ │ │ ├── SWEService.java │ │ │ ├── SWEServiceConfig.java │ │ │ ├── SWEServlet.java │ │ │ ├── TransactionUtils.java │ │ │ └── WebSocketOutputStreamAsync.java │ └── resources │ │ └── META-INF │ │ └── services │ │ └── org.sensorhub.api.module.IModuleProvider │ ├── site │ └── markdown │ │ ├── index.md │ │ └── sos-temporal-filtering.md │ └── test │ ├── java │ └── org │ │ └── sensorhub │ │ └── impl │ │ └── service │ │ ├── sos │ │ ├── TestAsyncContext.java │ │ ├── TestConcurrentGetCaps.java │ │ ├── TestObsSerializers.java │ │ ├── TestProcedureSerializers.java │ │ ├── TestResultSerializers.java │ │ ├── TestSOSClient.java │ │ ├── TestSOSService.java │ │ ├── TestSOSTClient.java │ │ ├── TestSOSTService.java │ │ ├── TestSubscriber.java │ │ └── TestSubscription.java │ │ └── sps │ │ ├── TestSPSService.java │ │ └── TestSPSTService.java │ └── resources │ └── empty ├── sensorhub-utils-kryo ├── build.gradle └── src │ ├── main │ └── java │ │ └── org │ │ └── sensorhub │ │ └── impl │ │ └── serialization │ │ └── kryo │ │ ├── BigIdSerializers.java │ │ ├── GeomSerializer.java │ │ ├── QNameSerializer.java │ │ ├── VersionedSerializer.java │ │ ├── VersionedSerializerFactory.java │ │ └── compat │ │ ├── BackwardCompatFieldSerializer.java │ │ ├── v1 │ │ ├── BigIdAsBigIntCachedField.java │ │ ├── BigIdAsLongCachedField.java │ │ ├── CommandDataSerializerV1.java │ │ ├── CommandStatusSerializerV1.java │ │ ├── FeatureIdSerializerV1.java │ │ ├── FeatureSerializerV1.java │ │ ├── ObsDataSerializerV1.java │ │ └── PrecisionModelSerializerV1.java │ │ ├── v2 │ │ ├── BigIdAsBytesCachedField.java │ │ ├── CommandDataSerializerV2.java │ │ ├── CommandStatusSerializerV2.java │ │ └── CommandStreamInfoSerializerV2.java │ │ ├── v3 │ │ ├── CapabilityListSerializerV3.java │ │ └── CharacteristicListSerializerV3.java │ │ └── v4 │ │ └── DataStreamInfoSerializerV4.java │ └── test │ └── java │ └── org │ └── sensorhub │ └── impl │ └── serialization │ └── kryo │ ├── TestFeatureSerializer.java │ ├── TestObjectV1.java │ ├── TestObjectV1CompatSerializer.java │ ├── TestObjectV2.java │ └── TestVersionedSerializers.java ├── sensorhub-webui-core ├── build.gradle ├── src │ ├── main │ │ ├── .gitignore │ │ ├── java │ │ │ └── org │ │ │ │ └── sensorhub │ │ │ │ └── ui │ │ │ │ ├── Activator.java │ │ │ │ ├── AdminUI.java │ │ │ │ ├── AdminUIConfig.java │ │ │ │ ├── AdminUIDescriptor.java │ │ │ │ ├── AdminUIModule.java │ │ │ │ ├── AdminUISecurity.java │ │ │ │ ├── AdminUIServlet.java │ │ │ │ ├── BasicSecurityConfigForm.java │ │ │ │ ├── CommProviderConfigForm.java │ │ │ │ ├── ConfirmDialog.java │ │ │ │ ├── CustomUIConfig.java │ │ │ │ ├── DataSourceAdminPanel.java │ │ │ │ ├── DatabaseAdminPanel.java │ │ │ │ ├── DatabaseStreamPanel.java │ │ │ │ ├── DefaultModulePanel.java │ │ │ │ ├── DisplayUtils.java │ │ │ │ ├── DownloadModulesPopup.java │ │ │ │ ├── DownloadOsgiBundlesPopup.java │ │ │ │ ├── FederatedDbModuleAdapter.java │ │ │ │ ├── FieldWrapper.java │ │ │ │ ├── GenericConfigForm.java │ │ │ │ ├── HttpServerConfigForm.java │ │ │ │ ├── ModuleErrors.java │ │ │ │ ├── ModuleInstanceSelectionPopup.java │ │ │ │ ├── ModuleTypeSelectionPopup.java │ │ │ │ ├── NetworkAddressSelectionPopup.java │ │ │ │ ├── NetworkAdminPanel.java │ │ │ │ ├── ObjectTypeSelectionPopup.java │ │ │ │ ├── ProcessAdminPanel.java │ │ │ │ ├── ProcessFlowDiagram.java │ │ │ │ ├── ProcessSelectionPopup.java │ │ │ │ ├── ReadmePanel.java │ │ │ │ ├── SOSAdminPanel.java │ │ │ │ ├── SOSConfigForm.java │ │ │ │ ├── SPSAdminPanel.java │ │ │ │ ├── SPSConfigForm.java │ │ │ │ ├── SWECommonForm.java │ │ │ │ ├── SWEControlForm.java │ │ │ │ ├── SWEEditForm.java │ │ │ │ ├── SWEParamForm.java │ │ │ │ ├── SearchBox.java │ │ │ │ ├── SensorAdminPanel.java │ │ │ │ ├── SystemDriverDatabaseConfigForm.java │ │ │ │ ├── SystemSearchList.java │ │ │ │ ├── SystemSelectionPopup.java │ │ │ │ ├── TabbedConfigForms.java │ │ │ │ ├── ValueEntryPopup.java │ │ │ │ ├── ValueEnumPopup.java │ │ │ │ ├── api │ │ │ │ ├── IModuleAdminPanel.java │ │ │ │ ├── IModuleConfigForm.java │ │ │ │ └── UIConstants.java │ │ │ │ ├── data │ │ │ │ ├── BaseProperty.java │ │ │ │ ├── BeanUtils.java │ │ │ │ ├── ComplexProperty.java │ │ │ │ ├── ContainerProperty.java │ │ │ │ ├── FieldProperty.java │ │ │ │ ├── MapProperty.java │ │ │ │ ├── MyBeanItem.java │ │ │ │ └── MyBeanItemContainer.java │ │ │ │ ├── filter │ │ │ │ ├── CommandFilterTree.java │ │ │ │ ├── CommandStreamFilterTree.java │ │ │ │ ├── DataStreamFilterTree.java │ │ │ │ ├── DatabaseFilterConfigForm.java │ │ │ │ ├── DatabaseViewConfigForm.java │ │ │ │ ├── FeatureFilterBaseTree.java │ │ │ │ ├── FilterTree.java │ │ │ │ ├── FoiFilterTree.java │ │ │ │ ├── ObsFilterTree.java │ │ │ │ ├── ResourceFilterTree.java │ │ │ │ └── SystemFilterTree.java │ │ │ │ └── table │ │ │ │ ├── LazyLoadingObsContainer.java │ │ │ │ ├── PagedTable.java │ │ │ │ ├── PagedTableContainer.java │ │ │ │ └── PagedTableControls.java │ │ └── resources │ │ │ ├── META-INF │ │ │ └── services │ │ │ │ └── org.sensorhub.api.module.IModuleProvider │ │ │ ├── VAADIN │ │ │ └── js │ │ │ │ ├── backbone.js │ │ │ │ ├── backbone.min.js │ │ │ │ ├── joint.css │ │ │ │ ├── joint.js │ │ │ │ ├── joint.min.js │ │ │ │ ├── jquery.js │ │ │ │ ├── jquery.min.js │ │ │ │ ├── lodash.js │ │ │ │ ├── lodash.min.js │ │ │ │ ├── marked.min.js │ │ │ │ ├── process_flow.css │ │ │ │ ├── process_flow.js │ │ │ │ └── readme.js │ │ │ └── org │ │ │ └── sensorhub │ │ │ └── ui │ │ │ ├── chartjs_timeline_chart.js │ │ │ └── chartjs_timeline_rangeslider.js │ └── test │ │ ├── java │ │ └── org │ │ │ └── sensorhub │ │ │ └── ui │ │ │ ├── TestServiceConfig.java │ │ │ └── TestWebUI.java │ │ └── resources │ │ └── empty └── widgetset │ ├── .gitignore │ ├── build.gradle │ └── src │ └── main │ ├── java │ └── org │ │ └── sensorhub │ │ └── ui │ │ ├── chartjs │ │ ├── Chart.java │ │ └── ChartState.java │ │ └── plotly │ │ ├── PlotlyChart.java │ │ └── PlotlyState.java │ └── resources │ ├── VAADIN │ └── themes │ │ └── sensorhub │ │ ├── addons.scss │ │ ├── icons │ │ ├── add.gif │ │ ├── add.png │ │ ├── brick.png │ │ ├── cancel.png │ │ ├── cross.png │ │ ├── delete.png │ │ ├── disable.gif │ │ ├── disconnect.png │ │ ├── enable.png │ │ ├── enabled.gif │ │ ├── errorwarning.gif │ │ ├── help.gif │ │ ├── info.gif │ │ ├── javaassist_co.gif │ │ ├── link.png │ │ ├── module_add.png │ │ ├── module_delete.png │ │ ├── newpack_wiz.gif │ │ ├── osh_logo_small.png │ │ ├── protected_co.gif │ │ ├── refresh.gif │ │ ├── remove.gif │ │ └── save.png │ │ ├── sensorhub.scss │ │ └── styles.scss │ └── org │ └── sensorhub │ └── ui │ ├── SensorHubWidgetSet.gwt.xml │ ├── chartjs │ ├── chart.min.css │ ├── chart.min.js │ ├── connector.js │ ├── moment.min.js │ ├── nouislider.min.css │ ├── nouislider.min.js │ ├── rangeslider.css │ └── test.html │ └── plotly │ ├── connector.js │ └── plotly-latest.min.js └── settings.gradle /.github/workflows/gradle_build.yml: -------------------------------------------------------------------------------- 1 | # This workflow will build a Java project with Gradle and cache/restore any dependencies to improve the workflow execution time 2 | # For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle 3 | 4 | name: Gradle Build 5 | 6 | on: 7 | push: 8 | branches: [ "master" ] 9 | pull_request: 10 | branches: [ "master" ] 11 | 12 | permissions: 13 | contents: read 14 | 15 | jobs: 16 | build: 17 | 18 | runs-on: ubuntu-latest 19 | 20 | steps: 21 | - name: Set up JDK 17 22 | uses: actions/setup-java@v3 23 | with: 24 | java-version: '17' 25 | distribution: 'temurin' 26 | - name: Checkout 27 | uses: actions/checkout@v3 28 | with: 29 | fetch-depth: 0 30 | submodules: recursive 31 | - name: Build with Gradle 32 | uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1 33 | with: 34 | arguments: build 35 | 36 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | **/bin/ 2 | **/target/ 3 | **/build/ 4 | **/.gradle/ 5 | **/.DStore 6 | **/.DS_Store 7 | **/.settings 8 | **/.project 9 | **/.classpath 10 | **/.idea 11 | **/*.iml 12 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/.gitmodules -------------------------------------------------------------------------------- /dist/main/launch.bat: -------------------------------------------------------------------------------- 1 | java -Xmx256m -Dlogback.configurationFile=./logback.xml -cp "lib/*" org.sensorhub.impl.SensorHub config.json 2 | -------------------------------------------------------------------------------- /dist/main/launch.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | java -Xmx256m -Dlogback.configurationFile=./logback.xml -cp "lib/*" org.sensorhub.impl.SensorHub config.json 3 | -------------------------------------------------------------------------------- /dist/osgi/config.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "objClass": "org.sensorhub.impl.service.HttpServerConfig", 4 | "id": "6ca9c8a8-9768-4b60-9554-a8d277bf6b3f", 5 | "name": "HTTP Server", 6 | "moduleClass": "org.sensorhub.impl.service.HttpServer", 7 | "httpPort": 8181, 8 | "servletsRootUrl": "/sensorhub", 9 | "staticDocsRootDir": "web", 10 | "autoStart": true 11 | }, 12 | { 13 | "objClass": "org.sensorhub.ui.AdminUIConfig", 14 | "id": "7219eb9f-b591-4c2c-9ad9-4b63a29a1c4a", 15 | "moduleClass": "org.sensorhub.ui.AdminUIModule", 16 | "bundleRepoUrls": [ 17 | "https://cloud.georobotix.io/addons/index.xml" 18 | ], 19 | "autoStart": true 20 | } 21 | ] 22 | -------------------------------------------------------------------------------- /dist/osgi/launch.bat: -------------------------------------------------------------------------------- 1 | java -Xmx256m -Dlogback.configurationFile=./logback.xml -cp "lib/*" org.sensorhub.impl.osgi.SensorHubOsgi config.json 2 | -------------------------------------------------------------------------------- /dist/osgi/launch.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | java -Xmx256m -Dlogback.configurationFile=./logback.xml -cp "lib/*" org.sensorhub.impl.osgi.SensorHubOsgi config.json 3 | -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- 1 | org.gradle.jvmargs=-Xmx2048m -XX:MaxMetaspaceSize=512m 2 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip 4 | networkTimeout=10000 5 | validateDistributionUrl=true 6 | zipStoreBase=GRADLE_USER_HOME 7 | zipStorePath=wrapper/dists 8 | -------------------------------------------------------------------------------- /lib-ogc/.gitignore: -------------------------------------------------------------------------------- 1 | **/bin/ 2 | **/target/ 3 | **/build/ 4 | **/.gradle/ 5 | **/.DStore 6 | **/.DS_Store 7 | **/.settings 8 | **/.project 9 | **/.classpath 10 | **/.idea 11 | **/*.iml 12 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/build.gradle: -------------------------------------------------------------------------------- 1 | group = 'org.vast.opengis' 2 | description = 'OGC Services Common' 3 | 4 | dependencies { 5 | api project(':swe-common-om') 6 | api 'javax.servlet:javax.servlet-api:3.1.0' 7 | api 'javax.activation:activation:1.1.1' 8 | } 9 | 10 | // add info to OSGI manifest 11 | jar { 12 | manifest { 13 | attributes('Bundle-Vendor': 'Sensia Software LLC') 14 | } 15 | } 16 | 17 | // add info to maven pom 18 | ext.pom >>= { 19 | developers { 20 | developer { 21 | id 'alexrobin' 22 | name 'Alex Robin' 23 | organization 'Sensia Software LLC' 24 | organizationUrl 'http://www.sensiasoft.com' 25 | } 26 | } 27 | } 28 | 29 | task packageTests(type: Jar) { 30 | from sourceSets.test.output 31 | archiveClassifier = 'tests' 32 | } 33 | 34 | configurations { 35 | testArtifacts 36 | } 37 | 38 | artifacts { 39 | testArtifacts packageTests 40 | } 41 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/After.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one After(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface After extends BinaryTemporalOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/And.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one And(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface And extends BinaryLogicOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/AnyInteracts.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one AnyInteracts(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface AnyInteracts extends BinaryTemporalOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/BBOX.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * POJO class for XML type BBOXType(@http://www.opengis.net/fes/2.0). 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface BBOX extends BinarySpatialOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/Before.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one Before(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface Before extends BinaryTemporalOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/Begins.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one Begins(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface Begins extends BinaryTemporalOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/BegunBy.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one BegunBy(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface BegunBy extends BinaryTemporalOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/Beyond.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one Beyond(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface Beyond extends DistanceBuffer 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/ComparisonOps.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * POJO class for XML type ComparisonOpsType(@http://www.opengis.net/fes/2.0). 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface ComparisonOps extends FilterPredicate 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/Conformance.java: -------------------------------------------------------------------------------- 1 | package net.opengis.fes.v20; 2 | 3 | import java.util.List; 4 | import net.opengis.ows.v11.Domain; 5 | 6 | 7 | /** 8 | * POJO class for XML type ConformanceType(@http://www.opengis.net/fes/2.0). 9 | * 10 | * This is a complex type. 11 | */ 12 | public interface Conformance 13 | { 14 | 15 | 16 | /** 17 | * Gets the list of constraint properties 18 | * @return property list 19 | */ 20 | public List getConstraintList(); 21 | 22 | 23 | /** 24 | * Returns number of constraint properties 25 | * @return number of properties 26 | */ 27 | public int getNumConstraints(); 28 | 29 | 30 | /** 31 | * Adds a new constraint property 32 | * @param constraint property value 33 | */ 34 | public void addConstraint(Domain constraint); 35 | } 36 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/Contains.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one Contains(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface Contains extends BinarySpatialOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/Crosses.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one Crosses(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface Crosses extends BinarySpatialOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/DWithin.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one DWithin(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface DWithin extends DistanceBuffer 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/Disjoint.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one Disjoint(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface Disjoint extends BinarySpatialOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/During.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one During(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface During extends BinaryTemporalOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/EndedBy.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one EndedBy(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface EndedBy extends BinaryTemporalOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/Ends.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one Ends(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface Ends extends BinaryTemporalOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/Equals.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one Equals(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface Equals extends BinarySpatialOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/Expression.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | public interface Expression 18 | { 19 | 20 | } 21 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/FilterPredicate.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | public interface FilterPredicate 19 | { 20 | 21 | } 22 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/GMLExpression.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | public interface GMLExpression extends Expression 19 | { 20 | 21 | public Object getGmlObject(); 22 | 23 | 24 | public void setGmlObject(Object gmlObj); 25 | } 26 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/Intersects.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one Intersects(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface Intersects extends BinarySpatialOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/LogicOps.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * POJO class for XML type LogicOpsType(@http://www.opengis.net/fes/2.0). 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface LogicOps extends FilterPredicate 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/LogicOpsElement.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one logicOps(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface LogicOpsElement extends LogicOps 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/Meets.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one Meets(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface Meets extends BinaryTemporalOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/MetBy.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one MetBy(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface MetBy extends BinaryTemporalOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/Not.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one Not(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface Not extends UnaryLogicOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/Or.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one Or(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface Or extends BinaryLogicOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/OverlappedBy.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one OverlappedBy(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface OverlappedBy extends BinaryTemporalOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/Overlaps.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one Overlaps(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface Overlaps extends BinarySpatialOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/PropertyIsEqualTo.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one PropertyIsEqualTo(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface PropertyIsEqualTo extends BinaryComparisonOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/PropertyIsGreaterThan.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one PropertyIsGreaterThan(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface PropertyIsGreaterThan extends BinaryComparisonOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/PropertyIsGreaterThanOrEqualTo.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one PropertyIsGreaterThanOrEqualTo(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface PropertyIsGreaterThanOrEqualTo extends BinaryComparisonOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/PropertyIsLessThan.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one PropertyIsLessThan(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface PropertyIsLessThan extends BinaryComparisonOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/PropertyIsLessThanOrEqualTo.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one PropertyIsLessThanOrEqualTo(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface PropertyIsLessThanOrEqualTo extends BinaryComparisonOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/PropertyIsNotEqualTo.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one PropertyIsNotEqualTo(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface PropertyIsNotEqualTo extends BinaryComparisonOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/SpatialOps.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * POJO class for XML type SpatialOpsType(@http://www.opengis.net/fes/2.0). 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface SpatialOps extends FilterPredicate 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/TContains.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one TContains(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface TContains extends BinaryTemporalOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/TEquals.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one TEquals(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface TEquals extends BinaryTemporalOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/TOverlaps.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one TOverlaps(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface TOverlaps extends BinaryTemporalOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/TemporalOps.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * POJO class for XML type TemporalOpsType(@http://www.opengis.net/fes/2.0). 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface TemporalOps extends FilterPredicate 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/Touches.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one Touches(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface Touches extends BinarySpatialOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/fes/v20/Within.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.fes.v20; 16 | 17 | 18 | 19 | /** 20 | * A document containing one Within(@http://www.opengis.net/fes/2.0) element. 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface Within extends BinarySpatialOp 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/ows/v11/Domain.java: -------------------------------------------------------------------------------- 1 | package net.opengis.ows.v11; 2 | 3 | 4 | 5 | /** 6 | * POJO class for XML type DomainType(@http://www.opengis.net/ows/1.1). 7 | * 8 | * This is a complex type. 9 | */ 10 | public interface Domain extends UnNamedDomain 11 | { 12 | 13 | 14 | /** 15 | * Gets the name property 16 | */ 17 | public String getName(); 18 | 19 | 20 | /** 21 | * Sets the name property 22 | */ 23 | public void setName(String name); 24 | } 25 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/ows/v11/DomainMetadata.java: -------------------------------------------------------------------------------- 1 | package net.opengis.ows.v11; 2 | 3 | import java.io.Serializable; 4 | 5 | /** 6 | * POJO class for XML type DomainMetadataType(@http://www.opengis.net/ows/1.1). 7 | * 8 | */ 9 | public interface DomainMetadata extends Serializable 10 | { 11 | 12 | 13 | /** 14 | * Gets the reference property 15 | */ 16 | public String getReference(); 17 | 18 | 19 | /** 20 | * Checks if reference is set 21 | */ 22 | public boolean isSetReference(); 23 | 24 | 25 | /** 26 | * Sets the reference property 27 | */ 28 | public void setReference(String reference); 29 | 30 | 31 | /** 32 | * Gets the inline value 33 | */ 34 | public String getValue(); 35 | 36 | 37 | /** 38 | * Sets the inline value 39 | */ 40 | public void setValue(String value); 41 | } 42 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/net/opengis/ows/v11/impl/DomainImpl.java: -------------------------------------------------------------------------------- 1 | package net.opengis.ows.v11.impl; 2 | 3 | import net.opengis.ows.v11.Domain; 4 | 5 | 6 | /** 7 | * POJO class for XML type DomainType(@http://www.opengis.net/ows/1.1). 8 | * 9 | * This is a complex type. 10 | */ 11 | public class DomainImpl extends UnNamedDomainImpl implements Domain 12 | { 13 | private static final long serialVersionUID = -6578864006061374321L; 14 | protected String name = ""; 15 | 16 | 17 | public DomainImpl() 18 | { 19 | } 20 | 21 | 22 | /** 23 | * Gets the name property 24 | */ 25 | @Override 26 | public String getName() 27 | { 28 | return name; 29 | } 30 | 31 | 32 | /** 33 | * Sets the name property 34 | */ 35 | @Override 36 | public void setName(String name) 37 | { 38 | this.name = name; 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/org/vast/ows/OWSBindingProvider.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2017 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.vast.ows; 16 | 17 | 18 | public interface OWSBindingProvider 19 | { 20 | public void loadBindings(); 21 | } 22 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/org/vast/ows/ParameterizedRequest.java: -------------------------------------------------------------------------------- 1 | package org.vast.ows; 2 | 3 | import org.vast.swe.SWEData; 4 | 5 | 6 | public interface ParameterizedRequest 7 | { 8 | public SWEData getParameters(); 9 | 10 | public void setParameters(SWEData parameters); 11 | } 12 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-common/src/main/java/org/vast/ows/ParameterizedResponse.java: -------------------------------------------------------------------------------- 1 | package org.vast.ows; 2 | 3 | import org.vast.swe.SWEData; 4 | 5 | public interface ParameterizedResponse 6 | { 7 | public SWEData getParameters(); 8 | } 9 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sos/build.gradle: -------------------------------------------------------------------------------- 1 | group = 'org.vast.opengis' 2 | description = 'OGC Sensor Observation Service (SOS)' 3 | 4 | dependencies { 5 | api project(':ogc-services-common') 6 | api project(':ogc-services-swe') 7 | testImplementation project(path: ':ogc-services-common', configuration: 'testArtifacts') 8 | } 9 | 10 | // add info to OSGI manifest 11 | jar { 12 | manifest { 13 | attributes('Bundle-Vendor': 'Sensia Software LLC') 14 | } 15 | } 16 | 17 | // add info to maven pom 18 | ext.pom >>= { 19 | developers { 20 | developer { 21 | id 'alexrobin' 22 | name 'Alex Robin' 23 | organization 'Sensia Software LLC' 24 | organizationUrl 'http://www.sensiasoft.com' 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sos/src/main/resources/META-INF/services/org.vast.ows.OWSBindingProvider: -------------------------------------------------------------------------------- 1 | org.vast.ows.sos.SOSUtils -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sos/src/test/resources/org/vast/ows/sos/test/examples_v20/core/DescribeSensor1.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | http://my.company.org/sensors/sensor1 7 | http://www.opengis.net/sensorml/1.0.1 8 | 9 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sos/src/test/resources/org/vast/ows/sos/test/examples_v20/core/DescribeSensorWithTime.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | http://my.company.org/sensors/sensor1 7 | http://www.opengis.net/sensorml/1.0.1 8 | 9 | 10 | 2009-01-11T16:22:25Z 11 | 2011-08-21T08:32:10Z 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sos/src/test/resources/org/vast/ows/sos/test/examples_v20/core/GetObservation1_obsProps.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | http://www.my_namespace.org/water_gage_1_observations 5 | 6 | http://sweet.jpl.nasa.gov/2.0/hydroSurface.owl#WaterHeight 7 | 8 | 9 | 10 | phenomenonTime 11 | 12 | 2008-03-01T17:44:15Z 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sos/src/test/resources/org/vast/ows/sos/test/examples_v20/core/GetObservation2_obsProps_Procedure.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | http://www.my_namespace.org/sensors/Water_Gage_1 5 | 6 | http://www.my_namespace.org/water_gage_1_observations 7 | 8 | http://sweet.jpl.nasa.gov/2.0/hydroSurface.owl#WaterHeight 9 | 10 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sos/src/test/resources/org/vast/ows/sos/test/examples_v20/core/GetObservation3_foiIDFilter.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | http://www.my_namespace.org/sensors/Water_Gage_1 5 | 6 | http://www.my_namespace.org/water_gage_1_observations 7 | 8 | http://sweet.jpl.nasa.gov/2.0/hydroSurface.owl#WaterHeight 9 | 10 | http://wfs.example.org?request=getFeature&featureid="river1" 11 | 12 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sos/src/test/resources/org/vast/ows/sos/test/examples_v20/core/GetObservationKVP.txt: -------------------------------------------------------------------------------- 1 | service=SOS&version=2.0.0&request=GetObservation&offering=http://www.my_namespace.org/thermometer1_observations&observedProperty=http://sweet.jpl.nasa.gov/2.0/atmoThermo.owl#EffectiveTemperature&procedure=http://www.my_namespace.org/sensors/thermometer1&featureOfInterest=http://wfs.example.org?request=getFeature%26featureid=building1&namespaces=xmlns(sams,http://www.opengis.net/samplingSpatial/2.0),xmlns(om,http://www.opengis.net/om/2.0)&spatialFilter=om:featureOfInterest/*/sams:shape,22.32,11.2,32.32,22.2,urn:ogc:def:crs:EPSG::4326&temporalFilter=om:phenomenonTime,2009-01-10T10:00:00Z/2009-01-10T11:00:00Z 2 | service=SOS&version=2.0.0&request=GetObservation&offering=http://www.my_namespace.org/thermometer2_observations&procedure=http://myserver.org/sensors/th1,http://myserver.org/sensors/th2&responseFormat=http://www.opengis.net/om/1.0 -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sos/src/test/resources/org/vast/ows/sos/test/examples_v20/resultHandling/GetResult2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | urn:nga:datasets:off1 6 | 7 | 8 | urn:nga:video 9 | 10 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sos/src/test/resources/org/vast/ows/sos/test/examples_v20/resultHandling/GetResultKVP.txt: -------------------------------------------------------------------------------- 1 | service=SOS&version=2.0.0&request=GetResult&offering=urn:sensia:th1_observations&observedProperty=http://sweet.jpl.nasa.gov/2.0/atmoThermo.owl#EffectiveTemperature&featureOfInterest=urn:sensia:foi:b1&namespaces=xmlns(sams,http://www.opengis.net/samplingSpatial/2.0),xmlns(om,http://www.opengis.net/om/2.0)&spatialFilter=om:featureOfInterest/*/sams:shape,22.32,11.2,32.32,22.2,urn:ogc:def:crs:EPSG::4326&temporalFilter=om:phenomenonTime,2009-01-10T10:00:00Z/2009-01-10T11:00:00Z -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sos/src/test/resources/org/vast/ows/sos/test/examples_v20/resultHandling/GetResultTemplateKVP.txt: -------------------------------------------------------------------------------- 1 | service=SOS&version=2.0.0&request=GetResultTemplate&offering=urn:sensia:barometer_observations&observedProperty=http%3A%2F%2Fsweet.jpl.nasa.gov%2F2.0%2FatmoThermo.owl%23AtmosphericPressure -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sos/src/test/resources/org/vast/ows/sos/test/examples_v20/resultHandling/InsertResult1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | http://my.organization.org/sos/resultTemplate1 4 | 2008-03-01T17:44:15Z,32.0@@2008-03-01T17:45:15Z,32.1@@2008-03-01T17:46:15Z,32.2 5 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sos/src/test/resources/org/vast/ows/sos/test/examples_v20/transactional/DeleteSensor1.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | http://www.example.org/register/process/Water_Gage_2 8 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sos/src/test/resources/org/vast/ows/sos/test/examples_v20/transactional/DeleteSensor1_response.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | 8 | http://www.my_namespace.org/sensors/Water_Gage_2 9 | 10 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sos/src/test/resources/org/vast/ows/sos/test/examples_v20/transactional/InsertObservation1_response.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | http://www.my_namespace.org/water_gage_1_observations/obs1 4 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sos/src/test/resources/org/vast/ows/sos/test/examples_v20/transactional/InsertSensor1_response.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | http://www.my_namespace.org/sensors/Water_Gage_2 5 | 6 | http://www.my_namespace.org/water_gage_2_observations 7 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sos/src/test/resources/org/vast/ows/sos/test/examples_v20/transactional/UpdateSensorDescription1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | http://www.my_namespace.org/sensors/Water_Gage_2 4 | http://www.opengis.net/sensorml/2.0 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sos/src/test/resources/org/vast/ows/sos/test/examples_v20/transactional/UpdateSensorDescription1_response.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | http://www.my_namespace.org/sensors/Water_Gage_2 4 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/build.gradle: -------------------------------------------------------------------------------- 1 | group = 'org.vast.opengis' 2 | description = 'OGC Sensor Planning Service (SPS)' 3 | 4 | dependencies { 5 | api project(':ogc-services-common') 6 | api project(':ogc-services-swe') 7 | testImplementation project(path: ':ogc-services-common', configuration: 'testArtifacts') 8 | } 9 | 10 | // add info to OSGI manifest 11 | jar { 12 | manifest { 13 | attributes('Bundle-Vendor': 'Sensia Software LLC') 14 | } 15 | } 16 | 17 | // add info to maven pom 18 | ext.pom >>= { 19 | developers { 20 | developer { 21 | id 'alexrobin' 22 | name 'Alex Robin' 23 | organization 'Sensia Software LLC' 24 | organizationUrl 'http://www.sensiasoft.com' 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/main/resources/META-INF/services/org.vast.ows.OWSBindingProvider: -------------------------------------------------------------------------------- 1 | org.vast.ows.sps.SPSUtils -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/DirectTasking1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | http://www.my_namespace.org/my_ptz_camera 4 | 2010-01-01T00:00:00Z/2017-01-01T00:00:00Z 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/DirectTasking1_response.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | urn:sps:task:direct:001 6 | DirectTaskingRequested 7 | 0.0 8 | http://www.ogc.org/procedure/camera/1 9 | Accepted 10 | Reserved 11 | 2010-08-20T11:12:04Z 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsCancel.xml: -------------------------------------------------------------------------------- 1 | 2 | http://www.ogc.org/procedure/camera/1/tasks/6 3 | 4 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsCancelResponse.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | http://www.ogc.org/procedure/camera/1/tasks/6 5 | http://www.ogc.org/procedure/camera/1 6 | Accepted 7 | 2010-08-20T11:23:08+02:00 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsConfirm.xml: -------------------------------------------------------------------------------- 1 | 2 | http://www.ogc.org/procedure/camera/1/tasks/6 3 | 4 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsConfirmResponse.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | http://www.ogc.org/procedure/camera/1/tasks/6 5 | http://www.ogc.org/procedure/camera/1 6 | Accepted 7 | 2010-08-20T11:23:08+02:00 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsDescribeResultAccess.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | http://www.ogc.org/procedure/camera/1 4 | 5 | 6 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsDescribeResultAccess_forTask_SOAP.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | http://www.ogc.org/procedure/camera/1/tasks/6 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsDescribeTasking.xml: -------------------------------------------------------------------------------- 1 | 2 | http://www.ogc.org/procedure/camera/1 3 | 4 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsExampleTopicSet.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsGetCapabilities_SOAP.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsGetFeasibility.xml: -------------------------------------------------------------------------------- 1 | 2 | http://www.ogc.org/procedure/camera/1 3 | 4 | 5 | 6 | 7 | 8 | 2010-08-20T12:15:00+02:00,2010-08-20T14:45:00+02:00,N,N 9 | 10 | 11 | 2010-08-20T11:15:00+02:00 12 | 13 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsGetStatus.xml: -------------------------------------------------------------------------------- 1 | 2 | http://www.ogc.org/procedure/camera/1/tasks/6 3 | 4 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsGetStatusResponse.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | http://www.ogc.org/procedure/camera/1/tasks/6 5 | TaskFailed 6 | http://www.ogc.org/procedure/camera/1 7 | Accepted 8 | Your reservation failed because an emergency tasking action required use of the resources that were reserved for your task. 9 | Failed 10 | 2010-08-20T11:28:30+02:00 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsGetStatusResponse_reservationExpired.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | http://www.ogc.org/procedure/camera/1/tasks/6 5 | ReservationExpired 6 | http://www.ogc.org/procedure/camera/1 7 | Accepted 8 | Your reservation expired as it was not confirmed before the agreed expiration time. 9 | Expired 10 | 2010-08-20T11:30:00+02:00 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsGetStatus_pendingUpdate.xml: -------------------------------------------------------------------------------- 1 | 2 | http://www.ogc.org/procedure/camera/1/tasks/6/updates/1 3 | 4 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsGetStatus_sinceParameter.xml: -------------------------------------------------------------------------------- 1 | 2 | http://www.ogc.org/procedure/camera/1/tasks/6 3 | 2010-08-20T12:37:05+02:00 4 | 5 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsGetTask.xml: -------------------------------------------------------------------------------- 1 | 2 | http://www.ogc.org/procedure/camera/1/tasks/6 3 | 4 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsReserve.xml: -------------------------------------------------------------------------------- 1 | 2 | http://www.ogc.org/procedure/camera/1 3 | 4 | 5 | 6 | 7 | 8 | 2010-08-20T12:37:00+02:00,2010-08-20T14:30:00+02:00,Y,pointToLookAt,51.902112,8.192728,0,Y,3.5 9 | 10 | 11 | 2010-08-20T11:20:00+02:00 12 | 2010-08-20T11:30:00+02:00 13 | 14 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsReserveResponse.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | http://www.ogc.org/procedure/camera/1/tasks/6 5 | 2010-08-20T14:30:00+02:00 6 | TaskReserved 7 | http://www.ogc.org/procedure/camera/1 8 | Accepted 9 | Reserved 10 | 2010-08-20T11:12:01+02:00 11 | 2010-08-20T11:30:00+02:00 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsSubmit.xml: -------------------------------------------------------------------------------- 1 | 2 | http://www.ogc.org/procedure/camera/1 3 | 4 | 5 | 6 | 7 | 8 | 2010-08-20T12:37:00+02:00,2010-08-20T14:30:00+02:00,Y,pointToLookAt,51.902112,8.192728,0,Y,3.5 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsSubmitNoOptionalChoice1.xml: -------------------------------------------------------------------------------- 1 | 2 | http://www.ogc.org/procedure/camera/1 3 | 4 | 5 | 6 | 7 | 8 | 2010-08-20T12:37:00Z,2010-08-20T14:30:00Z,pointToLookAt,51.902112,8.192728,0.0,3.5 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsSubmitNoOptionalChoice2.xml: -------------------------------------------------------------------------------- 1 | 2 | http://www.ogc.org/procedure/camera/1 3 | 4 | 5 | 6 | 7 | 8 | 2010-08-20T12:37:00Z,2010-08-20T14:30:00Z,relativePositioning,-20.0,50.0,3.5 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsSubscribeResponse_task_SOAP12.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | http://www.ogc.org/SPS/Producer/subscriptions/792 6 | 7 | 2010-08-20T14:31:00+02:00 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsUpdateNoOptionalChoice1.xml: -------------------------------------------------------------------------------- 1 | 2 | http://www.ogc.org/procedure/camera/1 3 | 4 | 5 | 6 | 7 | 8 | pointToLookAt,51.902112,8.192728,0.0,3.5 9 | 10 | 11 | T001 12 | 13 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsUpdateResponse_moveLeft.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | http://www.ogc.org/procedure/camera/1/tasks/6/updates/1 5 | TaskUpdated 6 | http://www.ogc.org/procedure/camera/1 7 | Accepted 8 | InExecution 9 | 2010-08-20T11:12:04+02:00 10 | 11 | 12 | http://www.ogc.org/procedure/camera/1/tasks/6 13 | 14 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsUpdateResponse_moveLeft_pending.xml: -------------------------------------------------------------------------------- 1 | 2 | 2010-08-20T12:41:00+02:00 3 | 4 | 5 | http://www.ogc.org/procedure/camera/1/tasks/6/updates/1 6 | http://www.ogc.org/procedure/camera/1 7 | Pending 8 | 2010-08-20T12:40:01+02:00 9 | 10 | 11 | http://www.ogc.org/procedure/camera/1/tasks/6 12 | 13 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/spsUpdate_moveLeft.xml: -------------------------------------------------------------------------------- 1 | 2 | http://www.ogc.org/procedure/camera/1 3 | 4 | 5 | 6 | 7 | 8 | Y,relativePositioning,Y,-10,N,N 9 | 10 | 11 | 2010-08-20T12:41:00+02:00 12 | http://www.ogc.org/procedure/camera/1/tasks/6 13 | 14 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/tasking_parameters/encodedParameterData_for_full_taskingParameters.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 2010-08-20T12:37:00+02:00,2010-08-20T14:30:00+02:00,Y,pointToLookAt,51.902112,8.192728,0,Y,3.5 6 | 7 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/transactional/DeleteSensor1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | http://www.example.org/register/process/Water_Gage_2 4 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/transactional/DeleteSensor1_response.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | http://www.my_namespace.org/sensors/Water_Gage_2 4 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/transactional/InsertSensor1_response.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | http://www.my_namespace.org/sensors/Water_Gage_2 5 | 6 | http://www.my_namespace.org/water_gage_2_observations 7 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/transactional/UpdateSensorDescription1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | http://www.my_namespace.org/sensors/Water_Gage_2 4 | http://www.opengis.net/sensorml/2.0 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/transactional/UpdateSensorDescription1_response.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | http://www.my_namespace.org/sensors/Water_Gage_2 4 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-sps/src/test/resources/org/vast/ows/sps/test/examples_v20/with_ws-addressing/spsGetCapabilities_SOAP12_WSA.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | http://www.ogc.org/SPS 5 | http://www.opengis.net/sps/2.0/GetCapabilities 6 | 7 | http://my.client.com/client/myReceiver 8 | 9 | http://my.client.com/uid/msg-0010 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /lib-ogc/ogc-services-swe/build.gradle: -------------------------------------------------------------------------------- 1 | group = 'org.vast.opengis' 2 | description = 'OGC SWE Services Common' 3 | 4 | dependencies { 5 | api project(':ogc-services-common') 6 | api project(':sensorml-core') 7 | } 8 | 9 | // add info to OSGI manifest 10 | jar { 11 | manifest { 12 | attributes('Bundle-Vendor': 'Sensia Software LLC') 13 | } 14 | } 15 | 16 | // add info to maven pom 17 | ext.pom >>= { 18 | developers { 19 | developer { 20 | id 'alexrobin' 21 | name 'Alex Robin' 22 | organization 'Sensia Software LLC' 23 | organizationUrl 'http://www.sensiasoft.com' 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/sensorml-core/build.gradle: -------------------------------------------------------------------------------- 1 | group = 'org.vast.opengis' 2 | description = 'SensorML Models' 3 | 4 | dependencies { 5 | api project(':swe-common-om') 6 | } 7 | 8 | // add info to OSGI manifest 9 | jar { 10 | manifest { 11 | attributes('Bundle-Vendor': 'Sensia Software LLC') 12 | } 13 | } 14 | 15 | // add info to maven pom 16 | ext.pom >>= { 17 | developers { 18 | developer { 19 | id 'alexrobin' 20 | name 'Alex Robin' 21 | organization 'Sensia Software LLC' 22 | organizationUrl 'http://www.sensiasoftware.com' 23 | } 24 | } 25 | } 26 | 27 | task packageTests(type: Jar) { 28 | from sourceSets.test.output 29 | archiveClassifier = 'tests' 30 | } 31 | 32 | configurations { 33 | testArtifacts 34 | } 35 | 36 | artifacts { 37 | testArtifacts packageTests 38 | } 39 | -------------------------------------------------------------------------------- /lib-ogc/sensorml-core/src/main/java/net/opengis/sensorml/v20/AbstractModes.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.sensorml.v20; 16 | 17 | import net.opengis.swe.v20.AbstractSWE; 18 | 19 | 20 | /** 21 | * POJO class for XML type AbstractModesType(@http://www.opengis.net/sensorml/2.0). 22 | * 23 | * This is a complex type. 24 | */ 25 | public interface AbstractModes extends AbstractSWE 26 | { 27 | } 28 | -------------------------------------------------------------------------------- /lib-ogc/sensorml-core/src/main/java/net/opengis/sensorml/v20/AbstractSettings.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.sensorml.v20; 16 | 17 | import net.opengis.swe.v20.AbstractSWE; 18 | 19 | 20 | /** 21 | * POJO class for XML type AbstractSettingsType(@http://www.opengis.net/sensorml/2.0). 22 | * 23 | * This is a complex type. 24 | */ 25 | public interface AbstractSettings extends AbstractSWE 26 | { 27 | } 28 | -------------------------------------------------------------------------------- /lib-ogc/sensorml-core/src/main/java/org/isotc211/v2005/gco/RecordType.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.isotc211.v2005.gco; 16 | 17 | import net.opengis.OgcProperty; 18 | 19 | /** 20 | * POJO class for XML type RecordType_Type(@http://www.isotc211.org/2005/gco). 21 | * 22 | */ 23 | public interface RecordType extends OgcProperty 24 | { 25 | } 26 | -------------------------------------------------------------------------------- /lib-ogc/sensorml-core/src/main/resources/org/vast/sensorML/SMLRegistry.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /lib-ogc/sensorml-core/src/test/resources/org/vast/sensorML/test/ProcessMap.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | http://blah.blah/windchillMethod01v5.xml 5 | org.vast.sensorML.test.WindChill_Process 6 | 7 | 8 | urn:test:windchill 9 | org.vast.sensorML.test.WindChill2_Process_WithPorts 10 | 11 | 12 | http://sensors.ws/process/affineTransform1D 13 | org.vast.sensorML.test.AffineTransform1D_Process 14 | 15 | 16 | http://sensors.ws/process/clip 17 | org.vast.sensorML.test.Clip_Process 18 | 19 | -------------------------------------------------------------------------------- /lib-ogc/sensorml-core/src/test/resources/org/vast/sensorML/test/examples_v20/ModeInstance.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | An example of an instance in which one sets the active mode during installation 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | lowThreat 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /lib-ogc/sensorml-core/src/test/resources/org/vast/sensorML/test/json/sensor_instance_with_geopose_quat.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "PhysicalSystem", 3 | "definition": "http://www.w3.org/ns/sosa/Sensor", 4 | "uniqueId": "urn:x-ogc:sensors:001", 5 | "label": "Sensor with GeoPose", 6 | "position": { 7 | "type": "GeoPose", 8 | "position": { 9 | "lat": 47.7, 10 | "lon": -122.3, 11 | "h": 11.5 12 | }, 13 | "quaternion": { 14 | "x": 0.22876396167290736, 15 | "y": -0.038868031178080464, 16 | "z": 0.16293209735513692, 17 | "w": -0.9589626987758765 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /lib-ogc/sensorml-core/src/test/resources/org/vast/sensorML/test/json/sensor_instance_with_geopose_ypr.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "PhysicalSystem", 3 | "definition": "http://www.w3.org/ns/sosa/Sensor", 4 | "uniqueId": "urn:x-ogc:sensors:001", 5 | "label": "Sensor with GeoPose", 6 | "position": { 7 | "type": "GeoPose", 8 | "ltpReferenceFrame": "http://www.opengis.net/def/cs/OGC/0/NED", 9 | "position": { 10 | "lat": 47.7, 11 | "lon": -122.3, 12 | "h": 11.5 13 | }, 14 | "angles": { 15 | "yaw": 5.946590591427664, 16 | "pitch": -0.4683537318018044, 17 | "roll": 0.0 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /lib-ogc/sensorml-core/src/test/resources/org/vast/sensorML/test/json/sensor_instance_with_relpose_quat.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "PhysicalSystem", 3 | "definition": "http://www.w3.org/ns/sosa/Sensor", 4 | "uniqueId": "urn:x-ogc:sensors:001", 5 | "label": "Sensor with relative pose", 6 | "position": { 7 | "type": "RelativePose", 8 | "referenceFrame": "urn:x-ogc:platforms:001#PLATFORM_FRAME", 9 | "position": { 10 | "x": 47.7, 11 | "y": -122.3, 12 | "z": 11.5 13 | }, 14 | "quaternion": { 15 | "x": 0.22876396167290736, 16 | "y": -0.038868031178080464, 17 | "z": 0.16293209735513692, 18 | "w": -0.9589626987758765 19 | } 20 | } 21 | } -------------------------------------------------------------------------------- /lib-ogc/sensorml-core/src/test/resources/org/vast/sensorML/test/json/sensor_instance_with_relpose_ypr.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "PhysicalSystem", 3 | "definition": "http://www.w3.org/ns/sosa/Sensor", 4 | "uniqueId": "urn:x-ogc:sensors:001", 5 | "label": "Sensor with relative pose", 6 | "position": { 7 | "type": "RelativePose", 8 | "referenceFrame": "urn:x-ogc:platforms:001#PLATFORM_FRAME", 9 | "position": { 10 | "x": 47.7, 11 | "y": -122.3, 12 | "z": 11.5 13 | }, 14 | "angles": { 15 | "yaw": 5.946590591427664, 16 | "pitch": -0.4683537318018044, 17 | "roll": 0.0 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /lib-ogc/sensorml-profile-gen/build.gradle: -------------------------------------------------------------------------------- 1 | group = 'org.vast.opengis' 2 | description = 'SensorML Profile Generator' 3 | 4 | dependencies { 5 | api project(':sensorml-core') 6 | } 7 | 8 | // add info to OSGI manifest 9 | jar { 10 | manifest { 11 | attributes('Bundle-Vendor': 'Sensia Software LLC') 12 | } 13 | } 14 | 15 | // add info to maven pom 16 | ext.pom >>= { 17 | developers { 18 | developer { 19 | id 'alexrobin' 20 | name 'Alex Robin' 21 | organization 'Sensia Software LLC' 22 | organizationUrl 'http://www.sensiasoftware.com' 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/build.gradle: -------------------------------------------------------------------------------- 1 | group = 'org.vast.opengis' 2 | description = 'SWE Common Core' 3 | 4 | dependencies { 5 | api 'ch.qos.logback:logback-classic:1.2.13' 6 | api 'com.fasterxml.woodstox:woodstox-core:6.2.8' 7 | api 'com.google.code.gson:gson:2.11.0' 8 | api 'com.google.guava:guava:32.1.3-jre' 9 | api 'net.sf.trove4j:core:3.1.0' 10 | api 'io.github.kostaskougios:cloning:1.10.3' 11 | } 12 | 13 | // add info to OSGI manifest 14 | jar { 15 | manifest { 16 | attributes('Bundle-Vendor': 'Sensia Software LLC') 17 | } 18 | } 19 | 20 | // add info to maven pom 21 | ext.pom >>= { 22 | developers { 23 | developer { 24 | id 'alexrobin' 25 | name 'Alex Robin' 26 | organization 'Sensia Software LLC' 27 | organizationUrl 'http://www.sensiasoftware.com' 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/main/java/net/opengis/HasCopy.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis; 16 | 17 | 18 | /** 19 | *

20 | * Tagging interface for all objects supporting copy. 21 | * This is used when deep-copying an OgcProperty object 22 | *

23 | * 24 | * @author Alex Robin 25 | * @since Nov 8, 2014 26 | */ 27 | public interface HasCopy 28 | { 29 | public Object copy(); 30 | } 31 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/main/java/net/opengis/HrefResolver.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis; 16 | 17 | import java.io.IOException; 18 | 19 | 20 | public interface HrefResolver 21 | { 22 | public boolean resolveHref(OgcProperty propWithHref) throws IOException; 23 | } -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/main/java/net/opengis/swe/v20/CategoryOrRange.java: -------------------------------------------------------------------------------- 1 | package net.opengis.swe.v20; 2 | 3 | 4 | /** 5 | * Tagging interface to allow processing of Category and CategoryRange components 6 | * with common logic 7 | */ 8 | public interface CategoryOrRange extends SimpleComponent, HasCodeSpace, HasConstraints { 9 | 10 | } 11 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/main/java/net/opengis/swe/v20/CountOrRange.java: -------------------------------------------------------------------------------- 1 | package net.opengis.swe.v20; 2 | 3 | 4 | /** 5 | * Tagging interface to allow processing of Count and CountRange components 6 | * with common logic 7 | */ 8 | public interface CountOrRange extends SimpleComponent, HasConstraints { 9 | 10 | } 11 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/main/java/net/opengis/swe/v20/DataConstraint.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.swe.v20; 16 | 17 | import java.io.Serializable; 18 | import net.opengis.HasCopy; 19 | 20 | 21 | public interface DataConstraint extends Serializable, HasCopy 22 | { 23 | 24 | } 25 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/main/java/net/opengis/swe/v20/JSONEncoding.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.swe.v20; 16 | 17 | 18 | 19 | /** 20 | * POJO class for XML type JSONEncodingType(@http://www.opengis.net/swe/2.0). 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface JSONEncoding extends DataEncoding 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/main/java/net/opengis/swe/v20/Matrix.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.swe.v20; 16 | 17 | 18 | 19 | /** 20 | * POJO class for XML type MatrixType(@http://www.opengis.net/swe/2.0). 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface Matrix extends DataArray, HasRefFrames 25 | { 26 | 27 | @Override 28 | public Matrix copy(); 29 | 30 | } 31 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/main/java/net/opengis/swe/v20/QuantityOrRange.java: -------------------------------------------------------------------------------- 1 | package net.opengis.swe.v20; 2 | 3 | 4 | /** 5 | * Tagging interface to allow processing of Quantity and QuantityRange components 6 | * with common logic 7 | */ 8 | public interface QuantityOrRange extends SimpleComponent, HasUom, HasConstraints { 9 | 10 | } 11 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/main/java/net/opengis/swe/v20/RangeComponent.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.swe.v20; 16 | 17 | 18 | /** 19 | *

20 | * Tagging interface for all range components 21 | *

22 | * 23 | * @author Alex Robin 24 | * @since Nov 8, 2014 25 | */ 26 | public interface RangeComponent extends SimpleComponent 27 | { 28 | 29 | } 30 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/main/java/net/opengis/swe/v20/ScalarComponent.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.swe.v20; 16 | 17 | 18 | /** 19 | *

20 | * Tagging interface for all scalar data components 21 | *

22 | * 23 | * @author Alex Robin 24 | * @since Nov 9, 2014 25 | */ 26 | public interface ScalarComponent extends SimpleComponent 27 | { 28 | 29 | } 30 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/main/java/net/opengis/swe/v20/TimeOrRange.java: -------------------------------------------------------------------------------- 1 | package net.opengis.swe.v20; 2 | 3 | import java.time.OffsetDateTime; 4 | 5 | 6 | /** 7 | * Tagging interface to allow processing of Time and TimeRange components 8 | * with common logic 9 | */ 10 | public interface TimeOrRange extends SimpleComponent, HasRefFrames, HasUom, HasConstraints 11 | { 12 | 13 | /** 14 | * Gets the referenceTime property 15 | */ 16 | public OffsetDateTime getReferenceTime(); 17 | 18 | 19 | /** 20 | * Checks if referenceTime is set 21 | */ 22 | public boolean isSetReferenceTime(); 23 | 24 | 25 | /** 26 | * Sets the referenceTime property 27 | */ 28 | public void setReferenceTime(OffsetDateTime referenceTime); 29 | 30 | 31 | /** 32 | * @return true if time is encoded as ISO8601 string 33 | */ 34 | public boolean isIsoTime(); 35 | } 36 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/main/java/net/opengis/swe/v20/XMLEncoding.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.swe.v20; 16 | 17 | 18 | 19 | /** 20 | * POJO class for XML type XMLEncodingType(@http://www.opengis.net/swe/2.0). 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface XMLEncoding extends DataEncoding 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/main/java/org/vast/data/DataVisitor.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.vast.data; 16 | 17 | import net.opengis.swe.v20.DataBlock; 18 | 19 | 20 | /** 21 | *

22 | * Common interface for all mappers 23 | *

24 | * 25 | * @author Alex Robin 26 | * @since Apr 4, 2006 27 | * */ 28 | public interface DataVisitor 29 | { 30 | public void mapData(DataBlock data); 31 | } 32 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/main/java/org/vast/json/JsonConstants.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2017 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.vast.json; 16 | 17 | 18 | public interface JsonConstants 19 | { 20 | final static String OBJECT_TYPE_PROPERTY = "type"; 21 | final static char ATT_PREFIX = '@'; 22 | } 23 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/main/resources/org/vast/ogc/OGCRegistry.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/test/resources/org/vast/swe/test/examples_v20/spec/json/geometry_line.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "Geometry", 3 | "definition": "http://sensorml.com/ont/swe/property/Trajectory", 4 | "srs": "http://www.opengis.net/def/crs/EPSG/0/4326", 5 | "label": "Desired Trajectory", 6 | "description": "Desired UxS trajectory defined as a line string", 7 | "value": { 8 | "type": "LineString", 9 | "coordinates": [[12.34, 56.36], [12.45, 56.37], [12.45, 56.39], [12.34, 56.36]] 10 | } 11 | } -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/test/resources/org/vast/swe/test/examples_v20/spec/json/geometry_novalue.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "Geometry", 3 | "definition": "http://sensorml.com/ont/swe/property/TargetLocation", 4 | "srs": "http://www.opengis.net/def/crs/EPSG/0/4326", 5 | "label": "Target Location", 6 | "description": "A point geometry" 7 | } -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/test/resources/org/vast/swe/test/examples_v20/spec/json/geometry_point.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "Geometry", 3 | "definition": "http://sensorml.com/ont/swe/property/TargetLocation", 4 | "srs": "http://www.opengis.net/def/crs/EPSG/0/4326", 5 | "label": "Target Location", 6 | "description": "A point geometry", 7 | "value": { 8 | "type": "Point", 9 | "coordinates": [12.34, 56.36] 10 | } 11 | } -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/test/resources/org/vast/swe/test/examples_v20/spec/json/geometry_poly.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "Geometry", 3 | "definition": "http://sensorml.com/ont/x-swe/property/SurveillanceArea", 4 | "srs": "http://www.opengis.net/def/crs/EPSG/0/4326", 5 | "label": "Surveillance Area", 6 | "description": "Desired UxS surveillance area defined as a polygon", 7 | "value": { 8 | "type": "Polygon", 9 | "coordinates": [ 10 | [[12.34, 56.36], [12.45, 56.37], [12.45, 56.39], [12.34, 56.36]] 11 | ] 12 | } 13 | } -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/test/resources/org/vast/swe/test/examples_v20/spec/json/geometry_poly_holes.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "Geometry", 3 | "definition": "http://sensorml.com/ont/x-swe/property/SurveillanceArea", 4 | "srs": "http://www.opengis.net/def/crs/EPSG/0/4326", 5 | "label": "Surveillance Area", 6 | "description": "Desired UxS surveillance area defined as a polygon", 7 | "value": { 8 | "type": "Polygon", 9 | "coordinates": [ 10 | [[12.34, 56.36], [12.45, 56.37], [12.45, 56.39], [12.34, 56.36]] 11 | ] 12 | } 13 | } -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/test/resources/org/vast/swe/test/examples_v20/spec/vector_location.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Latitude 6 | 7 | 45.36 8 | 9 | 10 | 11 | 12 | Longitude 13 | 14 | 5.2 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-core/src/test/resources/org/vast/swe/test/examples_v20/sps/TaskingParameter_DataRecord.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Tasking Parameters description used to task a web cam 4 | 5 | 6 | 7 | Focal length of camera 8 | 9 | 10 | 11 | 18.0 180.0 12 | 13 | 14 | 65.0 15 | 16 | 17 | 18 | 19 | 20 | false 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/build.gradle: -------------------------------------------------------------------------------- 1 | group = 'org.vast.opengis' 2 | description = 'SWE O&M and GML Models' 3 | 4 | dependencies { 5 | api project(':swe-common-core') 6 | api 'org.locationtech.jts:jts-core:1.19.0' 7 | } 8 | 9 | // add info to OSGI manifest 10 | jar { 11 | manifest { 12 | attributes('Bundle-Vendor': 'Sensia Software LLC') 13 | } 14 | } 15 | 16 | // add info to maven pom 17 | ext.pom >>= { 18 | developers { 19 | developer { 20 | id 'alexrobin' 21 | name 'Alex Robin' 22 | organization 'Sensia Software LLC' 23 | organizationUrl 'http://www.sensiasoftware.com' 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/main/java/net/opengis/gml/v32/AbstractCurve.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.gml.v32; 16 | 17 | 18 | 19 | /** 20 | * POJO class for XML type AbstractCurveType(@http://www.opengis.net/gml/3.2). 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface AbstractCurve extends AbstractGeometry 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/main/java/net/opengis/gml/v32/AbstractRing.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.gml.v32; 16 | 17 | import java.io.Serializable; 18 | 19 | /** 20 | * POJO class for XML type AbstractRingType(@http://www.opengis.net/gml/3.2). 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface AbstractRing extends Serializable 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/main/java/net/opengis/gml/v32/AbstractSurface.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package net.opengis.gml.v32; 16 | 17 | 18 | 19 | /** 20 | * POJO class for XML type AbstractSurfaceType(@http://www.opengis.net/gml/3.2). 21 | * 22 | * This is a complex type. 23 | */ 24 | public interface AbstractSurface extends AbstractGeometry 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/main/java/org/vast/ogc/gml/GmlIdGenerator.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2020 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.vast.ogc.gml; 16 | 17 | 18 | /** 19 | *

20 | * Interface for GML ID generators 21 | *

22 | * 23 | * @param Type of identified object 24 | * 25 | * @author Alex Robin 26 | * @date Apr 12, 2020 27 | */ 28 | public interface GmlIdGenerator 29 | { 30 | public String nextId(T obj); 31 | } 32 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/main/java/org/vast/ogc/gml/IFeatureCollection.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2019 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.vast.ogc.gml; 16 | 17 | import java.util.Collection; 18 | import java.util.Collections; 19 | 20 | 21 | public interface IFeatureCollection extends IFeature 22 | { 23 | 24 | public default Collection getMembers() 25 | { 26 | return Collections.emptySet(); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/main/resources/org/vast/ogc/om/OMRegistry.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/examples_v32/Line2D.xml: -------------------------------------------------------------------------------- 1 | 2 | 1 2 3 4 5 6 3 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/examples_v32/Line3D.xml: -------------------------------------------------------------------------------- 1 | 2 | 1 2 3 4 5 6 7 8 9 3 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/examples_v32/Point2D.xml: -------------------------------------------------------------------------------- 1 | 2 | 1 2 3 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/examples_v32/Point3D.xml: -------------------------------------------------------------------------------- 1 | 2 | 1.5 2.4 3.99 3 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/examples_v32/Polygon_noInterior.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 0 0 0 1.23456 1.23456 1.23456 1.23456 0 0 0 5 | 6 | 7 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/examples_v32/Polygon_withInteriors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 0 0 0 1 1 1 1 0 0 0 5 | 6 | 7 | 8 | 9 | 0 0 0 1 1 1 1 0 0 0 10 | 11 | 12 | 13 | 14 | 0 0 0 1 1 1 1 0 0 0 15 | 16 | 17 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/examples_v32/TimeInstant_datetime.xml: -------------------------------------------------------------------------------- 1 | 2 | 2008-03-01T17:44:15Z 3 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/examples_v32/TimeInstant_now.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/examples_v32/TimeInstant_unknown.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/examples_v32/TimePeriod_beginNow.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 2008-01-11T03:33:12Z 4 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/examples_v32/TimePeriod_beginUnknown.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | PT1H 5 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/examples_v32/TimePeriod_datetime.xml: -------------------------------------------------------------------------------- 1 | 2 | 2008-01-11T00:00:00Z 3 | 2011-08-21T00:00:00Z 4 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/examples_v32/TimePeriod_endNow.xml: -------------------------------------------------------------------------------- 1 | 2 | 2008-01-11T00:00:00Z 3 | 4 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/examples_v32/TimePeriod_endUnknown.xml: -------------------------------------------------------------------------------- 1 | 2 | 2008-01-11T00:00:00Z 3 | 4 | PT1H 5 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/examples_v32/TimePeriod_withTimeStep.xml: -------------------------------------------------------------------------------- 1 | 2 | 2008-01-11T00:00:00Z 3 | 2011-08-21T00:00:00Z 4 | 10.0 5 | -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/geojson/feature_with_link.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "Feature", 3 | "id": "PLT412", 4 | "geometry": null, 5 | "properties": { 6 | "uid": "urn:x-ogc:systems:uav:solo154", 7 | "name": "UAV System 412", 8 | "description": "3DR Solo UAV", 9 | "featureType": "http://www.w3.org/ns/sosa/Platform", 10 | "procedure@link": { 11 | "href": "https://data.example.org/api/procedures/nrof8qi7wc9a?f=json", 12 | "uid": "urn:x-ogc:datasheets:uav:3dr-solo:v1", 13 | "type" : "application/geo+json" 14 | } 15 | } 16 | } -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/geojson/feature_with_links.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "Feature", 3 | "id": "SP001", 4 | "geometry": { 5 | "type": "Point", 6 | "coordinates": [ 12.31, -86.98] 7 | }, 8 | "properties": { 9 | "uid": "urn:x-usgs:sites:301244087575701", 10 | "name": "USGS Site #301244087575701", 11 | "description": "Well at MOBILE RIVER SAWMILL CORP", 12 | "featureType": "http://www.opengis.net/def/samplingFeatureType/OGC-OM/2.0/SF_SamplingPoint", 13 | "sampledFeature@link": { 14 | "href": "https://api.usgs.gov/collections/hydrological_features/items/112TRRC?f=json", 15 | "type" : "application/geo+json", 16 | "title": "Aquifer 112TRRC", 17 | "rt": "Feature" 18 | }, 19 | "hostedSystem@link": { 20 | "href": "https://data.example.org/api/systems/447845?f=json", 21 | "type" : "application/geo+json", 22 | "uid": "urn:x-ogc:systems:hydro:WS454EAF25" 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/geojson/feature_with_point.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "Feature", 3 | "id": "123", 4 | "geometry": { 5 | "type": "Point", 6 | "coordinates": [41.8781, -87.6298] 7 | }, 8 | "properties": { 9 | "uid": "urn:x-ogc:systems:001", 10 | "name": "Outdoor Thermometer 001", 11 | "description": "Digital thermometer located on first floor window 1", 12 | "featureType": "http://www.w3.org/ns/sosa/Sensor" 13 | } 14 | } -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/geojson/feature_with_point_typemoved.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "123", 3 | "geometry": { 4 | "coordinates": [41.8781, -87.6298], 5 | "type": "Point" 6 | }, 7 | "type": "Feature", 8 | "properties": { 9 | "uid": "urn:x-ogc:systems:001", 10 | "name": "Outdoor Thermometer 001", 11 | "description": "Digital thermometer located on first floor window 1", 12 | "featureType": "http://www.w3.org/ns/sosa/Sensor" 13 | } 14 | } -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/geojson/feature_with_polygon.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "Feature", 3 | "id": "iv3f2kcq27gfi", 4 | "geometry": { 5 | "type": "Polygon", 6 | "coordinates": [[ 7 | [53.76,-173.7], 8 | [53.76,-155.07], 9 | [75.03,-155.07], 10 | [75.03,-173.7], 11 | [53.76,-173.7] 12 | ]] 13 | }, 14 | "properties": { 15 | "uid": "urn:x-ogc:deployments:D001", 16 | "name": "Saildrone - 2017 Arctic Mission", 17 | "featureType": "http://www.w3.org/ns/ssn/Deployment", 18 | "description": "In July 2017, three saildrones were launched from Dutch Harbor, Alaska, in partnership with NOAA Research..." 19 | } 20 | } -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/geojson/feature_with_time_props.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "Feature", 3 | "id": "iv3f2kcq27gfi", 4 | "geometry": null, 5 | "properties": { 6 | "uid": "urn:x-ogc:deployments:D001", 7 | "name": "Saildrone - 2017 Arctic Mission", 8 | "featureType": "http://www.w3.org/ns/ssn/Deployment", 9 | "description": "In July 2017, three saildrones were launched from Dutch Harbor, Alaska, in partnership with NOAA Research...", 10 | "validTime": ["2017-07-17T00:00:00Z", ".."], 11 | "phenomenonTime": ["2017-07-17T00:00:00Z", "2017-07-17T00:01:00Z"], 12 | "resultTime": "2017-07-18T00:00:00Z", 13 | "unboundedTime2": ["..", ".."] 14 | } 15 | } -------------------------------------------------------------------------------- /lib-ogc/swe-common-om/src/test/resources/org/vast/ogc/gml/geojson/feature_with_validtime.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "Feature", 3 | "id": "iv3f2kcq27gfi", 4 | "geometry": null, 5 | "properties": { 6 | "uid": "urn:x-ogc:deployments:D001", 7 | "name": "Saildrone - 2017 Arctic Mission", 8 | "featureType": "http://www.w3.org/ns/ssn/Deployment", 9 | "description": "In July 2017, three saildrones were launched from Dutch Harbor, Alaska, in partnership with NOAA Research...", 10 | "validTime": ["2017-07-17T00:00:00Z", "2017-09-29T00:00:00Z"] 11 | } 12 | } -------------------------------------------------------------------------------- /release-text.md: -------------------------------------------------------------------------------- 1 | This release is for all platforms except Android. Supported platforms include Windows, MacOS, Linux, RaspberryPi, Intel Edison, and most ARM boards (with JVM). An example Android App is available [here](https://github.com/opensensorhub/osh-android/releases/latest). 2 | 3 | **Install instructions** - http://docs.opensensorhub.org/install/ 4 | 5 | -------------------------------------------------------------------------------- /sensorhub-core-osgi/.gitignore: -------------------------------------------------------------------------------- 1 | .moduledata/ 2 | **/*.dat 3 | **/*.bak.* 4 | .bundle-cache/ 5 | hivemq-config/ 6 | hivemq-data/ 7 | /bundles/ 8 | -------------------------------------------------------------------------------- /sensorhub-core-osgi/build.gradle: -------------------------------------------------------------------------------- 1 | description = 'OSH OSGi Launcher' 2 | ext.details = 'OSGi Framework Launcher to load OSH bundles' 3 | 4 | dependencies { 5 | implementation 'org.apache.felix:org.apache.felix.framework:7.0.3' 6 | testImplementation 'commons-io:commons-io:1.3.2' 7 | } 8 | 9 | tasks.osgi.enabled = false 10 | 11 | // add info to maven pom 12 | ext.pom >>= { 13 | developers { 14 | developer { 15 | id 'alexrobin' 16 | name 'Alex Robin' 17 | organization 'Sensia Software LLC' 18 | organizationUrl 'http://www.sensiasoftware.com' 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /sensorhub-core-osgi/lib/org.apache.felix.bundlerepository-2.0.10.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-core-osgi/lib/org.apache.felix.bundlerepository-2.0.10.jar -------------------------------------------------------------------------------- /sensorhub-core-osgi/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{0} - %msg%n 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /sensorhub-core-osgi/src/test/resources/META-INF/services/org.sensorhub.api.processing.IProcessProvider: -------------------------------------------------------------------------------- 1 | org.sensorhub.impl.processing.SMLProcessDescriptor 2 | org.sensorhub.impl.processing.TestProcessDescriptors -------------------------------------------------------------------------------- /sensorhub-core-osgi/src/test/resources/logback-test.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{0} - %msg%n 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /sensorhub-core-osgi/src/test/resources/test-nodep.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-core-osgi/src/test/resources/test-nodep.jar -------------------------------------------------------------------------------- /sensorhub-core-osgi/src/test/resources/test-withdep.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-core-osgi/src/test/resources/test-withdep.jar -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/ISensorHubConfig.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.api; 16 | 17 | 18 | public interface ISensorHubConfig 19 | { 20 | 21 | public String getModuleConfigPath(); 22 | 23 | 24 | public String getModuleDataPath(); 25 | 26 | 27 | public String getProperty(String property); 28 | 29 | } 30 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/client/ClientConfig.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.api.client; 16 | 17 | import org.sensorhub.api.module.ModuleConfig; 18 | 19 | 20 | /** 21 | *

22 | * Common configuration options for all clients connecting to remote services 23 | *

24 | * 25 | * @author Alex Robin 26 | * @since Aug 9, 2015 27 | */ 28 | public class ClientConfig extends ModuleConfig 29 | { 30 | 31 | } 32 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/comm/ICommConfig.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2016 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.api.comm; 16 | 17 | 18 | /** 19 | *

20 | * Tagging interface for communication configuration options 21 | *

22 | * 23 | * @author Alex Robin 24 | * @since Jun 27, 2016 25 | */ 26 | public interface ICommConfig 27 | { 28 | 29 | } 30 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/comm/IDeviceInfo.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2016 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.api.comm; 16 | 17 | 18 | public interface IDeviceInfo 19 | { 20 | public String getName(); 21 | 22 | public String getType(); 23 | 24 | public String getAddress(); 25 | 26 | public String getSignalLevel(); 27 | 28 | public ICommConfig getCommConfig(); 29 | } 30 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/comm/INetworkProvider.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2016 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.api.comm; 16 | 17 | import org.sensorhub.api.comm.ICommNetwork.NetworkType; 18 | import org.sensorhub.api.module.IModuleProvider; 19 | 20 | 21 | public interface INetworkProvider extends IModuleProvider 22 | { 23 | 24 | public NetworkType getNetworkType(); 25 | } 26 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/comm/MessageQueueConfig.java: -------------------------------------------------------------------------------- 1 | package org.sensorhub.api.comm; 2 | 3 | import org.sensorhub.api.config.DisplayInfo; 4 | import org.sensorhub.api.module.SubModuleConfig; 5 | 6 | 7 | public abstract class MessageQueueConfig extends SubModuleConfig 8 | { 9 | @DisplayInfo(desc="Name of topic/queue to use") 10 | public String topicName; 11 | 12 | @DisplayInfo(desc="Enable/disable writing to queue") 13 | public boolean enablePublish; 14 | 15 | @DisplayInfo(desc="Enable/disable reading from queue") 16 | public boolean enableSubscribe; 17 | } 18 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/comm/NetworkConfig.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2016 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.api.comm; 16 | 17 | import org.sensorhub.api.module.ModuleConfig; 18 | 19 | 20 | public abstract class NetworkConfig extends ModuleConfig 21 | { 22 | 23 | } 24 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/database/IDatabaseModuleDescriptor.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2019 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.api.database; 16 | 17 | 18 | /** 19 | *

20 | * Extension of IModuleProvider allowing a storage module to advertise itself 21 | * as read-only. 22 | *

23 | * 24 | * @author Alex Robin 25 | * @date Dec 9, 2020 26 | */ 27 | public interface IDatabaseModuleDescriptor 28 | { 29 | 30 | public boolean isReadOnly(); 31 | } 32 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/database/IObsSystemDatabaseModule.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2019 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.api.database; 16 | 17 | import org.sensorhub.api.module.IModule; 18 | 19 | 20 | public interface IObsSystemDatabaseModule extends IObsSystemDatabase, IModule 21 | { 22 | 23 | } 24 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/datastore/EmptyFilterIntersection.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2019 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.api.datastore; 16 | 17 | 18 | @SuppressWarnings("serial") 19 | public class EmptyFilterIntersection extends Exception 20 | { 21 | 22 | } 23 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/datastore/IQueryFilter.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2019 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.api.datastore; 16 | 17 | 18 | public interface IQueryFilter 19 | { 20 | 21 | /** 22 | * @return Maximum number of selected records 23 | */ 24 | public long getLimit(); 25 | 26 | } 27 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/datastore/IdProvider.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are copyright (C) 2018, Sensia Software LLC 4 | All Rights Reserved. This software is the property of Sensia Software LLC. 5 | It cannot be duplicated, used, or distributed without the express written 6 | consent of Sensia Software LLC. 7 | 8 | ******************************* END LICENSE BLOCK ***************************/ 9 | 10 | package org.sensorhub.api.datastore; 11 | 12 | 13 | /** 14 | *

15 | * Interface for ID providers that generate internal IDs for stored objects 16 | *

17 | * 18 | * @param Type of object to generate IDs for 19 | * 20 | * @author Alex Robin 21 | * @date Oct 8, 2018 22 | */ 23 | public interface IdProvider 24 | { 25 | 26 | long newInternalID(T obj); 27 | } 28 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/event/IEventSourceInfo.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2019 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.api.event; 16 | 17 | 18 | public interface IEventSourceInfo 19 | { 20 | public String getGroupID(); 21 | public String getSourceID(); 22 | } 23 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/processing/IProcessOutput.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.api.processing; 16 | 17 | import org.sensorhub.api.data.IStreamingDataInterface; 18 | 19 | 20 | public interface IProcessOutput extends IStreamingDataInterface 21 | { 22 | 23 | } 24 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/processing/ProcessConfig.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.api.processing; 16 | 17 | import org.sensorhub.api.module.ModuleConfig; 18 | 19 | 20 | /** 21 | *

22 | * Configuration options for processing modules 23 | *

24 | * 25 | * @author Alex Robin 26 | * @since Feb 20, 2015 27 | */ 28 | public class ProcessConfig extends ModuleConfig 29 | { 30 | 31 | } 32 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/security/IPermissionPath.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2016 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.api.security; 16 | 17 | import java.util.Collection; 18 | 19 | 20 | public interface IPermissionPath extends Collection 21 | { 22 | public boolean implies(IPermissionPath permList); 23 | } 24 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/security/IRoleRegistry.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2016 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.api.security; 16 | 17 | import java.util.Map; 18 | 19 | 20 | public interface IRoleRegistry extends Map, IPermissionUpdates 21 | { 22 | 23 | } 24 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/security/IUserRegistry.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2016 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.api.security; 16 | 17 | import java.util.Map; 18 | 19 | 20 | public interface IUserRegistry extends Map, IPermissionUpdates 21 | { 22 | 23 | } 24 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/sensor/SensorDriverConfig.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.api.sensor; 16 | 17 | import org.sensorhub.api.module.ModuleConfig; 18 | 19 | 20 | /** 21 | *

22 | * Configuration options for sensor/actuator drivers 23 | *

24 | * 25 | * @author Alex Robin 26 | * @since Nov 5, 2010 27 | */ 28 | public class SensorDriverConfig extends ModuleConfig 29 | { 30 | 31 | } 32 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/java/org/sensorhub/api/service/ServiceConfig.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.api.service; 16 | 17 | import org.sensorhub.api.module.ModuleConfig; 18 | 19 | 20 | /** 21 | *

22 | * Common configuration options for all services 23 | *

24 | * 25 | * @author Alex Robin 26 | * @since Nov 16, 2010 27 | */ 28 | public class ServiceConfig extends ModuleConfig 29 | { 30 | } 31 | -------------------------------------------------------------------------------- /sensorhub-core/src/main/resources/META-INF/services/org.sensorhub.api.module.IModuleProvider: -------------------------------------------------------------------------------- 1 | org.sensorhub.impl.database.system.SystemDriverDatabaseDescriptor 2 | org.sensorhub.impl.comm.TCPCommModuleDescriptor 3 | org.sensorhub.impl.comm.UDPCommModuleDescriptor 4 | org.sensorhub.impl.comm.LocalMessageQueueDescriptor 5 | org.sensorhub.impl.sensor.SensorSystemDescriptor 6 | org.sensorhub.impl.processing.SMLProcessDescriptor 7 | org.sensorhub.impl.security.BasicSecurityRealmDescriptor -------------------------------------------------------------------------------- /sensorhub-core/src/main/resources/META-INF/services/org.sensorhub.api.processing.IProcessProvider: -------------------------------------------------------------------------------- 1 | org.sensorhub.impl.processing.SMLProcessDescriptor -------------------------------------------------------------------------------- /sensorhub-core/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{0} - %msg%n 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /sensorhub-core/src/site/markdown/index.md: -------------------------------------------------------------------------------- 1 | SensorHub Core APIs 2 | --- 3 | 4 | SensorHub software is implemented on top of public APIs that make the system modular and allow one to change almost any part of the system by pluging in new implementations. 5 | 6 | 7 | The core APIs are: 8 | 9 | - [SWE Common and SensorML Bindings](sensorml-api.html) to create/read/write SensorML documents 10 | - [Sensor API](sensor-api.html) to implement sensor and actuator drivers 11 | - [Process API]() to implement processing chains 12 | - [Persistence API]() to implement bindings to any database system 13 | - [Communication API]() to implement drivers for various communication buses (serial, USB, Bluetooth, I2C, SPI, etc.) 14 | - [Event Manager API]() to implement queuing and dispatching of events between modules or even sensorhub instances 15 | 16 | 17 | Before you start implementing SensorHub's modules using these APIs, we also strongly encourage you to take the time to read and understand the key [Design Principles](design-principles.html) used in SensorHub software. -------------------------------------------------------------------------------- /sensorhub-core/src/site/resources/images/bus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-core/src/site/resources/images/bus.png -------------------------------------------------------------------------------- /sensorhub-core/src/site/resources/images/bus_example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-core/src/site/resources/images/bus_example.png -------------------------------------------------------------------------------- /sensorhub-core/src/site/resources/images/sensor_module.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-core/src/site/resources/images/sensor_module.png -------------------------------------------------------------------------------- /sensorhub-core/src/site/resources/images/sensorhub_logo_128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-core/src/site/resources/images/sensorhub_logo_128.png -------------------------------------------------------------------------------- /sensorhub-core/src/site/resources/images/sensorml_gen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-core/src/site/resources/images/sensorml_gen.png -------------------------------------------------------------------------------- /sensorhub-core/src/test/java/org/sensorhub/impl/module/MyConfig1.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.impl.module; 16 | 17 | import org.sensorhub.api.module.ModuleConfig; 18 | 19 | public class MyConfig1 extends ModuleConfig 20 | { 21 | public String param1; 22 | public int param2; 23 | } -------------------------------------------------------------------------------- /sensorhub-core/src/test/java/org/sensorhub/impl/module/MyConfig2.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.impl.module; 16 | 17 | import org.sensorhub.api.module.ModuleConfig; 18 | 19 | public class MyConfig2 extends ModuleConfig 20 | { 21 | public String param1; 22 | public double param2; 23 | public String moduleID; 24 | } -------------------------------------------------------------------------------- /sensorhub-core/src/test/java/org/sensorhub/impl/processing/TestProcessDescriptors.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2017 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.impl.processing; 16 | 17 | import org.vast.sensorML.test.AffineTransform1D_Process; 18 | 19 | 20 | public class TestProcessDescriptors extends AbstractProcessProvider 21 | { 22 | 23 | public TestProcessDescriptors() 24 | { 25 | addImpl(AffineTransform1D_Process.INFO); 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /sensorhub-core/src/test/java/org/sensorhub/impl/sensor/IFakeSensorOutput.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.impl.sensor; 16 | 17 | import java.util.concurrent.CompletableFuture; 18 | 19 | public interface IFakeSensorOutput 20 | { 21 | public default CompletableFuture start() 22 | { 23 | return start(0L); 24 | } 25 | 26 | public CompletableFuture start(long delay); 27 | 28 | public void stop(); 29 | } -------------------------------------------------------------------------------- /sensorhub-core/src/test/resources/META-INF/services/org.sensorhub.api.processing.IProcessProvider: -------------------------------------------------------------------------------- 1 | org.sensorhub.impl.processing.SMLProcessDescriptor 2 | org.sensorhub.impl.processing.TestProcessDescriptors -------------------------------------------------------------------------------- /sensorhub-core/src/test/resources/logback-test.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{0} - %msg%n 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /sensorhub-core/src/test/resources/module-config.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "objClass": "org.sensorhub.api.sensor.SensorConfig", 4 | "sensorML": null, 5 | "autoActivate": true, 6 | "enableHistory": true, 7 | "hiddenIO": null, 8 | "driverConfigs": {}, 9 | "id": "5cb05c9c-9e08-4fa1-8731-ff41e246bdc0", 10 | "name": "Sensor1", 11 | "moduleClass": "org.sensorhub.sensor.***", 12 | "enabled": false, 13 | "driverConfigs": 14 | [ 15 | { 16 | "objClass": "org.sensorhub.impl.sensor.drivers.RS232DriverConfig", 17 | "id": null, 18 | "name": "RS-232", 19 | "moduleClass": null, 20 | "enabled": false, 21 | "portNumber": "COM1", 22 | "baudRate": 9600, 23 | "numberOfBits": 7, 24 | "parity": true 25 | } 26 | ] 27 | } 28 | ] -------------------------------------------------------------------------------- /sensorhub-core/src/test/resources/org/sensorhub/impl/datastore/datastream_filters.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "validTime": { 4 | "indeterminate": "current" 5 | }, 6 | "outputNames": ["press", "temp"], 7 | "withSystems": { 8 | "includeMembers": false, 9 | "internalIDs": ["4e5ttbr2r220c", "ak12se8"] 10 | } 11 | }, 12 | { 13 | "validTime": { 14 | "indeterminate": "current" 15 | }, 16 | "internalIDs": ["45e0", "sk12o", "ttbr2r22"] 17 | }, 18 | { 19 | "validTime": { 20 | "indeterminate": "current" 21 | }, 22 | "observedProperties": [ 23 | "urn1", "urn2", "urn3" 24 | ] 25 | } 26 | ] -------------------------------------------------------------------------------- /sensorhub-datastore-h2/build.gradle: -------------------------------------------------------------------------------- 1 | description = 'OSH Datastore (H2)' 2 | ext.details = 'Storage module backed by a H2 MVStore object database' 3 | 4 | dependencies { 5 | implementation project(':sensorhub-core') 6 | implementation project(':sensorhub-utils-kryo') 7 | embeddedApi 'com.h2database:h2-mvstore:1.4.197' 8 | embeddedApi 'org.apache.lucene:lucene-analyzers-common:8.11.2' 9 | testImplementation project(path: ':sensorhub-core', configuration: 'testArtifacts') 10 | } 11 | 12 | test { 13 | filter { 14 | excludeTestsMatching 'org.sensorhub.impl.datastore.h2.TestMVFeatureStore.test*Throughput' 15 | } 16 | } 17 | 18 | // add info to OSGI manifest 19 | osgi { 20 | manifest { 21 | attributes 'Bundle-Vendor': 'Sensia Software LLC' 22 | attributes 'Bundle-Activator': 'org.sensorhub.impl.datastore.h2.Activator' 23 | } 24 | } 25 | 26 | // add info to maven pom 27 | ext.pom >>= { 28 | developers { 29 | developer { 30 | id 'alexrobin' 31 | name 'Alex Robin' 32 | organization 'Sensia Software LLC' 33 | organizationUrl 'http://www.sensiasoftware.com' 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /sensorhub-datastore-h2/src/main/java/org/sensorhub/impl/datastore/h2/Activator.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.impl.datastore.h2; 16 | 17 | import org.osgi.framework.BundleActivator; 18 | import org.sensorhub.utils.OshBundleActivator; 19 | 20 | 21 | public class Activator extends OshBundleActivator implements BundleActivator 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /sensorhub-datastore-h2/src/main/java/org/sensorhub/impl/datastore/h2/MVFeatureDatabaseConfig.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2020 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.impl.datastore.h2; 16 | 17 | 18 | /** 19 | *

20 | * Config class for {@link MVFeatureDatabase} module 21 | *

22 | * 23 | * @author Alex Robin 24 | * @date Oct 11, 2019 25 | */ 26 | public class MVFeatureDatabaseConfig extends MVDatabaseConfig 27 | { 28 | 29 | } 30 | -------------------------------------------------------------------------------- /sensorhub-datastore-h2/src/main/resources/META-INF/services/org.sensorhub.api.module.IModuleProvider: -------------------------------------------------------------------------------- 1 | org.sensorhub.impl.datastore.h2.MVObsSystemDatabaseDescriptor -------------------------------------------------------------------------------- /sensorhub-datastore-h2/src/test/resources/empty: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-datastore-h2/src/test/resources/empty -------------------------------------------------------------------------------- /sensorhub-service-consys/build.gradle: -------------------------------------------------------------------------------- 1 | description = 'Connected Systems API' 2 | ext.details = 'Implementation of OGC Connected Systems API' 3 | 4 | 5 | dependencies { 6 | implementation project(':sensorhub-core') 7 | embeddedImpl 'com.j2html:j2html:1.5.0' 8 | 9 | testImplementation project(path: ':sensorhub-core', configuration: 'testArtifacts') 10 | testImplementation project(':sensorhub-datastore-h2') 11 | testImplementation 'commons-io:commons-io:1.3.2' 12 | testImplementation 'org.jglue.fluent-json:fluent-json:2.0.3' 13 | } 14 | 15 | test { 16 | exclude 'org/sensorhub/impl/service/consys/client/*' 17 | } 18 | 19 | // add info to OSGI manifest 20 | osgi { 21 | manifest { 22 | attributes 'Bundle-Vendor': 'Sensia Software LLC' 23 | attributes 'Bundle-Activator': 'org.sensorhub.impl.service.consys.Activator' 24 | } 25 | } 26 | 27 | // add info to maven pom 28 | ext.pom >>= { 29 | developers { 30 | developer { 31 | id 'alexrobin' 32 | name 'Alex Robin' 33 | organization 'Sensia Software LLC' 34 | organizationUrl 'http://www.sensiasoftware.com' 35 | } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /sensorhub-service-consys/src/main/java/org/sensorhub/impl/service/consys/Activator.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2021 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.impl.service.consys; 16 | 17 | import org.osgi.framework.BundleActivator; 18 | import org.sensorhub.utils.OshBundleActivator; 19 | 20 | 21 | public class Activator extends OshBundleActivator implements BundleActivator 22 | { 23 | 24 | } 25 | -------------------------------------------------------------------------------- /sensorhub-service-consys/src/main/java/org/sensorhub/impl/service/consys/RestApiService.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2022 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.impl.service.consys; 16 | 17 | import java.util.concurrent.ScheduledExecutorService; 18 | 19 | 20 | public interface RestApiService 21 | { 22 | 23 | public String getPublicEndpointUrl(); 24 | 25 | 26 | public ScheduledExecutorService getThreadPool(); 27 | } 28 | -------------------------------------------------------------------------------- /sensorhub-service-consys/src/main/java/org/sensorhub/impl/service/consys/client/ConSysApiClientDescriptor.java: -------------------------------------------------------------------------------- 1 | package org.sensorhub.impl.service.consys.client; 2 | 3 | import org.sensorhub.api.module.IModule; 4 | import org.sensorhub.api.module.IModuleProvider; 5 | import org.sensorhub.api.module.ModuleConfig; 6 | import org.sensorhub.impl.module.JarModuleProvider; 7 | 8 | public class ConSysApiClientDescriptor extends JarModuleProvider implements IModuleProvider { 9 | 10 | @Override 11 | public String getModuleName() 12 | { 13 | return "Connected Systems Client"; 14 | } 15 | 16 | 17 | @Override 18 | public String getModuleDescription() 19 | { 20 | return "Connected Systems client for pushing observations to a remote SensorHub"; 21 | } 22 | 23 | 24 | @Override 25 | public Class> getModuleClass() 26 | { 27 | return ConSysApiClientModule.class; 28 | } 29 | 30 | 31 | @Override 32 | public Class getModuleConfigClass() 33 | { 34 | return ConSysApiClientConfig.class; 35 | } 36 | 37 | } 38 | -------------------------------------------------------------------------------- /sensorhub-service-consys/src/main/resources/META-INF/services/org.sensorhub.api.module.IModuleProvider: -------------------------------------------------------------------------------- 1 | org.sensorhub.impl.service.consys.ConSysApiServiceDescriptor 2 | org.sensorhub.impl.service.consys.client.ConSysApiClientDescriptor -------------------------------------------------------------------------------- /sensorhub-service-consys/src/main/resources/css/fonts/bootstrap-icons.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-service-consys/src/main/resources/css/fonts/bootstrap-icons.woff2 -------------------------------------------------------------------------------- /sensorhub-service-swe/src/main/java/org/sensorhub/impl/sensor/swe/ITaskingCallback.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2016 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.impl.sensor.swe; 16 | 17 | import net.opengis.swe.v20.DataBlock; 18 | 19 | 20 | public interface ITaskingCallback 21 | { 22 | public void onCommandReceived(DataBlock cmdData); 23 | 24 | public void onClose(); 25 | } -------------------------------------------------------------------------------- /sensorhub-service-swe/src/main/java/org/sensorhub/impl/service/swe/IAsyncOutputStream.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2020 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.impl.service.swe; 16 | 17 | import javax.servlet.WriteListener; 18 | 19 | 20 | public interface IAsyncOutputStream 21 | { 22 | 23 | public void setWriteListener(WriteListener listener); 24 | 25 | public boolean isReady(); 26 | 27 | public boolean isClosed(); 28 | } 29 | -------------------------------------------------------------------------------- /sensorhub-service-swe/src/main/resources/META-INF/services/org.sensorhub.api.module.IModuleProvider: -------------------------------------------------------------------------------- 1 | org.sensorhub.impl.service.sos.SOSServiceDescriptor 2 | org.sensorhub.impl.service.sps.SPSServiceDescriptor 3 | org.sensorhub.impl.client.sost.SOSTClientDescriptor 4 | org.sensorhub.impl.sensor.swe.SWEVirtualSensorDescriptor -------------------------------------------------------------------------------- /sensorhub-service-swe/src/site/markdown/index.md: -------------------------------------------------------------------------------- 1 | SensorHub SWE Services 2 | --- 3 | 4 | Open Sensor Hub includes the `sensorhub-services-swe` module that implements standard web service interfaces from the OGC [Sensor Web Enablement](http://www.opengeospatial.org/projects/groups/sensorwebdwg) (SWE) initiative. 5 | 6 | Below are topics giving more information about SensorHub's implementation of the SWE services: 7 | 8 | - [Temporal filtering in SOS](sos-temporal-filtering.html) 9 | 10 | -------------------------------------------------------------------------------- /sensorhub-service-swe/src/test/java/org/sensorhub/impl/service/sos/TestConcurrentGetCaps.java: -------------------------------------------------------------------------------- 1 | package org.sensorhub.impl.service.sos; 2 | 3 | import java.net.URI; 4 | import java.net.http.HttpClient; 5 | import java.net.http.HttpRequest; 6 | import java.net.http.HttpResponse; 7 | import java.net.http.HttpResponse.BodyHandlers; 8 | 9 | 10 | public class TestConcurrentGetCaps 11 | { 12 | 13 | public static void main(String[] args) throws Exception 14 | { 15 | HttpClient client = HttpClient.newHttpClient(); 16 | URI getCapsUrl = new URI("http://localhost:8181/sensorhub/sos?service=SOS&version=2.0&request=GetCapabilities"); 17 | for (int i=0; i<100; i++) 18 | { 19 | client.sendAsync( 20 | HttpRequest.newBuilder().uri(getCapsUrl).GET().build(), 21 | BodyHandlers.ofString()) 22 | .thenApply(HttpResponse::body) 23 | .thenAccept(System.out::println); 24 | } 25 | 26 | Thread.sleep(10000); 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /sensorhub-service-swe/src/test/resources/empty: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-service-swe/src/test/resources/empty -------------------------------------------------------------------------------- /sensorhub-utils-kryo/build.gradle: -------------------------------------------------------------------------------- 1 | description = 'Kryo Serialization' 2 | ext.details = 'Utility classes for serialization/deserialization/cloning of data model objects with Kryo' 3 | 4 | dependencies { 5 | implementation project(':sensorhub-core') 6 | embeddedApi 'com.esotericsoftware:kryo:5.5.0' 7 | testImplementation project(path: ':sensorhub-core', configuration: 'testArtifacts') 8 | } 9 | 10 | // add info to OSGI manifest 11 | osgi { 12 | manifest { 13 | attributes 'Bundle-Vendor': 'Sensia Software LLC' 14 | } 15 | } 16 | 17 | // add info to maven pom 18 | ext.pom >>= { 19 | developers { 20 | developer { 21 | id 'alexrobin' 22 | name 'Alex Robin' 23 | organization 'Sensia Software LLC' 24 | organizationUrl 'http://www.sensiasoftware.com' 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /sensorhub-utils-kryo/src/test/java/org/sensorhub/impl/serialization/kryo/TestObjectV1.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2021 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.impl.serialization.kryo; 16 | 17 | 18 | public class TestObjectV1 19 | { 20 | String att1 = "test1"; 21 | int att2 = 1; 22 | double att3 = 1.11; 23 | double[] att4 = new double[] {1.1, 1.1}; 24 | } 25 | -------------------------------------------------------------------------------- /sensorhub-webui-core/src/main/.gitignore: -------------------------------------------------------------------------------- 1 | /webapp/ 2 | -------------------------------------------------------------------------------- /sensorhub-webui-core/src/main/java/org/sensorhub/ui/Activator.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2021 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.ui; 16 | 17 | import org.osgi.framework.BundleActivator; 18 | import org.sensorhub.utils.OshBundleActivator; 19 | 20 | 21 | public class Activator extends OshBundleActivator implements BundleActivator 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /sensorhub-webui-core/src/main/java/org/sensorhub/ui/SWEParamForm.java: -------------------------------------------------------------------------------- 1 | /***************************** BEGIN LICENSE BLOCK *************************** 2 | 3 | The contents of this file are subject to the Mozilla Public License, v. 2.0. 4 | If a copy of the MPL was not distributed with this file, You can obtain one 5 | at http://mozilla.org/MPL/2.0/. 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 9 | for the specific language governing rights and limitations under the License. 10 | 11 | Copyright (C) 2012-2015 Sensia Software LLC. All Rights Reserved. 12 | 13 | ******************************* END LICENSE BLOCK ***************************/ 14 | 15 | package org.sensorhub.ui; 16 | 17 | import net.opengis.swe.v20.DataComponent; 18 | 19 | 20 | @SuppressWarnings("serial") 21 | public class SWEParamForm extends SWEEditForm 22 | { 23 | 24 | public SWEParamForm(DataComponent component) 25 | { 26 | super(component); 27 | buildForm(); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /sensorhub-webui-core/src/main/resources/META-INF/services/org.sensorhub.api.module.IModuleProvider: -------------------------------------------------------------------------------- 1 | org.sensorhub.ui.AdminUIDescriptor -------------------------------------------------------------------------------- /sensorhub-webui-core/src/main/resources/VAADIN/js/readme.js: -------------------------------------------------------------------------------- 1 | window.org_sensorhub_ui_ReadmePanel_ReadmeJS = function() { 2 | var self = this; 3 | var contentDiv = document.createElement('div'); 4 | 5 | 6 | contentDiv.className = 'readme-content'; 7 | contentDiv.style.userSelect = 'text'; 8 | self.getElement().appendChild(contentDiv); 9 | 10 | // Set the readme content 11 | this.onStateChange = function() { 12 | //console.log(marked.parse(this.getState().readmeText)); 13 | if (typeof marked !== 'undefined') { 14 | // Parse markdown and set HTML 15 | contentDiv.innerHTML = marked.parse(this.getState().readmeText); 16 | } else { 17 | console.error('marked.js is not loaded'); 18 | contentDiv.textContent = this.getState().readmeText; 19 | } 20 | } 21 | 22 | this.onUnregister = function() { 23 | if (contentDiv && contentDiv.parentNode) { 24 | contentDiv.parentNode.removeChild(contentDiv); 25 | } 26 | contentDiv = null; 27 | } 28 | } -------------------------------------------------------------------------------- /sensorhub-webui-core/src/test/resources/empty: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/src/test/resources/empty -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/.gitignore: -------------------------------------------------------------------------------- 1 | src/main/resources/VAADIN/widgetsets 2 | src/main/resources/VAADIN/gwt-unitCache 3 | src/main/resources/VAADIN/themes/sensorhub/styles.css 4 | src/main/resources/VAADIN/themes/sensorhub/styles.css.gz 5 | -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/addons.scss: -------------------------------------------------------------------------------- 1 | /* This file is automatically managed and will be overwritten from time to time. */ 2 | /* Do not manually edit this file. */ 3 | 4 | /* Import and include this mixin into your project theme to include the addon themes */ 5 | @mixin addons { 6 | } 7 | 8 | -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/add.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/add.gif -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/add.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/add.png -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/brick.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/brick.png -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/cancel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/cancel.png -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/cross.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/cross.png -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/delete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/delete.png -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/disable.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/disable.gif -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/disconnect.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/disconnect.png -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/enable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/enable.png -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/enabled.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/enabled.gif -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/errorwarning.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/errorwarning.gif -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/help.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/help.gif -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/info.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/info.gif -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/javaassist_co.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/javaassist_co.gif -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/link.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/link.png -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/module_add.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/module_add.png -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/module_delete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/module_delete.png -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/newpack_wiz.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/newpack_wiz.gif -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/osh_logo_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/osh_logo_small.png -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/protected_co.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/protected_co.gif -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/refresh.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/refresh.gif -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/remove.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/remove.gif -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/save.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/opensensorhub/osh-core/c5d845ac27150411cbdf0c1e56b227693b9d7273/sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/icons/save.png -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/VAADIN/themes/sensorhub/styles.scss: -------------------------------------------------------------------------------- 1 | @import "sensorhub.scss"; -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/org/sensorhub/ui/SensorHubWidgetSet.gwt.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /sensorhub-webui-core/widgetset/src/main/resources/org/sensorhub/ui/chartjs/chart.min.css: -------------------------------------------------------------------------------- 1 | @keyframes chartjs-render-animation{from{opacity:.99}to{opacity:1}}.chartjs-render-monitor{animation:chartjs-render-animation 1ms}.chartjs-size-monitor,.chartjs-size-monitor-expand,.chartjs-size-monitor-shrink{position:absolute;direction:ltr;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1}.chartjs-size-monitor-expand>div{position:absolute;width:1000000px;height:1000000px;left:0;top:0}.chartjs-size-monitor-shrink>div{position:absolute;width:200%;height:200%;left:0;top:0} --------------------------------------------------------------------------------