Mercurial > dive4elements > river
diff artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/CalculationSelectSinfo.java @ 9191:f692f5a0536a
sinfo.collisions review
author | gernotbelger |
---|---|
date | Thu, 28 Jun 2018 15:57:40 +0200 |
parents | e3519c3e7a0a |
children |
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/CalculationSelectSinfo.java Thu Jun 28 15:10:04 2018 +0200 +++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/CalculationSelectSinfo.java Thu Jun 28 15:57:40 2018 +0200 @@ -11,14 +11,18 @@ import java.util.ArrayList; import java.util.Collection; +import java.util.List; import org.apache.log4j.Logger; import org.dive4elements.artifacts.Artifact; import org.dive4elements.artifacts.CallContext; import org.dive4elements.artifacts.CallMeta; import org.dive4elements.artifacts.common.utils.XMLUtils; +import org.dive4elements.river.artifacts.model.CollisionHibernateFactory; import org.dive4elements.river.artifacts.resources.Resources; +import org.dive4elements.river.artifacts.sinfo.collision.CollisionAccess; import org.dive4elements.river.artifacts.states.DefaultState; +import org.dive4elements.river.model.sinfo.Collision; import org.w3c.dom.Element; /** @@ -55,7 +59,19 @@ final SINFOArtifact sinfo = (SINFOArtifact) artifact; /* throws an exception if calculation mode is invalid */ - sinfo.getCalculationMode(); + final String calcmode = sinfo.getCalculationMode().toString(); // "toString()" is important + if (calcmode.equals("sinfo_calc_collision")) { + + final CollisionAccess access = new CollisionAccess((SINFOArtifact) artifact); + + final List<Collision> list = CollisionHibernateFactory.getCollisionsByRiver(access.getRiver()); + + if (list.size() == 0) { + throw new IllegalArgumentException("error_no_data_for_river"); + } + } + return true; } + } \ No newline at end of file