Commit f4a005d3 authored by Riegel's avatar Riegel
Browse files

Refactor: Add ClearCheckResultsVisitor

parent 23ca3296
...@@ -74,12 +74,6 @@ public class ReliefObject extends CityObject { ...@@ -74,12 +74,6 @@ public class ReliefObject extends CityObject {
return new ReliefObject(feature); return new ReliefObject(feature);
} }
@Override
public void clearAllContainedCheckResults() {
for (TinObject component : components) {
component.clearAllContainedCheckResults();
}
}
@Override @Override
public void rebuildGeometries(GeometryFactory factory, ParserConfiguration config) { public void rebuildGeometries(GeometryFactory factory, ParserConfiguration config) {
......
...@@ -40,14 +40,6 @@ public class Storey extends AbstractBuildingSubdivision { ...@@ -40,14 +40,6 @@ public class Storey extends AbstractBuildingSubdivision {
} }
} }
@Override
public void clearAllContainedCheckResults() {
super.clearAllContainedCheckResults();
for (BuildingUnit buildingUnit : buildingUnits) {
buildingUnit.clearAllContainedCheckResults();
}
}
@Override @Override
public void collectInstances(CopyHandler handler) { public void collectInstances(CopyHandler handler) {
super.collectInstances(handler); super.collectInstances(handler);
......
...@@ -80,17 +80,6 @@ public class TopLevelTransportFeature extends TransportationSpace { ...@@ -80,17 +80,6 @@ public class TopLevelTransportFeature extends TransportationSpace {
return intersections; return intersections;
} }
@Override
public void clearAllContainedCheckResults() {
super.clearAllContainedCheckResults();
for (TransportSection section : sections) {
section.clearAllContainedCheckResults();
}
for (TransportSection section : intersections) {
section.clearAllContainedCheckResults();
}
}
@Override @Override
public void accept(Check c) { public void accept(Check c) {
super.accept(c); super.accept(c);
......
...@@ -69,14 +69,6 @@ public class TrafficSpaceObject extends TransportationObject { ...@@ -69,14 +69,6 @@ public class TrafficSpaceObject extends TransportationObject {
} }
} }
@Override
public void clearAllContainedCheckResults() {
super.clearAllContainedCheckResults();
for (TrafficAreaObject tao : trafficAreas) {
tao.clearAllContainedCheckResults();
}
}
@Override @Override
public void accept(Check c) { public void accept(Check c) {
super.accept(c); super.accept(c);
......
...@@ -91,18 +91,6 @@ public abstract class TransportationSpace extends TransportationObject { ...@@ -91,18 +91,6 @@ public abstract class TransportationSpace extends TransportationObject {
} }
} }
@Override
public void clearAllContainedCheckResults() {
super.clearAllContainedCheckResults();
for (TrafficSpaceObject to : trafficSpaces) {
to.clearAllContainedCheckResults();
}
for (TrafficSpaceObject to : auxTrafficSpaces) {
to.clearAllContainedCheckResults();
}
}
@Override @Override
public void accept(Check c) { public void accept(Check c) {
super.accept(c); super.accept(c);
......
...@@ -42,14 +42,6 @@ public class Tunnel extends AbstractTunnel { ...@@ -42,14 +42,6 @@ public class Tunnel extends AbstractTunnel {
} }
} }
@Override
public void clearAllContainedCheckResults() {
super.clearAllContainedCheckResults();
for (TunnelPart tp : tunnelParts) {
tp.clearAllContainedCheckResults();
}
}
public void addTunnelPart(TunnelPart tunnelPart) { public void addTunnelPart(TunnelPart tunnelPart) {
tunnelParts.add(tunnelPart); tunnelParts.add(tunnelPart);
} }
......
...@@ -105,14 +105,6 @@ public class TunnelConstructiveElement extends CityObject { ...@@ -105,14 +105,6 @@ public class TunnelConstructiveElement extends CityObject {
} }
} }
@Override
public void clearAllContainedCheckResults() {
super.clearAllContainedCheckResults();
for (BoundarySurface bs : boundarySurfaceList) {
bs.clearAllContainedCheckResults();
}
}
private void reCreateBoundarySurface(GeometryFactory factory, ParserConfiguration config, BoundarySurface bs) { private void reCreateBoundarySurface(GeometryFactory factory, ParserConfiguration config, BoundarySurface bs) {
if (bs.getGeometries().isEmpty()) { if (bs.getGeometries().isEmpty()) {
for (AbstractSpaceBoundaryProperty bsp : gmlTunnelElement.getBoundaries()) { for (AbstractSpaceBoundaryProperty bsp : gmlTunnelElement.getBoundaries()) {
......
package de.hft.stuttgart.citydoctor2.utils.visitors;
import de.hft.stuttgart.citydoctor2.check.AbstractCheck;
import de.hft.stuttgart.citydoctor2.check.Checkable;
public class ClearCheckResultsVisitor extends AbstractCheck {
@Override
public void check(Checkable checkable) {
checkable.clearCheckResults();
}
}
...@@ -48,10 +48,6 @@ public class CheckableTest { ...@@ -48,10 +48,6 @@ public class CheckableTest {
return null; return null;
} }
@Override
public void clearAllContainedCheckResults() {
}
@Override @Override
public Class<? extends Checkable> getCheckClass() { public Class<? extends Checkable> getCheckClass() {
return Building.class; return Building.class;
......
...@@ -32,6 +32,7 @@ import java.util.ArrayList; ...@@ -32,6 +32,7 @@ import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import de.hft.stuttgart.citydoctor2.utils.visitors.ClearCheckResultsVisitor;
import de.hft.stuttgart.citydoctor2.utils.visitors.GmlGeometryRebuilder; import de.hft.stuttgart.citydoctor2.utils.visitors.GmlGeometryRebuilder;
import de.hft.stuttgart.citydoctor2.utils.visitors.UnsetGeometriesVisitor; import de.hft.stuttgart.citydoctor2.utils.visitors.UnsetGeometriesVisitor;
import org.citygml4j.core.model.construction.WallSurface; import org.citygml4j.core.model.construction.WallSurface;
...@@ -151,8 +152,8 @@ public class AbstractBuildingTest { ...@@ -151,8 +152,8 @@ public class AbstractBuildingTest {
assertEquals(1, ab.getAllCheckResults().size()); assertEquals(1, ab.getAllCheckResults().size());
ab.clearAllContainedCheckResults(); ab.clearAllContainedCheckResults();
Mockito.verify(biMock, Mockito.times(1)).clearAllContainedCheckResults(); Mockito.verify(biMock).accept(any(ClearCheckResultsVisitor.class));
Mockito.verify(bsMock, Mockito.times(1)).clearAllContainedCheckResults(); Mockito.verify(bsMock).accept(any(ClearCheckResultsVisitor.class));
assertTrue(ab.getAllCheckResults().isEmpty()); assertTrue(ab.getAllCheckResults().isEmpty());
} }
......
...@@ -29,6 +29,7 @@ import java.util.ArrayList; ...@@ -29,6 +29,7 @@ import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import de.hft.stuttgart.citydoctor2.utils.visitors.ClearCheckResultsVisitor;
import de.hft.stuttgart.citydoctor2.utils.visitors.GmlGeometryRebuilder; import de.hft.stuttgart.citydoctor2.utils.visitors.GmlGeometryRebuilder;
import de.hft.stuttgart.citydoctor2.utils.visitors.UnsetGeometriesVisitor; import de.hft.stuttgart.citydoctor2.utils.visitors.UnsetGeometriesVisitor;
import org.citygml4j.core.model.construction.AbstractConstructionSurface; import org.citygml4j.core.model.construction.AbstractConstructionSurface;
...@@ -127,7 +128,7 @@ public class BoundarySurfaceTest { ...@@ -127,7 +128,7 @@ public class BoundarySurfaceTest {
assertFalse(bs.getAllCheckResults().isEmpty()); assertFalse(bs.getAllCheckResults().isEmpty());
bs.addOpening(oMock); bs.addOpening(oMock);
bs.clearAllContainedCheckResults(); bs.clearAllContainedCheckResults();
Mockito.verify(oMock).clearAllContainedCheckResults(); Mockito.verify(oMock).accept(any(ClearCheckResultsVisitor.class));
assertTrue(bs.getAllCheckResults().isEmpty()); assertTrue(bs.getAllCheckResults().isEmpty());
} }
......
...@@ -31,6 +31,7 @@ import static org.mockito.Mockito.when; ...@@ -31,6 +31,7 @@ import static org.mockito.Mockito.when;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import de.hft.stuttgart.citydoctor2.utils.visitors.ClearCheckResultsVisitor;
import de.hft.stuttgart.citydoctor2.utils.visitors.GmlGeometryRebuilder; import de.hft.stuttgart.citydoctor2.utils.visitors.GmlGeometryRebuilder;
import de.hft.stuttgart.citydoctor2.utils.visitors.UnsetGeometriesVisitor; import de.hft.stuttgart.citydoctor2.utils.visitors.UnsetGeometriesVisitor;
import org.citygml4j.core.model.bridge.AbstractBridge; import org.citygml4j.core.model.bridge.AbstractBridge;
...@@ -118,7 +119,7 @@ public class BridgeObjectTest { ...@@ -118,7 +119,7 @@ public class BridgeObjectTest {
BoundarySurface bsMock = mock(BoundarySurface.class); BoundarySurface bsMock = mock(BoundarySurface.class);
bo.addBoundarySurface(bsMock); bo.addBoundarySurface(bsMock);
bo.clearAllContainedCheckResults(); bo.clearAllContainedCheckResults();
verify(bsMock).clearAllContainedCheckResults(); verify(bsMock).accept(any(ClearCheckResultsVisitor.class));
} }
@Test @Test
......
...@@ -24,6 +24,7 @@ import static org.junit.Assert.assertNotNull; ...@@ -24,6 +24,7 @@ import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull; import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertSame; import static org.junit.Assert.assertSame;
import static org.junit.Assert.assertTrue; import static org.junit.Assert.assertTrue;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.mock; import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when; import static org.mockito.Mockito.when;
...@@ -31,6 +32,7 @@ import static org.mockito.Mockito.when; ...@@ -31,6 +32,7 @@ import static org.mockito.Mockito.when;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import de.hft.stuttgart.citydoctor2.utils.visitors.ClearCheckResultsVisitor;
import org.citygml4j.core.model.construction.AbstractConstructionSurface; import org.citygml4j.core.model.construction.AbstractConstructionSurface;
import org.citygml4j.core.model.construction.WallSurface; import org.citygml4j.core.model.construction.WallSurface;
import org.citygml4j.core.util.geometry.GeometryFactory; import org.citygml4j.core.util.geometry.GeometryFactory;
...@@ -283,7 +285,7 @@ public class GeometryTest { ...@@ -283,7 +285,7 @@ public class GeometryTest {
Polygon p = mock(Polygon.class); Polygon p = mock(Polygon.class);
geom.addPolygon(p); geom.addPolygon(p);
geom.clearAllContainedCheckResults(); geom.clearAllContainedCheckResults();
verify(p).clearAllContainedCheckResults(); verify(p).accept(any(ClearCheckResultsVisitor.class));
assertFalse(geom.containsError(CheckId.C_GE_P_HOLE_OUTSIDE)); assertFalse(geom.containsError(CheckId.C_GE_P_HOLE_OUTSIDE));
} }
......
...@@ -31,6 +31,8 @@ import static org.mockito.Mockito.when; ...@@ -31,6 +31,8 @@ import static org.mockito.Mockito.when;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import de.hft.stuttgart.citydoctor2.utils.visitors.ClearCheckResultsVisitor;
import de.hft.stuttgart.citydoctor2.utils.visitors.GmlGeometryRebuilder;
import org.citygml4j.core.model.deprecated.core.DeprecatedPropertiesOfAbstractCityObject; import org.citygml4j.core.model.deprecated.core.DeprecatedPropertiesOfAbstractCityObject;
import org.citygml4j.core.model.deprecated.core.DeprecatedPropertiesOfAbstractThematicSurface; import org.citygml4j.core.model.deprecated.core.DeprecatedPropertiesOfAbstractThematicSurface;
import org.citygml4j.core.model.deprecated.transportation.DeprecatedPropertiesOfAbstractTransportationSpace; import org.citygml4j.core.model.deprecated.transportation.DeprecatedPropertiesOfAbstractTransportationSpace;
...@@ -106,10 +108,10 @@ public class TransportationObjectTest { ...@@ -106,10 +108,10 @@ public class TransportationObjectTest {
top.reCreateGeometries(factory, mock(ParserConfiguration.class)); top.reCreateGeometries(factory, mock(ParserConfiguration.class));
verify(roadMock).setLod2MultiSurface(any()); verify(roadMock).setLod2MultiSurface(any());
verify(sectionMock).reCreateGeometries(any(), any()); verify(sectionMock).accept(any(GmlGeometryRebuilder.class));
verify(intersectionMock).reCreateGeometries(any(), any()); verify(intersectionMock).accept(any(GmlGeometryRebuilder.class));
verify(tsMock).reCreateGeometries(any(), any()); verify(tsMock).accept(any(GmlGeometryRebuilder.class));
verify(auxTsMock).reCreateGeometries(any(), any()); verify(auxTsMock).accept(any(GmlGeometryRebuilder.class));
} }
@Test @Test
...@@ -126,7 +128,7 @@ public class TransportationObjectTest { ...@@ -126,7 +128,7 @@ public class TransportationObjectTest {
tso.reCreateGeometries(factory, mock(ParserConfiguration.class)); tso.reCreateGeometries(factory, mock(ParserConfiguration.class));
verify(tsMock).setLod2MultiSurface(any()); verify(tsMock).setLod2MultiSurface(any());
verify(taoMock).reCreateGeometries(any(), any()); verify(taoMock).accept(any(GmlGeometryRebuilder.class));
} }
@Test @Test
...@@ -359,10 +361,10 @@ public class TransportationObjectTest { ...@@ -359,10 +361,10 @@ public class TransportationObjectTest {
top.clearAllContainedCheckResults(); top.clearAllContainedCheckResults();
assertFalse(top.containsError(CheckId.C_GE_P_HOLE_OUTSIDE)); assertFalse(top.containsError(CheckId.C_GE_P_HOLE_OUTSIDE));
verify(sectionMock).clearAllContainedCheckResults(); verify(sectionMock).accept(any(ClearCheckResultsVisitor.class));
verify(intersectionMock).clearAllContainedCheckResults(); verify(intersectionMock).accept(any(ClearCheckResultsVisitor.class));
verify(tsMock).clearAllContainedCheckResults(); verify(tsMock).accept(any(ClearCheckResultsVisitor.class));
verify(auxTsMock).clearAllContainedCheckResults(); verify(auxTsMock).accept(any(ClearCheckResultsVisitor.class));
} }
@Test @Test
...@@ -380,7 +382,7 @@ public class TransportationObjectTest { ...@@ -380,7 +382,7 @@ public class TransportationObjectTest {
tso.clearAllContainedCheckResults(); tso.clearAllContainedCheckResults();
assertFalse(tso.containsError(CheckId.C_GE_P_HOLE_OUTSIDE)); assertFalse(tso.containsError(CheckId.C_GE_P_HOLE_OUTSIDE));
verify(taMock).clearAllContainedCheckResults(); verify(taMock).accept(any(ClearCheckResultsVisitor.class));
} }
@Test @Test
......
Supports Markdown
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