Java tutorial
/******************************************************************************* * Copyright (c) 2007, 2010 The Planets Project Partners. * * All rights reserved. This program and the accompanying * materials are made available under the terms of the * Apache License, Version 2.0 which accompanies * this distribution, and is available at * http://www.apache.org/licenses/LICENSE-2.0 * *******************************************************************************/ package eu.planets_project.tb.impl.model.ontology.util; import java.net.URI; import java.net.URISyntaxException; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import eu.planets_project.services.datatypes.Property; import eu.planets_project.tb.api.model.ontology.OntologyProperty; import eu.planets_project.tb.impl.model.eval.mockup.TecRegMockup; import eu.planets_project.tb.impl.model.measure.MeasurementImpl; /** * Helper for converting data from the ontology into TB objects * @author <a href="mailto:andrew.lindley@arcs.ac.at">Andrew Lindley</a> * @since 25.03.2009 * */ public class OntoPropertyUtil { private static Log log = LogFactory.getLog(OntoPropertyUtil.class); /** * Takes a OntologyProperty that's used * and converts it into the Testbed's Property model element: MeasurementImpl * @param p eu.planets_project.services.datatypes.Property * @return */ public static MeasurementImpl createMeasurementFromOntologyProperty(OntologyProperty p) throws Exception { MeasurementImpl m = new MeasurementImpl(); if (p == null) throw new Exception("invalid OntologyProperty: null"); String propURI = p.getURI(); // Invent a uri if required - shouldn't be the case: if (propURI == null) { propURI = TecRegMockup.URI_ONTOLOGY_PROP_ROOT + p.getName(); } URI pURI; try { pURI = new URI(propURI); } catch (URISyntaxException e) { log.debug(e); return m; } // Copy into measurement property: m.setProperty(OntoPropertyUtil.createPropertyFromOntoProperty(pURI, p)); return m; } private static Property createPropertyFromOntoProperty(URI identifier, OntologyProperty p) { return new Property.Builder(identifier).name(p.getName()).description(p.getComment()).type(p.getType()) .unit(p.getUnit()).value(null).build(); } }