/** */ package satellite.impl; import org.eclipse.emf.ecore.EAttribute; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.ecore.EReference; import org.eclipse.emf.ecore.impl.EPackageImpl; import satellite.CommSubsystem; import satellite.CommunicatingElement; import satellite.ConstellationMission; import satellite.CubeSat; import satellite.CubeSat3U; import satellite.CubeSat6U; import satellite.GroundStationNetwork; import satellite.InterferometryMission; import satellite.InterferometryPayload; import satellite.KaCommSubsystem; import satellite.Payload; import satellite.SatelliteFactory; import satellite.SatellitePackage; import satellite.SmallSat; import satellite.Spacecraft; import satellite.UHFCommSubsystem; import satellite.XCommSubsystem; /** * * An implementation of the model Package. * * @generated */ public class SatellitePackageImpl extends EPackageImpl implements SatellitePackage { /** * * * @generated */ private EClass constellationMissionEClass = null; /** * * * @generated */ private EClass interferometryMissionEClass = null; /** * * * @generated */ private EClass communicatingElementEClass = null; /** * * * @generated */ private EClass groundStationNetworkEClass = null; /** * * * @generated */ private EClass spacecraftEClass = null; /** * * * @generated */ private EClass commSubsystemEClass = null; /** * * * @generated */ private EClass payloadEClass = null; /** * * * @generated */ private EClass interferometryPayloadEClass = null; /** * * * @generated */ private EClass cubeSat3UEClass = null; /** * * * @generated */ private EClass cubeSat6UEClass = null; /** * * * @generated */ private EClass smallSatEClass = null; /** * * * @generated */ private EClass cubeSatEClass = null; /** * * * @generated */ private EClass uhfCommSubsystemEClass = null; /** * * * @generated */ private EClass xCommSubsystemEClass = null; /** * * * @generated */ private EClass kaCommSubsystemEClass = null; /** * Creates an instance of the model Package, registered with * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package * package URI value. *

Note: the correct way to create the package is via the static * factory method {@link #init init()}, which also performs * initialization of the package, or returns the registered package, * if one already exists. * * * @see org.eclipse.emf.ecore.EPackage.Registry * @see satellite.SatellitePackage#eNS_URI * @see #init() * @generated */ private SatellitePackageImpl() { super(eNS_URI, SatelliteFactory.eINSTANCE); } /** * * * @generated */ private static boolean isInited = false; /** * Creates, registers, and initializes the Package for this model, and for any others upon which it depends. * *

This method is used to initialize {@link SatellitePackage#eINSTANCE} when that field is accessed. * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. * * * @see #eNS_URI * @see #createPackageContents() * @see #initializePackageContents() * @generated */ public static SatellitePackage init() { if (isInited) return (SatellitePackage) EPackage.Registry.INSTANCE.getEPackage(SatellitePackage.eNS_URI); // Obtain or create and register package Object registeredSatellitePackage = EPackage.Registry.INSTANCE.get(eNS_URI); SatellitePackageImpl theSatellitePackage = registeredSatellitePackage instanceof SatellitePackageImpl ? (SatellitePackageImpl) registeredSatellitePackage : new SatellitePackageImpl(); isInited = true; // Create package meta-data objects theSatellitePackage.createPackageContents(); // Initialize created meta-data theSatellitePackage.initializePackageContents(); // Mark meta-data to indicate it can't be changed theSatellitePackage.freeze(); // Update the registry and return the package EPackage.Registry.INSTANCE.put(SatellitePackage.eNS_URI, theSatellitePackage); return theSatellitePackage; } /** * * * @generated */ @Override public EClass getConstellationMission() { return constellationMissionEClass; } /** * * * @generated */ @Override public EReference getConstellationMission_GroundStationNetwork() { return (EReference) constellationMissionEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ @Override public EReference getConstellationMission_Spacecraft() { return (EReference) constellationMissionEClass.getEStructuralFeatures().get(1); } /** * * * @generated */ @Override public EClass getInterferometryMission() { return interferometryMissionEClass; } /** * * * @generated */ @Override public EAttribute getInterferometryMission_ObservationTime() { return (EAttribute) interferometryMissionEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ @Override public EClass getCommunicatingElement() { return communicatingElementEClass; } /** * * * @generated */ @Override public EReference getCommunicatingElement_CommSubsystem() { return (EReference) communicatingElementEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ @Override public EClass getGroundStationNetwork() { return groundStationNetworkEClass; } /** * * * @generated */ @Override public EClass getSpacecraft() { return spacecraftEClass; } /** * * * @generated */ @Override public EReference getSpacecraft_Payload() { return (EReference) spacecraftEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ @Override public EClass getCommSubsystem() { return commSubsystemEClass; } /** * * * @generated */ @Override public EReference getCommSubsystem_Target() { return (EReference) commSubsystemEClass.getEStructuralFeatures().get(0); } /** * * * @generated */ @Override public EReference getCommSubsystem_Source() { return (EReference) commSubsystemEClass.getEStructuralFeatures().get(1); } /** * * * @generated */ @Override public EClass getPayload() { return payloadEClass; } /** * * * @generated */ @Override public EClass getInterferometryPayload() { return interferometryPayloadEClass; } /** * * * @generated */ @Override public EClass getCubeSat3U() { return cubeSat3UEClass; } /** * * * @generated */ @Override public EClass getCubeSat6U() { return cubeSat6UEClass; } /** * * * @generated */ @Override public EClass getSmallSat() { return smallSatEClass; } /** * * * @generated */ @Override public EClass getCubeSat() { return cubeSatEClass; } /** * * * @generated */ @Override public EClass getUHFCommSubsystem() { return uhfCommSubsystemEClass; } /** * * * @generated */ @Override public EClass getXCommSubsystem() { return xCommSubsystemEClass; } /** * * * @generated */ @Override public EClass getKaCommSubsystem() { return kaCommSubsystemEClass; } /** * * * @generated */ @Override public SatelliteFactory getSatelliteFactory() { return (SatelliteFactory) getEFactoryInstance(); } /** * * * @generated */ private boolean isCreated = false; /** * Creates the meta-model objects for the package. This method is * guarded to have no affect on any invocation but its first. * * * @generated */ public void createPackageContents() { if (isCreated) return; isCreated = true; // Create classes and their features constellationMissionEClass = createEClass(CONSTELLATION_MISSION); createEReference(constellationMissionEClass, CONSTELLATION_MISSION__GROUND_STATION_NETWORK); createEReference(constellationMissionEClass, CONSTELLATION_MISSION__SPACECRAFT); interferometryMissionEClass = createEClass(INTERFEROMETRY_MISSION); createEAttribute(interferometryMissionEClass, INTERFEROMETRY_MISSION__OBSERVATION_TIME); communicatingElementEClass = createEClass(COMMUNICATING_ELEMENT); createEReference(communicatingElementEClass, COMMUNICATING_ELEMENT__COMM_SUBSYSTEM); groundStationNetworkEClass = createEClass(GROUND_STATION_NETWORK); spacecraftEClass = createEClass(SPACECRAFT); createEReference(spacecraftEClass, SPACECRAFT__PAYLOAD); commSubsystemEClass = createEClass(COMM_SUBSYSTEM); createEReference(commSubsystemEClass, COMM_SUBSYSTEM__TARGET); createEReference(commSubsystemEClass, COMM_SUBSYSTEM__SOURCE); payloadEClass = createEClass(PAYLOAD); interferometryPayloadEClass = createEClass(INTERFEROMETRY_PAYLOAD); cubeSat3UEClass = createEClass(CUBE_SAT3_U); cubeSat6UEClass = createEClass(CUBE_SAT6_U); smallSatEClass = createEClass(SMALL_SAT); cubeSatEClass = createEClass(CUBE_SAT); uhfCommSubsystemEClass = createEClass(UHF_COMM_SUBSYSTEM); xCommSubsystemEClass = createEClass(XCOMM_SUBSYSTEM); kaCommSubsystemEClass = createEClass(KA_COMM_SUBSYSTEM); } /** * * * @generated */ private boolean isInitialized = false; /** * Complete the initialization of the package and its meta-model. This * method is guarded to have no affect on any invocation but its first. * * * @generated */ public void initializePackageContents() { if (isInitialized) return; isInitialized = true; // Initialize package setName(eNAME); setNsPrefix(eNS_PREFIX); setNsURI(eNS_URI); // Create type parameters // Set bounds for type parameters // Add supertypes to classes interferometryMissionEClass.getESuperTypes().add(this.getConstellationMission()); groundStationNetworkEClass.getESuperTypes().add(this.getCommunicatingElement()); spacecraftEClass.getESuperTypes().add(this.getCommunicatingElement()); interferometryPayloadEClass.getESuperTypes().add(this.getPayload()); cubeSat3UEClass.getESuperTypes().add(this.getCubeSat()); cubeSat6UEClass.getESuperTypes().add(this.getCubeSat()); smallSatEClass.getESuperTypes().add(this.getSpacecraft()); cubeSatEClass.getESuperTypes().add(this.getSpacecraft()); uhfCommSubsystemEClass.getESuperTypes().add(this.getCommSubsystem()); xCommSubsystemEClass.getESuperTypes().add(this.getCommSubsystem()); kaCommSubsystemEClass.getESuperTypes().add(this.getCommSubsystem()); // Initialize classes, features, and operations; add parameters initEClass(constellationMissionEClass, ConstellationMission.class, "ConstellationMission", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getConstellationMission_GroundStationNetwork(), this.getGroundStationNetwork(), null, "groundStationNetwork", null, 1, 1, ConstellationMission.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getConstellationMission_Spacecraft(), this.getSpacecraft(), null, "spacecraft", null, 2, 50, ConstellationMission.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(interferometryMissionEClass, InterferometryMission.class, "InterferometryMission", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getInterferometryMission_ObservationTime(), ecorePackage.getEFloat(), "observationTime", "2.0", 1, 1, InterferometryMission.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(communicatingElementEClass, CommunicatingElement.class, "CommunicatingElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getCommunicatingElement_CommSubsystem(), this.getCommSubsystem(), null, "commSubsystem", null, 1, 2, CommunicatingElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(groundStationNetworkEClass, GroundStationNetwork.class, "GroundStationNetwork", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(spacecraftEClass, Spacecraft.class, "Spacecraft", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getSpacecraft_Payload(), this.getPayload(), null, "payload", null, 0, 1, Spacecraft.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(commSubsystemEClass, CommSubsystem.class, "CommSubsystem", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getCommSubsystem_Target(), this.getCommSubsystem(), this.getCommSubsystem_Source(), "target", null, 0, 1, CommSubsystem.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getCommSubsystem_Source(), this.getCommSubsystem(), this.getCommSubsystem_Target(), "source", null, 0, -1, CommSubsystem.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(payloadEClass, Payload.class, "Payload", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(interferometryPayloadEClass, InterferometryPayload.class, "InterferometryPayload", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(cubeSat3UEClass, CubeSat3U.class, "CubeSat3U", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(cubeSat6UEClass, CubeSat6U.class, "CubeSat6U", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(smallSatEClass, SmallSat.class, "SmallSat", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(cubeSatEClass, CubeSat.class, "CubeSat", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(uhfCommSubsystemEClass, UHFCommSubsystem.class, "UHFCommSubsystem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(xCommSubsystemEClass, XCommSubsystem.class, "XCommSubsystem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(kaCommSubsystemEClass, KaCommSubsystem.class, "KaCommSubsystem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); // Create resource createResource(eNS_URI); } } //SatellitePackageImpl