/** * * marcosnr * 08/03/2012 */ package au.org.aurin.wif.model.allocation; import java.util.HashMap; import java.util.HashSet; import java.util.Map; import java.util.Set; import au.org.aurin.wif.model.AbstractScenario; import au.org.aurin.wif.model.demand.DemandScenario; import au.org.aurin.wif.model.demand.DemandOutcome; import au.org.aurin.wif.model.suitability.SuitabilityScenario; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonPropertyOrder; /** * The Class AllocationScenario. */ @JsonPropertyOrder({ "id", "label", "docType", "suitabilityScenarioId", "demandScenarioId" }) public class AllocationScenario extends AbstractScenario { /** The Constant serialVersionUID. */ private static final long serialVersionUID = 1778238396632217821L; /** The feature field name. */ private String featureFieldName; /** The control scenario. */ @JsonIgnore private AllocationControlScenario controlScenario; /** The control scenario id. */ private String controlScenarioId; /** The demand scenario. */ @JsonIgnore private DemandScenario demandScenario; @JsonIgnore private DemandOutcome manualdemandScenario; /** The demand scenario id. */ private String demandScenarioId; /** The manual demand scenario id. */ private String manualdemandScenarioId; /** The suitability scenario. */ @JsonIgnore private SuitabilityScenario suitabilityScenario; /** The suitability scenario id. */ private String suitabilityScenarioId; /** The land use order map. */ private Map<String, Integer> landUseOrderMap; /** The land use order. */ @JsonIgnore private Set<AllocationLU> landUseOrder; /** * The spatial pattern label. This component specifies the growth pattern to * be followed by the allocation process */ private String spatialPatternLabel; /** The ready. */ private boolean ready; private boolean isManual = false; public boolean isManual() { return isManual; } public void setManual(boolean isManual) { this.isManual = isManual; } /** * Sets the control scenario. * * @param controlScenario * the new control scenario */ public void setControlScenario(AllocationControlScenario controlScenario) { this.controlScenario = controlScenario; } /** * Gets the control scenario. * * @return the control scenario */ public AllocationControlScenario getControlScenario() { return controlScenario; } /** * Sets the demand scenario. * * @param demandScenario * the new demand scenario */ public void setDemandScenario(DemandScenario demandScenario) { this.demandScenario = demandScenario; } /** * Gets the demand scenario. * * @return the demand scenario */ public DemandScenario getDemandScenario() { return demandScenario; } /** * Sets the suitability scenario. * * @param suitabilityScenario * the new suitability scenario */ public void setSuitabilityScenario(SuitabilityScenario suitabilityScenario) { this.suitabilityScenario = suitabilityScenario; } /** * Gets the suitability scenario. * * @return the suitability scenario */ public SuitabilityScenario getSuitabilityScenario() { return suitabilityScenario; } /** * Gets the allocation config. * * @return the allocation config */ @JsonIgnore public AllocationConfigs getAllocationConfig() { return getWifProject().getAllocationConfigs(); } /* * (non-Javadoc) * @see au.org.aurin.wif.model.AbstractScenario#getFeatureFieldName() */ @Override public String getFeatureFieldName() { return featureFieldName; } /* * (non-Javadoc) * @see * au.org.aurin.wif.model.AbstractScenario#setFeatureFieldName(java.lang.String * ) */ @Override public void setFeatureFieldName(String featureFieldName) { this.featureFieldName = featureFieldName; } /** * Gets the control scenario id. * * @return the control scenario id */ public String getControlScenarioId() { return controlScenarioId; } /** * Sets the control scenario id. * * @param controlScenarioLabel * the new control scenario id */ public void setControlScenarioId(String controlScenarioLabel) { this.controlScenarioId = controlScenarioLabel; } /** * Gets the demand scenario id. * * @return the demand scenario id */ public String getDemandScenarioId() { return demandScenarioId; } /** * Sets the demand scenario id. * * @param demandScenarioLabel * the new demand scenario id */ public void setDemandScenarioId(String demandScenarioLabel) { this.demandScenarioId = demandScenarioLabel; } /** * Gets the suitability scenario id. * * @return the suitability scenario id */ public String getSuitabilityScenarioId() { return suitabilityScenarioId; } /** * Sets the suitability scenario id. * * @param suitabilityScenarioLabel * the new suitability scenario id */ public void setSuitabilityScenarioId(String suitabilityScenarioLabel) { this.suitabilityScenarioId = suitabilityScenarioLabel; } /** * Checks if is ready. * * @return true, if is ready */ public boolean isReady() { return ready; } /** * Sets the ready. * * @param ready * the new ready */ public void setReady(boolean ready) { this.ready = ready; } /** * Gets the land use order map. * * @return the land use order map */ public Map<String, Integer> getLandUseOrderMap() { return landUseOrderMap; } /** * Sets the land use order map. * * @param landUseOrder * the land use order */ public void setLandUseOrderMap(Map<String, Integer> landUseOrder) { this.landUseOrderMap = landUseOrder; } /** * Gets the land use order. * * @return the land use order */ public Set<AllocationLU> getLandUseOrder() { return landUseOrder; } /** * Sets the land use order. * * @param landUseOrder * the new land use order */ public void setLandUseOrder(Set<AllocationLU> landUseOrder) { this.landUseOrder = landUseOrder; } /** * Instantiates a new allocation scenario. */ public AllocationScenario() { super(); landUseOrderMap = new HashMap<String, Integer>(); landUseOrder = new HashSet<AllocationLU>(); } /** * @return the spatialPatternLabel */ public String getSpatialPatternLabel() { return spatialPatternLabel; } /** * @param spatialPatternLabel * the spatialPatternLabel to set */ public String getManualdemandScenarioId() { return manualdemandScenarioId; } public void setManualdemandScenarioId(String manualdemandScenarioId) { this.manualdemandScenarioId = manualdemandScenarioId; } public void setSpatialPatternLabel(String spatialPatternLabel) { this.spatialPatternLabel = spatialPatternLabel; } public DemandOutcome getManualdemandScenario() { return manualdemandScenario; } public void setManualdemandScenario(DemandOutcome manualdemandScenario) { this.manualdemandScenario = manualdemandScenario; } }