org.metadiff.infra.mdr.util
Class ModelLoaderUtil

java.lang.Object
  extended byorg.metadiff.infra.mdr.util.ModelLoaderUtil

public class ModelLoaderUtil
extends java.lang.Object

Helper class for loading Ecore based models TODO refactor

Author:
Mark Kofman

Field Summary
private static ModelLoaderUtil instance
           
private  javax.jmi.model.ModelPackage mof
           
private static java.lang.String MOF_INSTANCE
           
(package private)  javax.jmi.xmi.XmiReader reader
           
private  org.netbeans.api.mdr.MDRepository rep
           
private static java.lang.String UML_MM
           
 
Constructor Summary
private ModelLoaderUtil()
           
 
Method Summary
static ModelLoaderUtil getInstance(org.netbeans.api.mdr.MDRepository rep)
           
private  javax.jmi.model.MofPackage getUmlPackage()
          Finds "UML" package -> this is the topmost package of UML metamodel - that's the package that needs to be instantiated in order to create a UML extent
private  javax.jmi.model.MofPackage getUmlPackage(javax.jmi.model.ModelPackage umlMM)
          Finds "UML" package in a given extent
private  void init()
          Makes sure UML and MOF extents are created.
 MdrResource loadModel(java.net.URL url)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MOF_INSTANCE

private static final java.lang.String MOF_INSTANCE
See Also:
Constant Field Values

UML_MM

private static final java.lang.String UML_MM
See Also:
Constant Field Values

instance

private static ModelLoaderUtil instance

reader

javax.jmi.xmi.XmiReader reader

rep

private org.netbeans.api.mdr.MDRepository rep

mof

private javax.jmi.model.ModelPackage mof
Constructor Detail

ModelLoaderUtil

private ModelLoaderUtil()
Method Detail

getInstance

public static ModelLoaderUtil getInstance(org.netbeans.api.mdr.MDRepository rep)
                                   throws org.netbeans.api.mdr.CreationFailedException,
                                          java.io.IOException,
                                          javax.jmi.xmi.MalformedXMIException
Throws:
org.netbeans.api.mdr.CreationFailedException
java.io.IOException
javax.jmi.xmi.MalformedXMIException

loadModel

public MdrResource loadModel(java.net.URL url)
                      throws org.netbeans.api.mdr.CreationFailedException,
                             java.io.IOException,
                             javax.jmi.xmi.MalformedXMIException
Throws:
org.netbeans.api.mdr.CreationFailedException
java.io.IOException
javax.jmi.xmi.MalformedXMIException

init

private void init()
           throws org.netbeans.api.mdr.CreationFailedException,
                  java.io.IOException,
                  javax.jmi.xmi.MalformedXMIException
Makes sure UML and MOF extents are created.

Throws:
org.netbeans.api.mdr.CreationFailedException
javax.jmi.xmi.MalformedXMIException
java.io.IOException

getUmlPackage

private javax.jmi.model.MofPackage getUmlPackage()
                                          throws org.netbeans.api.mdr.CreationFailedException,
                                                 java.io.IOException,
                                                 javax.jmi.xmi.MalformedXMIException
Finds "UML" package -> this is the topmost package of UML metamodel - that's the package that needs to be instantiated in order to create a UML extent

Throws:
org.netbeans.api.mdr.CreationFailedException
javax.jmi.xmi.MalformedXMIException
java.io.IOException

getUmlPackage

private javax.jmi.model.MofPackage getUmlPackage(javax.jmi.model.ModelPackage umlMM)
Finds "UML" package in a given extent

Parameters:
umlMM - MOF extent that should be searched for "UML" package.