package au.org.aurin.wif.svc.demand; import java.util.List; import au.org.aurin.wif.exception.config.ParsingException; import au.org.aurin.wif.exception.config.WifInvalidConfigException; import au.org.aurin.wif.exception.validate.IncompleteDemandScenarioNewException; import au.org.aurin.wif.exception.validate.WifInvalidInputException; import au.org.aurin.wif.model.demand.DemandScenarioNew; /** * The Interface DemandScenarioNewService. */ public interface DemandScenarioNewService { /** * Creates the demand scenario new. * * @param DemandScenarioNew * the demand scenario new * @param projectId * the project id * @return the demand scenario new * @throws WifInvalidInputException * the wif invalid input exception * @throws WifInvalidConfigException * the wif invalid config exception * @throws ParsingException * the parsing exception * @throws IncompleteDemandScenarioNewException * the incomplete demand scenario new exception */ DemandScenarioNew createDemandScenarioNew( DemandScenarioNew DemandScenarioNew, String projectId) throws WifInvalidInputException, WifInvalidConfigException, ParsingException, IncompleteDemandScenarioNewException; /** * Gets the demand scenario new. * * @param id * the id * @return the demand scenario new * @throws WifInvalidInputException * the wif invalid input exception * @throws WifInvalidConfigException * the wif invalid config exception * @throws ParsingException * the parsing exception */ DemandScenarioNew getDemandScenarioNew(String id) throws WifInvalidInputException, WifInvalidConfigException, ParsingException; /** * Gets the demand scenario new. * * @param id * the id * @param projectId * the project id * @return the demand scenario new * @throws WifInvalidInputException * the wif invalid input exception * @throws WifInvalidConfigException * the wif invalid config exception * @throws ParsingException * the parsing exception */ DemandScenarioNew getDemandScenarioNew(String id, String projectId) throws WifInvalidInputException, WifInvalidConfigException, ParsingException; /** * Update demand scenario new. * * @param DemandScenarioNew * the demand scenario new * @param projectId * the project id * @throws WifInvalidInputException * the wif invalid input exception * @throws WifInvalidConfigException * the wif invalid config exception * @throws ParsingException * the parsing exception */ void updateDemandScenarioNew(DemandScenarioNew DemandScenarioNew, String projectId) throws WifInvalidInputException, WifInvalidConfigException, ParsingException; /** * Delete demand scenario new. * * @param id * the id * @param projectId * the project id * @throws WifInvalidInputException * the wif invalid input exception * @throws WifInvalidConfigException * the wif invalid config exception * @throws ParsingException * the parsing exception */ void deleteDemandScenarioNew(String id, String projectId) throws WifInvalidInputException, WifInvalidConfigException, ParsingException; /** * Gets the demand scenario news. * * @param projectId * the project id * @return the demand scenario news * @throws WifInvalidInputException * the wif invalid input exception */ List<DemandScenarioNew> getDemandScenarioNews(String projectId) throws WifInvalidInputException; }