package org.geosdi.geoplatform.jaxb.comparison.task; import org.geosdi.geoplatform.jaxb.GPJAXBContextBuilder; import org.geosdi.geoplatform.jaxb.IGPJAXBContextBuilder; import org.geosdi.geoplatform.jaxb.model.AttributeStore; import org.geosdi.geoplatform.jaxb.model.Car; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.io.File; import java.io.StringWriter; import java.util.concurrent.Callable; import static org.geosdi.geoplatform.jaxb.GPJAXBContextBuilderTest.createAttributes; /** * @author Giuseppe La Scaleia - CNR IMAA geoSDI Group * @email giuseppe.lascaleia@geosdi.org */ public class GPJAXBContextBuilderTaskSimple implements Callable<Long> { private static final Logger logger = LoggerFactory.getLogger(GPJAXBContextBuilderTaskSimple.class); // private static final IGPJAXBContextBuilder GP_JAXB_CONTEXT_BUILDER = GPJAXBContextBuilder.newInstance(); /** * Computes a result, or throws an exception if unable to do so. * * @return computed result * @throws Exception if unable to compute a result */ @Override public Long call() throws Exception { long start = System.currentTimeMillis(); logger.debug("###########################UNMARSHALL_CAR_FROM_FILE_SIMPLE : {}\n", GP_JAXB_CONTEXT_BUILDER .unmarshal(new File("./src/test/resources/Car.xml"), Car.class)); AttributeStore attributeStore = new AttributeStore(); attributeStore.setAttributes(createAttributes(25)); StringWriter writer = new StringWriter(); GP_JAXB_CONTEXT_BUILDER.marshal(attributeStore, writer); logger.debug("@@@@@@@@@@@@@@@@@@@@@@@@@@@@MARSHALL_ATTRIBUTE_STORE_AS_STRING_SIMPLE : \n{}\n", writer.toString()); return System.currentTimeMillis() - start; } }