blob: efd43e23f658ce82a1065a777631b05a36dec7ae [file] [log] [blame]
package brooklyn.entity;
import java.io.Serializable;
import java.util.Collection;
import brooklyn.event.Sensor;
/**
* Represents the type of an {@link Entity}.
*
* Analogous to {@link Class} for an instance.
*
* TODO javadoc
*/
public interface EntityClass extends Serializable {
//TODO call EntityType ? instead of Class? same for refs to SensorClass ?
//(or is this even necessary; info is on the EntityLocal, and that may be more up to date than this?)
// TODO maybe these? discuss/delete
//Collection<EntityType> getSuperTypes();
//boolean isInstance(Entity);
//FIXME Alex: suggest we allow these, but always defer to the java type (i.e. use BasicEntitySummary, delete ExplicitEntitySummary)
String getName();
Collection<ConfigKey<?>> getConfigKeys();
Collection<Sensor<?>> getSensors();
Collection<Effector<?>> getEffectors();
}