1 /* 2 * Copyright (C) 2003-2005 SINTEF 3 * Author: Fredrik Vraalsen (fredrik dot vraalsen at sintef dot no) 4 * Webpage: http://coras.sourceforge.net/ 5 * 6 * This program is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU Lesser General Public License 8 * as published by the Free Software Foundation; either version 2.1 9 * of the License, or (at your option) any later version. 10 * 11 * This program is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * Lesser General Public License for more details. 15 * 16 * You should have received a copy of the GNU Lesser General Public 17 * License along with this program; if not, write to the Free 18 * Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 19 * 02111-1307 USA 20 */ 21 package coras.representations; 22 23 import no.sintef.assetrepository.Representation; 24 import no.sintef.umt.XmiLightTransformer; 25 26 import org.w3c.dom.Document; 27 import org.w3c.dom.Node; 28 29 public class XmiModel extends UMLModelRepresentation implements XmlRepresentation { 30 31 private Node xmiLight = null; 32 33 protected XmiModel(Representation representation) { 34 super(representation); 35 } 36 37 /* (non-Javadoc) 38 * @see coras.representations.XmlRepresentation#getXmlContent() 39 */ 40 public Node getXmlContent() { 41 Object content = getContent(); 42 if (content == null || content instanceof Node) { 43 return (Node) content; 44 } else { 45 return null; // FIXME error 46 } 47 } 48 49 public synchronized Node getXmiLight() { 50 if (xmiLight == null) { 51 xmiLight = XmiLightTransformer.getTransformer().getXmiLight(getXmlContent()); 52 } 53 return xmiLight; 54 } 55 56 }