]> git.argeo.org Git - gpl/argeo-slc.git/blob - legacy/runtime/org.argeo.slc.support.castor/src/main/java/org/argeo/slc/castor/execution/PrimitiveFieldHandler.java
Move to SLC legacy
[gpl/argeo-slc.git] / legacy / runtime / org.argeo.slc.support.castor / src / main / java / org / argeo / slc / castor / execution / PrimitiveFieldHandler.java
1 /*
2 * Copyright (C) 2007-2012 Mathieu Baudier
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16 package org.argeo.slc.castor.execution;
17
18 import org.argeo.slc.core.execution.PrimitiveAccessor;
19 import org.argeo.slc.core.execution.PrimitiveUtils;
20 import org.exolab.castor.mapping.AbstractFieldHandler;
21
22 public class PrimitiveFieldHandler extends AbstractFieldHandler {
23
24 @Override
25 public Object getValue(Object object) throws IllegalStateException {
26 if (object == null)
27 return null;
28
29 Object value = ((PrimitiveAccessor) object).getValue();
30 return value != null ? value.toString() : null;
31 }
32
33 @Override
34 public Object newInstance(Object parent, Object[] args)
35 throws IllegalStateException {
36 return null;
37 }
38
39 @Override
40 public Object newInstance(Object parent) throws IllegalStateException {
41 return null;
42 }
43
44 @Override
45 public void resetValue(Object object) throws IllegalStateException,
46 IllegalArgumentException {
47 }
48
49 @Override
50 public void setValue(Object object, Object value)
51 throws IllegalStateException, IllegalArgumentException {
52 PrimitiveAccessor primitiveAccessor = (PrimitiveAccessor) object;
53 String type = primitiveAccessor.getType();
54 String str = value.toString();
55 primitiveAccessor.setValue(PrimitiveUtils.convert(type, str));
56 }
57
58 }