mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

Gaetan Boismal
17.29.2015 4e4b322332130bf466e3bdbd9cd7c4ca832d1049
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License, Version 1.0 only
 * (the "License").  You may not use this file except in compliance
 * with the License.
 *
 * You can obtain a copy of the license at legal-notices/CDDLv1_0.txt
 * or http://forgerock.org/license/CDDLv1.0.html.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at legal-notices/CDDLv1_0.txt.
 * If applicable, add the following below this CDDL HEADER, with the
 * fields enclosed by brackets "[]" replaced with your own identifying
 * information:
 *      Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 *
 *      Copyright 2006-2008 Sun Microsystems, Inc.
 *      Portions Copyright 2014 ForgeRock AS
 */
 
package org.opends.quicksetup.ui;
 
import org.forgerock.i18n.LocalizableMessage;
 
/**
 * This is a commodity class used to couple a label and a text component with
 * a FieldName.  It is mainly used by the QuickSetupStepPanel classes to
 * retrieve easily the labels and fields associated with a FieldName to provide
 * its content or to mark the labels as valid or invalid.  It is also used
 * during the creation of the components as it describes the different
 * properties.
 */
 
public class LabelFieldDescriptor
{
  private LocalizableMessage label;
 
  private LocalizableMessage tooltip;
 
  private FieldType type;
 
  private LabelType labelType;
 
  private int size;
 
  /**
   * This enum contains the different type of labels that can be associated with
   * this LabelFieldDescriptor.
   *
   */
  public enum LabelType
  {
    /**
     * Primary label.
     */
    PRIMARY,
    /**
     * Secondary label.
     */
    SECONDARY
  }
 
  /**
   * This enum contains the different type of fields that can be associated with
   * this LabelFieldDescriptor.
   *
   */
  public enum FieldType
  {
    /**
     * Editable text field.
     */
    TEXTFIELD,
    /**
     * Password field.
     */
    PASSWORD,
    /**
     * Read only field.
     */
    READ_ONLY
  }
 
  /**
   * Constructor of this LabelFieldDescriptor.
   * @param label the String of the label.
   * @param tooltip the tooltip of the field.
   * @param type the type of field.
   * @param labelType the type of label.
   * @param size the size of the field.
   */
  public LabelFieldDescriptor(LocalizableMessage label, LocalizableMessage tooltip, FieldType type,
      LabelType labelType, int size)
  {
    this.label = label;
    this.tooltip = tooltip;
    this.type = type;
    this.labelType = labelType;
    this.size = size;
  }
 
  /**
   * Returns the String displayed by the label.
   * @return the String displayed by the label.
   */
  public LocalizableMessage getLabel()
  {
    return label;
  }
 
  /**
   * Returns the size of the field.
   * @return the size of the field.
   */
  public int getSize()
  {
    return size;
  }
 
  /**
   * Returns the tooltip used in the field.
   * @return the tooltip used in the field.
   */
  public LocalizableMessage getTooltip()
  {
    return tooltip;
  }
 
  /**
   * Returns the field type.
   * @return the field type.
   */
  public FieldType getType()
  {
    return type;
  }
 
  /**
   * Returns the label type.
   * @return the label type.
   */
  public LabelType getLabelType()
  {
    return labelType;
  }
}