1 16 package com.google.gwt.dev.cfg; 17 18 import java.util.Arrays ; 19 import java.util.HashSet ; 20 import java.util.Set ; 21 22 26 public class Property implements Comparable { 27 28 private String activeValue; 29 30 private Set knownValues = new HashSet (); 31 32 private String [] knownValuesLazyArray; 33 34 private final String name; 35 36 private PropertyProvider provider; 37 38 public Property(String name) { 39 this.name = name; 40 } 41 42 public void addKnownValue(String knownValue) { 43 knownValues.add(knownValue); 44 knownValuesLazyArray = null; 45 } 46 47 public int compareTo(Object other) { 48 return name.compareTo(((Property) other).name); 49 } 50 51 55 public String getActiveValue() { 56 return activeValue; 57 } 58 59 62 public String [] getKnownValues() { 63 if (knownValuesLazyArray == null) { 64 int n = knownValues.size(); 65 knownValuesLazyArray = (String []) knownValues.toArray(new String [n]); 66 Arrays.sort(knownValuesLazyArray); 67 } 68 return knownValuesLazyArray; 69 } 70 71 public String getName() { 72 return name; 73 } 74 75 public PropertyProvider getProvider() { 76 return provider; 77 } 78 79 public boolean isKnownValue(String value) { 80 return knownValues.contains(value); 81 } 82 83 86 public void setActiveValue(String value) { 87 this.activeValue = value; 88 } 89 90 public void setProvider(PropertyProvider provider) { 91 this.provider = provider; 92 } 93 94 public String toString() { 95 return name; 96 } 97 } 98 | Popular Tags |