001 package org.cumulus4j.store.model; 002 003 import java.util.ArrayList; 004 import java.util.Collection; 005 import java.util.HashMap; 006 import java.util.List; 007 import java.util.Map; 008 009 import javax.jdo.PersistenceManager; 010 import javax.jdo.Query; 011 012 public class DatastoreVersionDAO extends AbstractDAO { 013 014 public DatastoreVersionDAO() { } 015 016 public DatastoreVersionDAO(PersistenceManager pm) { 017 super(pm); 018 } 019 020 public Map<String, DatastoreVersion> getCommandID2DatastoreVersionMap(int keyStoreRefID) { 021 List<DatastoreVersion> datastoreVersions = getDatastoreVersions(keyStoreRefID); 022 Map<String, DatastoreVersion> result = new HashMap<String, DatastoreVersion>(datastoreVersions.size()); 023 for (DatastoreVersion datastoreVersion : datastoreVersions) { 024 result.put(datastoreVersion.getCommandID(), datastoreVersion); 025 } 026 return result; 027 } 028 029 public List<DatastoreVersion> getDatastoreVersions(int keyStoreRefID) { 030 Query query = pm.newQuery(DatastoreVersion.class); 031 @SuppressWarnings("unchecked") 032 Collection<DatastoreVersion> c = (Collection<DatastoreVersion>) query.execute(); 033 try { 034 return new ArrayList<DatastoreVersion>(c); 035 } finally { 036 query.closeAll(); 037 } 038 } 039 }