Commit 14445979e92ccd9833e0135ed48c9eeaa6528cdd

Authored by Notmoo-PC\Notmoo
1 parent 6c6ef54e

Clss HibernateDao : ajout getters

Showing 1 changed file with 37 additions and 4 deletions   Show diff stats
project/server_core/src/main/java/dao/HibernateDao.java
... ... @@ -130,21 +130,54 @@ public class HibernateDao {
130 130 public boolean saveMap(final Map map){return internal_saveData(map);}
131 131 public Map getMap(int mapId){
132 132 TransactionCallBack callBack = execTransactionProcess((session)->{
133   - TransactionCallBack reply = new TransactionCallBack<RssiRecord>();
  133 + TransactionCallBack reply = new TransactionCallBack<Map>();
134 134 Query query = session.createQuery("from Map m where m.id = :id");
135 135 query.setParameter("id", mapId);
136 136 List<Object> results = query.list();
137 137 for(Object result : results){
138   - if(result instanceof RssiRecord)
  138 + if(result instanceof Map)
139 139 reply.getResults().add(result);
140 140 }
141 141 return reply;
142 142 });
143 143 return (callBack.getResults().isEmpty()?null:(Map)callBack.getResults().get(0));
144 144 }
145   -
  145 +
  146 + public List<AccessPoint> getAccessPoints(String apMacAddress) {
  147 + TransactionCallBack callBack = execTransactionProcess((session)->{
  148 + TransactionCallBack reply = new TransactionCallBack<AccessPoint>();
  149 + Query query = session.createQuery("from AccessPoint ap where ap.mac_addr = :addr");
  150 + query.setParameter("addr", apMacAddress);
  151 + List<Object> results = query.list();
  152 + for(Object result : results){
  153 + if(result instanceof AccessPoint)
  154 + reply.getResults().add(result);
  155 + }
  156 + return reply;
  157 + });
  158 +
  159 + List<AccessPoint> reply = new ArrayList<>();
  160 + callBack.getResults().forEach(result->reply.add((AccessPoint)result));
  161 + return reply;
  162 + }
  163 +
  164 + public Location getLocation(int Location) {
  165 + TransactionCallBack callBack = execTransactionProcess((session)->{
  166 + TransactionCallBack reply = new TransactionCallBack<Location>();
  167 + Query query = session.createQuery("from Location loc where loc.id = :id");
  168 + query.setParameter("id", Location);
  169 + List<Object> results = query.list();
  170 + for(Object result : results){
  171 + if(result instanceof Location)
  172 + reply.getResults().add(result);
  173 + }
  174 + return reply;
  175 + });
  176 + return (callBack.getResults().isEmpty()?null:(Location)callBack.getResults().get(0));
  177 + }
  178 +
146 179 private interface ITransactionProcess{
147   - public TransactionCallBack exec(Session tr);
  180 + TransactionCallBack exec(Session tr);
148 181 }
149 182  
150 183 private class TransactionCallBack<T>{
... ...