Package de.timefinder.core.io.text

Examples of de.timefinder.core.io.text.Parsing


        }
        return (T) obj;
    }

    public <T> T getResult(Object obj, Class<T> propertyClass, Element element) {
        Parsing parsing = objectParsing.getParsing(propertyClass);
        if (parsing == null) {
            if (Person.class.isAssignableFrom(obj.getClass())) {
                if ("constraints".equals(element.getName())) {
                    return (T) readConstraints(element);
                } else if ("eventsMap".equals(element.getName())) {
                    Map map = FastMap.newInstance();
                    for (Object evEl : element.elements()) {
                        Element evElement = (Element) evEl;
                        long ref = getRef(evElement);
                        Role role = Role.valueOf(evElement.attributeValue("role"));
                        map.put(getObject(ref, Event.class), role);
                    }
                    return (T) map;
                }
            } else if (Event.class.isAssignableFrom(obj.getClass())) {
                if ("constraints".equals(element.getName())) {
                    return (T) readConstraints(element);
                } else if ("features".equals(element.getName())) {
                    return (T) readCollection(element, Feature.class);
                }
                // location already parsed via location->events
                // persons  already parsed via persons->events
            } else if (Feature.class.isAssignableFrom(obj.getClass())) {
                if ("constraints".equals(element.getName())) {
                    return (T) readConstraints(element);
                }
            } else if (Location.class.isAssignableFrom(obj.getClass())) {
                if ("constraints".equals(element.getName())) {
                    return (T) readConstraints(element);
                } else if ("events".equals(element.getName())) {
                    return (T) readCollection(element, Event.class);
                } else if ("features".equals(element.getName())) {
                    return (T) readCollection(element, Feature.class);
                }
            }

            throw new UnsupportedOperationException("No parsing found for property class "
                    + propertyClass + " and object " + obj);
        } else
            return (T) parsing.parse(element.getText());
    }
View Full Code Here


            Iterator iter = list.iterator();
            while (iter.hasNext()) {
                Element element = (Element) iter.next();
                try {
                    Class clazz = Class.forName(element.attributeValue("class"));
                    Parsing p = objParsing.getParsing(clazz);
                    Object obj = p.parse(element.getText());
                    setObject(element.getName(), obj);
                } catch (Exception ex) {
                    throw new UnsupportedOperationException("Couldn't read property:"
                            + element.getName() + " from settings file:" + xmlFile, ex);
                }
View Full Code Here

TOP

Related Classes of de.timefinder.core.io.text.Parsing

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.