public void buildIndices() {
        if ((allIndices == null) || allIndices.isEmpty()) {
            return;
        }
        for (String indexName : allIndices.keySet()) {
            indexMap = allIndices.get(indexName);
            indexGlobal.setSubscriptCount(0);
            indexGlobal.appendSubscript(indexName);
            for (Object value : indexMap.keySet()) {
                Object key = indexMap.get(value);
                if (key instanceof ArrayList) {
                    scratchList.clear();
                    for (Object data : (ArrayList)key) {
                        scratchList.append(data);
                    }
                    indexGlobal.set(scratchList,value);
                } else {
                    indexGlobal.set((String)key,value);
                }
            }
        }
    }