package org.gcube.informationsystem.resourceregistry.publisher.proxy; import org.gcube.informationsystem.model.entity.Facet; import org.gcube.informationsystem.model.entity.Resource; import org.gcube.informationsystem.model.relation.ConsistsOf; import org.gcube.informationsystem.model.relation.IsRelatedTo; /** * @author Luca Frosini (ISTI - CNR) */ public interface ResourceRegistryPublisher { public F createFacet(Class facetClass, F facet); public F updateFacet(Class facetClass, F facet); public boolean deleteFacet(F facet); public R createResource(Class resourceClass, R resource); public boolean deleteResource(R resource); public > C createConsistsOf(Class consistsOfClass, C consistsOf); public > boolean deleteConsistsOf(C consistsOf); public > I createIsRelatedTo(Class isRelatedToClass, I isRelatedTo); public > boolean deleteIsRelatedTo(I isRelatedTo); }