1 year ago

#321050

test-img

Lqs66

How to create UMLPackage object using ResourceSet?

I want to create a UMLPackage object using ResourceSet so that I can parse the UML model. However, I can only get the object of EPackage.

URI uri = URI.createURI("src/model/test.uml");
ResourceSet set = new ResourceSetImpl();
set.getPackageRegistry().put(UMLPackage.eNS_URI, UMLPackage.eINSTANCE);
set.getResourceFactoryRegistry().getExtensionToFactoryMap()
                .put(UMLResource.FILE_EXTENSION, UMLResource.Factory.INSTANCE);
 Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap()
                .put(UMLResource.FILE_EXTENSION, UMLResource.Factory.INSTANCE);
Resource res = set.getResource(uri, true);
EObject root=res.getContents().get(0);
UMLPackage umlPackage=null;
for(EObject e:root.eContents()){
            if("Interaction".equals(e.eClass().getName())){
                umlPackage=(UMLPackage) e.eClass().getEPackage();
            }
}
if(null!=umlPackage){
            System.out.println(umlPackage.getLifeline());
}

I tried casting and I know it's wrong, but I have no other way.

java

uml

eclipse-emf

0 Answers

Your Answer

Accepted video resources