/** Creates an edge. */
 public Object createEdge(Object source, Object target, IUserInfo info) {
   return writer.createEdge(source, target, handler.edgeCopy(info));
 }
 /** Adapts this writer to a specific class. */
 public <S> Object adapt(Class<S> c) {
   if (c.isAssignableFrom(getClass())) {
     return this;
   }
   return writer.adapt(c);
 }
 /** Returns an edge info. */
 public IUserInfo getEdgeInfo(Object edge) {
   return writer.getEdgeInfo(edge);
 }
 /** Creates a vertex. */
 public Object createVertex(IUserInfo info) {
   return writer.createVertex(handler.vertexCopy(info));
 }
 /** Returns vertex info. */
 public IUserInfo getVertexInfo(Object vertex) {
   return writer.getVertexInfo(vertex);
 }
 /** Creates the graph info. */
 public void setUserInfo(IUserInfo info) {
   writer.setUserInfo(handler.graphCopy(info));
 }
 /** Returns graph info. */
 public IUserInfo getGraphInfo() {
   return writer.getGraphInfo();
 }