Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /* Copyright 2014 The Johns Hopkins University Applied Physics Laboratory
   *
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   *
   *     http://www.apache.org/licenses/LICENSE-2.0
   *
   * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 package edu.jhuapl.tinkerpop.mapreduce;
 
 import java.util.List;
 import java.util.Set;
 
 
 
 public class MapReduceVertex extends MapReduceElement implements Vertex {
 
 
     super(parent);
      = new LinkedList<Edge>();
      = new LinkedList<Edge>();
   }
 
   void prepareEdge(String idString srcString labelString dest) {
     MapReduceEdge mre = new MapReduceEdge(idsrclabeldest);
     if (src.equals(getId())) {
       .add(mre);
     }
     // maybe this could be an "else if"-- do we support self-referential
     // edges??
     if (dest.equals(getId())) {
       .add(mre);
     }
   }
 
   @Override
   public Edge addEdge(String labelVertex inVertex) {
     throw new UnsupportedOperationException("You cannot modify a vertex during a MapReduce job.");
   }
 
   @Override
   public Iterable<EdgegetEdges(Direction directionString... labels) {
     switch (direction) {
       case :
         return getEdges(labels);
       case :
         return getEdges(labels);
       case :
         Set<Edgeall = new HashSet<Edge>(.size() + .size());
         all.addAll();
         all.addAll();
         return getEdges(alllabels);
       default:
         throw new RuntimeException("Unexpected direction: " + direction);
     }
   }
 
   private Iterable<EdgegetEdges(Collection<EdgeedgesString... labels) {
     if (labels.length > 0) {
       List<Stringfilters = Arrays.asList(labels);
       LinkedList<EdgefilteredEdges = new LinkedList<Edge>();
       for (Edge e : edges) {
         if (filters.contains(e.getLabel())) {
           filteredEdges.add(e);
         }
       }
       return filteredEdges;
     } else {
       return edges;
     }
   }
 
   @Override
   public Iterable<VertexgetVertices(final Direction directionfinal String... labels) {
     return new Iterable<Vertex>() {
       @Override
      public Iterator<Vertexiterator() {
        final Iterator<Edgeedges = getEdges(directionlabels).iterator();
        return new Iterator<Vertex>() {
          @Override
          public boolean hasNext() {
            return edges.hasNext();
          }
          @Override
          public Vertex next() {
            Edge e = edges.next();
            switch (direction) {
              case :
                // no break intentional
              case :
                return e.getVertex(direction);
              case :
                Vertex v = e.getVertex(.);
                if (this.equals(v)) {
                  return e.getVertex(.);
                } else {
                  return v;
                }
              default:
                throw new RuntimeException("Unexpected direction: " + direction);
            }
          }
          @Override
          public void remove() {
            throw new UnsupportedOperationException();
          }
        };
      };
    };
  }
  public VertexQuery query() {
    return new DefaultVertexQuery(getParent().getVertex(getId()));
  }
  public void readFields(DataInput inthrows IOException {
    super.readFields(in);
    .clear();
    int count = in.readInt();
    for (int i = 0; i < counti++) {
      String eid = in.readUTF();
      String label = in.readUTF();
      String src = in.readUTF();
      MapReduceEdge mre = new MapReduceEdge(eidsrclabel);
      .add(mre);
    }
    .clear();
    count = in.readInt();
    for (int i = 0; i < counti++) {
      String eid = in.readUTF();
      String label = in.readUTF();
      String dest = in.readUTF();
      MapReduceEdge mre = new MapReduceEdge(eidlabeldest);
      .add(mre);
    }
  }
  public void write(DataOutput outthrows IOException {
    super.write(out);
    out.writeInt(.size());
    for (Edge e : ) {
      out.writeUTF(e.getId().toString());
      out.writeUTF(e.getLabel());
      MapReduceEdge mre = (MapReduceEdgee;
      out.writeUTF(mre.getVertexId(.));
    }
    out.writeInt(.size());
    for (Edge e : ) {
      out.writeUTF(e.getId().toString());
      out.writeUTF(e.getLabel());
      MapReduceEdge mre = (MapReduceEdgee;
      out.writeUTF(mre.getVertexId(.));
    }
  }
New to GrepCode? Check out our FAQ X