package peapod.internal.interfaces; import java.lang.Class; import java.lang.Integer; import java.lang.Object; import java.lang.String; import java.lang.SuppressWarnings; import java.util.List; import org.apache.tinkerpop.gremlin.structure.Direction; import org.apache.tinkerpop.gremlin.structure.Element; import org.apache.tinkerpop.gremlin.structure.Vertex; import peapod.FramedElement; import peapod.FramedGraph; import peapod.FramedVertex; import peapod.internal.runtime.Framer; import peapod.internal.runtime.IFramer; @SuppressWarnings("unused") public final class Programmer$Impl implements FramedVertex<Programmer>, Programmer, Person { private FramedGraph graph; private Vertex v; public Programmer$Impl(Vertex v, FramedGraph graph) { this.v = v; this.graph = graph; } public FramedGraph graph() { return graph; } public Element element() { return v; } public void setExperience(Integer years) { if (years == null) { v.property("experience").remove(); } else { v.property("experience", years); } } public String getName() { return v.<String>property("name").orElse(null); } public List<Knows> getKnows() { // getter-edge-collection return graph.frame(v.edges(Direction.OUT, "knows"), Knows.class); } public int hashCode() { return v.hashCode(); } public boolean equals(Object other) { return (other instanceof FramedElement) && v.equals(((FramedElement) other).element()); } public String toString() { return v.label() + "[" + v.id() + "]"; } @Framer public static final class ProgrammerFramer implements IFramer<Vertex, Programmer> { public Class<Vertex> type() { return Vertex.class; } public Class<Programmer> frameClass() { return Programmer.class; } public String label() { return "Programmer"; } public Programmer frame(Vertex v, FramedGraph graph) { return new Programmer$Impl(v, graph); } public Programmer frameNew(Vertex v, FramedGraph graph) { return frame(v, graph); } } }