01: /*
02: * Licensed to the Apache Software Foundation (ASF) under one
03: * or more contributor license agreements. See the NOTICE file
04: * distributed with this work for additional information
05: * regarding copyright ownership. The ASF licenses this file
06: * to you under the Apache License, Version 2.0 (the
07: * "License"); you may not use this file except in compliance
08: * with the License. You may obtain a copy of the License at
09: *
10: * http://www.apache.org/licenses/LICENSE-2.0
11: *
12: * Unless required by applicable law or agreed to in writing,
13: * software distributed under the License is distributed on an
14: * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15: * KIND, either express or implied. See the License for the
16: * specific language governing permissions and limitations
17: * under the License.
18: */
19: package org.apache.openjpa.lib.conf;
20:
21: /**
22: * A boolean {@link Value}.
23: *
24: * @author Marc Prud'hommeaux
25: */
26: public class BooleanValue extends Value {
27:
28: private boolean value;
29:
30: public BooleanValue(String prop) {
31: super (prop);
32: setAliasListComprehensive(true);
33: }
34:
35: public Class getValueType() {
36: return boolean.class;
37: }
38:
39: /**
40: * The internal value.
41: */
42: public void set(boolean value) {
43: assertChangeable();
44: boolean oldValue = this .value;
45: this .value = value;
46: if (oldValue != value)
47: valueChanged();
48: }
49:
50: /**
51: * The internal value.
52: */
53: public boolean get() {
54: return value;
55: }
56:
57: protected String getInternalString() {
58: return String.valueOf(value);
59: }
60:
61: protected void setInternalString(String val) {
62: set(Boolean.valueOf(val).booleanValue());
63: }
64:
65: protected void setInternalObject(Object obj) {
66: if (obj == null)
67: set(false);
68: else
69: set(((Boolean) obj).booleanValue());
70: }
71: }
|