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 GraphViewImpl createView(boolean nodes, boolean edges) {
   graphStore.autoWriteLock();
   try {
     GraphViewImpl graphView = new GraphViewImpl(graphStore, nodes, edges);
     addView(graphView);
     return graphView;
   } finally {
     graphStore.autoWriteUnlock();
   }
 }
 public GraphViewImpl createView() {
   graphStore.autoWriteLock();
   try {
     GraphViewImpl graphView = new GraphViewImpl(graphStore, true, true);
     addView(graphView);
     return graphView;
   } finally {
     graphStore.autoWriteUnlock();
   }
 }
  public void setTimeInterval(GraphView view, Interval interval) {
    checkNonNullViewObject(view);
    checkViewExist((GraphViewImpl) view);

    graphStore.autoWriteLock();
    try {
      GraphViewImpl graphView = (GraphViewImpl) view;
      graphView.setTimeInterval(interval);
    } finally {
      graphStore.autoWriteUnlock();
    }
  }
  public GraphViewImpl createView(GraphView view, boolean nodes, boolean edges) {
    checkNonNullViewObject(view);
    checkViewExist((GraphViewImpl) view);

    graphStore.autoWriteLock();
    try {
      GraphViewImpl graphView = new GraphViewImpl((GraphViewImpl) view, nodes, edges);
      addView(graphView);
      return graphView;
    } finally {
      graphStore.autoWriteUnlock();
    }
  }