From 14445979e92ccd9833e0135ed48c9eeaa6528cdd Mon Sep 17 00:00:00 2001 From: Notmoo-PC\Notmoo Date: Sun, 28 May 2017 11:30:55 +0200 Subject: [PATCH] Clss HibernateDao : ajout getters --- project/server_core/src/main/java/dao/HibernateDao.java | 41 +++++++++++++++++++++++++++++++++++++---- 1 file changed, 37 insertions(+), 4 deletions(-) diff --git a/project/server_core/src/main/java/dao/HibernateDao.java b/project/server_core/src/main/java/dao/HibernateDao.java index 7bde7c0..953355e 100644 --- a/project/server_core/src/main/java/dao/HibernateDao.java +++ b/project/server_core/src/main/java/dao/HibernateDao.java @@ -130,21 +130,54 @@ public class HibernateDao { public boolean saveMap(final Map map){return internal_saveData(map);} public Map getMap(int mapId){ TransactionCallBack callBack = execTransactionProcess((session)->{ - TransactionCallBack reply = new TransactionCallBack(); + TransactionCallBack reply = new TransactionCallBack(); Query query = session.createQuery("from Map m where m.id = :id"); query.setParameter("id", mapId); List results = query.list(); for(Object result : results){ - if(result instanceof RssiRecord) + if(result instanceof Map) reply.getResults().add(result); } return reply; }); return (callBack.getResults().isEmpty()?null:(Map)callBack.getResults().get(0)); } - + + public List getAccessPoints(String apMacAddress) { + TransactionCallBack callBack = execTransactionProcess((session)->{ + TransactionCallBack reply = new TransactionCallBack(); + Query query = session.createQuery("from AccessPoint ap where ap.mac_addr = :addr"); + query.setParameter("addr", apMacAddress); + List results = query.list(); + for(Object result : results){ + if(result instanceof AccessPoint) + reply.getResults().add(result); + } + return reply; + }); + + List reply = new ArrayList<>(); + callBack.getResults().forEach(result->reply.add((AccessPoint)result)); + return reply; + } + + public Location getLocation(int Location) { + TransactionCallBack callBack = execTransactionProcess((session)->{ + TransactionCallBack reply = new TransactionCallBack(); + Query query = session.createQuery("from Location loc where loc.id = :id"); + query.setParameter("id", Location); + List results = query.list(); + for(Object result : results){ + if(result instanceof Location) + reply.getResults().add(result); + } + return reply; + }); + return (callBack.getResults().isEmpty()?null:(Location)callBack.getResults().get(0)); + } + private interface ITransactionProcess{ - public TransactionCallBack exec(Session tr); + TransactionCallBack exec(Session tr); } private class TransactionCallBack{ -- libgit2 0.21.4