package org.opennaas.core.resources.capability; import org.opennaas.core.resources.IResource; import org.opennaas.core.resources.descriptor.CapabilityDescriptor; import org.opennaas.core.resources.descriptor.Information; /** * Basic interface all resource capabilities must implement * * @author Mathieu Lemay - ITI * @version 1.0 */ public interface ICapability { /** * Get the name of this capability. Name must be unique for capabilities (must not be two capabilities with same name) * * @return */ public String getCapabilityName(); /** * Get the descriptor for this capability * */ public CapabilityDescriptor getCapabilityDescriptor(); /** * Set the descriptor for this capability * * @param descriptor */ // TODO REMOVE FROM THIS INTERFACE public void setCapabilityDescriptor(CapabilityDescriptor descriptor); /** * Get the information from this capability * * @return */ public Information getCapabilityInformation(); /** * The resource where this capability belongs * * @param resource */ // TODO REMOVE FROM THIS INTERFACE public void setResource(IResource resource); }