package org.vertexium.mutation; import org.vertexium.Edge; import org.vertexium.util.IncreasingTime; public abstract class ExistingEdgeMutation extends ExistingElementMutationImpl<Edge> implements EdgeMutation { private String newEdgeLabel; private long alterEdgeLabelTimestamp; public ExistingEdgeMutation(Edge edge) { super(edge); } @Override public EdgeMutation alterEdgeLabel(String newEdgeLabel) { this.newEdgeLabel = newEdgeLabel; alterEdgeLabelTimestamp = IncreasingTime.currentTimeMillis(); return this; } @Override public long getAlterEdgeLabelTimestamp() { return alterEdgeLabelTimestamp; } @Override public String getNewEdgeLabel() { return newEdgeLabel; } @Override public boolean hasChanges() { if (newEdgeLabel != null) { return true; } return super.hasChanges(); } }