package com.tinkerpop.blueprints.util.wrappers.wrapped;
import com.tinkerpop.blueprints.Element;
import com.tinkerpop.blueprints.util.ElementHelper;
import java.util.Set;
/**
* @author Marko A. Rodriguez (http://markorodriguez.com)
*/
public abstract class WrappedElement implements Element {
protected Element baseElement;
protected WrappedElement(final Element baseElement) {
this.baseElement = baseElement;
}
public void setProperty(final String key, final Object value) {
this.baseElement.setProperty(key, value);
}
public <T> T getProperty(final String key) {
return this.baseElement.getProperty(key);
}
public <T> T removeProperty(final String key) {
return this.baseElement.removeProperty(key);
}
public Set<String> getPropertyKeys() {
return this.baseElement.getPropertyKeys();
}
public Object getId() {
return this.baseElement.getId();
}
public boolean equals(final Object object) {
return ElementHelper.areEqual(this, object);
}
public int hashCode() {
return this.baseElement.hashCode();
}
public Element getBaseElement() {
return this.baseElement;
}
public void remove() {
this.baseElement.remove();
}
public String toString() {
return this.baseElement.toString();
}
}