/* The contents of this file are subject to the license and copyright terms * detailed in the license directory at the root of the source tree (also * available online at http://fedora-commons.org/license/). */ package fedora.server.security; import fedora.server.errors.BackendSecurityParserException; /** * Interface for accessing backend service security info. * * @author Ross Wayland */ public interface BackendSecurity { /** * Gets the current instance of BackendSecuritySpec. * * @return Current instance of backendSecuritySpec. */ public BackendSecuritySpec getBackendSecuritySpec(); /** * Sets the current instance of BackendSecuritySpec by parsing the * beSecurity configuration file. * * @throws BackendSecurityParserException * If an error occurs in parsing the beSecurity configuration file. */ public void setBackendSecuritySpec() throws BackendSecurityParserException; /** * Parses the beSecurity configuration file and stores the results in an * instance of BackendSecuritySpec. * * @return An instance of BackendSecuritySpec. * @throws BackendSecurityParserException * If an error occursin parsing the beSecurity configuration file. */ public BackendSecuritySpec parseBeSecurity() throws BackendSecurityParserException; /** * Reloads the backend service security info by reparsing the beSecurity * configuration file and storing results in an instance of * BackendSecuritySpec. * * @return An instance of BackendSecuritySpec. * @throws BackendSecurityParserException * If an error occurs in trying to reparse the beSecurity * configuration file. */ public BackendSecuritySpec reloadBeSecurity() throws BackendSecurityParserException; }