resource-registry/src/main/java/org/gcube/informationsystem/resourceregistry/instances/model/ERManagement.java

42 lines
2.0 KiB
Java
Raw Normal View History

2021-02-05 17:50:16 +01:00
package org.gcube.informationsystem.resourceregistry.instances.model;
import java.util.Map;
import java.util.UUID;
import org.gcube.com.fasterxml.jackson.databind.JsonNode;
import org.gcube.informationsystem.resourceregistry.api.exceptions.AvailableInAnotherContextException;
import org.gcube.informationsystem.resourceregistry.api.exceptions.NotFoundException;
import org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException;
import org.gcube.informationsystem.resourceregistry.api.exceptions.context.ContextException;
2021-02-16 17:17:40 +01:00
import org.gcube.informationsystem.resourceregistry.api.exceptions.schema.SchemaViolationException;
2021-02-05 17:50:16 +01:00
import org.gcube.informationsystem.resourceregistry.contexts.security.SecurityContext;
public interface ERManagement {
public boolean isDryRunContextSharing();
public void setDryRunContextSharing(boolean dryRunContextSharing);
public boolean isHonourPropagationConstraintsInContextSharing();
public void setHonourPropagationConstraintsInContextSharing(boolean honourPropagationConstraintsInContextSharing);
public Map<UUID, JsonNode> internalAddToContext(SecurityContext targetSecurityContext)
throws ContextException, ResourceRegistryException;
public Map<UUID, JsonNode> addToContext(UUID contextUUID)
2021-02-16 17:17:40 +01:00
throws SchemaViolationException, NotFoundException, ContextException, ResourceRegistryException;
2021-02-05 17:50:16 +01:00
public Map<UUID, JsonNode> internalRemoveFromContext(SecurityContext targetSecurityContext)
throws ContextException, ResourceRegistryException;
public Map<UUID, JsonNode> removeFromContext(UUID contextUUID)
2021-02-16 17:17:40 +01:00
throws SchemaViolationException, NotFoundException, ContextException, ResourceRegistryException;
2021-02-05 17:50:16 +01:00
2021-02-19 19:32:23 +01:00
public void sanityCheck() throws SchemaViolationException, ResourceRegistryException;
2021-02-23 14:44:37 +01:00
// public void contextSanityCheck(SecurityContext target, Map<UUID, JsonNode> expectedInstances) throws SchemaViolationException, ResourceRegistryException;
2021-02-05 17:50:16 +01:00
public AvailableInAnotherContextException getSpecificERAvailableInAnotherContextException(String message);
}