protected Map getProcessStateMap() throws NonUniqueQueryException, DataObjectException, QueryException {
// get states
if (this.processStateMap == null) {
this.processStateMap = new HashMap();
for (int i = 0; i < SharkConstants.POSSIBLE_PROCESS_STATES.length; i++) {
ProcessStateQuery psq = new ProcessStateQuery();
psq.setQueryKeyValue(SharkConstants.POSSIBLE_PROCESS_STATES[i]);
psq.requireUniqueInstance();
ProcessStateDO obj = psq.getNextDO();
if (obj != null) {
processStateMap.put(SharkConstants.POSSIBLE_PROCESS_STATES[i], obj);
}
}
}