com.buschmais.xo.api.CompositeObject Maven / Gradle / Ivy
package com.buschmais.xo.api;
/**
* Defines an interface which is transparently implemented by all composite instances created by the {@link XOManager}.
*/
public interface CompositeObject {
/**
* Return the id of the object.
*
* @param The id type.
* @return The id of the object.
*/
I getId();
/**
* Cast the instance to a specific type.
*
* @param type The type.
* @param The type.
* @return The instance.
*/
T as(Class type);
/**
* Return the underlying datastore delegate.
*
* @param The expected type.
* @return The datastore delegate.
*/
D getDelegate();
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy