public void destroyView(GraphView view) { graphStore.autoWriteLock(); try { checkNonNullViewObject(view); TimestampIndexStore nodeTimestampStore = graphStore.timestampStore.nodeIndexStore; if (nodeTimestampStore != null) { nodeTimestampStore.deleteViewIndex(((GraphViewImpl) view).getDirectedGraph()); } TimestampIndexStore edgeTimestampStore = graphStore.timestampStore.edgeIndexStore; if (edgeTimestampStore != null) { edgeTimestampStore.deleteViewIndex(((GraphViewImpl) view).getDirectedGraph()); } IndexStore<Node> nodeIndexStore = graphStore.nodeColumnStore.indexStore; if (nodeIndexStore != null) { nodeIndexStore.deleteViewIndex(((GraphViewImpl) view).getDirectedGraph()); } IndexStore<Edge> edgeIndexStore = graphStore.edgeColumnStore.indexStore; if (edgeIndexStore != null) { edgeIndexStore.deleteViewIndex(((GraphViewImpl) view).getDirectedGraph()); } removeView((GraphViewImpl) view); } finally { graphStore.autoWriteUnlock(); } }
public Set<QueryableEntry> getRecords(Comparable[] values) { if (values.length == 1) { return indexStore.getRecords(convert(values[0])); } else { Set<Comparable> convertedValues = new HashSet<Comparable>(values.length); for (Comparable value : values) { convertedValues.add(convert(value)); } MultiResultSet results = new MultiResultSet(); indexStore.getRecords(results, convertedValues); return results; } }
public void saveEntryIndex(QueryableEntry e) throws QueryException { Data key = e.getIndexKey(); Comparable oldValue = recordValues.remove(key); Comparable newValue = e.getAttribute(attribute); if (newValue == null) { newValue = NULL; } recordValues.put(key, newValue); if (newValue.getClass().isEnum()) { newValue = TypeConverters.ENUM_CONVERTER.convert(newValue); } if (oldValue == null) { // new indexStore.newIndex(newValue, e); } else { // update indexStore.removeIndex(oldValue, key); indexStore.newIndex(newValue, e); } if (attributeType == null) { attributeType = e.getAttributeType(attribute); } }
public Set<QueryableEntry> getSubRecordsBetween(Comparable from, Comparable to) { MultiResultSet results = new MultiResultSet(); indexStore.getSubRecordsBetween(results, convert(from), convert(to)); return results; }
public Set<QueryableEntry> getRecords(Comparable value) { return indexStore.getRecords(convert(value)); }
ConcurrentMap<Data, QueryableEntry> getRecordMap(Comparable indexValue) { return indexStore.getRecordMap(indexValue); }
public void removeEntryIndex(Data indexKey) { Comparable oldValue = recordValues.remove(indexKey); if (oldValue != null) { indexStore.removeIndex(oldValue, indexKey); } }
public Set<QueryableEntry> getSubRecords( ComparisonType comparisonType, Comparable searchedValue) { MultiResultSet results = new MultiResultSet(); indexStore.getSubRecords(results, comparisonType, convert(searchedValue)); return results; }