/* * Copyright 2010-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ package com.amazonaws.services.geo.model; import java.io.Serializable; public class SearchPlaceIndexForTextResult implements Serializable { /** *

* A list of Places matching the input text. Each result contains additional * information about the specific point of interest. *

*

* Not all response properties are included with all responses. Some * properties may only be returned by specific data partners. *

*/ private java.util.List results; /** *

* Contains a summary of the request. Echoes the input values for * BiasPosition, FilterBBox, * FilterCountries, Language, * MaxResults, and Text. Also includes the * DataSource of the place index and the bounding box, * ResultBBox, which surrounds the search results. *

*/ private SearchPlaceIndexForTextSummary summary; /** *

* A list of Places matching the input text. Each result contains additional * information about the specific point of interest. *

*

* Not all response properties are included with all responses. Some * properties may only be returned by specific data partners. *

* * @return

* A list of Places matching the input text. Each result contains * additional information about the specific point of interest. *

*

* Not all response properties are included with all responses. Some * properties may only be returned by specific data partners. *

*/ public java.util.List getResults() { return results; } /** *

* A list of Places matching the input text. Each result contains additional * information about the specific point of interest. *

*

* Not all response properties are included with all responses. Some * properties may only be returned by specific data partners. *

* * @param results

* A list of Places matching the input text. Each result contains * additional information about the specific point of interest. *

*

* Not all response properties are included with all responses. * Some properties may only be returned by specific data * partners. *

*/ public void setResults(java.util.Collection results) { if (results == null) { this.results = null; return; } this.results = new java.util.ArrayList(results); } /** *

* A list of Places matching the input text. Each result contains additional * information about the specific point of interest. *

*

* Not all response properties are included with all responses. Some * properties may only be returned by specific data partners. *

*

* Returns a reference to this object so that method calls can be chained * together. * * @param results

* A list of Places matching the input text. Each result contains * additional information about the specific point of interest. *

*

* Not all response properties are included with all responses. * Some properties may only be returned by specific data * partners. *

* @return A reference to this updated object so that method calls can be * chained together. */ public SearchPlaceIndexForTextResult withResults(SearchForTextResult... results) { if (getResults() == null) { this.results = new java.util.ArrayList(results.length); } for (SearchForTextResult value : results) { this.results.add(value); } return this; } /** *

* A list of Places matching the input text. Each result contains additional * information about the specific point of interest. *

*

* Not all response properties are included with all responses. Some * properties may only be returned by specific data partners. *

*

* Returns a reference to this object so that method calls can be chained * together. * * @param results

* A list of Places matching the input text. Each result contains * additional information about the specific point of interest. *

*

* Not all response properties are included with all responses. * Some properties may only be returned by specific data * partners. *

* @return A reference to this updated object so that method calls can be * chained together. */ public SearchPlaceIndexForTextResult withResults( java.util.Collection results) { setResults(results); return this; } /** *

* Contains a summary of the request. Echoes the input values for * BiasPosition, FilterBBox, * FilterCountries, Language, * MaxResults, and Text. Also includes the * DataSource of the place index and the bounding box, * ResultBBox, which surrounds the search results. *

* * @return

* Contains a summary of the request. Echoes the input values for * BiasPosition, FilterBBox, * FilterCountries, Language, * MaxResults, and Text. Also includes the * DataSource of the place index and the bounding box, * ResultBBox, which surrounds the search results. *

*/ public SearchPlaceIndexForTextSummary getSummary() { return summary; } /** *

* Contains a summary of the request. Echoes the input values for * BiasPosition, FilterBBox, * FilterCountries, Language, * MaxResults, and Text. Also includes the * DataSource of the place index and the bounding box, * ResultBBox, which surrounds the search results. *

* * @param summary

* Contains a summary of the request. Echoes the input values for * BiasPosition, FilterBBox, * FilterCountries, Language, * MaxResults, and Text. Also includes * the DataSource of the place index and the * bounding box, ResultBBox, which surrounds the * search results. *

*/ public void setSummary(SearchPlaceIndexForTextSummary summary) { this.summary = summary; } /** *

* Contains a summary of the request. Echoes the input values for * BiasPosition, FilterBBox, * FilterCountries, Language, * MaxResults, and Text. Also includes the * DataSource of the place index and the bounding box, * ResultBBox, which surrounds the search results. *

*

* Returns a reference to this object so that method calls can be chained * together. * * @param summary

* Contains a summary of the request. Echoes the input values for * BiasPosition, FilterBBox, * FilterCountries, Language, * MaxResults, and Text. Also includes * the DataSource of the place index and the * bounding box, ResultBBox, which surrounds the * search results. *

* @return A reference to this updated object so that method calls can be * chained together. */ public SearchPlaceIndexForTextResult withSummary(SearchPlaceIndexForTextSummary summary) { this.summary = summary; return this; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getResults() != null) sb.append("Results: " + getResults() + ","); if (getSummary() != null) sb.append("Summary: " + getSummary()); sb.append("}"); return sb.toString(); } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getResults() == null) ? 0 : getResults().hashCode()); hashCode = prime * hashCode + ((getSummary() == null) ? 0 : getSummary().hashCode()); return hashCode; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof SearchPlaceIndexForTextResult == false) return false; SearchPlaceIndexForTextResult other = (SearchPlaceIndexForTextResult) obj; if (other.getResults() == null ^ this.getResults() == null) return false; if (other.getResults() != null && other.getResults().equals(this.getResults()) == false) return false; if (other.getSummary() == null ^ this.getSummary() == null) return false; if (other.getSummary() != null && other.getSummary().equals(this.getSummary()) == false) return false; return true; } }