Commit 571a3248 authored by Matthias Betz's avatar Matthias Betz
Browse files

update model for citygml4j 3 and quality ade 1.4.0

parent 009cef54
/*-
* Copyright 2020 Hochschule für Technik Stuttgart
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -13,32 +13,30 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model;
package de.hft.stuttgart.quality.model.types;
import java.io.Serial;
import java.util.ArrayList;
import java.util.List;
import org.citygml4j.builder.copy.CopyBuilder;
import de.hft.stuttgart.quality.model.properties.ComponentListProperty;
public class SolidNotClosed extends SolidError {
public abstract class MultipleComponentsError extends AbstractSolidError {
private static final long serialVersionUID = 4609395125395073697L;
@Serial
private static final long serialVersionUID = 4322219502819024437L;
private List<Edge> edges;
private List<ComponentListProperty> edges;
public boolean isSetEdges() {
return edges != null && !edges.isEmpty();
}
public List<Edge> getEdges() {
public List<ComponentListProperty> getEdges() {
if (edges == null) {
edges = new ArrayList<>();
}
return edges;
}
@Override
public Object copy(CopyBuilder copyBuilder) {
return copyTo(new SolidNotClosed(), copyBuilder);
public void setEdges(List<ComponentListProperty> edges) {
this.edges = edges;
}
}
/*-
* Copyright 2020 Hochschule für Technik Stuttgart
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -13,21 +13,25 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model;
package de.hft.stuttgart.quality.model.types;
import org.citygml4j.builder.copy.CopyBuilder;
import java.io.Serial;
public class TooFewPoints extends RingError {
import de.hft.stuttgart.quality.model.properties.EdgeListProperty;
private static final long serialVersionUID = -904319347280328865L;
@Override
public String toString() {
return "TooFewPoints [linearRingId=" + getLinearRingId() + "]";
public abstract class NonManifoldEdgeError extends AbstractSolidError {
@Serial
private static final long serialVersionUID = 3499800929524507025L;
private EdgeListProperty edges;
public EdgeListProperty getEdges() {
return edges;
}
@Override
public Object copy(CopyBuilder copyBuilder) {
return copyTo(new TooFewPoints(), copyBuilder);
public void setEdges(EdgeListProperty edges) {
this.edges = edges;
}
}
/*-
* Copyright 2020 Hochschule für Technik Stuttgart
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -13,23 +13,25 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model.jaxb;
package de.hft.stuttgart.quality.model.types;
import javax.xml.bind.annotation.XmlRootElement;
import java.io.Serial;
import net.opengis.gml.DirectPositionType;
import org.xmlobjects.gml.model.geometry.DirectPosition;
@XmlRootElement(name = "GE_S_NON_MANIFOLD_VERTEX")
public class NonManifoldVertexType extends SolidErrorType {
public abstract class NonManifoldVertexError extends AbstractSolidError {
private DirectPositionType vertex;
@Serial
private static final long serialVersionUID = 6428627491730618046L;
private DirectPosition vertex;
public void setVertex(DirectPositionType vertex) {
this.vertex = vertex;
public DirectPosition getVertex() {
return vertex;
}
public DirectPositionType getVertex() {
return vertex;
public void setVertex(DirectPosition vertex) {
this.vertex = vertex;
}
}
/*-
* Copyright 2020 Hochschule für Technik Stuttgart
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -13,19 +13,23 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model;
package de.hft.stuttgart.quality.model.types;
public abstract class RingError extends ValidationError {
import java.io.Serial;
private static final long serialVersionUID = -8610600028811350500L;
private String linearRingId;
public abstract class OrientationRingsSameError extends AbstractPolygonError {
public void setLinearRingId(String linearRingId) {
this.linearRingId = linearRingId;
@Serial
private static final long serialVersionUID = 5732797947859046889L;
private String linearRing;
public String getLinearRing() {
return linearRing;
}
public String getLinearRingId() {
return linearRingId;
public void setLinearRing(String linearRing) {
this.linearRing = linearRing;
}
}
/*-
* Copyright 2020 Hochschule für Technik Stuttgart
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -13,58 +13,48 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model.jaxb;
package de.hft.stuttgart.quality.model.types;
import java.io.Serializable;
import java.io.Serial;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.XmlValue;
import org.xmlobjects.gml.model.GMLObject;
@XmlType(name = "parameter")
@XmlAccessorType(XmlAccessType.FIELD)
public class Parameter implements Serializable {
public abstract class Parameter extends GMLObject {
private static final long serialVersionUID = 3704749975901280058L;
@Serial
private static final long serialVersionUID = 3493525795867922745L;
@XmlAttribute(name = "name")
private String name;
@XmlAttribute(required = false)
private String uom;
@XmlValue
private String value;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
public String getUom() {
return uom;
}
public void setUom(String uom) {
this.uom = uom;
}
public void setValue(String value) {
this.value = value;
}
public String getUom() {
return uom;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
@Override
public String toString() {
return "ParameterType [name=" + name + ", uom=" + uom + ", value=" + value + "]";
return "Parameter [name=" + name + ", uom=" + uom + ", value=" + value + "]";
}
}
/*-
* Copyright 2020 Hochschule für Technik Stuttgart
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -13,43 +13,40 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model;
package de.hft.stuttgart.quality.model.types;
import org.citygml4j.builder.copy.CopyBuilder;
import org.citygml4j.model.gml.geometry.primitives.DirectPosition;
import org.citygml4j.model.gml.measures.Length;
import java.io.Serial;
public class NonPlanarDistancePlane extends PolygonError {
import org.xmlobjects.gml.model.geometry.DirectPosition;
import org.xmlobjects.gml.model.measures.Length;
public abstract class PlanarDistancePlaneError extends AbstractPolygonError {
@Serial
private static final long serialVersionUID = 9186823395923829178L;
private static final long serialVersionUID = -3428574131554438219L;
private DirectPosition vertex;
private Length distance;
public DirectPosition getVertex() {
return vertex;
}
public void setVertex(DirectPosition vertex) {
this.vertex = vertex;
}
public void setDistance(Length distance) {
this.distance = distance;
}
public DirectPosition getVertex() {
return vertex;
}
public Length getDistance() {
return distance;
}
@Override
public String toString() {
return "NonPlanarDistancePlane [polygonId=" + getPolygonId() + ", vertex=" + vertex + ", distance=" + distance + "]";
public void setDistance(Length distance) {
this.distance = distance;
}
@Override
public Object copy(CopyBuilder copyBuilder) {
return copyTo(new NonPlanarDistancePlane(), copyBuilder);
public String toString() {
return "PlanarDistancePlaneError [vertex=" + vertex + ", distance=" + distance + "]";
}
}
/*-
* Copyright 2020 Hochschule für Technik Stuttgart
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -13,23 +13,25 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model.jaxb;
package de.hft.stuttgart.quality.model.types;
import javax.xml.bind.annotation.XmlRootElement;
import java.io.Serial;
import net.opengis.gml.AngleType;
import org.xmlobjects.gml.model.measures.Angle;
@XmlRootElement(name = "GE_P_NON_PLANAR_POLYGON_NORMALS_DEVIATION")
public class NonPlanarNormalsDeviationType extends PolygonErrorType {
public abstract class PlanarNormalsDeviationError extends AbstractPolygonError {
private AngleType deviation;
@Serial
private static final long serialVersionUID = 5914728363336771016L;
public void setDeviation(AngleType deviation) {
this.deviation = deviation;
}
private Angle deviation;
public AngleType getDeviation() {
public Angle getDeviation() {
return deviation;
}
public void setDeviation(Angle deviation) {
this.deviation = deviation;
}
}
/*-
* Copyright 2020 Hochschule für Technik Stuttgart
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -13,25 +13,30 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model.jaxb;
package de.hft.stuttgart.quality.model.types;
import java.io.Serializable;
import java.io.Serial;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlElement;
import org.xmlobjects.gml.model.GMLObject;
public class Component implements Serializable {
public abstract class PolygonIdList extends GMLObject {
private static final long serialVersionUID = 75005650370135888L;
@Serial
private static final long serialVersionUID = 4396447239956257299L;
private List<String> polygonIds;
@XmlElement(name = "polygonId")
private List<String> polygonIds;
public List<String> getPolygonIds() {
if (polygonIds == null) {
polygonIds = new ArrayList<>();
}
return polygonIds;
}
public void setPolygonIds(List<String> polygonIds) {
this.polygonIds = polygonIds;
}
}
/*-
* Copyright 2020 Hochschule für Technik Stuttgart
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -13,30 +13,32 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model.jaxb;
package de.hft.stuttgart.quality.model.types;
import javax.xml.bind.annotation.XmlRootElement;
import java.io.Serial;
@XmlRootElement(name = "GE_S_SELF_INTERSECTION")
public class SolidSelfIntersectionType extends SolidErrorType {
public abstract class PolygonWrongOrientationError extends AbstractSolidError {
@Serial
private static final long serialVersionUID = 4975827693656963892L;
private String polygonId1;
private String polygonId2;
public void setPolygonId1(String polygonId1) {
this.polygonId1 = polygonId1;
}
public void setPolygonId2(String polygonId2) {
this.polygonId2 = polygonId2;
}
public String getPolygonId1() {
return polygonId1;
}
public void setPolygonId1(String polygonId1) {
this.polygonId1 = polygonId1;
}
public String getPolygonId2() {
return polygonId2;
}
public void setPolygonId2(String polygonId2) {
this.polygonId2 = polygonId2;
}
}
/*-
* Copyright 2020 Hochschule für Technik Stuttgart
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -13,59 +13,51 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model.jaxb;
package de.hft.stuttgart.quality.model.types;
import java.io.Serializable;
import java.io.Serial;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
import org.xmlobjects.gml.model.GMLObject;
@XmlType(name = "requirement")
@XmlAccessorType(XmlAccessType.FIELD)
public class Requirement implements Serializable {
import de.hft.stuttgart.quality.model.enums.RequirementId;
import de.hft.stuttgart.quality.model.properties.ParameterProperty;
private static final long serialVersionUID = 8493047783215253763L;
public abstract class Requirement extends GMLObject {
@XmlAttribute
private RequirementId name;
@Serial
private static final long serialVersionUID = 4428291416242684642L;
@XmlAttribute
private boolean enabled;
private RequirementId requirementType;
private List<ParameterProperty> parameters;
@XmlElement(name = "parameter")
private List<Parameter> parameters;
public RequirementId getName() {
return name;
public boolean isEnabled() {
return enabled;
}
public List<Parameter> getParameters() {
if (parameters == null) {
parameters = new ArrayList<>(2);
}
return parameters;
public void setEnabled(boolean enabled) {
this.enabled = enabled;
}
public boolean isEnabled() {
return enabled;
public RequirementId getRequirementType() {
return requirementType;
}
public void setName(RequirementId name) {
this.name = name;
public void setRequirementType(RequirementId requirementType) {
this.requirementType = requirementType;
}
public void setEnabled(boolean enabled) {
this.enabled = enabled;
public List<ParameterProperty> getParameters() {
if (parameters == null) {
parameters = new ArrayList<>();
}
return parameters;
}
@Override
public String toString() {
return "Requirement [name=" + name + ", enabled=" + enabled + ", parameters=" + parameters + "]";
public void setParameters(List<ParameterProperty> parameters) {
this.parameters = parameters;
}
}
/*-
* Copyright 2020 Hochschule für Technik Stuttgart
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -13,11 +13,13 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model.jaxb;
package de.hft.stuttgart.quality.model.types;
import javax.xml.bind.annotation.XmlRootElement;
import java.io.Serial;
@XmlRootElement(name = "GE_R_NOT_CLOSED")
public class RingNotClosedType extends RingErrorType {
public abstract class RingNotClosedError extends AbstractRingError {
@Serial
private static final long serialVersionUID = 3327214274004406000L;
}
/*-
* Copyright 2020 Hochschule für Technik Stuttgart
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -13,71 +13,70 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model;
package de.hft.stuttgart.quality.model.types;
import org.citygml4j.builder.copy.CopyBuilder;
import org.citygml4j.model.gml.geometry.primitives.DirectPosition;
import java.io.Serial;
import de.hft.stuttgart.quality.model.jaxb.RingSelfIntType;
import org.xmlobjects.gml.model.geometry.DirectPosition;
public class RingSelfIntersection extends RingError {
import de.hft.stuttgart.quality.model.enums.RingSelfIntType;
import de.hft.stuttgart.quality.model.properties.EdgeProperty;
public abstract class RingSelfIntersectionError extends AbstractRingError {
@Serial
private static final long serialVersionUID = 9103800366580888883L;
private static final long serialVersionUID = -4426615638983209222L;
private RingSelfIntType type;
private Edge edge1;
private Edge edge2;
private EdgeProperty edge1;
private EdgeProperty edge2;
private DirectPosition vertex1;
private DirectPosition vertex2;
public RingSelfIntType getType() {
return type;
}
public void setType(RingSelfIntType type) {
this.type = type;
}
public void setEdge1(Edge edge1) {
this.edge1 = edge1;
public EdgeProperty getEdge1() {
return edge1;
}
public void setEdge2(Edge edge2) {
this.edge2 = edge2;
public void setEdge1(EdgeProperty edge1) {
this.edge1 = edge1;
}
public void setVertex1(DirectPosition vertex1) {
this.vertex1 = vertex1;
}
public void setVertex2(DirectPosition vertex2) {
this.vertex2 = vertex2;
public EdgeProperty getEdge2() {
return edge2;
}
public RingSelfIntType getType() {
return type;
public void setEdge2(EdgeProperty edge2) {
this.edge2 = edge2;
}
public Edge getEdge1() {
return edge1;
public DirectPosition getVertex1() {
return vertex1;
}
public Edge getEdge2() {
return edge2;
public void setVertex1(DirectPosition vertex1) {
this.vertex1 = vertex1;
}
public DirectPosition getVertex1() {
return vertex1;
}
public DirectPosition getVertex2() {
return vertex2;
}
@Override
public String toString() {
return "RingSelfIntersection [linearRingId=" + getLinearRingId() + ", type=" + type + ", edge1=" + edge1 + ", edge2="
+ edge2 + ", vertex1=" + vertex1 + ", vertex2=" + vertex2 + "]";
public void setVertex2(DirectPosition vertex2) {
this.vertex2 = vertex2;
}
@Override
public Object copy(CopyBuilder copyBuilder) {
return copyTo(new RingSelfIntersection(), copyBuilder);
public String toString() {
return "RingSelfIntersectionError [type=" + type + ", edge1=" + edge1 + ", edge2=" + edge2 + ", vertex1="
+ vertex1 + ", vertex2=" + vertex2 + "]";
}
}
/*-
* Copyright 2020 Hochschule für Technik Stuttgart
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -13,11 +13,13 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model.jaxb;
package de.hft.stuttgart.quality.model.types;
import javax.xml.bind.annotation.XmlRootElement;
import java.io.Serial;
@XmlRootElement(name = "GE_S_ALL_POLYGONS_WRONG_ORIENTATION")
public class AllPolygonsWrongOrientationType extends SolidErrorType {
public abstract class RingTooFewPointsError extends AbstractRingError {
@Serial
private static final long serialVersionUID = 8057350098649982235L;
}
/*-
* Copyright 2020 Hochschule für Technik Stuttgart
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -13,12 +13,14 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model.jaxb;
package de.hft.stuttgart.quality.model.types;
import javax.xml.bind.annotation.XmlRootElement;
import java.io.Serial;
@XmlRootElement(name = "SE_ATTRIBUTE_WRONG_VALUE")
public class AttributeWrongValueType extends SemanticErrorType {
public abstract class SemanticAttributeMissingError extends AbstractSemanticError {
@Serial
private static final long serialVersionUID = 7157884749606290596L;
private String childId;
private String attributeName;
......
/*-
* Copyright 2020 Hochschule für Technik Stuttgart
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -13,13 +13,15 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model.jaxb;
package de.hft.stuttgart.quality.model.types;
import javax.xml.bind.annotation.XmlRootElement;
import java.io.Serial;
@XmlRootElement(name = "SE_ATTRIBUTE_MISSING")
public class AttributeMissingType extends SemanticErrorType {
public abstract class SemanticAttributeWrongValueError extends AbstractSemanticError {
@Serial
private static final long serialVersionUID = 3478578364446339884L;
private String childId;
private String attributeName;
private boolean generic;
......
/*-
* Copyright 2020 Hochschule für Technik Stuttgart
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -13,21 +13,25 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model;
package de.hft.stuttgart.quality.model.types;
import org.citygml4j.builder.copy.CopyBuilder;
import java.io.Serial;
public class TooFewPolygons extends SolidError {
import de.hft.stuttgart.quality.model.properties.EdgeListProperty;
private static final long serialVersionUID = -51591095439740599L;
public abstract class SolidNotClosedError extends AbstractSolidError {
@Override
public String toString() {
return "TooFewPolygons [geometryId=" + getGeometryId() + "]";
@Serial
private static final long serialVersionUID = 297029245173578437L;
private EdgeListProperty edges;
public EdgeListProperty getEdges() {
return edges;
}
@Override
public Object copy(CopyBuilder copyBuilder) {
return copyTo(new TooFewPolygons(), copyBuilder);
public void setEdges(EdgeListProperty edges) {
this.edges = edges;
}
}
/*-
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model.types;
import java.io.Serial;
public abstract class SolidSelfIntersectionError extends AbstractSolidError {
@Serial
private static final long serialVersionUID = 5070991901664859830L;
}
/*-
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model.types;
import java.io.Serial;
public abstract class SolidTooFewPolygonsError extends AbstractSolidError {
@Serial
private static final long serialVersionUID = 1987841643971824973L;
}
/*-
* Copyright 2020 Hochschule für Technik Stuttgart
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -13,86 +13,87 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model.jaxb;
package de.hft.stuttgart.quality.model.types;
import java.io.Serializable;
import java.io.Serial;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import org.xmlobjects.gml.model.GMLObject;
@XmlAccessorType(XmlAccessType.FIELD)
public class Statistics implements Serializable {
import de.hft.stuttgart.quality.model.properties.ErrorProperty;
import de.hft.stuttgart.quality.model.properties.FeatureStatisticsProperty;
private static final long serialVersionUID = 2250094686994310986L;
public abstract class Statistics extends GMLObject {
private FeatureStatistics numErrorBuildings;
private FeatureStatistics numErrorVegetation;
private FeatureStatistics numErrorLandObjects;
private FeatureStatistics numErrorBridgeObjects;
private FeatureStatistics numErrorWaterObjects;
private FeatureStatistics numErrorTransportation;
@Serial
private static final long serialVersionUID = 2935590283116950203L;
private FeatureStatisticsProperty numErrorBuildings;
private FeatureStatisticsProperty numErrorVegetation;
private FeatureStatisticsProperty numErrorLandObjects;
private FeatureStatisticsProperty numErrorBridgeObjects;
private FeatureStatisticsProperty numErrorWaterObjects;
private FeatureStatisticsProperty numErrorTransportation;
private List<ErrorProperty> errors;
@XmlElementWrapper(name = "errorStatistics")
@XmlElement(name = "error")
private List<ErrorStatistics> errorStatistics;
public FeatureStatisticsProperty getNumErrorBuildings() {
return numErrorBuildings;
}
public List<ErrorStatistics> getErrorStatistics() {
if (errorStatistics == null) {
errorStatistics = new ArrayList<>();
}
return errorStatistics;
public void setNumErrorBuildings(FeatureStatisticsProperty numErrorBuildings) {
this.numErrorBuildings = numErrorBuildings;
}
public FeatureStatistics getNumErrorBridgeObjects() {
return numErrorBridgeObjects;
public FeatureStatisticsProperty getNumErrorVegetation() {
return numErrorVegetation;
}
public FeatureStatistics getNumErrorBuildings() {
return numErrorBuildings;
public void setNumErrorVegetation(FeatureStatisticsProperty numErrorVegetation) {
this.numErrorVegetation = numErrorVegetation;
}
public FeatureStatistics getNumErrorLandObjects() {
public FeatureStatisticsProperty getNumErrorLandObjects() {
return numErrorLandObjects;
}
public FeatureStatistics getNumErrorTransportation() {
return numErrorTransportation;
public void setNumErrorLandObjects(FeatureStatisticsProperty numErrorLandObjects) {
this.numErrorLandObjects = numErrorLandObjects;
}
public FeatureStatistics getNumErrorVegetation() {
return numErrorVegetation;
public FeatureStatisticsProperty getNumErrorBridgeObjects() {
return numErrorBridgeObjects;
}
public FeatureStatistics getNumErrorWaterObjects() {
return numErrorWaterObjects;
public void setNumErrorBridgeObjects(FeatureStatisticsProperty numErrorBridgeObjects) {
this.numErrorBridgeObjects = numErrorBridgeObjects;
}
public void setNumErrorBridgeObjects(FeatureStatistics numErrorBridgeObjects) {
this.numErrorBridgeObjects = numErrorBridgeObjects;
public FeatureStatisticsProperty getNumErrorWaterObjects() {
return numErrorWaterObjects;
}
public void setNumErrorBuildings(FeatureStatistics numErrorBuildings) {
this.numErrorBuildings = numErrorBuildings;
public void setNumErrorWaterObjects(FeatureStatisticsProperty numErrorWaterObjects) {
this.numErrorWaterObjects = numErrorWaterObjects;
}
public void setNumErrorLandObjects(FeatureStatistics numErrorLandObjects) {
this.numErrorLandObjects = numErrorLandObjects;
public FeatureStatisticsProperty getNumErrorTransportation() {
return numErrorTransportation;
}
public void setNumErrorTransportation(FeatureStatistics numErrorTransportation) {
public void setNumErrorTransportation(FeatureStatisticsProperty numErrorTransportation) {
this.numErrorTransportation = numErrorTransportation;
}
public void setNumErrorVegetation(FeatureStatistics numErrorVegetation) {
this.numErrorVegetation = numErrorVegetation;
public List<ErrorProperty> getErrors() {
if (errors == null) {
errors = new ArrayList<>();
}
return errors;
}
public void setNumErrorWaterObjects(FeatureStatistics numErrorWaterObjects) {
this.numErrorWaterObjects = numErrorWaterObjects;
public void setErrors(List<ErrorProperty> errors) {
this.errors = errors;
}
}
/*-
* Copyright 2020 Hochschule für Technik Stuttgart
* Copyright 2022 Hochschule für Technik Stuttgart
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -13,45 +13,25 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.hft.stuttgart.quality.model.jaxb;
package de.hft.stuttgart.quality.model.types;
import java.io.Serial;
import java.time.ZonedDateTime;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import org.citygml4j.core.model.core.AbstractFeature;
import de.hft.stuttgart.quality.marshaller.ZonedDateTimeAdapter;
import de.hft.stuttgart.quality.model.properties.StatisticsProperty;
import de.hft.stuttgart.quality.model.properties.ValidationPlanProperty;
@XmlType(name = "validation")
@XmlAccessorType(XmlAccessType.FIELD)
public class ValidationType {
public abstract class Validation extends AbstractFeature {
@XmlJavaTypeAdapter(ZonedDateTimeAdapter.class)
private ZonedDateTime validationDate;
@Serial
private static final long serialVersionUID = 7821104529898548535L;
private ZonedDateTime validationDate;
private String validationSoftware;
private ValidationPlan validationPlan;
private Statistics statistics;
public void setStatistics(Statistics statistics) {
this.statistics = statistics;
}
public Statistics getStatistics() {
return statistics;
}
public void setValidationPlan(ValidationPlan validationPlan) {
this.validationPlan = validationPlan;
}
public ValidationPlan getValidationPlan() {
return validationPlan;
}
private StatisticsProperty statistics;
private ValidationPlanProperty validationPlan;
public ZonedDateTime getValidationDate() {
return validationDate;
......@@ -69,4 +49,20 @@ public class ValidationType {
this.validationSoftware = validationSoftware;
}
public StatisticsProperty getStatistics() {
return statistics;
}
public void setStatistics(StatisticsProperty statistics) {
this.statistics = statistics;
}
public ValidationPlanProperty getValidationPlan() {
return validationPlan;
}
public void setValidationPlan(ValidationPlanProperty validationPlan) {
this.validationPlan = validationPlan;
}
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment