01: /**
02: * L2FProd.com Common Components 7.3 License.
03: *
04: * Copyright 2005-2007 L2FProd.com
05: *
06: * Licensed under the Apache License, Version 2.0 (the "License");
07: * you may not use this file except in compliance with the License.
08: * 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, software
13: * distributed under the License is distributed on an "AS IS" BASIS,
14: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15: * See the License for the specific language governing permissions and
16: * limitations under the License.
17: */package com.l2fprod.common.util.converter;
18:
19: /**
20: * Converts a boolean to string and vice-versa.
21: */
22: public class BooleanConverter implements Converter {
23:
24: public void register(ConverterRegistry registry) {
25: registry.addConverter(String.class, boolean.class, this );
26: registry.addConverter(String.class, Boolean.class, this );
27: registry.addConverter(Boolean.class, String.class, this );
28: registry.addConverter(boolean.class, String.class, this );
29: }
30:
31: public Object convert(Class type, Object value) {
32: if (String.class.equals(type)
33: && Boolean.class.equals(value.getClass())) {
34: return String.valueOf(value);
35: } else if (boolean.class.equals(type)
36: || Boolean.class.equals(type)) {
37: return Boolean.valueOf(String.valueOf(value));
38: } else {
39: throw new IllegalArgumentException("Can't convert " + value
40: + " to " + type.getName());
41: }
42: }
43:
44: }
|