/** * Generated by the MOIN Generator Version 3.0 **/ package com.sap.tc.moin.packageA0C291E809A9A1775514583F554D3E47D6E06046; import org.eclipse.emf.ecore.EObject; public final class MetamodelExtension implements com.sap.tc.moin.repository.metamodels.DeploymentExtension { private java.util.List<java.lang.String> mofIds; private java.util.List<java.lang.String> jmiClasses; private java.util.Map<java.lang.String, java.lang.String> mofIdToClassMapping; private java.util.Map<java.lang.String, java.lang.String> nameToClassMapping; private java.util.Map<java.lang.String, java.util.List<java.lang.String>> mofIdToQualifiedNameMapping; private java.util.Map<java.lang.String, java.util.Set<java.lang.String>> typeToSupertypeMapping; public MetamodelExtension() { // empty } public void startup() { // nothing } public void shutdown() { // nothing } public java.util.Map<java.lang.String, java.lang.String> getMofIDClassNameMapping( ) { synchronized(this) { if ( mofIdToClassMapping == null ) { initRecord( ); } } return mofIdToClassMapping; } public java.util.Map<java.lang.String, java.lang.String> getNameClassNameMapping( ) { synchronized(this) { if ( nameToClassMapping == null ) { initRecord( ); } } return nameToClassMapping; } public java.util.List<java.lang.String> getMofIdsOfContainedModelElements() { synchronized(this) { if ( mofIds == null ) { initModelElementNames(); } } return mofIds; } public java.util.List<java.lang.String> getAvailableClassNames() { synchronized(this) { if ( jmiClasses == null ) { initRecord( ); } } return jmiClasses; } public java.util.Map<java.lang.String, java.util.List<java.lang.String>> getMofIdQualifiedNameMapping() { synchronized(this) { if ( mofIdToQualifiedNameMapping == null ) { initRecord( ); } } return mofIdToQualifiedNameMapping; } public java.util.Map<java.lang.String, java.util.Set<java.lang.String>> getTypeToSupertypeMapping() { synchronized(this) { if ( typeToSupertypeMapping == null ) { initRecord( ); } } return typeToSupertypeMapping; } private void initRecord( ) { java.io.InputStream is = getClass( ).getClassLoader( ).getResourceAsStream( getClass( ).getPackage( ).getName( ).replace( '.', '/' ) + "/" + com.sap.tc.moin.repository.core.jmi.util.MetaModelExtensionRecordReaderWriter.EXTENSION_INDEX_NAME ); //$NON-NLS-1$ try { com.sap.tc.moin.repository.core.jmi.util.MetaModelExtensionRecord rec = com.sap.tc.moin.repository.core.jmi.util.MetaModelExtensionRecordReaderWriter.readMetaModelExtensionRecord( is ); this.mofIdToClassMapping = java.util.Collections.unmodifiableMap(rec.getMofIdClassNameMap( )); this.nameToClassMapping = java.util.Collections.unmodifiableMap(rec.getNameClassNameMap( )); this.jmiClasses = java.util.Collections.unmodifiableList( rec.getJmiClasses() ); this.mofIdToQualifiedNameMapping = java.util.Collections.unmodifiableMap( rec.getMofIdToQualifiedNameMapping( )); this.typeToSupertypeMapping = java.util.Collections.unmodifiableMap( rec.getTypeMofIdToSuperTypesMapping( )); } catch ( java.io.IOException e ) { throw new RuntimeException( e ); } finally { try { is.close(); } catch ( java.io.IOException e ) { throw new RuntimeException(e); } } } private void initModelElementNames() { java.io.InputStream is = getClass( ).getClassLoader( ).getResourceAsStream( getClass( ).getPackage( ).getName( ).replace( '.', '/' ) + "/" + com.sap.tc.moin.repository.core.jmi.util.MetaModelExtensionRecordReaderWriter.NAMES_INDEX_NAME ); //$NON-NLS-1$ try { this.mofIds = com.sap.tc.moin.repository.core.jmi.util.MetaModelExtensionRecordReaderWriter.readElementNames( is ); } catch ( java.io.IOException e ) { throw new RuntimeException( e ); } finally { try { is.close(); } catch ( java.io.IOException e ) { throw new RuntimeException(e); } } } public java.lang.Class<EObject> getJmiClass(java.lang.String className) throws java.lang.ClassNotFoundException { return (java.lang.Class<EObject>)java.lang.Class.forName(className); } public java.lang.String getVersion() { return "MetaModelExtension Version 1.1"; //$NON-NLS-1$ } public com.sap.tc.moin.repository.Version getCoreRuntimeVersion() { return new com.sap.tc.moin.repository.core.jmi.util.VersionImpl(9, 0); } }