package org.deuce.transaction.strongiso.field; import org.deuce.transform.Exclude; /** * @author Pascal Felber */ @Exclude public class LocalFieldAccess extends FinalReadFieldAccess { protected Object reference2; protected long field2; private int hash2; public LocalFieldAccess() { super(null, 0); } public LocalFieldAccess(Object reference, long field) { super(null, 0); init(reference, field); } public void init(Object reference, long field) { this.reference2 = reference; this.field2 = field; this.hash2 = System.identityHashCode(reference) + (int) field; } @Override public Object getReference() { return reference2; } @Override public long getField() { return field2; } @Override public boolean equals(Object o) { FinalReadFieldAccess r = (FinalReadFieldAccess) o; return reference2 == r.getReference() && field2 == r.getField(); } @Override final public int hashCode() { return hash2; } @Override public String toString() { return Integer.toString(hash2); } }