]> git.argeo.org Git - gpl/argeo-slc.git/blob - runtime/org.argeo.slc.specs/src/main/java/org/argeo/slc/castor/test/tree/StatusFieldHandler.java
Introduce org.argeo.slc.specs
[gpl/argeo-slc.git] / runtime / org.argeo.slc.specs / src / main / java / org / argeo / slc / castor / test / tree / StatusFieldHandler.java
1 package org.argeo.slc.castor.test.tree;
2
3 import org.argeo.slc.core.test.SimpleResultPart;
4 import org.argeo.slc.core.test.SlcTestUtils;
5 import org.argeo.slc.core.test.TestStatus;
6 import org.exolab.castor.mapping.AbstractFieldHandler;
7
8 public class StatusFieldHandler extends AbstractFieldHandler {
9
10 @Override
11 public Object getValue(Object object) throws IllegalStateException {
12 SimpleResultPart part = (SimpleResultPart) object;
13 return SlcTestUtils.statusToString(part.getStatus());
14 }
15
16 @Override
17 public Object newInstance(Object parent) throws IllegalStateException {
18 return null;
19 }
20
21 @Override
22 public Object newInstance(Object parent, Object[] args)
23 throws IllegalStateException {
24 return null;
25 }
26
27 @Override
28 public void resetValue(Object object) throws IllegalStateException,
29 IllegalArgumentException {
30 SimpleResultPart part = (SimpleResultPart) object;
31 // ERROR by default since it should be explicitely set
32 part.setStatus(TestStatus.ERROR);
33 }
34
35 @Override
36 public void setValue(Object object, Object value)
37 throws IllegalStateException, IllegalArgumentException {
38 SimpleResultPart part = (SimpleResultPart) object;
39 Integer status = SlcTestUtils.stringToStatus((String) value);
40 part.setStatus(status);
41 }
42
43 }