@Override @DB public StoragePoolVO persist(StoragePoolVO pool, Map<String, String> details) { Transaction txn = Transaction.currentTxn(); txn.start(); pool = super.persist(pool); if (details != null) { for (Map.Entry<String, String> detail : details.entrySet()) { StoragePoolDetailVO vo = new StoragePoolDetailVO(pool.getId(), detail.getKey(), detail.getValue()); _detailsDao.persist(vo); } } txn.commit(); return pool; }
@Override public boolean configure(String name, Map<String, Object> params) throws ConfigurationException { super.configure(name, params); _detailsDao.configure("DetailsDao", params); return true; }
@Override public Map<String, String> getDetails(long poolId) { return _detailsDao.getDetails(poolId); }
@Override public void updateDetails(long poolId, Map<String, String> details) { if (details != null) { _detailsDao.update(poolId, details); } }