package au.org.aurin.wif.svc.allocation; import au.org.aurin.wif.exception.config.ParsingException; import au.org.aurin.wif.exception.config.WifInvalidConfigException; import au.org.aurin.wif.exception.validate.IncompleteAllocationConfigsException; import au.org.aurin.wif.exception.validate.WifInvalidInputException; import au.org.aurin.wif.model.allocation.AllocationConfigs; /** * The Interface AllocationConfigsService. It handles the CRUD operations on * AllocationConfigs. */ public interface AllocationConfigsService { /** * Adds the AllocationConfigs. * * @param AllocationConfigs * the AllocationConfigs * @param projectId * the project id * @return the AllocationConfigs * @throws WifInvalidInputException * the wif invalid input exception * @throws WifInvalidConfigException * the wif invalid config exception * @throws ParsingException * the parsing exception * @throws IncompleteAllocationConfigsException * the incomplete demand config exception */ AllocationConfigs createAllocationConfigs( AllocationConfigs AllocationConfigs, String projectId) throws WifInvalidInputException, WifInvalidConfigException, ParsingException, IncompleteAllocationConfigsException; /** * Gets the AllocationConfigs. * * @param projectId * the project id * @return the AllocationConfigs * @throws WifInvalidInputException * the wif invalid input exception * @throws WifInvalidConfigException * the wif invalid config exception * @throws ParsingException * the parsing exception */ AllocationConfigs getAllocationConfigs(String projectId) throws WifInvalidInputException, WifInvalidConfigException, ParsingException; /** * Update AllocationConfigs. * * @param AllocationConfigs * the AllocationConfigs * @param projectId * the project id * @throws WifInvalidInputException * the wif invalid input exception * @throws WifInvalidConfigException * the wif invalid config exception */ void updateAllocationConfigs(AllocationConfigs AllocationConfigs, String projectId) throws WifInvalidInputException, WifInvalidConfigException; /** * Delete AllocationConfigs. * * @param projectId * the project id * @throws WifInvalidInputException * the wif invalid input exception * @throws WifInvalidConfigException * the wif invalid config exception */ void deleteAllocationConfigs(String projectId) throws WifInvalidInputException, WifInvalidConfigException; Boolean CreateStyle(final AllocationConfigs AllocationConfigs, final String projectId, final Boolean lsw); Boolean CreateStyleDemo(final AllocationConfigs AllocationConfigs, final String projectId, final Boolean lsw); }