/**
 * 
 */
package eu.dnetlib.data.collective.manager;



/**
 * @author jochen
 * @param <T> instance datastructure
 *
 */
public interface IInstanceManager<T> {
	
	/**
	 * The manager service has been notified to add a resource
	 * @param resourceId the resourceId of the resource to add
	 * @return
	 */
	public boolean notifyResourceAdded(String resourceId);
	
	/**
	 * The manager service has been notified to release a resource
	 * @param resourceId the resourceId of the resource to remove
	 * @return
	 */
	public boolean notifyResourceRemoved(String resourceId);
	
	/**
	 * The manager service has been notified to update a resource
	 * @param resourceId the resourceId of the resource to update
	 * @return
	 */
	public boolean notifyResourceUpdated(String resourceId);

}
