// Copyright (c) 2003-2013, LogMeIn, Inc. All rights reserved. // This is part of Xively4J library, it is under the BSD 3-Clause license. package com.xively.client.model; import com.xively.client.utils.CollectionUtil; /** * Interface for all resources that can be requested from the API directly. This * is super class of all resource objects (in restful API terms) or model object * (in MVC terms). * * @author s0pau * */ public interface DomainObject { /** * @param other * @return true, if all member fields are equal by equal() method * (collections are considered equal if the members of the * collection's equal() returns true using * {@link CollectionUtil#equal(java.util.Collection, java.util.Collection)} * ; false otherwise */ boolean memberEquals(DomainObject other); /** * @return the id of this object */ Object getId(); }