View | Details | Raw Unified | Return to bug 41044
Collapse All | Expand All

(-)fop (-1 / +5 lines)
Lines 243-249 Link Here
243
243
244
# Execute FOP using eval/exec to preserve spaces in paths,
244
# Execute FOP using eval/exec to preserve spaces in paths,
245
# java options, and FOP args
245
# java options, and FOP args
246
fop_exec_command="exec \"$JAVACMD\" $LOGCHOICE $LOGLEVEL -classpath \"$LOCALCLASSPATH\" $FOP_OPTS org.apache.fop.cli.Main $fop_exec_args"
246
247
# JMP: -Xrunjmp
248
# Hat: -Xrunhprof:file=dump.hprof,format=b
249
250
fop_exec_command="exec \"$JAVACMD\" -Xrunhprof:file=dump.hprof,format=b $LOGCHOICE $LOGLEVEL -classpath \"$LOCALCLASSPATH\" $FOP_OPTS org.apache.fop.cli.Main $fop_exec_args"
247
if $fop_exec_debug ; then
251
if $fop_exec_debug ; then
248
    echo $fop_exec_command
252
    echo $fop_exec_command
249
fi
253
fi
(-)src/java/org/apache/fop/fo/properties/EnumProperty.java (-3 / +33 lines)
Lines 23-28 Link Here
23
import org.apache.fop.fo.PropertyList;
23
import org.apache.fop.fo.PropertyList;
24
import org.apache.fop.fo.expr.PropertyException;
24
import org.apache.fop.fo.expr.PropertyException;
25
25
26
import java.util.Map;
27
import java.util.WeakHashMap;
28
26
/**
29
/**
27
 * Superclass for properties that wrap an enumeration value
30
 * Superclass for properties that wrap an enumeration value
28
 */
31
 */
Lines 62-79 Link Here
62
        }
65
        }
63
    }
66
    }
64
67
65
    private int value;
68
    private static final Map propertyCache = new WeakHashMap();
66
    private String text;
67
69
70
    private final int value;
71
    private final String text;
72
68
    /**
73
    /**
69
     * @param explicitValue enumerated value to be set for this property
74
     * @param explicitValue enumerated value to be set for this property
70
     * @param text the string value of the enum.
75
     * @param text the string value of the enum.
71
     */
76
     */
72
    public EnumProperty(int explicitValue, String text) {
77
    private EnumProperty(int explicitValue, String text) {
73
        this.value = explicitValue;
78
        this.value = explicitValue;
74
        this.text = text;
79
        this.text = text;
75
    }
80
    }
76
81
82
    public static EnumProperty getInstance(int explicitValue, String text) {
83
        EnumProperty ep = new EnumProperty(explicitValue, text);
84
        EnumProperty cacheEntry = (EnumProperty)propertyCache.get(ep);
85
        if (cacheEntry == null) {
86
            propertyCache.put(ep, ep);
87
            return ep;
88
        } else {
89
            return cacheEntry;
90
        }
91
    }
92
77
    /**
93
    /**
78
     * @return this.value
94
     * @return this.value
79
     */
95
     */
Lines 88-92 Link Here
88
        return text;
104
        return text;
89
    }
105
    }
90
106
107
    public boolean equals(Object obj) {
108
        if (obj instanceof EnumProperty) {
109
            EnumProperty ep = (EnumProperty)obj;
110
            return ep.value == this.value &&
111
                ((ep.text == null && this.text == null)
112
                 || ep.text.equals(this.text));
113
        } else {
114
            return false;
115
        }
116
    }
117
118
    public int hashCode() {
119
        return value + text.hashCode();
120
    }
91
}
121
}
92
122
(-)src/java/org/apache/fop/fo/properties/PageBreakShorthandParser.java (-3 / +3 lines)
Lines 49-59 Link Here
49
                || propId == Constants.PR_BREAK_AFTER) {
49
                || propId == Constants.PR_BREAK_AFTER) {
50
            switch (property.getEnum()) {
50
            switch (property.getEnum()) {
51
            case Constants.EN_ALWAYS:
51
            case Constants.EN_ALWAYS:
52
                return new EnumProperty(Constants.EN_PAGE, "PAGE");
52
                return EnumProperty.getInstance(Constants.EN_PAGE, "PAGE");
53
            case Constants.EN_LEFT:
53
            case Constants.EN_LEFT:
54
                return new EnumProperty(Constants.EN_EVEN_PAGE, "EVEN_PAGE");
54
                return EnumProperty.getInstance(Constants.EN_EVEN_PAGE, "EVEN_PAGE");
55
            case Constants.EN_RIGHT:
55
            case Constants.EN_RIGHT:
56
                return new EnumProperty(Constants.EN_ODD_PAGE, "ODD_PAGE");
56
                return EnumProperty.getInstance(Constants.EN_ODD_PAGE, "ODD_PAGE");
57
            case Constants.EN_AVOID:
57
            case Constants.EN_AVOID:
58
            default:
58
            default:
59
                //nop;
59
                //nop;
(-)src/java/org/apache/fop/fo/properties/VerticalAlignShorthandParser.java (-35 / +35 lines)
Lines 40-140 Link Here
40
            case EN_BASELINE:
40
            case EN_BASELINE:
41
                switch (propId) {
41
                switch (propId) {
42
                    case PR_ALIGNMENT_BASELINE:
42
                    case PR_ALIGNMENT_BASELINE:
43
                        return new EnumProperty(EN_BASELINE, "BASELINE");
43
                        return EnumProperty.getInstance(EN_BASELINE, "BASELINE");
44
                    case PR_ALIGNMENT_ADJUST:
44
                    case PR_ALIGNMENT_ADJUST:
45
                        return new EnumLength(new EnumProperty(EN_AUTO, "AUTO"));
45
                        return new EnumLength(EnumProperty.getInstance(EN_AUTO, "AUTO"));
46
                    case PR_BASELINE_SHIFT:
46
                    case PR_BASELINE_SHIFT:
47
                        return new EnumLength(new EnumProperty(EN_BASELINE, "BASELINE"));
47
                        return new EnumLength(EnumProperty.getInstance(EN_BASELINE, "BASELINE"));
48
                    case PR_DOMINANT_BASELINE:
48
                    case PR_DOMINANT_BASELINE:
49
                        return new EnumProperty(EN_AUTO, "AUTO");
49
                        return EnumProperty.getInstance(EN_AUTO, "AUTO");
50
                }
50
                }
51
            case EN_TOP:
51
            case EN_TOP:
52
                switch (propId) {
52
                switch (propId) {
53
                    case PR_ALIGNMENT_BASELINE:
53
                    case PR_ALIGNMENT_BASELINE:
54
                        return new EnumProperty(EN_BEFORE_EDGE, "BEFORE_EDGE");
54
                        return EnumProperty.getInstance(EN_BEFORE_EDGE, "BEFORE_EDGE");
55
                    case PR_ALIGNMENT_ADJUST:
55
                    case PR_ALIGNMENT_ADJUST:
56
                        return new EnumLength(new EnumProperty(EN_AUTO, "AUTO"));
56
                        return new EnumLength(EnumProperty.getInstance(EN_AUTO, "AUTO"));
57
                    case PR_BASELINE_SHIFT:
57
                    case PR_BASELINE_SHIFT:
58
                        return new EnumLength(new EnumProperty(EN_BASELINE, "BASELINE"));
58
                        return new EnumLength(EnumProperty.getInstance(EN_BASELINE, "BASELINE"));
59
                    case PR_DOMINANT_BASELINE:
59
                    case PR_DOMINANT_BASELINE:
60
                        return new EnumProperty(EN_AUTO, "AUTO");
60
                        return EnumProperty.getInstance(EN_AUTO, "AUTO");
61
                }
61
                }
62
            case EN_TEXT_TOP:
62
            case EN_TEXT_TOP:
63
                switch (propId) {
63
                switch (propId) {
64
                    case PR_ALIGNMENT_BASELINE:
64
                    case PR_ALIGNMENT_BASELINE:
65
                        return new EnumProperty(EN_TEXT_BEFORE_EDGE, "TEXT_BEFORE_EDGE");
65
                        return EnumProperty.getInstance(EN_TEXT_BEFORE_EDGE, "TEXT_BEFORE_EDGE");
66
                    case PR_ALIGNMENT_ADJUST:
66
                    case PR_ALIGNMENT_ADJUST:
67
                        return new EnumLength(new EnumProperty(EN_AUTO, "AUTO"));
67
                        return new EnumLength(EnumProperty.getInstance(EN_AUTO, "AUTO"));
68
                    case PR_BASELINE_SHIFT:
68
                    case PR_BASELINE_SHIFT:
69
                        return new EnumLength(new EnumProperty(EN_BASELINE, "BASELINE"));
69
                        return new EnumLength(EnumProperty.getInstance(EN_BASELINE, "BASELINE"));
70
                    case PR_DOMINANT_BASELINE:
70
                    case PR_DOMINANT_BASELINE:
71
                        return new EnumProperty(EN_AUTO, "AUTO");
71
                        return EnumProperty.getInstance(EN_AUTO, "AUTO");
72
                }
72
                }
73
            case EN_MIDDLE:
73
            case EN_MIDDLE:
74
                switch (propId) {
74
                switch (propId) {
75
                    case PR_ALIGNMENT_BASELINE:
75
                    case PR_ALIGNMENT_BASELINE:
76
                        return new EnumProperty(EN_MIDDLE, "MIDDLE");
76
                        return EnumProperty.getInstance(EN_MIDDLE, "MIDDLE");
77
                    case PR_ALIGNMENT_ADJUST:
77
                    case PR_ALIGNMENT_ADJUST:
78
                        return new EnumLength(new EnumProperty(EN_AUTO, "AUTO"));
78
                        return new EnumLength(EnumProperty.getInstance(EN_AUTO, "AUTO"));
79
                    case PR_BASELINE_SHIFT:
79
                    case PR_BASELINE_SHIFT:
80
                        return new EnumLength(new EnumProperty(EN_BASELINE, "BASELINE"));
80
                        return new EnumLength(EnumProperty.getInstance(EN_BASELINE, "BASELINE"));
81
                    case PR_DOMINANT_BASELINE:
81
                    case PR_DOMINANT_BASELINE:
82
                        return new EnumProperty(EN_AUTO, "AUTO");
82
                        return EnumProperty.getInstance(EN_AUTO, "AUTO");
83
                }
83
                }
84
            case EN_BOTTOM:
84
            case EN_BOTTOM:
85
                switch (propId) {
85
                switch (propId) {
86
                    case PR_ALIGNMENT_BASELINE:
86
                    case PR_ALIGNMENT_BASELINE:
87
                        return new EnumProperty(EN_AFTER_EDGE, "AFTER_EDGE");
87
                        return EnumProperty.getInstance(EN_AFTER_EDGE, "AFTER_EDGE");
88
                    case PR_ALIGNMENT_ADJUST:
88
                    case PR_ALIGNMENT_ADJUST:
89
                        return new EnumLength(new EnumProperty(EN_AUTO, "AUTO"));
89
                        return new EnumLength(EnumProperty.getInstance(EN_AUTO, "AUTO"));
90
                    case PR_BASELINE_SHIFT:
90
                    case PR_BASELINE_SHIFT:
91
                        return new EnumLength(new EnumProperty(EN_BASELINE, "BASELINE"));
91
                        return new EnumLength(EnumProperty.getInstance(EN_BASELINE, "BASELINE"));
92
                    case PR_DOMINANT_BASELINE:
92
                    case PR_DOMINANT_BASELINE:
93
                        return new EnumProperty(EN_AUTO, "AUTO");
93
                        return EnumProperty.getInstance(EN_AUTO, "AUTO");
94
                }
94
                }
95
            case EN_TEXT_BOTTOM:
95
            case EN_TEXT_BOTTOM:
96
                switch (propId) {
96
                switch (propId) {
97
                    case PR_ALIGNMENT_BASELINE:
97
                    case PR_ALIGNMENT_BASELINE:
98
                        return new EnumProperty(EN_TEXT_AFTER_EDGE, "TEXT_AFTER_EDGE");
98
                        return EnumProperty.getInstance(EN_TEXT_AFTER_EDGE, "TEXT_AFTER_EDGE");
99
                    case PR_ALIGNMENT_ADJUST:
99
                    case PR_ALIGNMENT_ADJUST:
100
                        return new EnumLength(new EnumProperty(EN_AUTO, "AUTO"));
100
                        return new EnumLength(EnumProperty.getInstance(EN_AUTO, "AUTO"));
101
                    case PR_BASELINE_SHIFT:
101
                    case PR_BASELINE_SHIFT:
102
                        return new EnumLength(new EnumProperty(EN_BASELINE, "BASELINE"));
102
                        return new EnumLength(EnumProperty.getInstance(EN_BASELINE, "BASELINE"));
103
                    case PR_DOMINANT_BASELINE:
103
                    case PR_DOMINANT_BASELINE:
104
                        return new EnumProperty(EN_AUTO, "AUTO");
104
                        return EnumProperty.getInstance(EN_AUTO, "AUTO");
105
                }
105
                }
106
            case EN_SUB:
106
            case EN_SUB:
107
                switch (propId) {
107
                switch (propId) {
108
                    case PR_ALIGNMENT_BASELINE:
108
                    case PR_ALIGNMENT_BASELINE:
109
                        return new EnumProperty(EN_BASELINE, "BASELINE");
109
                        return EnumProperty.getInstance(EN_BASELINE, "BASELINE");
110
                    case PR_ALIGNMENT_ADJUST:
110
                    case PR_ALIGNMENT_ADJUST:
111
                        return new EnumLength(new EnumProperty(EN_AUTO, "AUTO"));
111
                        return new EnumLength(EnumProperty.getInstance(EN_AUTO, "AUTO"));
112
                    case PR_BASELINE_SHIFT:
112
                    case PR_BASELINE_SHIFT:
113
                        return new EnumLength(new EnumProperty(EN_SUB, "SUB"));
113
                        return new EnumLength(EnumProperty.getInstance(EN_SUB, "SUB"));
114
                    case PR_DOMINANT_BASELINE:
114
                    case PR_DOMINANT_BASELINE:
115
                        return new EnumProperty(EN_AUTO, "AUTO");
115
                        return EnumProperty.getInstance(EN_AUTO, "AUTO");
116
                }
116
                }
117
            case EN_SUPER:
117
            case EN_SUPER:
118
                switch (propId) {
118
                switch (propId) {
119
                    case PR_ALIGNMENT_BASELINE:
119
                    case PR_ALIGNMENT_BASELINE:
120
                        return new EnumProperty(EN_BASELINE, "BASELINE");
120
                        return EnumProperty.getInstance(EN_BASELINE, "BASELINE");
121
                    case PR_ALIGNMENT_ADJUST:
121
                    case PR_ALIGNMENT_ADJUST:
122
                        return new EnumLength(new EnumProperty(EN_AUTO, "AUTO"));
122
                        return new EnumLength(EnumProperty.getInstance(EN_AUTO, "AUTO"));
123
                    case PR_BASELINE_SHIFT:
123
                    case PR_BASELINE_SHIFT:
124
                        return new EnumLength(new EnumProperty(EN_SUPER, "SUPER"));
124
                        return new EnumLength(EnumProperty.getInstance(EN_SUPER, "SUPER"));
125
                    case PR_DOMINANT_BASELINE:
125
                    case PR_DOMINANT_BASELINE:
126
                        return new EnumProperty(EN_AUTO, "AUTO");
126
                        return EnumProperty.getInstance(EN_AUTO, "AUTO");
127
                }
127
                }
128
            default:
128
            default:
129
                switch (propId) {
129
                switch (propId) {
130
                    case PR_ALIGNMENT_BASELINE:
130
                    case PR_ALIGNMENT_BASELINE:
131
                        return new EnumProperty(EN_BASELINE, "BASELINE");
131
                        return EnumProperty.getInstance(EN_BASELINE, "BASELINE");
132
                    case PR_ALIGNMENT_ADJUST:
132
                    case PR_ALIGNMENT_ADJUST:
133
                        return property;
133
                        return property;
134
                    case PR_BASELINE_SHIFT:
134
                    case PR_BASELINE_SHIFT:
135
                        return new EnumLength(new EnumProperty(EN_BASELINE, "BASELINE"));
135
                        return new EnumLength(EnumProperty.getInstance(EN_BASELINE, "BASELINE"));
136
                    case PR_DOMINANT_BASELINE:
136
                    case PR_DOMINANT_BASELINE:
137
                        return new EnumProperty(EN_AUTO, "AUTO");
137
                        return EnumProperty.getInstance(EN_AUTO, "AUTO");
138
                }
138
                }
139
        }
139
        }
140
        return null;
140
        return null;
(-)src/java/org/apache/fop/fo/properties/EnumNumber.java (-2 / +17 lines)
Lines 19-35 Link Here
19
 
19
 
20
package org.apache.fop.fo.properties;
20
package org.apache.fop.fo.properties;
21
21
22
import java.util.Map;
23
import java.util.WeakHashMap;
24
22
/**
25
/**
23
 * A number quantity in XSL which is specified as an enum, such as "no-limit".
26
 * A number quantity in XSL which is specified as an enum, such as "no-limit".
24
 */
27
 */
25
public class EnumNumber extends NumberProperty {
28
public class EnumNumber extends NumberProperty {
26
    private Property enumProperty;
29
30
    private static final Map cache = new WeakHashMap();
31
32
    private final EnumProperty enumProperty;
27
    
33
    
28
    public EnumNumber(Property enumProperty) {
34
    private EnumNumber(EnumProperty enumProperty) {
29
        super(null);
35
        super(null);
30
        this.enumProperty = enumProperty;
36
        this.enumProperty = enumProperty;
31
    }
37
    }
32
38
39
    public static EnumNumber getInstance(Property enumProperty) {
40
        EnumNumber en = (EnumNumber)cache.get(enumProperty);
41
        if (en == null) {
42
            en = new EnumNumber((EnumProperty)enumProperty);
43
            cache.put(enumProperty, en);
44
        }
45
        return en;
46
    }
47
33
    public int getEnum() {
48
    public int getEnum() {
34
        return enumProperty.getEnum();
49
        return enumProperty.getEnum();
35
    }
50
    }
(-)src/java/org/apache/fop/fo/properties/PositionShorthandParser.java (-7 / +7 lines)
Lines 41-51 Link Here
41
            switch (propVal) {
41
            switch (propVal) {
42
            case Constants.EN_STATIC:
42
            case Constants.EN_STATIC:
43
            case Constants.EN_RELATIVE:
43
            case Constants.EN_RELATIVE:
44
                return new EnumProperty(Constants.EN_AUTO, "AUTO");
44
                return EnumProperty.getInstance(Constants.EN_AUTO, "AUTO");
45
            case Constants.EN_ABSOLUTE:
45
            case Constants.EN_ABSOLUTE:
46
                return new EnumProperty(Constants.EN_ABSOLUTE, "ABSOLUTE");
46
                return EnumProperty.getInstance(Constants.EN_ABSOLUTE, "ABSOLUTE");
47
            case Constants.EN_FIXED:
47
            case Constants.EN_FIXED:
48
                return new EnumProperty(Constants.EN_FIXED, "FIXED");
48
                return EnumProperty.getInstance(Constants.EN_FIXED, "FIXED");
49
            default:
49
            default:
50
                //nop
50
                //nop
51
            }
51
            }
Lines 53-65 Link Here
53
        if (propId == Constants.PR_RELATIVE_POSITION) {
53
        if (propId == Constants.PR_RELATIVE_POSITION) {
54
            switch (propVal) {
54
            switch (propVal) {
55
            case Constants.EN_STATIC:
55
            case Constants.EN_STATIC:
56
                return new EnumProperty(Constants.EN_STATIC, "STATIC");
56
                return EnumProperty.getInstance(Constants.EN_STATIC, "STATIC");
57
            case Constants.EN_RELATIVE:
57
            case Constants.EN_RELATIVE:
58
                return new EnumProperty(Constants.EN_RELATIVE, "RELATIVE");
58
                return EnumProperty.getInstance(Constants.EN_RELATIVE, "RELATIVE");
59
            case Constants.EN_ABSOLUTE:
59
            case Constants.EN_ABSOLUTE:
60
                return new EnumProperty(Constants.EN_STATIC, "STATIC");
60
                return EnumProperty.getInstance(Constants.EN_STATIC, "STATIC");
61
            case Constants.EN_FIXED:
61
            case Constants.EN_FIXED:
62
                return new EnumProperty(Constants.EN_STATIC, "STATIC");
62
                return EnumProperty.getInstance(Constants.EN_STATIC, "STATIC");
63
            default:
63
            default:
64
                //nop
64
                //nop
65
            }
65
            }
(-)src/java/org/apache/fop/fo/properties/NumberProperty.java (-1 / +1 lines)
Lines 58-64 Link Here
58
                return p;
58
                return p;
59
            }
59
            }
60
            if (p instanceof EnumProperty) {
60
            if (p instanceof EnumProperty) {
61
                return new EnumNumber(p);
61
                return EnumNumber.getInstance(p);
62
            }
62
            }
63
            Number val = p.getNumber();
63
            Number val = p.getNumber();
64
            if (val != null) {
64
            if (val != null) {
(-)src/java/org/apache/fop/fo/properties/LineHeightPropertyMaker.java (-2 / +2 lines)
Lines 54-62 Link Here
54
         */
54
         */
55
        Property p = super.make(propertyList, value, fo);
55
        Property p = super.make(propertyList, value, fo);
56
        p.getSpace().setConditionality(
56
        p.getSpace().setConditionality(
57
                new EnumProperty(Constants.EN_RETAIN, "RETAIN"), true);
57
                EnumProperty.getInstance(Constants.EN_RETAIN, "RETAIN"), true);
58
        p.getSpace().setPrecedence(
58
        p.getSpace().setPrecedence(
59
                new EnumProperty(Constants.EN_FORCE, "FORCE"), true);
59
                EnumProperty.getInstance(Constants.EN_FORCE, "FORCE"), true);
60
        return p;
60
        return p;
61
    }
61
    }
62
    
62
    
(-)src/java/org/apache/fop/fo/properties/SpacePropertyMaker.java (-1 / +1 lines)
Lines 43-49 Link Here
43
        Property prop = super.compute(propertyList);
43
        Property prop = super.compute(propertyList);
44
        if (prop != null && prop instanceof SpaceProperty) {
44
        if (prop != null && prop instanceof SpaceProperty) {
45
            ((SpaceProperty)prop).setConditionality(
45
            ((SpaceProperty)prop).setConditionality(
46
                    new EnumProperty(Constants.EN_RETAIN, "RETAIN"), false);
46
                    EnumProperty.getInstance(Constants.EN_RETAIN, "RETAIN"), false);
47
        }
47
        }
48
        return prop;
48
        return prop;
49
    }
49
    }
(-)src/java/org/apache/fop/fo/properties/WhiteSpaceShorthandParser.java (-4 / +4 lines)
Lines 42-58 Link Here
42
            switch (propId) {
42
            switch (propId) {
43
            case Constants.PR_LINEFEED_TREATMENT:
43
            case Constants.PR_LINEFEED_TREATMENT:
44
            case Constants.PR_WHITE_SPACE_TREATMENT:
44
            case Constants.PR_WHITE_SPACE_TREATMENT:
45
                return new EnumProperty(Constants.EN_PRESERVE, "PRESERVE");
45
                return EnumProperty.getInstance(Constants.EN_PRESERVE, "PRESERVE");
46
            case Constants.PR_WHITE_SPACE_COLLAPSE:
46
            case Constants.PR_WHITE_SPACE_COLLAPSE:
47
                return new EnumProperty(Constants.EN_FALSE, "FALSE");
47
                return EnumProperty.getInstance(Constants.EN_FALSE, "FALSE");
48
            case Constants.PR_WRAP_OPTION:
48
            case Constants.PR_WRAP_OPTION:
49
                return new EnumProperty(Constants.EN_NO_WRAP, "NO_WRAP");
49
                return EnumProperty.getInstance(Constants.EN_NO_WRAP, "NO_WRAP");
50
            default:
50
            default:
51
                //nop
51
                //nop
52
            }
52
            }
53
        case Constants.EN_NO_WRAP:
53
        case Constants.EN_NO_WRAP:
54
            if (propId == Constants.PR_WRAP_OPTION) {
54
            if (propId == Constants.PR_WRAP_OPTION) {
55
                return new EnumProperty(Constants.EN_NO_WRAP, "NO_WRAP");
55
                return EnumProperty.getInstance(Constants.EN_NO_WRAP, "NO_WRAP");
56
            }
56
            }
57
        case Constants.EN_NORMAL:
57
        case Constants.EN_NORMAL:
58
        default:
58
        default:
(-)src/java/org/apache/fop/fo/FOPropertyMapping.java (-1 / +1 lines)
Lines 265-271 Link Here
265
            enums = new Property[ENUM_COUNT + 1];
265
            enums = new Property[ENUM_COUNT + 1];
266
        }
266
        }
267
        if (enums[enumValue] == null) {
267
        if (enums[enumValue] == null) {
268
            enums[enumValue] = new EnumProperty(enumValue, text);
268
            enums[enumValue] = EnumProperty.getInstance(enumValue, text);
269
        }
269
        }
270
        return enums[enumValue];
270
        return enums[enumValue];
271
    }
271
    }

Return to bug 41044