package au.org.aurin.wif.svc.suitability; import java.io.IOException; import org.geotools.filter.text.cql2.CQLException; import org.opengis.geometry.MismatchedDimensionException; import org.opengis.referencing.FactoryException; import org.opengis.referencing.NoSuchAuthorityCodeException; import org.opengis.referencing.operation.TransformException; import au.org.aurin.wif.exception.config.WifInvalidConfigException; import au.org.aurin.wif.exception.validate.SuitabilityAnalysisFailedException; import au.org.aurin.wif.exception.validate.WifInvalidInputException; import com.vividsolutions.jts.io.ParseException; /** * The Interface AsyncSuitabilityScenarioService. It handles the Async operations on * SuitabilityScenario, plus other important access operations */ public interface AsyncSuitabilityScenarioService { /** * Gets the WMS Outcome Async of the Suitability Analysis. This will perform * the analysis asynchronously and notify the interface of the outcome * later. * * @param id the id * @param areaAnalyzed the area analyzed * @param crsArea the crs area * @return the WMS * @throws WifInvalidInputException the wif invalid input exception * @throws WifInvalidConfigException the wif invalid config exception * @throws MismatchedDimensionException the mismatched dimension exception * @throws NoSuchAuthorityCodeException the no such authority code exception * @throws FactoryException the factory exception * @throws TransformException the transform exception * @throws ParseException the parse exception * @throws IOException Signals that an I/O exception has occurred. * @throws SuitabilityAnalysisFailedException the wif analysis failed exception * @throws CQLException the cQL exception */ void getWMSOutcomeAysnc(String id, String areaAnalyzed, String crsArea) throws WifInvalidInputException, WifInvalidConfigException, MismatchedDimensionException, NoSuchAuthorityCodeException, FactoryException, TransformException, ParseException, IOException, SuitabilityAnalysisFailedException, CQLException; }