package gov.nist.registry.ws.sq; import gov.nist.registry.common2.exception.MetadataValidationException; import gov.nist.registry.common2.exception.XMLParserException; import gov.nist.registry.common2.exception.XdsException; import gov.nist.registry.common2.registry.Metadata; import java.util.List; import org.openhealthtools.openxds.log.LoggerException; /** * Local queries needed to be supported for the internal operation of the registry. * @author bill * */ public interface RegistryValidations { /** * Verify that the offered uuids exist in the Registry and have status Approved. * @param uuids * @return list of uuids that do not exist or are not Approved. Returns null if everything is ok * @throws XdsException * @throws LoggerException */ public List<String> validateApproved(List<String> uuids) throws XdsException, LoggerException; /** * Validate uids found in metadata are proper. Uids of Folder and Submission Set may not * be already present in registry. Uid of DocumentEntry objects may be present if hash and * size match. * @param metadata * @throws MetadataValidationException - on all metadata errors * @throws LoggerException - on error writing to Test Log * @throws XdsException - on low level interface errors * @throws XMLParserException */ public void validateProperUids(Metadata metadata) throws LoggerException, XMLParserException, XdsException; }