package com.sap.furcas.runtime.common.implementation; import com.sap.furcas.runtime.common.interfaces.IModelElementProxy; public class ResolvedModelElementProxy implements IModelElementProxy { private final Object realObject; @Override public Object getRealObject() { return realObject; } @Override public boolean isReferenceOnly() { // TODO Auto-generated method stub return false; } public ResolvedModelElementProxy(Object realObject) { super(); this.realObject = realObject; } @Override public int hashCode() { if(realObject != null) { return realObject.hashCode(); } else { return super.hashCode(); } } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (!(obj instanceof IModelElementProxy)) return false; IModelElementProxy other = (IModelElementProxy) obj; if (realObject == null) { if (other.getRealObject() != null) return false; } else if (!realObject.equals(other.getRealObject())) return false; return true; } @Override public Object getParent() { return realObject; //this is also the parent object } }