001package gwt.material.design.client.base; 002 003/* 004 * #%L GwtMaterial %% Copyright (C) 2015 - 2017 GwtMaterialDesign %% Licensed under the Apache License, 005 * Version 2.0 (the "License"); you may not use this file except in compliance with the License. You 006 * may obtain a copy of the License at 007 * 008 * http://www.apache.org/licenses/LICENSE-2.0 009 * 010 * Unless required by applicable law or agreed to in writing, software distributed under the License 011 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express 012 * or implied. See the License for the specific language governing permissions and limitations under 013 * the License. #L% 014 */ 015 016import com.google.gwt.user.client.ui.MultiWordSuggestOracle.MultiWordSuggestion; 017 018public class Suggestion extends MultiWordSuggestion { 019 private String suggestion; 020 private String display; 021 022 public Suggestion() { 023 } 024 025 public Suggestion(String display, String suggestion) { 026 this.display = display; 027 this.setSuggestion(suggestion); 028 } 029 030 @Override 031 public String getDisplayString() { 032 return (display); 033 } 034 035 @Override 036 public String getReplacementString() { 037 return display; 038 } 039 040 /** 041 * @return the display 042 */ 043 public String getDisplay() { 044 return display; 045 } 046 047 /** 048 * @param display the display to set 049 */ 050 public void setDisplay(String display) { 051 this.display = display; 052 } 053 054 /** 055 * @return the suggestion 056 */ 057 public String getSuggestion() { 058 return suggestion; 059 } 060 061 /** 062 * @param suggestion the suggestion to set 063 */ 064 public void setSuggestion(String suggestion) { 065 this.suggestion = suggestion; 066 } 067 068 @Override 069 public boolean equals(Object obj) { 070 if (obj == this) { 071 return true; 072 } 073 if (obj instanceof Suggestion) { 074 Suggestion that = (Suggestion) obj; 075 if (this.display != null && this.suggestion != null) { 076 return this.display.equals(that.display) && this.suggestion.equals(that.suggestion); 077 } 078 } 079 return false; 080 } 081 082 @Override 083 public int hashCode() { 084 return String.valueOf(display).hashCode() + String.valueOf(suggestion).hashCode(); 085 } 086}