Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/artifacts/model/minfo/SedimentDensityFactory.java @ 7219:13f0bdeb2b47
issue1435: SedimentDensityFactory: Changed variable name of query to reflect
purpose better, added query and method to find description of density by its
id.
author | Felix Wolfsteller <felix.wolfsteller@intevation.de> |
---|---|
date | Tue, 01 Oct 2013 10:03:20 +0200 |
parents | 8079e3ba31c9 |
children | 349730f8a49f |
comparison
equal
deleted
inserted
replaced
7218:c9e74fe2ed4d | 7219:13f0bdeb2b47 |
---|---|
37 " FROM sediment_density sd" + | 37 " FROM sediment_density sd" + |
38 " JOIN rivers r ON sd.river_id = r.id " + | 38 " JOIN rivers r ON sd.river_id = r.id " + |
39 " JOIN sediment_density_values sdv ON sd.id = sdv.sediment_density_id" + | 39 " JOIN sediment_density_values sdv ON sd.id = sdv.sediment_density_id" + |
40 " WHERE r.name = :name"; | 40 " WHERE r.name = :name"; |
41 | 41 |
42 /** Query to get sediment density values and kms by id and year. */ | 42 /** Query to get sediment density values and kms by id. */ |
43 private static final String SQL_SELECT_DENSITY_BY_ID_YEAR = | 43 private static final String SQL_SELECT_DENSITY_BY_ID = |
44 "SELECT sdv.station AS km, " + | 44 "SELECT sdv.station AS km, " + |
45 " sdv.density AS density," + | 45 " sdv.density AS density," + |
46 " sdv.year AS year " + | 46 " sdv.year AS year " + |
47 " FROM sediment_density sd" + | 47 " FROM sediment_density sd" + |
48 " JOIN sediment_density_values sdv ON sd.id = sdv.sediment_density_id" + | 48 " JOIN sediment_density_values sdv ON sd.id = sdv.sediment_density_id" + |
49 " WHERE sd.id = :id"; | |
50 | |
51 /** Query to get sediment density description by id. */ | |
52 private static final String SQL_SELECT_DESCRIPTION_BY_ID = | |
53 "SELECT sd.description " + | |
54 " FROM sediment_density sd" + | |
49 " WHERE sd.id = :id"; | 55 " WHERE sd.id = :id"; |
50 | 56 |
51 private SedimentDensityFactory() {} | 57 private SedimentDensityFactory() {} |
52 | 58 |
53 public static SedimentDensity getSedimentDensity( | 59 public static SedimentDensity getSedimentDensity( |
104 | 110 |
105 density.cleanUp(); | 111 density.cleanUp(); |
106 return density; | 112 return density; |
107 } | 113 } |
108 | 114 |
115 public static String getSedimentDensityDescription(int id) { | |
116 log.debug("getSedimentDensityDescription"); | |
117 Session session = SessionHolder.HOLDER.get(); | |
118 SQLQuery sqlQuery = session.createSQLQuery(SQL_SELECT_DESCRIPTION_BY_ID) | |
119 .addScalar("description", StandardBasicTypes.STRING); | |
120 sqlQuery.setInteger("id", id); | |
121 List<Object> results = sqlQuery.list(); | |
122 | |
123 return (String) results.get(0); | |
124 } | |
125 | |
109 public static SedimentDensity getSedimentDensityUncached( | 126 public static SedimentDensity getSedimentDensityUncached( |
110 int id | 127 int id |
111 ) { | 128 ) { |
112 log.debug("getSedimentDensityUncached id/year"); | 129 log.debug("getSedimentDensityUncached id/year"); |
113 Session session = SessionHolder.HOLDER.get(); | 130 Session session = SessionHolder.HOLDER.get(); |
114 SQLQuery sqlQuery = session.createSQLQuery(SQL_SELECT_DENSITY_BY_ID_YEAR) | 131 SQLQuery sqlQuery = session.createSQLQuery(SQL_SELECT_DENSITY_BY_ID) |
115 .addScalar("km", StandardBasicTypes.DOUBLE) | 132 .addScalar("km", StandardBasicTypes.DOUBLE) |
116 .addScalar("density", StandardBasicTypes.DOUBLE) | 133 .addScalar("density", StandardBasicTypes.DOUBLE) |
117 .addScalar("year", StandardBasicTypes.INTEGER); | 134 .addScalar("year", StandardBasicTypes.INTEGER); |
118 sqlQuery.setInteger("id", id); | 135 sqlQuery.setInteger("id", id); |
119 List<Object[]> results = sqlQuery.list(); | 136 List<Object[]> results = sqlQuery.list(); |