'uriMap.put(URI.createURI("platform:/plugin/com.cea.papyrus.uml4sysml.extension/model/"), uri_sysml.appendSegment("model").appendSegment(""));
uriMap.put(URI.createURI("platform:/plugin/com.cea.papyrus.uml4sysml.extension/libraries/"), uri_sysml.appendSegment("libraries").appendSegment(""));'
public static void main(String[] args) throws IOException {
ResourceSet resourceSet = new ResourceSetImpl();
resourceSet.getPackageRegistry().put(UMLPackage.eNS_URI, UMLPackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\www.eclipse.org/uml2/2.0.0/UML", UMLPackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\www.eclipse.org/uml2/2.1.0/UML", UMLPackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\www.eclipse.org/uml2/1.0.0/UML", UMLPackage.eINSTANCE);
resourceSet.getPackageRegistry().put(EcorePackage.eNS_URI, EcorePackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\www.eclipse.org/emf/2003/XMLType", XMLTypePackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\www.w3.org/XML/1998/namespace", XMLNamespacePackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\www.eclipse.org/uml2/schemas/Ecore/5", EcorePackage.eINSTANCE);
resourceSet.getPackageRegistry().put( Ecore2XMLPackage.eNS_URI, Ecore2XMLPackage.eINSTANCE);
resourceSet.getPackageRegistry().put( Ecore2EcorePackage.eNS_URI, Ecore2EcorePackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\schema.omg.org/spec/UML/2.2", UMLPackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\schema.omg.org/spec/UML/2.1", UMLPackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\schema.omg.org/spec/UML/2.1.1", UMLPackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\schema.omg.org/spec/MOF/2.0/cmof.xml", UMLPackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\schema.omg.org/spec/mof/2.0/emof.xml", UMLPackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\schema.omg.org/spec/MOF/2.0/emof.xml", UMLPackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\www.papyrusuml.org/SysML/1", SysmlPackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\www.papyrusuml.org/SysML/Blocks/1", BlocksPackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\www.papyrusuml.org/SysML/PortAndFlows/1", PortandflowsPackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\www.papyrusuml.org/SysML/Constraints/1", ConstraintsPackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\www.papyrusuml.org/SysML/Activities/1", ActivitiesPackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\www.papyrusuml.org/SysML/Allocations/1", AllocationsPackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\www.papyrusuml.org/SysML/Requirements/1", RequirementsPackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\www.papyrusuml.org/SysML/Interactions/1", InteractionsPackage.eINSTANCE);
resourceSet.getPackageRegistry().put("http:\\www.papyrusuml.org/SysML/StateMachines/1", StatemachinesPackage.eINSTANCE);
Map<String, Object> extensionToFactoryMap = resourceSet.getResourceFactoryRegistry().getExtensionToFactoryMap();
extensionToFactoryMap.put(UMLResource.FILE_EXTENSION, UMLResource.Factory.INSTANCE);
extensionToFactoryMap.put(UMLResource.PROFILE_FILE_EXTENSION, UMLResource.Factory.INSTANCE );
extensionToFactoryMap.put("xmi", XMI2UMLResource.Factory.INSTANCE);
extensionToFactoryMap.put("profile.xmi", XMI2UMLResource.Factory.INSTANCE );
extensionToFactoryMap.put("ecore", new EcoreResourceFactoryImpl());
extensionToFactoryMap.put(Ecore2XMLResource.FILE_EXTENSION,Ecore2XMLResource.Factory.INSTANCE);
extensionToFactoryMap.put(UML22UMLResource.FILE_EXTENSION,UML22UMLResource.Factory.INSTANCE);
//extensionToFactoryMap.put(UML212UMLResource.FILE_EXTENSION,UML212UMLResource.Factory.INSTANCE);
extensionToFactoryMap.put(Resource.Factory.Registry.DEFAULT_EXTENSION, UMLResource.Factory.INSTANCE);
Map<URI, URI> uriMap = resourceSet.getURIConverter().getURIMap();
String rootdirPath = ..................;
/**
* registering URI map for UML resources.
*/
URI uri = URI.createURI("jar:file:/"+ rootdirPath + "/lib/eclipse_lib/org.eclipse.uml2.uml.resources_3.0.0.v200906011111.jar!/");
uriMap.put(URI.createURI(UMLResource.LIBRARIES_PATHMAP), uri.appendSegment("libraries").appendSegment(""));
uriMap.put(URI.createURI(UMLResource.METAMODELS_PATHMAP), uri.appendSegment("metamodels").appendSegment(""));
uriMap.put(URI.createURI(UMLResource.PROFILES_PATHMAP), uri.appendSegment("profiles").appendSegment(""));
/**
* registering URI map for SysML resources.
*/
URI uri_sysml = URI.createURI("jar:file:/"+ rootdirPath + "/lib/eclipse_lib/com.cea.papyrus.uml4sysml.extension_1.2.0.jar!/");
uriMap.put(URI.createURI("pathmap://SysML_PROFILES/"), uri_sysml.appendSegment("model").appendSegment(""));
uriMap.put(URI.createURI("pathmap://SysML_LIBRARIES/"), uri_sysml.appendSegment("libraries").appendSegment(""));
uriMap.put(URI.createURI("platform:/plugin/com.cea.papyrus.uml4sysml.extension/model/"), uri_sysml.appendSegment("model").appendSegment(""));
uriMap.put(URI.createURI("platform:/plugin/com.cea.papyrus.uml4sysml.extension/libraries/"), uri_sysml.appendSegment("libraries").appendSegment(""));
Resource resource = resourceSet.getResource(URI.createFileURI("................\\umlExample1.uml"), true);
EcoreUtil.resolveAll(resourceSet);
TreeIterator itr = EcoreUtil.getAllContents(resource, true);
while (itr.hasNext()) {
Object type_1 = itr.next();
if (type_1 instanceof EObject)
EcoreUtil.resolveAll((EObject)type_1);
if (type_1 instanceof NamedElement) {
NamedElement type = (NamedElement) type_1;
System.out.println(type.getName() + " : " + type.getAppliedStereotypes().size());
}
if (type_1 instanceof ProfileApplication) {
ProfileApplication type = (ProfileApplication) type_1;
System.out.println(type.getAppliedProfile().getName() + ":" + type.getAppliedProfile().eIsProxy() + " : " + type.getAppliedStereotypes().size()
+ " : " + type.getAppliedProfile().getOwnedStereotypes().size());
}
if (type_1 instanceof AnyTypeImpl) {
System.out.println("AnyType : " + ((AnyTypeImpl)type_1).toString());
}
System.out.println(type_1.toString());
}
}
]]>