argos/dmp-backend/core/src/main/java/eu/eudat/service/lock/LockService.java

25 lines
929 B
Java

package eu.eudat.service.lock;
import eu.eudat.model.Lock;
import eu.eudat.model.persist.LockPersist;
import eu.eudat.query.lookup.LockLookup;
import gr.cite.tools.exception.MyApplicationException;
import gr.cite.tools.exception.MyForbiddenException;
import gr.cite.tools.exception.MyNotFoundException;
import gr.cite.tools.exception.MyValidationException;
import gr.cite.tools.fieldset.FieldSet;
import javax.management.InvalidApplicationException;
import java.util.UUID;
public interface LockService {
Lock persist(LockPersist model, FieldSet fields) throws MyForbiddenException, MyValidationException, MyApplicationException, MyNotFoundException, InvalidApplicationException;
boolean isLocked(LockLookup lookup) throws InvalidApplicationException;
void unlock(LockLookup lookup) throws InvalidApplicationException;
void deleteAndSave(UUID id) throws MyForbiddenException, InvalidApplicationException;
}