public Object unmarshal()

in xstream-jmh/src/java/com/thoughtworks/xstream/benchmark/jmh/ConverterTypeBenchmark.java [181:218]


        public Object unmarshal(final HierarchicalStreamReader reader, final UnmarshallingContext context) {
            final Model type = new Model();
            while (reader.hasMoreChildren()) {
                reader.moveDown();
                final String value = reader.getValue();
                switch (reader.getNodeName()) {
                case "ch":
                    if (value.length() != 1) {
                        throw new ConversionException("Not a single character");
                    }
                    type.setCh(value.charAt(0));
                    break;
                case "i":
                    type.setI(Integer.parseInt(value));
                    break;
                case "s":
                    type.setS(value);
                    break;
                case "d":
                    type.setD(Double.parseDouble(value));
                    break;
                case "f":
                    type.setF(Float.parseFloat(value));
                    break;
                case "bi":
                    type.setBi(new BigInteger(value));
                    break;
                case "uuid":
                    type.setUuid(UUID.fromString(value));
                    break;
                default:
                    throw new ConversionException("Unkown element");
                }
                reader.moveUp();
            }

            return type;
        }