/[schmitzm]/branches/2.2.x/src/skrueger/AttributeMetadataInterface.java
ViewVC logotype

Contents of /branches/2.2.x/src/skrueger/AttributeMetadataInterface.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 897 - (show annotations)
Mon Jun 7 14:14:39 2010 UTC (14 years, 8 months ago) by alfonx
File size: 3231 byte(s)
Das ist 2.2-SNAPSHOT

1 package skrueger;
2
3 import java.util.HashSet;
4
5 import org.opengis.feature.type.Name;
6
7 import skrueger.geotools.Copyable;
8 import skrueger.i8n.Translation;
9
10 public interface AttributeMetadataInterface extends Copyable<AttributeMetadataInterface>,
11 Comparable<AttributeMetadataInterface> {
12
13 /**
14 * @return a translatable title for this attribute..
15 */
16 public Translation getTitle();
17
18 /**
19 * Set a translatable title for this attribute..
20 */
21 public void setTitle(Translation title);
22
23 /**
24 * Set an untranslated title for this attribute or pass a {@link Translation} encryped as a {@link String}
25 */
26 public void setTitle(String title);
27
28 /**
29 * @return a translatable description for this attribute
30 */
31 public Translation getDesc();
32
33 /**
34 * Set a translatable description for this attribute.
35 */
36 public void setDesc(Translation desc);
37
38 /**
39 * Set an untranslated description for this attribute or pass a {@link Translation} encryped as a {@link String}
40 */
41 public void setDesc(String desc);
42
43
44 /**
45 * The local name. E.g. the name of the DBF column as a {@link String}.
46 */
47 public String getLocalName();
48
49 /**
50 * A short form for #setName(new NameImpl(localName))
51 */
52 public void setLocalName(String localName);
53
54 /**
55 * The fully qualified {@link Name} of the attribute, e.g.
56 * <code>org.bla.plo:blub</code>. The second part equals the
57 * {@link #getLocalName()} value. The first may be <code>null</code> or
58 * represent the layer name.
59 */
60 public Name getName();
61
62 /**
63 * set the fully qualified {@link Name} of this attribute.
64 */
65 public void setName(Name name);
66
67 /**
68 * A list og objects that represent NODATA-values for this attribute. The
69 * objects are supporsed to be correctly casted already. That means that the
70 * NODATA objects listed here have must have the same type as the values of
71 * this object.
72 */
73 public HashSet<Object> getNodataValues();
74
75 /**
76 * Takes any value object and checks it against the NODATA values. If the
77 * value equals a NODATA value, <code>null</code> is returned. Otherwise the
78 * same object is returned.
79 *
80 * Note: This method is called often.
81 */
82 public Object fiterNodata(Object value);
83
84 /**
85 * @return a non-translatable unit {@link String} for this attribute values.
86 */
87 public String getUnit();
88
89 /**
90 * Set a unit {@link String} for this attribute values.
91 */
92 public void setUnit(String unit);
93
94 /**
95 * @return A value defining the position of this attribute whenever the
96 * attributes are listed to an end-user. The higher the weight, the
97 * lower the position. (heavy goes down, light goes up)
98 */
99 public double getWeight();
100
101 /**
102 * set a value defining the position of this attribute whenever the
103 * attributes are listed to an end-user. The higher the weight, the lower
104 * the position. (heavy goes down, light goes up)
105 */
106 public void setWeight(double weight);
107
108 /**
109 * @return <code>false</code> if this attribute should not be selectable or
110 * shown to the end-user.
111 */
112 public boolean isVisible();
113
114 /**
115 * Set <code>false</code> if this attribute should not be shown to the
116 * end-user.
117 */
118 public void setVisible(boolean visible);
119
120 String getNoDataValuesFormatted();
121
122 }

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26