diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..f51caa61446b8b609169a406392f3ceca960700c --- /dev/null +++ b/.gitignore @@ -0,0 +1,161 @@ + +# Created by https://www.toptal.com/developers/gitignore/api/linux,windows,macos,eclipse,java +# Edit at https://www.toptal.com/developers/gitignore?templates=linux,windows,macos,eclipse,java + +### Eclipse ### +.metadata +bin/ +tmp/ +*.tmp +*.bak +*.swp +*~.nib +local.properties +.settings/ +.loadpath +.recommenders + +# External tool builders +.externalToolBuilders/ + +# Locally stored "Eclipse launch configurations" +*.launch + +# PyDev specific (Python IDE for Eclipse) +*.pydevproject + +# CDT-specific (C/C++ Development Tooling) +.cproject + +# CDT- autotools +.autotools + +# Java annotation processor (APT) +.factorypath + +# PDT-specific (PHP Development Tools) +.buildpath + +# sbteclipse plugin +.target + +# Tern plugin +.tern-project + +# TeXlipse plugin +.texlipse + +# STS (Spring Tool Suite) +.springBeans + +# Code Recommenders +.recommenders/ + +# Annotation Processing +.apt_generated/ +.apt_generated_test/ + +# Scala IDE specific (Scala & Java development for Eclipse) +.cache-main +.scala_dependencies +.worksheet + +# Uncomment this line if you wish to ignore the project description file. +# Typically, this file would be tracked if it contains build/dependency configurations: +#.project + +### Java ### +# Compiled class file +*.class + +# Log file +*.log + +# BlueJ files +*.ctxt + +# Mobile Tools for Java (J2ME) +.mtj.tmp/ + +# Package Files # +*.jar +*.war +*.nar +*.ear +*.zip +*.tar.gz +*.rar + +# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml +hs_err_pid* + +### Linux ### +*~ + +# temporary files which can be created if a process still has a handle open of a deleted file +.fuse_hidden* + +# KDE directory preferences +.directory + +# Linux trash folder which might appear on any partition or disk +.Trash-* + +# .nfs files are created when an open file is removed but is still being accessed +.nfs* + +### macOS ### +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +### Windows ### +# Windows thumbnail cache files +Thumbs.db +Thumbs.db:encryptable +ehthumbs.db +ehthumbs_vista.db + +# Dump file +*.stackdump + +# Folder config file +[Dd]esktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Windows Installer files +*.cab +*.msi +*.msix +*.msm +*.msp + +# Windows shortcuts +*.lnk + +# End of https://www.toptal.com/developers/gitignore/api/linux,windows,macos,eclipse,java \ No newline at end of file diff --git a/org.example.democatalog.edit/.classpath b/org.example.democatalog.edit/.classpath new file mode 100644 index 0000000000000000000000000000000000000000..004db3fba2030fa6e0a7da16a467101b8a4f95d6 --- /dev/null +++ b/org.example.democatalog.edit/.classpath @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="src" path="src-gen"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/org.example.democatalog.edit/.project b/org.example.democatalog.edit/.project new file mode 100644 index 0000000000000000000000000000000000000000..b5a3ff46190bd4572f9088bd6e2caedcf71d3e2f --- /dev/null +++ b/org.example.democatalog.edit/.project @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.example.democatalog.edit</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.pde.PluginNature</nature> + </natures> +</projectDescription> diff --git a/org.example.democatalog.edit/META-INF/MANIFEST.MF b/org.example.democatalog.edit/META-INF/MANIFEST.MF new file mode 100644 index 0000000000000000000000000000000000000000..fd22dd90495c90e76527138036aa1b10167c4975 --- /dev/null +++ b/org.example.democatalog.edit/META-INF/MANIFEST.MF @@ -0,0 +1,16 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: %pluginName +Bundle-SymbolicName: org.example.democatalog.edit;singleton:=true +Automatic-Module-Name: org.example.democatalog.edit +Bundle-Version: 1.0.0.qualifier +Bundle-ClassPath: . +Bundle-Activator: org.example.democatalog.provider.DemocatalogEditPlugin$Implementation +Bundle-Vendor: %providerName +Bundle-Localization: plugin +Bundle-RequiredExecutionEnvironment: J2SE-1.5 +Export-Package: org.example.democatalog.provider +Require-Bundle: org.eclipse.core.runtime, + org.example.democatalog;visibility:=reexport, + org.eclipse.emf.edit;visibility:=reexport +Bundle-ActivationPolicy: lazy diff --git a/org.example.democatalog.edit/build.properties b/org.example.democatalog.edit/build.properties new file mode 100644 index 0000000000000000000000000000000000000000..a3c4e32afd5c06df8bd4f0d371e56479e0822559 --- /dev/null +++ b/org.example.democatalog.edit/build.properties @@ -0,0 +1,10 @@ +# + +bin.includes = .,\ + icons/,\ + META-INF/,\ + plugin.xml,\ + plugin.properties +jars.compile.order = . +source.. = src-gen/ +output.. = bin/ diff --git a/org.example.democatalog.edit/icons/full/obj16/Boiler.gif b/org.example.democatalog.edit/icons/full/obj16/Boiler.gif new file mode 100644 index 0000000000000000000000000000000000000000..420eee177528d9bd6d862c38d2a66c14835a6140 Binary files /dev/null and b/org.example.democatalog.edit/icons/full/obj16/Boiler.gif differ diff --git a/org.example.democatalog.edit/icons/full/obj16/ChemicalDevice.gif b/org.example.democatalog.edit/icons/full/obj16/ChemicalDevice.gif new file mode 100644 index 0000000000000000000000000000000000000000..8a5c70cbd74c87cb3b1df383e0c242ede4660c3b Binary files /dev/null and b/org.example.democatalog.edit/icons/full/obj16/ChemicalDevice.gif differ diff --git a/org.example.democatalog.edit/icons/full/obj16/CombinedHeatPower.gif b/org.example.democatalog.edit/icons/full/obj16/CombinedHeatPower.gif new file mode 100644 index 0000000000000000000000000000000000000000..db7414e937292c344d6fd0d0805085b67650f5c8 Binary files /dev/null and b/org.example.democatalog.edit/icons/full/obj16/CombinedHeatPower.gif differ diff --git a/org.example.democatalog.edit/icons/full/obj16/EnergyComponentCatalog.gif b/org.example.democatalog.edit/icons/full/obj16/EnergyComponentCatalog.gif new file mode 100644 index 0000000000000000000000000000000000000000..338fb8d9a728b682e398849d2038959d01b4e0f2 Binary files /dev/null and b/org.example.democatalog.edit/icons/full/obj16/EnergyComponentCatalog.gif differ diff --git a/org.example.democatalog.edit/icons/full/obj16/Inverter.gif b/org.example.democatalog.edit/icons/full/obj16/Inverter.gif new file mode 100644 index 0000000000000000000000000000000000000000..c4a8af418445186dec6bb4f750c13a832181fe76 Binary files /dev/null and b/org.example.democatalog.edit/icons/full/obj16/Inverter.gif differ diff --git a/org.example.democatalog.edit/icons/full/obj16/Manufacturer.gif b/org.example.democatalog.edit/icons/full/obj16/Manufacturer.gif new file mode 100644 index 0000000000000000000000000000000000000000..c3370c7ddd5e0817a59de6fd45ad0993b52abe28 Binary files /dev/null and b/org.example.democatalog.edit/icons/full/obj16/Manufacturer.gif differ diff --git a/org.example.democatalog.edit/icons/full/obj16/SolarPanel.gif b/org.example.democatalog.edit/icons/full/obj16/SolarPanel.gif new file mode 100644 index 0000000000000000000000000000000000000000..ef56c140853105ca812564e9b12a76413c8c3fb9 Binary files /dev/null and b/org.example.democatalog.edit/icons/full/obj16/SolarPanel.gif differ diff --git a/org.example.democatalog.edit/plugin.properties b/org.example.democatalog.edit/plugin.properties new file mode 100644 index 0000000000000000000000000000000000000000..66f7d5079ae7f00de85e213f65629969a95eb637 --- /dev/null +++ b/org.example.democatalog.edit/plugin.properties @@ -0,0 +1,49 @@ +# + +pluginName = org.example.democatalog Edit Support +providerName = www.example.org + +_UI_CreateChild_text = {0} +_UI_CreateChild_text2 = {1} {0} +_UI_CreateChild_text3 = {1} +_UI_CreateChild_tooltip = Create New {0} Under {1} Feature +_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}. +_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent. + +_UI_PropertyDescriptor_description = The {0} of the {1} + +_UI_EnergyComponentCatalog_type = Energy Component Catalog +_UI_Boiler_type = Boiler +_UI_CombinedHeatPower_type = Combined Heat Power +_UI_SolarPanel_type = Solar Panel +_UI_Inverter_type = Inverter +_UI_Manufacturer_type = Manufacturer +_UI_ChemicalDevice_type = Chemical Device +_UI_EnergyComponent_type = Energy Component +_UI_ElectricalDevice_type = Electrical Device +_UI_Unknown_type = Object + +_UI_Unknown_datatype= Value + +_UI_EnergyComponentCatalog_author_feature = Author +_UI_EnergyComponentCatalog_boilers_feature = Boilers +_UI_EnergyComponentCatalog_chps_feature = Chps +_UI_EnergyComponentCatalog_solarPanels_feature = Solar Panels +_UI_EnergyComponentCatalog_inverters_feature = Inverters +_UI_EnergyComponentCatalog_manufacturers_feature = Manufacturers +_UI_Boiler_boilerType_feature = Boiler Type +_UI_CombinedHeatPower_thermalEfficiency_feature = Thermal Efficiency +_UI_SolarPanel_mppVoltage_feature = Mpp Voltage +_UI_SolarPanel_mppCurrent_feature = Mpp Current +_UI_Inverter_maxDCVoltage_feature = Max DC Voltage +_UI_Inverter_macDCCurrent_feature = Mac DC Current +_UI_Manufacturer_name_feature = Name +_UI_ChemicalDevice_installedThermalPower_feature = Installed Thermal Power +_UI_EnergyComponent_modelName_feature = Model Name +_UI_EnergyComponent_revisionYear_feature = Revision Year +_UI_EnergyComponent_producedBy_feature = Produced By +_UI_ElectricalDevice_nominalPower_feature = Nominal Power +_UI_Unknown_feature = Unspecified + +_UI_BoilerType_LowTemperature_literal = LowTemperature +_UI_BoilerType_Condensing_literal = Condensing diff --git a/org.example.democatalog.edit/plugin.xml b/org.example.democatalog.edit/plugin.xml new file mode 100644 index 0000000000000000000000000000000000000000..33d1b03f8c1c2eaa59d9bb2aa58dc64e3f28e914 --- /dev/null +++ b/org.example.democatalog.edit/plugin.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?eclipse version="3.0"?> + +<!-- +--> + +<plugin> + + <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories"> + <!-- @generated democatalog --> + <factory + uri="http://example.org/democatalog" + class="org.example.democatalog.provider.DemocatalogItemProviderAdapterFactory" + supportedTypes= + "org.eclipse.emf.edit.provider.IEditingDomainItemProvider + org.eclipse.emf.edit.provider.IStructuredItemContentProvider + org.eclipse.emf.edit.provider.ITreeItemContentProvider + org.eclipse.emf.edit.provider.IItemLabelProvider + org.eclipse.emf.edit.provider.IItemPropertySource"/> + </extension> + +</plugin> diff --git a/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/BoilerItemProvider.java b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/BoilerItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..4d8212faa5006397d1fc35e575589919e0dbae79 --- /dev/null +++ b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/BoilerItemProvider.java @@ -0,0 +1,133 @@ +/** + */ +package org.example.democatalog.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import org.example.democatalog.Boiler; +import org.example.democatalog.DemocatalogPackage; + +/** + * This is the item provider adapter for a {@link org.example.democatalog.Boiler} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class BoilerItemProvider extends ChemicalDeviceItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public BoilerItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addBoilerTypePropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Boiler Type feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addBoilerTypePropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), + getResourceLocator(), getString("_UI_Boiler_boilerType_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Boiler_boilerType_feature", + "_UI_Boiler_type"), + DemocatalogPackage.Literals.BOILER__BOILER_TYPE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This returns Boiler.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/Boiler")); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText(Object object) { + String label = ((Boiler) object).getModelName(); + return label == null || label.length() == 0 ? getString("_UI_Boiler_type") + : getString("_UI_Boiler_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(Boiler.class)) { + case DemocatalogPackage.BOILER__BOILER_TYPE: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + +} diff --git a/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/ChemicalDeviceItemProvider.java b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/ChemicalDeviceItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..32d375f147800890ed1e7ffc506704c6ccd94001 --- /dev/null +++ b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/ChemicalDeviceItemProvider.java @@ -0,0 +1,133 @@ +/** + */ +package org.example.democatalog.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import org.example.democatalog.ChemicalDevice; +import org.example.democatalog.DemocatalogPackage; + +/** + * This is the item provider adapter for a {@link org.example.democatalog.ChemicalDevice} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class ChemicalDeviceItemProvider extends EnergyComponentItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public ChemicalDeviceItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addInstalledThermalPowerPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Installed Thermal Power feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addInstalledThermalPowerPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), + getResourceLocator(), getString("_UI_ChemicalDevice_installedThermalPower_feature"), + getString("_UI_PropertyDescriptor_description", + "_UI_ChemicalDevice_installedThermalPower_feature", "_UI_ChemicalDevice_type"), + DemocatalogPackage.Literals.CHEMICAL_DEVICE__INSTALLED_THERMAL_POWER, true, false, false, + ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null)); + } + + /** + * This returns ChemicalDevice.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/ChemicalDevice")); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText(Object object) { + String label = ((ChemicalDevice) object).getModelName(); + return label == null || label.length() == 0 ? getString("_UI_ChemicalDevice_type") + : getString("_UI_ChemicalDevice_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(ChemicalDevice.class)) { + case DemocatalogPackage.CHEMICAL_DEVICE__INSTALLED_THERMAL_POWER: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + +} diff --git a/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/CombinedHeatPowerItemProvider.java b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/CombinedHeatPowerItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..f8505eb03efdde7091ad6a4c266b4453dd3b7a4f --- /dev/null +++ b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/CombinedHeatPowerItemProvider.java @@ -0,0 +1,133 @@ +/** + */ +package org.example.democatalog.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import org.example.democatalog.CombinedHeatPower; +import org.example.democatalog.DemocatalogPackage; + +/** + * This is the item provider adapter for a {@link org.example.democatalog.CombinedHeatPower} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class CombinedHeatPowerItemProvider extends ChemicalDeviceItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public CombinedHeatPowerItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addThermalEfficiencyPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Thermal Efficiency feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addThermalEfficiencyPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), + getResourceLocator(), getString("_UI_CombinedHeatPower_thermalEfficiency_feature"), + getString("_UI_PropertyDescriptor_description", + "_UI_CombinedHeatPower_thermalEfficiency_feature", "_UI_CombinedHeatPower_type"), + DemocatalogPackage.Literals.COMBINED_HEAT_POWER__THERMAL_EFFICIENCY, true, false, false, + ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null)); + } + + /** + * This returns CombinedHeatPower.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/CombinedHeatPower")); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText(Object object) { + String label = ((CombinedHeatPower) object).getModelName(); + return label == null || label.length() == 0 ? getString("_UI_CombinedHeatPower_type") + : getString("_UI_CombinedHeatPower_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(CombinedHeatPower.class)) { + case DemocatalogPackage.COMBINED_HEAT_POWER__THERMAL_EFFICIENCY: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + +} diff --git a/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/DemocatalogEditPlugin.java b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/DemocatalogEditPlugin.java new file mode 100644 index 0000000000000000000000000000000000000000..b080cb2d1faa5537e3a812a61c0cabace5b81f26 --- /dev/null +++ b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/DemocatalogEditPlugin.java @@ -0,0 +1,87 @@ +/** + */ +package org.example.democatalog.provider; + +import org.eclipse.emf.common.EMFPlugin; + +import org.eclipse.emf.common.util.ResourceLocator; + +/** + * This is the central singleton for the Democatalog edit plugin. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public final class DemocatalogEditPlugin extends EMFPlugin { + /** + * Keep track of the singleton. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final DemocatalogEditPlugin INSTANCE = new DemocatalogEditPlugin(); + + /** + * Keep track of the singleton. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static Implementation plugin; + + /** + * Create the instance. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public DemocatalogEditPlugin() { + super(new ResourceLocator[] {}); + } + + /** + * Returns the singleton instance of the Eclipse plugin. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the singleton instance. + * @generated + */ + @Override + public ResourceLocator getPluginResourceLocator() { + return plugin; + } + + /** + * Returns the singleton instance of the Eclipse plugin. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the singleton instance. + * @generated + */ + public static Implementation getPlugin() { + return plugin; + } + + /** + * The actual implementation of the Eclipse <b>Plugin</b>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static class Implementation extends EclipsePlugin { + /** + * Creates an instance. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Implementation() { + super(); + + // Remember the static instance. + // + plugin = this; + } + } + +} diff --git a/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/DemocatalogItemProviderAdapterFactory.java b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/DemocatalogItemProviderAdapterFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..7824a2c68df08af2322956326d6d50539df6a167 --- /dev/null +++ b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/DemocatalogItemProviderAdapterFactory.java @@ -0,0 +1,326 @@ +/** + */ +package org.example.democatalog.provider; + +import java.util.ArrayList; +import java.util.Collection; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.Notifier; + +import org.eclipse.emf.edit.provider.ChangeNotifier; +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.ComposedAdapterFactory; +import org.eclipse.emf.edit.provider.IChangeNotifier; +import org.eclipse.emf.edit.provider.IDisposable; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.INotifyChangedListener; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; + +import org.example.democatalog.util.DemocatalogAdapterFactory; + +/** + * This is the factory that is used to provide the interfaces needed to support Viewers. + * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}. + * The adapters also support Eclipse property sheets. + * Note that most of the adapters are shared among multiple instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class DemocatalogItemProviderAdapterFactory extends DemocatalogAdapterFactory + implements ComposeableAdapterFactory, IChangeNotifier, IDisposable { + /** + * This keeps track of the root adapter factory that delegates to this adapter factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ComposedAdapterFactory parentAdapterFactory; + + /** + * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IChangeNotifier changeNotifier = new ChangeNotifier(); + + /** + * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Collection<Object> supportedTypes = new ArrayList<Object>(); + + /** + * This constructs an instance. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public DemocatalogItemProviderAdapterFactory() { + supportedTypes.add(IEditingDomainItemProvider.class); + supportedTypes.add(IStructuredItemContentProvider.class); + supportedTypes.add(ITreeItemContentProvider.class); + supportedTypes.add(IItemLabelProvider.class); + supportedTypes.add(IItemPropertySource.class); + } + + /** + * This keeps track of the one adapter used for all {@link org.example.democatalog.EnergyComponentCatalog} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected EnergyComponentCatalogItemProvider energyComponentCatalogItemProvider; + + /** + * This creates an adapter for a {@link org.example.democatalog.EnergyComponentCatalog}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createEnergyComponentCatalogAdapter() { + if (energyComponentCatalogItemProvider == null) { + energyComponentCatalogItemProvider = new EnergyComponentCatalogItemProvider(this); + } + + return energyComponentCatalogItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link org.example.democatalog.Boiler} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected BoilerItemProvider boilerItemProvider; + + /** + * This creates an adapter for a {@link org.example.democatalog.Boiler}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createBoilerAdapter() { + if (boilerItemProvider == null) { + boilerItemProvider = new BoilerItemProvider(this); + } + + return boilerItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link org.example.democatalog.CombinedHeatPower} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected CombinedHeatPowerItemProvider combinedHeatPowerItemProvider; + + /** + * This creates an adapter for a {@link org.example.democatalog.CombinedHeatPower}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createCombinedHeatPowerAdapter() { + if (combinedHeatPowerItemProvider == null) { + combinedHeatPowerItemProvider = new CombinedHeatPowerItemProvider(this); + } + + return combinedHeatPowerItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link org.example.democatalog.SolarPanel} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected SolarPanelItemProvider solarPanelItemProvider; + + /** + * This creates an adapter for a {@link org.example.democatalog.SolarPanel}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createSolarPanelAdapter() { + if (solarPanelItemProvider == null) { + solarPanelItemProvider = new SolarPanelItemProvider(this); + } + + return solarPanelItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link org.example.democatalog.Inverter} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected InverterItemProvider inverterItemProvider; + + /** + * This creates an adapter for a {@link org.example.democatalog.Inverter}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createInverterAdapter() { + if (inverterItemProvider == null) { + inverterItemProvider = new InverterItemProvider(this); + } + + return inverterItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link org.example.democatalog.Manufacturer} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ManufacturerItemProvider manufacturerItemProvider; + + /** + * This creates an adapter for a {@link org.example.democatalog.Manufacturer}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createManufacturerAdapter() { + if (manufacturerItemProvider == null) { + manufacturerItemProvider = new ManufacturerItemProvider(this); + } + + return manufacturerItemProvider; + } + + /** + * This returns the root adapter factory that contains this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public ComposeableAdapterFactory getRootAdapterFactory() { + return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory(); + } + + /** + * This sets the composed adapter factory that contains this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) { + this.parentAdapterFactory = parentAdapterFactory; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isFactoryForType(Object type) { + return supportedTypes.contains(type) || super.isFactoryForType(type); + } + + /** + * This implementation substitutes the factory itself as the key for the adapter. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter adapt(Notifier notifier, Object type) { + return super.adapt(notifier, this); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object adapt(Object object, Object type) { + if (isFactoryForType(type)) { + Object adapter = super.adapt(object, type); + if (!(type instanceof Class<?>) || (((Class<?>) type).isInstance(adapter))) { + return adapter; + } + } + + return null; + } + + /** + * This adds a listener. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void addListener(INotifyChangedListener notifyChangedListener) { + changeNotifier.addListener(notifyChangedListener); + } + + /** + * This removes a listener. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void removeListener(INotifyChangedListener notifyChangedListener) { + changeNotifier.removeListener(notifyChangedListener); + } + + /** + * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void fireNotifyChanged(Notification notification) { + changeNotifier.fireNotifyChanged(notification); + + if (parentAdapterFactory != null) { + parentAdapterFactory.fireNotifyChanged(notification); + } + } + + /** + * This disposes all of the item providers created by this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void dispose() { + if (energyComponentCatalogItemProvider != null) + energyComponentCatalogItemProvider.dispose(); + if (boilerItemProvider != null) + boilerItemProvider.dispose(); + if (combinedHeatPowerItemProvider != null) + combinedHeatPowerItemProvider.dispose(); + if (solarPanelItemProvider != null) + solarPanelItemProvider.dispose(); + if (inverterItemProvider != null) + inverterItemProvider.dispose(); + if (manufacturerItemProvider != null) + manufacturerItemProvider.dispose(); + } + +} diff --git a/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/ElectricalDeviceItemProvider.java b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/ElectricalDeviceItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..762bfb65c5c635a58128d6bd9a12790af2815cda --- /dev/null +++ b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/ElectricalDeviceItemProvider.java @@ -0,0 +1,122 @@ +/** + */ +package org.example.democatalog.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import org.example.democatalog.DemocatalogPackage; +import org.example.democatalog.ElectricalDevice; + +/** + * This is the item provider adapter for a {@link org.example.democatalog.ElectricalDevice} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class ElectricalDeviceItemProvider extends EnergyComponentItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public ElectricalDeviceItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addNominalPowerPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Nominal Power feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNominalPowerPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_ElectricalDevice_nominalPower_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_ElectricalDevice_nominalPower_feature", + "_UI_ElectricalDevice_type"), + DemocatalogPackage.Literals.ELECTRICAL_DEVICE__NOMINAL_POWER, true, false, false, + ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText(Object object) { + String label = ((ElectricalDevice) object).getModelName(); + return label == null || label.length() == 0 ? getString("_UI_ElectricalDevice_type") + : getString("_UI_ElectricalDevice_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(ElectricalDevice.class)) { + case DemocatalogPackage.ELECTRICAL_DEVICE__NOMINAL_POWER: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + +} diff --git a/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/EnergyComponentCatalogItemProvider.java b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/EnergyComponentCatalogItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..aef1af3dcaa3e027ab31ad06e0fcb78bcffdf7f1 --- /dev/null +++ b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/EnergyComponentCatalogItemProvider.java @@ -0,0 +1,213 @@ +/** + */ +package org.example.democatalog.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import org.example.democatalog.DemocatalogFactory; +import org.example.democatalog.DemocatalogPackage; +import org.example.democatalog.EnergyComponentCatalog; + +/** + * This is the item provider adapter for a {@link org.example.democatalog.EnergyComponentCatalog} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class EnergyComponentCatalogItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EnergyComponentCatalogItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addAuthorPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Author feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addAuthorPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), + getResourceLocator(), getString("_UI_EnergyComponentCatalog_author_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_EnergyComponentCatalog_author_feature", + "_UI_EnergyComponentCatalog_type"), + DemocatalogPackage.Literals.ENERGY_COMPONENT_CATALOG__AUTHOR, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) { + if (childrenFeatures == null) { + super.getChildrenFeatures(object); + childrenFeatures.add(DemocatalogPackage.Literals.ENERGY_COMPONENT_CATALOG__BOILERS); + childrenFeatures.add(DemocatalogPackage.Literals.ENERGY_COMPONENT_CATALOG__CHPS); + childrenFeatures.add(DemocatalogPackage.Literals.ENERGY_COMPONENT_CATALOG__SOLAR_PANELS); + childrenFeatures.add(DemocatalogPackage.Literals.ENERGY_COMPONENT_CATALOG__INVERTERS); + childrenFeatures.add(DemocatalogPackage.Literals.ENERGY_COMPONENT_CATALOG__MANUFACTURERS); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature(Object object, Object child) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature(object, child); + } + + /** + * This returns EnergyComponentCatalog.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/EnergyComponentCatalog")); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText(Object object) { + String label = ((EnergyComponentCatalog) object).getAuthor(); + return label == null || label.length() == 0 ? getString("_UI_EnergyComponentCatalog_type") + : getString("_UI_EnergyComponentCatalog_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(EnergyComponentCatalog.class)) { + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__AUTHOR: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__BOILERS: + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__CHPS: + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__SOLAR_PANELS: + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__INVERTERS: + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__MANUFACTURERS: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + + newChildDescriptors.add(createChildParameter(DemocatalogPackage.Literals.ENERGY_COMPONENT_CATALOG__BOILERS, + DemocatalogFactory.eINSTANCE.createBoiler())); + + newChildDescriptors.add(createChildParameter(DemocatalogPackage.Literals.ENERGY_COMPONENT_CATALOG__CHPS, + DemocatalogFactory.eINSTANCE.createCombinedHeatPower())); + + newChildDescriptors.add(createChildParameter(DemocatalogPackage.Literals.ENERGY_COMPONENT_CATALOG__SOLAR_PANELS, + DemocatalogFactory.eINSTANCE.createSolarPanel())); + + newChildDescriptors.add(createChildParameter(DemocatalogPackage.Literals.ENERGY_COMPONENT_CATALOG__INVERTERS, + DemocatalogFactory.eINSTANCE.createInverter())); + + newChildDescriptors + .add(createChildParameter(DemocatalogPackage.Literals.ENERGY_COMPONENT_CATALOG__MANUFACTURERS, + DemocatalogFactory.eINSTANCE.createManufacturer())); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return DemocatalogEditPlugin.INSTANCE; + } + +} diff --git a/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/EnergyComponentItemProvider.java b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/EnergyComponentItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..7d38c28fb47a061deb1e5ddd52ea690d5cd34b49 --- /dev/null +++ b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/EnergyComponentItemProvider.java @@ -0,0 +1,177 @@ +/** + */ +package org.example.democatalog.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import org.example.democatalog.DemocatalogPackage; +import org.example.democatalog.EnergyComponent; + +/** + * This is the item provider adapter for a {@link org.example.democatalog.EnergyComponent} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class EnergyComponentItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EnergyComponentItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addModelNamePropertyDescriptor(object); + addRevisionYearPropertyDescriptor(object); + addProducedByPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Model Name feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addModelNamePropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), + getResourceLocator(), getString("_UI_EnergyComponent_modelName_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_EnergyComponent_modelName_feature", + "_UI_EnergyComponent_type"), + DemocatalogPackage.Literals.ENERGY_COMPONENT__MODEL_NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Revision Year feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRevisionYearPropertyDescriptor(Object object) { + itemPropertyDescriptors.add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(), + getString("_UI_EnergyComponent_revisionYear_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_EnergyComponent_revisionYear_feature", + "_UI_EnergyComponent_type"), + DemocatalogPackage.Literals.ENERGY_COMPONENT__REVISION_YEAR, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Produced By feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addProducedByPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), + getResourceLocator(), getString("_UI_EnergyComponent_producedBy_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_EnergyComponent_producedBy_feature", + "_UI_EnergyComponent_type"), + DemocatalogPackage.Literals.ENERGY_COMPONENT__PRODUCED_BY, true, false, true, null, null, + null)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText(Object object) { + String label = ((EnergyComponent) object).getModelName(); + return label == null || label.length() == 0 ? getString("_UI_EnergyComponent_type") + : getString("_UI_EnergyComponent_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(EnergyComponent.class)) { + case DemocatalogPackage.ENERGY_COMPONENT__MODEL_NAME: + case DemocatalogPackage.ENERGY_COMPONENT__REVISION_YEAR: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return DemocatalogEditPlugin.INSTANCE; + } + +} diff --git a/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/InverterItemProvider.java b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/InverterItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..c7e86b9d2316df77259e99322880b112b069022b --- /dev/null +++ b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/InverterItemProvider.java @@ -0,0 +1,151 @@ +/** + */ +package org.example.democatalog.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import org.example.democatalog.DemocatalogPackage; +import org.example.democatalog.Inverter; + +/** + * This is the item provider adapter for a {@link org.example.democatalog.Inverter} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class InverterItemProvider extends ElectricalDeviceItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public InverterItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addMaxDCVoltagePropertyDescriptor(object); + addMacDCCurrentPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Max DC Voltage feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addMaxDCVoltagePropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), + getResourceLocator(), getString("_UI_Inverter_maxDCVoltage_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Inverter_maxDCVoltage_feature", + "_UI_Inverter_type"), + DemocatalogPackage.Literals.INVERTER__MAX_DC_VOLTAGE, true, false, false, + ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Mac DC Current feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addMacDCCurrentPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), + getResourceLocator(), getString("_UI_Inverter_macDCCurrent_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Inverter_macDCCurrent_feature", + "_UI_Inverter_type"), + DemocatalogPackage.Literals.INVERTER__MAC_DC_CURRENT, true, false, false, + ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null)); + } + + /** + * This returns Inverter.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/Inverter")); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText(Object object) { + String label = ((Inverter) object).getModelName(); + return label == null || label.length() == 0 ? getString("_UI_Inverter_type") + : getString("_UI_Inverter_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(Inverter.class)) { + case DemocatalogPackage.INVERTER__MAX_DC_VOLTAGE: + case DemocatalogPackage.INVERTER__MAC_DC_CURRENT: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + +} diff --git a/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/ManufacturerItemProvider.java b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/ManufacturerItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..cec8ba2d3a1c26447c7899d504c5de790ade0f46 --- /dev/null +++ b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/ManufacturerItemProvider.java @@ -0,0 +1,153 @@ +/** + */ +package org.example.democatalog.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import org.example.democatalog.DemocatalogPackage; +import org.example.democatalog.Manufacturer; + +/** + * This is the item provider adapter for a {@link org.example.democatalog.Manufacturer} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class ManufacturerItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public ManufacturerItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addNamePropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Name feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNamePropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), + getResourceLocator(), getString("_UI_Manufacturer_name_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Manufacturer_name_feature", + "_UI_Manufacturer_type"), + DemocatalogPackage.Literals.MANUFACTURER__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This returns Manufacturer.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/Manufacturer")); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText(Object object) { + String label = ((Manufacturer) object).getName(); + return label == null || label.length() == 0 ? getString("_UI_Manufacturer_type") + : getString("_UI_Manufacturer_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(Manufacturer.class)) { + case DemocatalogPackage.MANUFACTURER__NAME: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return DemocatalogEditPlugin.INSTANCE; + } + +} diff --git a/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/SolarPanelItemProvider.java b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/SolarPanelItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..6b424dc905b7f84eb98ddcc72d89c25c08add816 --- /dev/null +++ b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/SolarPanelItemProvider.java @@ -0,0 +1,151 @@ +/** + */ +package org.example.democatalog.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import org.example.democatalog.DemocatalogPackage; +import org.example.democatalog.SolarPanel; + +/** + * This is the item provider adapter for a {@link org.example.democatalog.SolarPanel} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class SolarPanelItemProvider extends ElectricalDeviceItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public SolarPanelItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addMppVoltagePropertyDescriptor(object); + addMppCurrentPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Mpp Voltage feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addMppVoltagePropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), + getResourceLocator(), getString("_UI_SolarPanel_mppVoltage_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_SolarPanel_mppVoltage_feature", + "_UI_SolarPanel_type"), + DemocatalogPackage.Literals.SOLAR_PANEL__MPP_VOLTAGE, true, false, false, + ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Mpp Current feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addMppCurrentPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), + getResourceLocator(), getString("_UI_SolarPanel_mppCurrent_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_SolarPanel_mppCurrent_feature", + "_UI_SolarPanel_type"), + DemocatalogPackage.Literals.SOLAR_PANEL__MPP_CURRENT, true, false, false, + ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null)); + } + + /** + * This returns SolarPanel.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/SolarPanel")); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected boolean shouldComposeCreationImage() { + return true; + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText(Object object) { + String label = ((SolarPanel) object).getModelName(); + return label == null || label.length() == 0 ? getString("_UI_SolarPanel_type") + : getString("_UI_SolarPanel_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(SolarPanel.class)) { + case DemocatalogPackage.SOLAR_PANEL__MPP_VOLTAGE: + case DemocatalogPackage.SOLAR_PANEL__MPP_CURRENT: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + +} diff --git a/org.example.democatalog/.classpath b/org.example.democatalog/.classpath new file mode 100644 index 0000000000000000000000000000000000000000..9ecc2e8edf1b52afa539ab459e92e38b3eadc330 --- /dev/null +++ b/org.example.democatalog/.classpath @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="src" path="src-gen"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"> + <attributes> + <attribute name="module" value="true"/> + </attributes> + </classpathentry> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/org.example.democatalog/.project b/org.example.democatalog/.project new file mode 100644 index 0000000000000000000000000000000000000000..07aa22faa151e450999b5b33d8cae08e618f7f36 --- /dev/null +++ b/org.example.democatalog/.project @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.example.democatalog</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.sirius.nature.modelingproject</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.pde.PluginNature</nature> + </natures> +</projectDescription> diff --git a/org.example.democatalog/META-INF/MANIFEST.MF b/org.example.democatalog/META-INF/MANIFEST.MF new file mode 100644 index 0000000000000000000000000000000000000000..fe3c3bf71f172acafbe9b05e28f0d6dfbe58206c --- /dev/null +++ b/org.example.democatalog/META-INF/MANIFEST.MF @@ -0,0 +1,16 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: %pluginName +Bundle-SymbolicName: org.example.democatalog;singleton:=true +Automatic-Module-Name: org.example.democatalog +Bundle-Version: 0.1.0.qualifier +Bundle-ClassPath: . +Bundle-Vendor: %providerName +Bundle-Localization: plugin +Bundle-RequiredExecutionEnvironment: J2SE-1.5 +Export-Package: org.example.democatalog, + org.example.democatalog.impl, + org.example.democatalog.util +Require-Bundle: org.eclipse.emf.ecore;visibility:=reexport, + org.eclipse.core.runtime +Bundle-ActivationPolicy: lazy diff --git a/org.example.democatalog/build.properties b/org.example.democatalog/build.properties new file mode 100644 index 0000000000000000000000000000000000000000..697ca964527a545764d3a69847c122b371257973 --- /dev/null +++ b/org.example.democatalog/build.properties @@ -0,0 +1,10 @@ +# + +bin.includes = .,\ + model/,\ + META-INF/,\ + plugin.xml,\ + plugin.properties +jars.compile.order = . +source.. = src-gen/ +output.. = bin/ diff --git a/org.example.democatalog/model/democatalog.aird b/org.example.democatalog/model/democatalog.aird new file mode 100644 index 0000000000000000000000000000000000000000..998abe4e04f5f6bc534a4147611ec19006f2dde8 --- /dev/null +++ b/org.example.democatalog/model/democatalog.aird @@ -0,0 +1,767 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" xmlns:description_1="http://www.eclipse.org/sirius/diagram/description/1.1.0" xmlns:diagram="http://www.eclipse.org/sirius/diagram/1.1.0" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.3/notation" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" xmlns:viewpoint="http://www.eclipse.org/sirius/1.1.0" xsi:schemaLocation="http://www.eclipse.org/sirius/description/1.1.0 http://www.eclipse.org/sirius/1.1.0#//description http://www.eclipse.org/sirius/diagram/description/1.1.0 http://www.eclipse.org/sirius/diagram/1.1.0#//description http://www.eclipse.org/sirius/diagram/description/style/1.1.0 http://www.eclipse.org/sirius/diagram/1.1.0#//description/style"> + <viewpoint:DAnalysis uid="_HZnjoCHUEeuLPpz77IfmqA" selectedViews="_HikEQCHUEeuLPpz77IfmqA" version="14.3.1.202003261200"> + <semanticResources>democatalog.ecore</semanticResources> + <semanticResources>democatalog.genmodel</semanticResources> + <ownedViews xmi:type="viewpoint:DView" uid="_HikEQCHUEeuLPpz77IfmqA"> + <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']"/> + <ownedRepresentationDescriptors xmi:type="viewpoint:DRepresentationDescriptor" uid="_HkPfQCHUEeuLPpz77IfmqA" name="democatalog" repPath="#_Hji7sCHUEeuLPpz77IfmqA" changeId="19235c9b-0cc2-4f1a-9aa8-7069bd7e5fa2"> + <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> + <target xmi:type="ecore:EPackage" href="democatalog.ecore#/"/> + </ownedRepresentationDescriptors> + </ownedViews> + </viewpoint:DAnalysis> + <diagram:DSemanticDiagram uid="_Hji7sCHUEeuLPpz77IfmqA"> + <ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_HkiaMCHUEeuLPpz77IfmqA" source="GMF_DIAGRAMS"> + <data xmi:type="notation:Diagram" xmi:id="_HkiaMSHUEeuLPpz77IfmqA" type="Sirius" element="_Hji7sCHUEeuLPpz77IfmqA" measurementUnit="Pixel"> + <children xmi:type="notation:Node" xmi:id="_b6U2gCHzEeuUrYII4OYxLg" type="2003" element="_b6BUgCHzEeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_b6XSwCHzEeuUrYII4OYxLg" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_b6Yg4CHzEeuUrYII4OYxLg" type="7004"> + <children xmi:type="notation:Node" xmi:id="_eyq8oCHzEeuUrYII4OYxLg" type="3010" element="_eyjA0CHzEeuUrYII4OYxLg"> + <styles xmi:type="notation:FontStyle" xmi:id="_eyq8oSHzEeuUrYII4OYxLg" fontColor="2697711" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_eyq8oiHzEeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_b6Yg4SHzEeuUrYII4OYxLg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_b6Yg4iHzEeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_b6U2gSHzEeuUrYII4OYxLg" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_b6U2giHzEeuUrYII4OYxLg" x="323" y="28" width="135" height="71"/> + </children> + <children xmi:type="notation:Node" xmi:id="_i4KyYCHzEeuUrYII4OYxLg" type="2003" element="_i4Gg8CHzEeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_i4LZcCHzEeuUrYII4OYxLg" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_i4LZcSHzEeuUrYII4OYxLg" type="7004"> + <children xmi:type="notation:Node" xmi:id="_lQc4YCHzEeuUrYII4OYxLg" type="3010" element="_lQZ1ECHzEeuUrYII4OYxLg"> + <styles xmi:type="notation:FontStyle" xmi:id="_lQc4YSHzEeuUrYII4OYxLg" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_lQc4YiHzEeuUrYII4OYxLg"/> + </children> + <children xmi:type="notation:Node" xmi:id="_lhN4QCHzEeuUrYII4OYxLg" type="3010" element="_lhK08CHzEeuUrYII4OYxLg"> + <styles xmi:type="notation:FontStyle" xmi:id="_lhN4QSHzEeuUrYII4OYxLg" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_lhN4QiHzEeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_i4LZciHzEeuUrYII4OYxLg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_i4LZcyHzEeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_i4KyYSHzEeuUrYII4OYxLg" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_i4KyYiHzEeuUrYII4OYxLg" x="53" y="28" width="135" height="71"/> + </children> + <children xmi:type="notation:Node" xmi:id="_1jykACHzEeuUrYII4OYxLg" type="2003" element="_1ju5oCHzEeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_1jzLECHzEeuUrYII4OYxLg" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_1jzLESHzEeuUrYII4OYxLg" type="7004"> + <children xmi:type="notation:Node" xmi:id="_4jpnYCHzEeuUrYII4OYxLg" type="3010" element="_4jl9ACHzEeuUrYII4OYxLg"> + <styles xmi:type="notation:FontStyle" xmi:id="_4jpnYSHzEeuUrYII4OYxLg" fontColor="2697711" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_4jpnYiHzEeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_1jzLEiHzEeuUrYII4OYxLg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_1jzLEyHzEeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_1jykASHzEeuUrYII4OYxLg" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1jykAiHzEeuUrYII4OYxLg" x="21" y="188" width="135" height="71"/> + </children> + <children xmi:type="notation:Node" xmi:id="_9__UQCHzEeuUrYII4OYxLg" type="2003" element="_9_8Q8CHzEeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_9__UQyHzEeuUrYII4OYxLg" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_9__URCHzEeuUrYII4OYxLg" type="7004"> + <children xmi:type="notation:Node" xmi:id="_Mbc4QCH0EeuUrYII4OYxLg" type="3010" element="_MbZ08CH0EeuUrYII4OYxLg"> + <styles xmi:type="notation:FontStyle" xmi:id="_Mbc4QSH0EeuUrYII4OYxLg" fontColor="2697711" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_Mbc4QiH0EeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_9__URSHzEeuUrYII4OYxLg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_9__URiHzEeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_9__UQSHzEeuUrYII4OYxLg" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9__UQiHzEeuUrYII4OYxLg" x="172" y="188" width="135" height="71"/> + </children> + <children xmi:type="notation:Node" xmi:id="_CxCocCH0EeuUrYII4OYxLg" type="2003" element="_Cw_lICH0EeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_CxCocyH0EeuUrYII4OYxLg" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_CxDPgCH0EeuUrYII4OYxLg" type="7004"> + <children xmi:type="notation:Node" xmi:id="_SYAjACIEEeuUrYII4OYxLg" type="3010" element="_SXzusCIEEeuUrYII4OYxLg"> + <styles xmi:type="notation:FontStyle" xmi:id="_SYAjASIEEeuUrYII4OYxLg" fontColor="2697711" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_SYAjAiIEEeuUrYII4OYxLg"/> + </children> + <children xmi:type="notation:Node" xmi:id="_WL2oECIEEeuUrYII4OYxLg" type="3010" element="_WLv6YCIEEeuUrYII4OYxLg"> + <styles xmi:type="notation:FontStyle" xmi:id="_WL2oESIEEeuUrYII4OYxLg" fontColor="2697711" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_WL2oEiIEEeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_CxDPgSH0EeuUrYII4OYxLg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_CxDPgiH0EeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_CxCocSH0EeuUrYII4OYxLg" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CxCociH0EeuUrYII4OYxLg" x="323" y="188" width="135" height="71"/> + </children> + <children xmi:type="notation:Node" xmi:id="_C8fqgCH0EeuUrYII4OYxLg" type="2003" element="_C8cnMCH0EeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_C8gRkCH0EeuUrYII4OYxLg" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_C8gRkSH0EeuUrYII4OYxLg" type="7004"> + <children xmi:type="notation:Node" xmi:id="_h6GX4CIEEeuUrYII4OYxLg" type="3010" element="_h6CGcCIEEeuUrYII4OYxLg"> + <styles xmi:type="notation:FontStyle" xmi:id="_h6GX4SIEEeuUrYII4OYxLg" fontColor="2697711" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_h6GX4iIEEeuUrYII4OYxLg"/> + </children> + <children xmi:type="notation:Node" xmi:id="_n-YOgCIEEeuUrYII4OYxLg" type="3010" element="_n-UkICIEEeuUrYII4OYxLg"> + <styles xmi:type="notation:FontStyle" xmi:id="_n-YOgSIEEeuUrYII4OYxLg" fontColor="2697711" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_n-YOgiIEEeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_C8gRkiH0EeuUrYII4OYxLg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_C8gRkyH0EeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_C8fqgSH0EeuUrYII4OYxLg" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_C8fqgiH0EeuUrYII4OYxLg" x="474" y="188" width="135" height="71"/> + </children> + <children xmi:type="notation:Node" xmi:id="_DG_DQCH0EeuUrYII4OYxLg" type="2003" element="_DG7Y4CH0EeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_DG_DQyH0EeuUrYII4OYxLg" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_DG_DRCH0EeuUrYII4OYxLg" type="7004"> + <children xmi:type="notation:Node" xmi:id="_yuswwCH0EeuUrYII4OYxLg" type="3010" element="_yuptcCH0EeuUrYII4OYxLg"> + <styles xmi:type="notation:FontStyle" xmi:id="_yuswwSH0EeuUrYII4OYxLg" fontColor="2697711" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_yuswwiH0EeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_DG_DRSH0EeuUrYII4OYxLg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_DG_DRiH0EeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_DG_DQSH0EeuUrYII4OYxLg" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DG_DQiH0EeuUrYII4OYxLg" x="625" y="188" width="135" height="71"/> + </children> + <children xmi:type="notation:Node" xmi:id="_ohBb0CH0EeuUrYII4OYxLg" type="2003" element="_og9xcCH0EeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_ohBb0yH0EeuUrYII4OYxLg" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_ohBb1CH0EeuUrYII4OYxLg" type="7004"> + <children xmi:type="notation:Node" xmi:id="_sD5ssCH0EeuUrYII4OYxLg" type="3010" element="_sD2pYCH0EeuUrYII4OYxLg"> + <styles xmi:type="notation:FontStyle" xmi:id="_sD5ssSH0EeuUrYII4OYxLg" fontColor="2697711" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_sD5ssiH0EeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_ohBb1SH0EeuUrYII4OYxLg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_ohBb1iH0EeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_ohBb0SH0EeuUrYII4OYxLg" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ohBb0iH0EeuUrYII4OYxLg" x="100" y="292" width="135" height="71"/> + </children> + <children xmi:type="notation:Node" xmi:id="__ZYToCH0EeuUrYII4OYxLg" type="2003" element="__ZVQUCH0EeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="__ZYToyH0EeuUrYII4OYxLg" type="5007"/> + <children xmi:type="notation:Node" xmi:id="__ZY6sCH0EeuUrYII4OYxLg" type="7004"> + <children xmi:type="notation:Node" xmi:id="_BZX1cCH1EeuUrYII4OYxLg" type="3010" element="_BZULECH1EeuUrYII4OYxLg"> + <styles xmi:type="notation:FontStyle" xmi:id="_BZX1cSH1EeuUrYII4OYxLg" fontColor="2697711" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_BZX1ciH1EeuUrYII4OYxLg"/> + </children> + <children xmi:type="notation:Node" xmi:id="_DpPmUCH1EeuUrYII4OYxLg" type="3010" element="_DpL78CH1EeuUrYII4OYxLg"> + <styles xmi:type="notation:FontStyle" xmi:id="_DpPmUSH1EeuUrYII4OYxLg" fontColor="2697711" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_DpPmUiH1EeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="__ZY6sSH0EeuUrYII4OYxLg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="__ZY6siH0EeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="__ZYToSH0EeuUrYII4OYxLg" fontName=".AppleSystemUIFont" fontHeight="8" italic="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__ZYToiH0EeuUrYII4OYxLg" x="252" y="396" width="135" height="71"/> + </children> + <children xmi:type="notation:Node" xmi:id="_OINfkCH1EeuUrYII4OYxLg" type="2003" element="_OIJ1MCH1EeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_OINfkyH1EeuUrYII4OYxLg" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_OINflCH1EeuUrYII4OYxLg" type="7004"> + <children xmi:type="notation:Node" xmi:id="_Tc3QFiH1EeuUrYII4OYxLg" type="3010" element="_TczlsCH1EeuUrYII4OYxLg"> + <styles xmi:type="notation:FontStyle" xmi:id="_Tc3QFyH1EeuUrYII4OYxLg" fontColor="2697711" fontName=".AppleSystemUIFont" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_Tc3QGCH1EeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_OINflSH1EeuUrYII4OYxLg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_OINfliH1EeuUrYII4OYxLg"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_OINfkSH1EeuUrYII4OYxLg" fontName=".AppleSystemUIFont" fontHeight="8" italic="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OINfkiH1EeuUrYII4OYxLg" x="400" y="292" width="135" height="71"/> + </children> + <styles xmi:type="notation:DiagramStyle" xmi:id="_HkiaMiHUEeuLPpz77IfmqA"/> + <edges xmi:type="notation:Edge" xmi:id="_HQL30CH1EeuUrYII4OYxLg" type="4001" element="_HQGYQCH1EeuUrYII4OYxLg" source="__ZYToCH0EeuUrYII4OYxLg" target="_DG_DQCH0EeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_HQL31CH1EeuUrYII4OYxLg" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HQL31SH1EeuUrYII4OYxLg" x="-61" y="-9"/> + </children> + <children xmi:type="notation:Node" xmi:id="_HQL31iH1EeuUrYII4OYxLg" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HQL31yH1EeuUrYII4OYxLg" x="30" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_HQL32CH1EeuUrYII4OYxLg" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HQL32SH1EeuUrYII4OYxLg" x="-1" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_HQL30SH1EeuUrYII4OYxLg" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_HQL30iH1EeuUrYII4OYxLg" fontColor="7490599" fontName=".AppleSystemUIFont" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_HQL30yH1EeuUrYII4OYxLg" points="[15, -26, -272, 144]$[321, -26, 34, 144]$[321, -199, 34, -29]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HQL32iH1EeuUrYII4OYxLg" id="(0.8872180451127819,0.8695652173913043)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HQL32yH1EeuUrYII4OYxLg" id="(0.24060150375939848,1.4202898550724639)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_8No68CH1EeuUrYII4OYxLg" type="4001" element="_8Nl3oCH1EeuUrYII4OYxLg" source="_1jykACHzEeuUrYII4OYxLg" target="_ohBb0CH0EeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_8NpiACH1EeuUrYII4OYxLg" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8NpiASH1EeuUrYII4OYxLg" x="4" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_8NpiAiH1EeuUrYII4OYxLg" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8NpiAyH1EeuUrYII4OYxLg" x="13" y="-1"/> + </children> + <children xmi:type="notation:Node" xmi:id="_8NpiBCH1EeuUrYII4OYxLg" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8NpiBSH1EeuUrYII4OYxLg" x="-9" y="3"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_8No68SH1EeuUrYII4OYxLg" routing="Tree"/> + <styles xmi:type="notation:FontStyle" xmi:id="_8No68iH1EeuUrYII4OYxLg" fontName=".AppleSystemUIFont" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8No68yH1EeuUrYII4OYxLg" points="[0, 2, -75, -69]$[0, 21, -75, -50]$[76, 21, 1, -50]$[76, 37, 1, -34]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8NpiBiH1EeuUrYII4OYxLg" id="(0.5263157894736842,0.9710144927536232)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8NpiByH1EeuUrYII4OYxLg" id="(0.5,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_81zHICH1EeuUrYII4OYxLg" type="4001" element="_81wD1iH1EeuUrYII4OYxLg" source="_ohBb0CH0EeuUrYII4OYxLg" target="__ZYToCH0EeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_81zHJCH1EeuUrYII4OYxLg" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_81zHJSH1EeuUrYII4OYxLg" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_81zHJiH1EeuUrYII4OYxLg" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_81zHJyH1EeuUrYII4OYxLg" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_81zHKCH1EeuUrYII4OYxLg" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_81zHKSH1EeuUrYII4OYxLg" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_81zHISH1EeuUrYII4OYxLg" routing="Tree"/> + <styles xmi:type="notation:FontStyle" xmi:id="_81zHIiH1EeuUrYII4OYxLg" fontName=".AppleSystemUIFont" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_81zHIyH1EeuUrYII4OYxLg" points="[0, 0, -152, -55]$[152, 55, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_81zHKiH1EeuUrYII4OYxLg" id="(0.518796992481203,0.9710144927536232)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_81zuMCH1EeuUrYII4OYxLg" id="(0.5,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_9YhZsCH1EeuUrYII4OYxLg" type="4001" element="_9YdvUCH1EeuUrYII4OYxLg" source="_9__UQCHzEeuUrYII4OYxLg" target="_ohBb0CH0EeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_9YhZtCH1EeuUrYII4OYxLg" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9YhZtSH1EeuUrYII4OYxLg" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_9YhZtiH1EeuUrYII4OYxLg" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9YhZtyH1EeuUrYII4OYxLg" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_9YhZuCH1EeuUrYII4OYxLg" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9YhZuSH1EeuUrYII4OYxLg" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_9YhZsSH1EeuUrYII4OYxLg" routing="Tree"/> + <styles xmi:type="notation:FontStyle" xmi:id="_9YhZsiH1EeuUrYII4OYxLg" fontName=".AppleSystemUIFont" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9YhZsyH1EeuUrYII4OYxLg" points="[0, 0, 54, -51]$[-54, 51, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9YhZuiH1EeuUrYII4OYxLg" id="(0.5037593984962406,1.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9YhZuyH1EeuUrYII4OYxLg" id="(0.5,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_94RQwCH1EeuUrYII4OYxLg" type="4001" element="_94ONcCH1EeuUrYII4OYxLg" source="_CxCocCH0EeuUrYII4OYxLg" target="_OINfkCH1EeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_94RQxCH1EeuUrYII4OYxLg" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_94RQxSH1EeuUrYII4OYxLg" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_94RQxiH1EeuUrYII4OYxLg" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_94RQxyH1EeuUrYII4OYxLg" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_94RQyCH1EeuUrYII4OYxLg" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_94RQySH1EeuUrYII4OYxLg" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_94RQwSH1EeuUrYII4OYxLg" routing="Tree"/> + <styles xmi:type="notation:FontStyle" xmi:id="_94RQwiH1EeuUrYII4OYxLg" fontName=".AppleSystemUIFont" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_94RQwyH1EeuUrYII4OYxLg" points="[0, 0, -48, -51]$[48, 51, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_94RQyiH1EeuUrYII4OYxLg" id="(0.518796992481203,0.9710144927536232)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_94RQyyH1EeuUrYII4OYxLg" id="(0.5,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_-QTWQCH1EeuUrYII4OYxLg" type="4001" element="_-QPr-CH1EeuUrYII4OYxLg" source="_C8fqgCH0EeuUrYII4OYxLg" target="_OINfkCH1EeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_-QTWRCH1EeuUrYII4OYxLg" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-QTWRSH1EeuUrYII4OYxLg" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_-QTWRiH1EeuUrYII4OYxLg" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-QTWRyH1EeuUrYII4OYxLg" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_-QTWSCH1EeuUrYII4OYxLg" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-QTWSSH1EeuUrYII4OYxLg" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_-QTWQSH1EeuUrYII4OYxLg" routing="Tree"/> + <styles xmi:type="notation:FontStyle" xmi:id="_-QTWQiH1EeuUrYII4OYxLg" fontName=".AppleSystemUIFont" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-QTWQyH1EeuUrYII4OYxLg" points="[0, 0, 67, -51]$[-67, 51, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-QTWSiH1EeuUrYII4OYxLg" id="(0.5037593984962406,1.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-QTWSyH1EeuUrYII4OYxLg" id="(0.5,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="__JhdQCH1EeuUrYII4OYxLg" type="4001" element="__Jdy9SH1EeuUrYII4OYxLg" source="_OINfkCH1EeuUrYII4OYxLg" target="__ZYToCH0EeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="__JhdRCH1EeuUrYII4OYxLg" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__JhdRSH1EeuUrYII4OYxLg" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="__JhdRiH1EeuUrYII4OYxLg" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__JhdRyH1EeuUrYII4OYxLg" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="__JhdSCH1EeuUrYII4OYxLg" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__JhdSSH1EeuUrYII4OYxLg" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="__JhdQSH1EeuUrYII4OYxLg" routing="Tree"/> + <styles xmi:type="notation:FontStyle" xmi:id="__JhdQiH1EeuUrYII4OYxLg" fontName=".AppleSystemUIFont" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__JhdQyH1EeuUrYII4OYxLg" points="[0, 0, 165, -55]$[-165, 55, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__JhdSiH1EeuUrYII4OYxLg" id="(0.5263157894736842,0.9710144927536232)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__JhdSyH1EeuUrYII4OYxLg" id="(0.5,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_ZBGfQCH2EeuUrYII4OYxLg" type="4001" element="_ZBBmwCH2EeuUrYII4OYxLg" source="_b6U2gCHzEeuUrYII4OYxLg" target="_1jykACHzEeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_ZBGfRCH2EeuUrYII4OYxLg" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZBGfRSH2EeuUrYII4OYxLg" x="47" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_ZBGfRiH2EeuUrYII4OYxLg" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZBGfRyH2EeuUrYII4OYxLg" x="47" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_ZBGfSCH2EeuUrYII4OYxLg" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZBGfSSH2EeuUrYII4OYxLg" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_ZBGfQSH2EeuUrYII4OYxLg" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_ZBGfQiH2EeuUrYII4OYxLg" fontColor="7490599" fontName=".AppleSystemUIFont" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZBGfQyH2EeuUrYII4OYxLg" points="[-27, 1, 232, -91]$[-27, 24, 232, -68]$[-256, 24, 3, -68]$[-256, 92, 3, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZBGfSiH2EeuUrYII4OYxLg" id="(0.39097744360902253,0.9855072463768116)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZBGfSyH2EeuUrYII4OYxLg" id="(0.7142857142857143,0.0)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_caCxACH2EeuUrYII4OYxLg" type="4001" element="_cZ-fliH2EeuUrYII4OYxLg" source="_b6U2gCHzEeuUrYII4OYxLg" target="_9__UQCHzEeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_caCxBCH2EeuUrYII4OYxLg" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_caCxBSH2EeuUrYII4OYxLg" x="15" y="-9"/> + </children> + <children xmi:type="notation:Node" xmi:id="_caCxBiH2EeuUrYII4OYxLg" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_caCxByH2EeuUrYII4OYxLg" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_caCxCCH2EeuUrYII4OYxLg" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_caCxCSH2EeuUrYII4OYxLg" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_caCxASH2EeuUrYII4OYxLg" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_caCxAiH2EeuUrYII4OYxLg" fontColor="7490599" fontName=".AppleSystemUIFont" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_caCxAyH2EeuUrYII4OYxLg" points="[-4, 0, 116, -91]$[-4, 43, 116, -48]$[-120, 43, 0, -48]$[-120, 91, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_caDYECH2EeuUrYII4OYxLg" id="(0.3684210526315789,1.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_caDYESH2EeuUrYII4OYxLg" id="(0.6015037593984962,0.0)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_dAXKICH2EeuUrYII4OYxLg" type="4001" element="_dATfxiH2EeuUrYII4OYxLg" source="_b6U2gCHzEeuUrYII4OYxLg" target="_CxCocCH0EeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_dAXKJCH2EeuUrYII4OYxLg" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dAXKJSH2EeuUrYII4OYxLg" x="15" y="-14"/> + </children> + <children xmi:type="notation:Node" xmi:id="_dAXxMCH2EeuUrYII4OYxLg" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dAXxMSH2EeuUrYII4OYxLg" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_dAXxMiH2EeuUrYII4OYxLg" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dAXxMyH2EeuUrYII4OYxLg" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_dAXKISH2EeuUrYII4OYxLg" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_dAXKIiH2EeuUrYII4OYxLg" fontColor="7490599" fontName=".AppleSystemUIFont" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dAXKIyH2EeuUrYII4OYxLg" points="[-27, 0, -27, -91]$[-27, 91, -27, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dAXxNCH2EeuUrYII4OYxLg" id="(0.6992481203007519,1.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dAXxNSH2EeuUrYII4OYxLg" id="(0.6992481203007519,0.0)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_dcsg0CH2EeuUrYII4OYxLg" type="4001" element="_dcoPciH2EeuUrYII4OYxLg" source="_b6U2gCHzEeuUrYII4OYxLg" target="_C8fqgCH0EeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_dcsg1CH2EeuUrYII4OYxLg" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dcsg1SH2EeuUrYII4OYxLg" x="12" y="9"/> + </children> + <children xmi:type="notation:Node" xmi:id="_dcsg1iH2EeuUrYII4OYxLg" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dcsg1yH2EeuUrYII4OYxLg" x="18" y="-77"/> + </children> + <children xmi:type="notation:Node" xmi:id="_dcsg2CH2EeuUrYII4OYxLg" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dcsg2SH2EeuUrYII4OYxLg" x="-2" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_dcsg0SH2EeuUrYII4OYxLg" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_dcsg0iH2EeuUrYII4OYxLg" fontColor="7490599" fontName=".AppleSystemUIFont" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dcsg0yH2EeuUrYII4OYxLg" points="[-15, 0, -148, -91]$[-15, 39, -148, -52]$[105, 39, -28, -52]$[105, 91, -28, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dcsg2iH2EeuUrYII4OYxLg" id="(0.7819548872180451,1.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dcsg2yH2EeuUrYII4OYxLg" id="(0.6466165413533834,0.0)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_fG4xwCH2EeuUrYII4OYxLg" type="4001" element="_fG0gbiH2EeuUrYII4OYxLg" source="_b6U2gCHzEeuUrYII4OYxLg" target="_DG_DQCH0EeuUrYII4OYxLg"> + <children xmi:type="notation:Node" xmi:id="_fG4xxCH2EeuUrYII4OYxLg" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fG4xxSH2EeuUrYII4OYxLg" x="62" y="9"/> + </children> + <children xmi:type="notation:Node" xmi:id="_fG4xxiH2EeuUrYII4OYxLg" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fG4xxyH2EeuUrYII4OYxLg" x="55" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_fG4xyCH2EeuUrYII4OYxLg" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fG4xySH2EeuUrYII4OYxLg" x="-7" y="5"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_fG4xwSH2EeuUrYII4OYxLg" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_fG4xwiH2EeuUrYII4OYxLg" fontColor="7490599" fontName=".AppleSystemUIFont" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_fG4xwyH2EeuUrYII4OYxLg" points="[-24, 61, -272, -91]$[-24, 84, -272, -68]$[235, 84, -13, -68]$[235, 152, -13, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_fG4xyiH2EeuUrYII4OYxLg" id="(1.0,0.11594202898550725)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_fG4xyyH2EeuUrYII4OYxLg" id="(0.5939849624060151,0.0)"/> + </edges> + </data> + </ownedAnnotationEntries> + <ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_HlutACHUEeuLPpz77IfmqA" source="DANNOTATION_CUSTOMIZATION_KEY"> + <data xmi:type="diagram:ComputedStyleDescriptionRegistry" uid="_HlvUECHUEeuLPpz77IfmqA"> + <computedStyleDescriptions xmi:type="style:BundledImageDescription" xmi:id="_hEX5gCHzEeuUrYII4OYxLg" labelExpression="service:render" labelAlignment="LEFT" tooltipExpression="service:renderTooltip" sizeComputationExpression="1"> + <borderColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + <labelFormat>bold</labelFormat> + <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + <color xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + </computedStyleDescriptions> + <computedStyleDescriptions xmi:type="style:EdgeStyleDescription" xmi:id="_KUpuZiH1EeuUrYII4OYxLg" routingStyle="manhattan"> + <strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + <centerLabelStyleDescription xmi:type="style:CenterLabelStyleDescription" xmi:id="_KUpuZyH1EeuUrYII4OYxLg" showIcon="false" labelExpression="service:render"> + <labelFormat>bold</labelFormat> + <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + </centerLabelStyleDescription> + <endLabelStyleDescription xmi:type="style:EndLabelStyleDescription" xmi:id="_KUpuaCH1EeuUrYII4OYxLg" labelSize="6" showIcon="false" labelExpression="service:eKeysLabel"> + <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='dark_blue']"/> + </endLabelStyleDescription> + </computedStyleDescriptions> + <computedStyleDescriptions xmi:type="style:EdgeStyleDescription" xmi:id="_ZBBmwSH2EeuUrYII4OYxLg" sourceArrow="FillDiamond" routingStyle="manhattan"> + <strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + <centerLabelStyleDescription xmi:type="style:CenterLabelStyleDescription" xmi:id="_ZBBmwiH2EeuUrYII4OYxLg" showIcon="false" labelExpression="service:render"> + <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + </centerLabelStyleDescription> + <endLabelStyleDescription xmi:type="style:EndLabelStyleDescription" xmi:id="_ZBBmwyH2EeuUrYII4OYxLg" labelSize="6" showIcon="false" labelExpression="service:eKeysLabel"> + <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='dark_blue']"/> + </endLabelStyleDescription> + </computedStyleDescriptions> + </data> + </ownedAnnotationEntries> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_b6BUgCHzEeuUrYII4OYxLg" name="EnergyComponentCatalog" tooltipText="" outgoingEdges="_ZBBmwCH2EeuUrYII4OYxLg _cZ-fliH2EeuUrYII4OYxLg _dATfxiH2EeuUrYII4OYxLg _dcoPciH2EeuUrYII4OYxLg _fG0gbiH2EeuUrYII4OYxLg" width="12" height="10"> + <target xmi:type="ecore:EClass" href="democatalog.ecore#//EnergyComponentCatalog"/> + <semanticElements xmi:type="ecore:EClass" href="democatalog.ecore#//EnergyComponentCatalog"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_ggV_YSHzEeuUrYII4OYxLg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_eyjA0CHzEeuUrYII4OYxLg" name="author : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="democatalog.ecore#//EnergyComponentCatalog/author"/> + <semanticElements xmi:type="ecore:EAttribute" href="democatalog.ecore#//EnergyComponentCatalog/author"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_hEYgkCHzEeuUrYII4OYxLg" labelAlignment="LEFT" description="_hEX5gCHzEeuUrYII4OYxLg"> + <labelFormat>bold</labelFormat> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_i4Gg8CHzEeuUrYII4OYxLg" name="BoilerType" tooltipText="" width="12" height="10"> + <target xmi:type="ecore:EEnum" href="democatalog.ecore#//BoilerType"/> + <semanticElements xmi:type="ecore:EEnum" href="democatalog.ecore#//BoilerType"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_i4HIACHzEeuUrYII4OYxLg" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="221,236,202"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EEnum']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EEnum']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_lQZ1ECHzEeuUrYII4OYxLg" name="LowTemperature" tooltipText=""> + <target xmi:type="ecore:EEnumLiteral" href="democatalog.ecore#//BoilerType/LowTemperature"/> + <semanticElements xmi:type="ecore:EEnumLiteral" href="democatalog.ecore#//BoilerType/LowTemperature"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_lQZ1ESHzEeuUrYII4OYxLg" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EEnum']/@subNodeMappings[name='EC%20EEnumLiteral']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EEnum']/@subNodeMappings[name='EC%20EEnumLiteral']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_lhK08CHzEeuUrYII4OYxLg" name="Condensing" tooltipText=""> + <target xmi:type="ecore:EEnumLiteral" href="democatalog.ecore#//BoilerType/Condensing"/> + <semanticElements xmi:type="ecore:EEnumLiteral" href="democatalog.ecore#//BoilerType/Condensing"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_lhLcACHzEeuUrYII4OYxLg" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EEnum']/@subNodeMappings[name='EC%20EEnumLiteral']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EEnum']/@subNodeMappings[name='EC%20EEnumLiteral']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_1ju5oCHzEeuUrYII4OYxLg" name="Boiler" tooltipText="" outgoingEdges="_8Nl3oCH1EeuUrYII4OYxLg" incomingEdges="_ZBBmwCH2EeuUrYII4OYxLg" width="12" height="10"> + <target xmi:type="ecore:EClass" href="democatalog.ecore#//Boiler"/> + <semanticElements xmi:type="ecore:EClass" href="democatalog.ecore#//Boiler"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_7kSG0SHzEeuUrYII4OYxLg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_4jl9ACHzEeuUrYII4OYxLg" name="boilerType : BoilerType = LowTemperature" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="democatalog.ecore#//Boiler/boilerType"/> + <semanticElements xmi:type="ecore:EAttribute" href="democatalog.ecore#//Boiler/boilerType"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_854n0iHzEeuUrYII4OYxLg" labelAlignment="LEFT" description="_hEX5gCHzEeuUrYII4OYxLg"> + <labelFormat>bold</labelFormat> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_9_8Q8CHzEeuUrYII4OYxLg" name="CombinedHeatPower" tooltipText="" outgoingEdges="_9YdvUCH1EeuUrYII4OYxLg" incomingEdges="_cZ-fliH2EeuUrYII4OYxLg" width="12" height="10"> + <target xmi:type="ecore:EClass" href="democatalog.ecore#//CombinedHeatPower"/> + <semanticElements xmi:type="ecore:EClass" href="democatalog.ecore#//CombinedHeatPower"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_328c9SH0EeuUrYII4OYxLg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_MbZ08CH0EeuUrYII4OYxLg" name="thermalEfficiency : EDouble = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="democatalog.ecore#//CombinedHeatPower/thermalEfficiency"/> + <semanticElements xmi:type="ecore:EAttribute" href="democatalog.ecore#//CombinedHeatPower/thermalEfficiency"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_329EAiH0EeuUrYII4OYxLg" labelAlignment="LEFT" description="_hEX5gCHzEeuUrYII4OYxLg"> + <labelFormat>bold</labelFormat> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_Cw_lICH0EeuUrYII4OYxLg" name="SolarPanel" tooltipText="" outgoingEdges="_94ONcCH1EeuUrYII4OYxLg" incomingEdges="_dATfxiH2EeuUrYII4OYxLg" width="12" height="10"> + <target xmi:type="ecore:EClass" href="democatalog.ecore#//SolarPanel"/> + <semanticElements xmi:type="ecore:EClass" href="democatalog.ecore#//SolarPanel"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_ZXRbNyIEEeuUrYII4OYxLg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_SXzusCIEEeuUrYII4OYxLg" name="mppVoltage : EDouble = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="democatalog.ecore#//SolarPanel/mppVoltage"/> + <semanticElements xmi:type="ecore:EAttribute" href="democatalog.ecore#//SolarPanel/mppVoltage"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_gHvCaiIEEeuUrYII4OYxLg" labelAlignment="LEFT" description="_hEX5gCHzEeuUrYII4OYxLg"> + <labelFormat>bold</labelFormat> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_WLv6YCIEEeuUrYII4OYxLg" name="mppCurrent : EDouble = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="democatalog.ecore#//SolarPanel/mppCurrent"/> + <semanticElements xmi:type="ecore:EAttribute" href="democatalog.ecore#//SolarPanel/mppCurrent"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_fMs9iiIEEeuUrYII4OYxLg" labelAlignment="LEFT" description="_hEX5gCHzEeuUrYII4OYxLg"> + <labelFormat>bold</labelFormat> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_C8cnMCH0EeuUrYII4OYxLg" name="Inverter" tooltipText="" outgoingEdges="_-QPr-CH1EeuUrYII4OYxLg" incomingEdges="_dcoPciH2EeuUrYII4OYxLg" width="12" height="10"> + <target xmi:type="ecore:EClass" href="democatalog.ecore#//Inverter"/> + <semanticElements xmi:type="ecore:EClass" href="democatalog.ecore#//Inverter"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_p80RKSIEEeuUrYII4OYxLg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_h6CGcCIEEeuUrYII4OYxLg" name="maxDCVoltage : EDouble = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="democatalog.ecore#//Inverter/maxDCVoltage"/> + <semanticElements xmi:type="ecore:EAttribute" href="democatalog.ecore#//Inverter/maxDCVoltage"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_sAIMsSIEEeuUrYII4OYxLg" labelAlignment="LEFT" description="_hEX5gCHzEeuUrYII4OYxLg"> + <labelFormat>bold</labelFormat> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_n-UkICIEEeuUrYII4OYxLg" name="macDCCurrent : EDouble = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="democatalog.ecore#//Inverter/macDCCurrent"/> + <semanticElements xmi:type="ecore:EAttribute" href="democatalog.ecore#//Inverter/macDCCurrent"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_rA3IFyIEEeuUrYII4OYxLg" labelAlignment="LEFT" description="_hEX5gCHzEeuUrYII4OYxLg"> + <labelFormat>bold</labelFormat> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_DG7Y4CH0EeuUrYII4OYxLg" name="Manufacturer" tooltipText="" incomingEdges="_HQGYQCH1EeuUrYII4OYxLg _fG0gbiH2EeuUrYII4OYxLg" width="12" height="10"> + <target xmi:type="ecore:EClass" href="democatalog.ecore#//Manufacturer"/> + <semanticElements xmi:type="ecore:EClass" href="democatalog.ecore#//Manufacturer"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_zpXCOyH0EeuUrYII4OYxLg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_yuptcCH0EeuUrYII4OYxLg" name="name : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="democatalog.ecore#//Manufacturer/name"/> + <semanticElements xmi:type="ecore:EAttribute" href="democatalog.ecore#//Manufacturer/name"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_65xUxiH0EeuUrYII4OYxLg" labelAlignment="LEFT" description="_hEX5gCHzEeuUrYII4OYxLg"> + <labelFormat>bold</labelFormat> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_og9xcCH0EeuUrYII4OYxLg" name="ChemicalDevice" tooltipText="" outgoingEdges="_81wD1iH1EeuUrYII4OYxLg" incomingEdges="_8Nl3oCH1EeuUrYII4OYxLg _9YdvUCH1EeuUrYII4OYxLg" width="12" height="10"> + <target xmi:type="ecore:EClass" href="democatalog.ecore#//ChemicalDevice"/> + <semanticElements xmi:type="ecore:EClass" href="democatalog.ecore#//ChemicalDevice"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_uQPBbSH0EeuUrYII4OYxLg" iconPath="/org.eclipse.emf.ecoretools.design/icons/full/obj16/EClass_abstract.gif" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="228,228,228"> + <labelFormat>italic</labelFormat> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@conditionnalStyles.1/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_sD2pYCH0EeuUrYII4OYxLg" name="installedThermalPower : EDouble = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="democatalog.ecore#//ChemicalDevice/installedThermalPower"/> + <semanticElements xmi:type="ecore:EAttribute" href="democatalog.ecore#//ChemicalDevice/installedThermalPower"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_viM_kSH0EeuUrYII4OYxLg" labelAlignment="LEFT" description="_hEX5gCHzEeuUrYII4OYxLg"> + <labelFormat>bold</labelFormat> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="__ZVQUCH0EeuUrYII4OYxLg" name="EnergyComponent" tooltipText="" outgoingEdges="_HQGYQCH1EeuUrYII4OYxLg" incomingEdges="_81wD1iH1EeuUrYII4OYxLg __Jdy9SH1EeuUrYII4OYxLg" width="12" height="10"> + <target xmi:type="ecore:EClass" href="democatalog.ecore#//EnergyComponent"/> + <semanticElements xmi:type="ecore:EClass" href="democatalog.ecore#//EnergyComponent"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_FMe6viH1EeuUrYII4OYxLg" iconPath="/org.eclipse.emf.ecoretools.design/icons/full/obj16/EClass_abstract.gif" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="228,228,228"> + <labelFormat>italic</labelFormat> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@conditionnalStyles.1/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_BZULECH1EeuUrYII4OYxLg" name="modelName : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="democatalog.ecore#//EnergyComponent/modelName"/> + <semanticElements xmi:type="ecore:EAttribute" href="democatalog.ecore#//EnergyComponent/modelName"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_CwLQUyH1EeuUrYII4OYxLg" labelAlignment="LEFT" description="_hEX5gCHzEeuUrYII4OYxLg"> + <labelFormat>bold</labelFormat> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_DpL78CH1EeuUrYII4OYxLg" name="revisionYear : EInt" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="democatalog.ecore#//EnergyComponent/revisionYear"/> + <semanticElements xmi:type="ecore:EAttribute" href="democatalog.ecore#//EnergyComponent/revisionYear"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_FMfhxyH1EeuUrYII4OYxLg" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_HQGYQCH1EeuUrYII4OYxLg" name="[1..1] producedBy" sourceNode="__ZVQUCH0EeuUrYII4OYxLg" targetNode="_DG7Y4CH0EeuUrYII4OYxLg"> + <target xmi:type="ecore:EReference" href="democatalog.ecore#//EnergyComponent/producedBy"/> + <semanticElements xmi:type="ecore:EReference" href="democatalog.ecore#//EnergyComponent/producedBy"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_KUpuaSH1EeuUrYII4OYxLg" description="_KUpuZiH1EeuUrYII4OYxLg" routingStyle="manhattan" strokeColor="0,0,0"> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_KUpuayH1EeuUrYII4OYxLg" showIcon="false"> + <labelFormat>bold</labelFormat> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_KUpuaiH1EeuUrYII4OYxLg" labelSize="6" showIcon="false" labelColor="39,76,114"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_OIJ1MCH1EeuUrYII4OYxLg" name="ElectricalDevice" tooltipText="" outgoingEdges="__Jdy9SH1EeuUrYII4OYxLg" incomingEdges="_94ONcCH1EeuUrYII4OYxLg _-QPr-CH1EeuUrYII4OYxLg" width="12" height="10"> + <target xmi:type="ecore:EClass" href="democatalog.ecore#//ElectricalDevice"/> + <semanticElements xmi:type="ecore:EClass" href="democatalog.ecore#//ElectricalDevice"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_UTSh0SH1EeuUrYII4OYxLg" iconPath="/org.eclipse.emf.ecoretools.design/icons/full/obj16/EClass_abstract.gif" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="228,228,228"> + <labelFormat>italic</labelFormat> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@conditionnalStyles.1/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_TczlsCH1EeuUrYII4OYxLg" name="nominalPower : EDouble = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="democatalog.ecore#//ElectricalDevice/nominalPower"/> + <semanticElements xmi:type="ecore:EAttribute" href="democatalog.ecore#//ElectricalDevice/nominalPower"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_VFSmcSH1EeuUrYII4OYxLg" labelAlignment="LEFT" description="_hEX5gCHzEeuUrYII4OYxLg"> + <labelFormat>bold</labelFormat> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_8Nl3oCH1EeuUrYII4OYxLg" sourceNode="_1ju5oCHzEeuUrYII4OYxLg" targetNode="_og9xcCH0EeuUrYII4OYxLg"> + <target xmi:type="ecore:EClass" href="democatalog.ecore#//Boiler"/> + <semanticElements xmi:type="ecore:EClass" href="democatalog.ecore#//Boiler"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_8Nl3oSH1EeuUrYII4OYxLg" targetArrow="InputClosedArrow" routingStyle="tree"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_8Nl3oiH1EeuUrYII4OYxLg" showIcon="false"> + <labelFormat>italic</labelFormat> + </beginLabelStyle> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_8Nl3oyH1EeuUrYII4OYxLg" showIcon="false"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_81wD1iH1EeuUrYII4OYxLg" sourceNode="_og9xcCH0EeuUrYII4OYxLg" targetNode="__ZVQUCH0EeuUrYII4OYxLg"> + <target xmi:type="ecore:EClass" href="democatalog.ecore#//ChemicalDevice"/> + <semanticElements xmi:type="ecore:EClass" href="democatalog.ecore#//ChemicalDevice"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_81wD1yH1EeuUrYII4OYxLg" targetArrow="InputClosedArrow" routingStyle="tree"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_81wD2CH1EeuUrYII4OYxLg" showIcon="false"> + <labelFormat>italic</labelFormat> + </beginLabelStyle> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_81wD2SH1EeuUrYII4OYxLg" showIcon="false"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_9YdvUCH1EeuUrYII4OYxLg" sourceNode="_9_8Q8CHzEeuUrYII4OYxLg" targetNode="_og9xcCH0EeuUrYII4OYxLg"> + <target xmi:type="ecore:EClass" href="democatalog.ecore#//CombinedHeatPower"/> + <semanticElements xmi:type="ecore:EClass" href="democatalog.ecore#//CombinedHeatPower"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_9YdvUSH1EeuUrYII4OYxLg" targetArrow="InputClosedArrow" routingStyle="tree"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_9YdvUiH1EeuUrYII4OYxLg" showIcon="false"> + <labelFormat>italic</labelFormat> + </beginLabelStyle> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_9YdvUyH1EeuUrYII4OYxLg" showIcon="false"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_94ONcCH1EeuUrYII4OYxLg" sourceNode="_Cw_lICH0EeuUrYII4OYxLg" targetNode="_OIJ1MCH1EeuUrYII4OYxLg"> + <target xmi:type="ecore:EClass" href="democatalog.ecore#//SolarPanel"/> + <semanticElements xmi:type="ecore:EClass" href="democatalog.ecore#//SolarPanel"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_ZXTQiiIEEeuUrYII4OYxLg" targetArrow="InputClosedArrow" routingStyle="tree"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_ZXTQiyIEEeuUrYII4OYxLg" showIcon="false"> + <labelFormat>italic</labelFormat> + </beginLabelStyle> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_ZXTQjCIEEeuUrYII4OYxLg" showIcon="false"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_-QPr-CH1EeuUrYII4OYxLg" sourceNode="_C8cnMCH0EeuUrYII4OYxLg" targetNode="_OIJ1MCH1EeuUrYII4OYxLg"> + <target xmi:type="ecore:EClass" href="democatalog.ecore#//Inverter"/> + <semanticElements xmi:type="ecore:EClass" href="democatalog.ecore#//Inverter"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_p82GUCIEEeuUrYII4OYxLg" targetArrow="InputClosedArrow" routingStyle="tree"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_p82GUSIEEeuUrYII4OYxLg" showIcon="false"> + <labelFormat>italic</labelFormat> + </beginLabelStyle> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_p82GUiIEEeuUrYII4OYxLg" showIcon="false"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="__Jdy9SH1EeuUrYII4OYxLg" sourceNode="_OIJ1MCH1EeuUrYII4OYxLg" targetNode="__ZVQUCH0EeuUrYII4OYxLg"> + <target xmi:type="ecore:EClass" href="democatalog.ecore#//ElectricalDevice"/> + <semanticElements xmi:type="ecore:EClass" href="democatalog.ecore#//ElectricalDevice"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="__Jdy9iH1EeuUrYII4OYxLg" targetArrow="InputClosedArrow" routingStyle="tree"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="__Jdy9yH1EeuUrYII4OYxLg" showIcon="false"> + <labelFormat>italic</labelFormat> + </beginLabelStyle> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="__Jdy-CH1EeuUrYII4OYxLg" showIcon="false"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_ZBBmwCH2EeuUrYII4OYxLg" name="[0..*] boilers" sourceNode="_b6BUgCHzEeuUrYII4OYxLg" targetNode="_1ju5oCHzEeuUrYII4OYxLg"> + <target xmi:type="ecore:EReference" href="democatalog.ecore#//EnergyComponentCatalog/boilers"/> + <semanticElements xmi:type="ecore:EReference" href="democatalog.ecore#//EnergyComponentCatalog/boilers"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_ZBBmxCH2EeuUrYII4OYxLg" description="_ZBBmwSH2EeuUrYII4OYxLg" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0"> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_ZBBmxiH2EeuUrYII4OYxLg" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_ZBBmxSH2EeuUrYII4OYxLg" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_cZ-fliH2EeuUrYII4OYxLg" name="[0..*] chps" sourceNode="_b6BUgCHzEeuUrYII4OYxLg" targetNode="_9_8Q8CHzEeuUrYII4OYxLg"> + <target xmi:type="ecore:EReference" href="democatalog.ecore#//EnergyComponentCatalog/chps"/> + <semanticElements xmi:type="ecore:EReference" href="democatalog.ecore#//EnergyComponentCatalog/chps"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_cZ-flyH2EeuUrYII4OYxLg" description="_ZBBmwSH2EeuUrYII4OYxLg" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0"> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_cZ-fmSH2EeuUrYII4OYxLg" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_cZ-fmCH2EeuUrYII4OYxLg" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_dATfxiH2EeuUrYII4OYxLg" name="[0..*] solarPanels" sourceNode="_b6BUgCHzEeuUrYII4OYxLg" targetNode="_Cw_lICH0EeuUrYII4OYxLg"> + <target xmi:type="ecore:EReference" href="democatalog.ecore#//EnergyComponentCatalog/solarPanels"/> + <semanticElements xmi:type="ecore:EReference" href="democatalog.ecore#//EnergyComponentCatalog/solarPanels"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_dATfxyH2EeuUrYII4OYxLg" description="_ZBBmwSH2EeuUrYII4OYxLg" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0"> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_dATfySH2EeuUrYII4OYxLg" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_dATfyCH2EeuUrYII4OYxLg" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_dcoPciH2EeuUrYII4OYxLg" name="[0..*] inverters" sourceNode="_b6BUgCHzEeuUrYII4OYxLg" targetNode="_C8cnMCH0EeuUrYII4OYxLg"> + <target xmi:type="ecore:EReference" href="democatalog.ecore#//EnergyComponentCatalog/inverters"/> + <semanticElements xmi:type="ecore:EReference" href="democatalog.ecore#//EnergyComponentCatalog/inverters"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_dcoPcyH2EeuUrYII4OYxLg" description="_ZBBmwSH2EeuUrYII4OYxLg" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0"> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_dcoPdSH2EeuUrYII4OYxLg" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_dcoPdCH2EeuUrYII4OYxLg" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_fG0gbiH2EeuUrYII4OYxLg" name="[0..*] manufacturers" sourceNode="_b6BUgCHzEeuUrYII4OYxLg" targetNode="_DG7Y4CH0EeuUrYII4OYxLg"> + <target xmi:type="ecore:EReference" href="democatalog.ecore#//EnergyComponentCatalog/manufacturers"/> + <semanticElements xmi:type="ecore:EReference" href="democatalog.ecore#//EnergyComponentCatalog/manufacturers"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_fG1HYCH2EeuUrYII4OYxLg" description="_ZBBmwSH2EeuUrYII4OYxLg" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0"> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_fG1HYiH2EeuUrYII4OYxLg" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_fG1HYSH2EeuUrYII4OYxLg" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> + <filterVariableHistory xmi:type="diagram:FilterVariableHistory" uid="_Hj79QCHUEeuLPpz77IfmqA"/> + <activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer"/> + <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Package']"/> + <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Validation']"/> + <target xmi:type="ecore:EPackage" href="democatalog.ecore#/"/> + </diagram:DSemanticDiagram> +</xmi:XMI> diff --git a/org.example.democatalog/model/democatalog.ecore b/org.example.democatalog/model/democatalog.ecore new file mode 100644 index 0000000000000000000000000000000000000000..1aea535499b24f8ab94761b7bf7429f23e43c712 --- /dev/null +++ b/org.example.democatalog/model/democatalog.ecore @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="democatalog" nsURI="http://example.org/democatalog" nsPrefix="democat"> + <eClassifiers xsi:type="ecore:EClass" name="EnergyComponentCatalog"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="author" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="boilers" upperBound="-1" + eType="#//Boiler" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="chps" upperBound="-1" eType="#//CombinedHeatPower" + containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="solarPanels" upperBound="-1" + eType="#//SolarPanel" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="inverters" upperBound="-1" + eType="#//Inverter" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="manufacturers" upperBound="-1" + eType="#//Manufacturer" containment="true"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EEnum" name="BoilerType"> + <eLiterals name="LowTemperature"/> + <eLiterals name="Condensing" value="1"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="Boiler" eSuperTypes="#//ChemicalDevice"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="boilerType" lowerBound="1" + eType="#//BoilerType"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="CombinedHeatPower" eSuperTypes="#//ChemicalDevice"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="thermalEfficiency" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble" defaultValueLiteral="0.0"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="SolarPanel" eSuperTypes="#//ElectricalDevice"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="mppVoltage" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="mppCurrent" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="Inverter" eSuperTypes="#//ElectricalDevice"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="maxDCVoltage" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble" defaultValueLiteral="0.0"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="macDCCurrent" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble" defaultValueLiteral="0.0"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="Manufacturer"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" + defaultValueLiteral=""/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="ChemicalDevice" abstract="true" eSuperTypes="#//EnergyComponent"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="installedThermalPower" + lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble" + defaultValueLiteral="0.0"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EnergyComponent" abstract="true"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="modelName" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="revisionYear" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="producedBy" lowerBound="1" + eType="#//Manufacturer"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="ElectricalDevice" abstract="true" eSuperTypes="#//EnergyComponent"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="nominalPower" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble" defaultValueLiteral="0.0"/> + </eClassifiers> +</ecore:EPackage> diff --git a/org.example.democatalog/model/democatalog.genmodel b/org.example.democatalog/model/democatalog.genmodel new file mode 100644 index 0000000000000000000000000000000000000000..cc65a31d4e538756740447712e2244f7daf8434c --- /dev/null +++ b/org.example.democatalog/model/democatalog.genmodel @@ -0,0 +1,54 @@ +<?xml version="1.0" encoding="UTF-8"?> +<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" + modelDirectory="/org.example.democatalog/src-gen" creationIcons="false" + editDirectory="/org.example.democatalog.edit/src-gen" editorDirectory="/org.example.democatalog.editor/src-gen" + modelPluginID="org.example.democatalog" modelName="Democatalog" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container" + codeFormatting="true" importerID="org.eclipse.emf.importer.ecore" complianceLevel="5.0" + copyrightFields="false" operationReflection="true" importOrganizing="true"> + <foreignModel>democatalog.ecore</foreignModel> + <testsDirectory xsi:nil="true"/> + <genPackages prefix="Democatalog" basePackage="org.example" disposableProviderFactory="true" + ecorePackage="democatalog.ecore#/"> + <genEnums typeSafeEnumCompatible="false" ecoreEnum="democatalog.ecore#//BoilerType"> + <genEnumLiterals ecoreEnumLiteral="democatalog.ecore#//BoilerType/LowTemperature"/> + <genEnumLiterals ecoreEnumLiteral="democatalog.ecore#//BoilerType/Condensing"/> + </genEnums> + <genClasses ecoreClass="democatalog.ecore#//EnergyComponentCatalog"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute democatalog.ecore#//EnergyComponentCatalog/author"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference democatalog.ecore#//EnergyComponentCatalog/boilers"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference democatalog.ecore#//EnergyComponentCatalog/chps"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference democatalog.ecore#//EnergyComponentCatalog/solarPanels"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference democatalog.ecore#//EnergyComponentCatalog/inverters"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference democatalog.ecore#//EnergyComponentCatalog/manufacturers"/> + </genClasses> + <genClasses ecoreClass="democatalog.ecore#//Boiler"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute democatalog.ecore#//Boiler/boilerType"/> + </genClasses> + <genClasses ecoreClass="democatalog.ecore#//CombinedHeatPower"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute democatalog.ecore#//CombinedHeatPower/thermalEfficiency"/> + </genClasses> + <genClasses ecoreClass="democatalog.ecore#//SolarPanel"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute democatalog.ecore#//SolarPanel/mppVoltage"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute democatalog.ecore#//SolarPanel/mppCurrent"/> + </genClasses> + <genClasses ecoreClass="democatalog.ecore#//Inverter"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute democatalog.ecore#//Inverter/maxDCVoltage"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute democatalog.ecore#//Inverter/macDCCurrent"/> + </genClasses> + <genClasses ecoreClass="democatalog.ecore#//Manufacturer"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute democatalog.ecore#//Manufacturer/name"/> + </genClasses> + <genClasses ecoreClass="democatalog.ecore#//ChemicalDevice"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute democatalog.ecore#//ChemicalDevice/installedThermalPower"/> + </genClasses> + <genClasses image="false" ecoreClass="democatalog.ecore#//EnergyComponent"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute democatalog.ecore#//EnergyComponent/modelName"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute democatalog.ecore#//EnergyComponent/revisionYear"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference democatalog.ecore#//EnergyComponent/producedBy"/> + </genClasses> + <genClasses image="false" ecoreClass="democatalog.ecore#//ElectricalDevice"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute democatalog.ecore#//ElectricalDevice/nominalPower"/> + </genClasses> + </genPackages> +</genmodel:GenModel> diff --git a/org.example.democatalog/plugin.properties b/org.example.democatalog/plugin.properties new file mode 100644 index 0000000000000000000000000000000000000000..65de3c26b6f50889a224002308f1821c081f0cbd --- /dev/null +++ b/org.example.democatalog/plugin.properties @@ -0,0 +1,4 @@ +# + +pluginName = org.example.democatalog +providerName = www.example.org diff --git a/org.example.democatalog/plugin.xml b/org.example.democatalog/plugin.xml new file mode 100644 index 0000000000000000000000000000000000000000..bed1880251bd87cede0e06e475084adc122a3f9c --- /dev/null +++ b/org.example.democatalog/plugin.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?eclipse version="3.0"?> + +<!-- +--> + +<plugin> + + <extension point="org.eclipse.emf.ecore.generated_package"> + <!-- @generated democatalog --> + <package + uri="http://example.org/democatalog" + class="org.example.democatalog.DemocatalogPackage" + genModel="model/democatalog.genmodel"/> + </extension> + +</plugin> diff --git a/org.example.democatalog/src-gen/org/example/democatalog/Boiler.java b/org.example.democatalog/src-gen/org/example/democatalog/Boiler.java new file mode 100644 index 0000000000000000000000000000000000000000..fe7573f417f3c41127b8a5ee487bb277d93d27cd --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/Boiler.java @@ -0,0 +1,47 @@ +/** + */ +package org.example.democatalog; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Boiler</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link org.example.democatalog.Boiler#getBoilerType <em>Boiler Type</em>}</li> + * </ul> + * + * @see org.example.democatalog.DemocatalogPackage#getBoiler() + * @model + * @generated + */ +public interface Boiler extends ChemicalDevice { + /** + * Returns the value of the '<em><b>Boiler Type</b></em>' attribute. + * The literals are from the enumeration {@link org.example.democatalog.BoilerType}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Boiler Type</em>' attribute. + * @see org.example.democatalog.BoilerType + * @see #setBoilerType(BoilerType) + * @see org.example.democatalog.DemocatalogPackage#getBoiler_BoilerType() + * @model required="true" + * @generated + */ + BoilerType getBoilerType(); + + /** + * Sets the value of the '{@link org.example.democatalog.Boiler#getBoilerType <em>Boiler Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Boiler Type</em>' attribute. + * @see org.example.democatalog.BoilerType + * @see #getBoilerType() + * @generated + */ + void setBoilerType(BoilerType value); + +} // Boiler diff --git a/org.example.democatalog/src-gen/org/example/democatalog/BoilerType.java b/org.example.democatalog/src-gen/org/example/democatalog/BoilerType.java new file mode 100644 index 0000000000000000000000000000000000000000..1aa15fa427557bfb4e2b8a8c59418ef9b1bb9523 --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/BoilerType.java @@ -0,0 +1,204 @@ +/** + */ +package org.example.democatalog; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * <!-- begin-user-doc --> + * A representation of the literals of the enumeration '<em><b>Boiler Type</b></em>', + * and utility methods for working with them. + * <!-- end-user-doc --> + * @see org.example.democatalog.DemocatalogPackage#getBoilerType() + * @model + * @generated + */ +public enum BoilerType implements Enumerator { + /** + * The '<em><b>Low Temperature</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #LOW_TEMPERATURE_VALUE + * @generated + * @ordered + */ + LOW_TEMPERATURE(0, "LowTemperature", "LowTemperature"), + + /** + * The '<em><b>Condensing</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #CONDENSING_VALUE + * @generated + * @ordered + */ + CONDENSING(1, "Condensing", "Condensing"); + + /** + * The '<em><b>Low Temperature</b></em>' literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #LOW_TEMPERATURE + * @model name="LowTemperature" + * @generated + * @ordered + */ + public static final int LOW_TEMPERATURE_VALUE = 0; + + /** + * The '<em><b>Condensing</b></em>' literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #CONDENSING + * @model name="Condensing" + * @generated + * @ordered + */ + public static final int CONDENSING_VALUE = 1; + + /** + * An array of all the '<em><b>Boiler Type</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static final BoilerType[] VALUES_ARRAY = new BoilerType[] { LOW_TEMPERATURE, CONDENSING, }; + + /** + * A public read-only list of all the '<em><b>Boiler Type</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final List<BoilerType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the '<em><b>Boiler Type</b></em>' literal with the specified literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param literal the literal. + * @return the matching enumerator or <code>null</code>. + * @generated + */ + public static BoilerType get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + BoilerType result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Boiler Type</b></em>' literal with the specified name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param name the name. + * @return the matching enumerator or <code>null</code>. + * @generated + */ + public static BoilerType getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + BoilerType result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Boiler Type</b></em>' literal with the specified integer value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the integer value. + * @return the matching enumerator or <code>null</code>. + * @generated + */ + public static BoilerType get(int value) { + switch (value) { + case LOW_TEMPERATURE_VALUE: + return LOW_TEMPERATURE; + case CONDENSING_VALUE: + return CONDENSING; + } + return null; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final int value; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String name; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private BoilerType(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public int getValue() { + return value; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //BoilerType diff --git a/org.example.democatalog/src-gen/org/example/democatalog/ChemicalDevice.java b/org.example.democatalog/src-gen/org/example/democatalog/ChemicalDevice.java new file mode 100644 index 0000000000000000000000000000000000000000..0deb0f58d9326c29f9a3fd37aade204283735cc4 --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/ChemicalDevice.java @@ -0,0 +1,45 @@ +/** + */ +package org.example.democatalog; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Chemical Device</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link org.example.democatalog.ChemicalDevice#getInstalledThermalPower <em>Installed Thermal Power</em>}</li> + * </ul> + * + * @see org.example.democatalog.DemocatalogPackage#getChemicalDevice() + * @model abstract="true" + * @generated + */ +public interface ChemicalDevice extends EnergyComponent { + /** + * Returns the value of the '<em><b>Installed Thermal Power</b></em>' attribute. + * The default value is <code>"0.0"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Installed Thermal Power</em>' attribute. + * @see #setInstalledThermalPower(double) + * @see org.example.democatalog.DemocatalogPackage#getChemicalDevice_InstalledThermalPower() + * @model default="0.0" required="true" + * @generated + */ + double getInstalledThermalPower(); + + /** + * Sets the value of the '{@link org.example.democatalog.ChemicalDevice#getInstalledThermalPower <em>Installed Thermal Power</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Installed Thermal Power</em>' attribute. + * @see #getInstalledThermalPower() + * @generated + */ + void setInstalledThermalPower(double value); + +} // ChemicalDevice diff --git a/org.example.democatalog/src-gen/org/example/democatalog/CombinedHeatPower.java b/org.example.democatalog/src-gen/org/example/democatalog/CombinedHeatPower.java new file mode 100644 index 0000000000000000000000000000000000000000..aaffd63e3f71d1c972443740cf5b2b231bc82cb0 --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/CombinedHeatPower.java @@ -0,0 +1,45 @@ +/** + */ +package org.example.democatalog; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Combined Heat Power</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link org.example.democatalog.CombinedHeatPower#getThermalEfficiency <em>Thermal Efficiency</em>}</li> + * </ul> + * + * @see org.example.democatalog.DemocatalogPackage#getCombinedHeatPower() + * @model + * @generated + */ +public interface CombinedHeatPower extends ChemicalDevice { + /** + * Returns the value of the '<em><b>Thermal Efficiency</b></em>' attribute. + * The default value is <code>"0.0"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Thermal Efficiency</em>' attribute. + * @see #setThermalEfficiency(double) + * @see org.example.democatalog.DemocatalogPackage#getCombinedHeatPower_ThermalEfficiency() + * @model default="0.0" required="true" + * @generated + */ + double getThermalEfficiency(); + + /** + * Sets the value of the '{@link org.example.democatalog.CombinedHeatPower#getThermalEfficiency <em>Thermal Efficiency</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Thermal Efficiency</em>' attribute. + * @see #getThermalEfficiency() + * @generated + */ + void setThermalEfficiency(double value); + +} // CombinedHeatPower diff --git a/org.example.democatalog/src-gen/org/example/democatalog/DemocatalogFactory.java b/org.example.democatalog/src-gen/org/example/democatalog/DemocatalogFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..76a92ae66e3ff0e697897943bb168df3b3d6c020 --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/DemocatalogFactory.java @@ -0,0 +1,87 @@ +/** + */ +package org.example.democatalog; + +import org.eclipse.emf.ecore.EFactory; + +/** + * <!-- begin-user-doc --> + * The <b>Factory</b> for the model. + * It provides a create method for each non-abstract class of the model. + * <!-- end-user-doc --> + * @see org.example.democatalog.DemocatalogPackage + * @generated + */ +public interface DemocatalogFactory extends EFactory { + /** + * The singleton instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + DemocatalogFactory eINSTANCE = org.example.democatalog.impl.DemocatalogFactoryImpl.init(); + + /** + * Returns a new object of class '<em>Energy Component Catalog</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Energy Component Catalog</em>'. + * @generated + */ + EnergyComponentCatalog createEnergyComponentCatalog(); + + /** + * Returns a new object of class '<em>Boiler</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Boiler</em>'. + * @generated + */ + Boiler createBoiler(); + + /** + * Returns a new object of class '<em>Combined Heat Power</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Combined Heat Power</em>'. + * @generated + */ + CombinedHeatPower createCombinedHeatPower(); + + /** + * Returns a new object of class '<em>Solar Panel</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Solar Panel</em>'. + * @generated + */ + SolarPanel createSolarPanel(); + + /** + * Returns a new object of class '<em>Inverter</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Inverter</em>'. + * @generated + */ + Inverter createInverter(); + + /** + * Returns a new object of class '<em>Manufacturer</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Manufacturer</em>'. + * @generated + */ + Manufacturer createManufacturer(); + + /** + * Returns the package supported by this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the package supported by this factory. + * @generated + */ + DemocatalogPackage getDemocatalogPackage(); + +} //DemocatalogFactory diff --git a/org.example.democatalog/src-gen/org/example/democatalog/DemocatalogPackage.java b/org.example.democatalog/src-gen/org/example/democatalog/DemocatalogPackage.java new file mode 100644 index 0000000000000000000000000000000000000000..bb2c296353f0ffc4556494cb14d1e054ca2f4adb --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/DemocatalogPackage.java @@ -0,0 +1,1249 @@ +/** + */ +package org.example.democatalog; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EEnum; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +/** + * <!-- begin-user-doc --> + * The <b>Package</b> for the model. + * It contains accessors for the meta objects to represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each operation of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @see org.example.democatalog.DemocatalogFactory + * @model kind="package" + * @generated + */ +public interface DemocatalogPackage extends EPackage { + /** + * The package name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNAME = "democatalog"; + + /** + * The package namespace URI. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_URI = "http://example.org/democatalog"; + + /** + * The package namespace name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_PREFIX = "democat"; + + /** + * The singleton instance of the package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + DemocatalogPackage eINSTANCE = org.example.democatalog.impl.DemocatalogPackageImpl.init(); + + /** + * The meta object id for the '{@link org.example.democatalog.impl.EnergyComponentCatalogImpl <em>Energy Component Catalog</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.impl.EnergyComponentCatalogImpl + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getEnergyComponentCatalog() + * @generated + */ + int ENERGY_COMPONENT_CATALOG = 0; + + /** + * The feature id for the '<em><b>Author</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ENERGY_COMPONENT_CATALOG__AUTHOR = 0; + + /** + * The feature id for the '<em><b>Boilers</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ENERGY_COMPONENT_CATALOG__BOILERS = 1; + + /** + * The feature id for the '<em><b>Chps</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ENERGY_COMPONENT_CATALOG__CHPS = 2; + + /** + * The feature id for the '<em><b>Solar Panels</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ENERGY_COMPONENT_CATALOG__SOLAR_PANELS = 3; + + /** + * The feature id for the '<em><b>Inverters</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ENERGY_COMPONENT_CATALOG__INVERTERS = 4; + + /** + * The feature id for the '<em><b>Manufacturers</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ENERGY_COMPONENT_CATALOG__MANUFACTURERS = 5; + + /** + * The number of structural features of the '<em>Energy Component Catalog</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ENERGY_COMPONENT_CATALOG_FEATURE_COUNT = 6; + + /** + * The number of operations of the '<em>Energy Component Catalog</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ENERGY_COMPONENT_CATALOG_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link org.example.democatalog.impl.EnergyComponentImpl <em>Energy Component</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.impl.EnergyComponentImpl + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getEnergyComponent() + * @generated + */ + int ENERGY_COMPONENT = 7; + + /** + * The feature id for the '<em><b>Model Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ENERGY_COMPONENT__MODEL_NAME = 0; + + /** + * The feature id for the '<em><b>Revision Year</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ENERGY_COMPONENT__REVISION_YEAR = 1; + + /** + * The feature id for the '<em><b>Produced By</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ENERGY_COMPONENT__PRODUCED_BY = 2; + + /** + * The number of structural features of the '<em>Energy Component</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ENERGY_COMPONENT_FEATURE_COUNT = 3; + + /** + * The number of operations of the '<em>Energy Component</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ENERGY_COMPONENT_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link org.example.democatalog.impl.ChemicalDeviceImpl <em>Chemical Device</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.impl.ChemicalDeviceImpl + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getChemicalDevice() + * @generated + */ + int CHEMICAL_DEVICE = 6; + + /** + * The feature id for the '<em><b>Model Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int CHEMICAL_DEVICE__MODEL_NAME = ENERGY_COMPONENT__MODEL_NAME; + + /** + * The feature id for the '<em><b>Revision Year</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int CHEMICAL_DEVICE__REVISION_YEAR = ENERGY_COMPONENT__REVISION_YEAR; + + /** + * The feature id for the '<em><b>Produced By</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int CHEMICAL_DEVICE__PRODUCED_BY = ENERGY_COMPONENT__PRODUCED_BY; + + /** + * The feature id for the '<em><b>Installed Thermal Power</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int CHEMICAL_DEVICE__INSTALLED_THERMAL_POWER = ENERGY_COMPONENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Chemical Device</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int CHEMICAL_DEVICE_FEATURE_COUNT = ENERGY_COMPONENT_FEATURE_COUNT + 1; + + /** + * The number of operations of the '<em>Chemical Device</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int CHEMICAL_DEVICE_OPERATION_COUNT = ENERGY_COMPONENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.example.democatalog.impl.BoilerImpl <em>Boiler</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.impl.BoilerImpl + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getBoiler() + * @generated + */ + int BOILER = 1; + + /** + * The feature id for the '<em><b>Model Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int BOILER__MODEL_NAME = CHEMICAL_DEVICE__MODEL_NAME; + + /** + * The feature id for the '<em><b>Revision Year</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int BOILER__REVISION_YEAR = CHEMICAL_DEVICE__REVISION_YEAR; + + /** + * The feature id for the '<em><b>Produced By</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int BOILER__PRODUCED_BY = CHEMICAL_DEVICE__PRODUCED_BY; + + /** + * The feature id for the '<em><b>Installed Thermal Power</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int BOILER__INSTALLED_THERMAL_POWER = CHEMICAL_DEVICE__INSTALLED_THERMAL_POWER; + + /** + * The feature id for the '<em><b>Boiler Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int BOILER__BOILER_TYPE = CHEMICAL_DEVICE_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Boiler</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int BOILER_FEATURE_COUNT = CHEMICAL_DEVICE_FEATURE_COUNT + 1; + + /** + * The number of operations of the '<em>Boiler</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int BOILER_OPERATION_COUNT = CHEMICAL_DEVICE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.example.democatalog.impl.CombinedHeatPowerImpl <em>Combined Heat Power</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.impl.CombinedHeatPowerImpl + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getCombinedHeatPower() + * @generated + */ + int COMBINED_HEAT_POWER = 2; + + /** + * The feature id for the '<em><b>Model Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int COMBINED_HEAT_POWER__MODEL_NAME = CHEMICAL_DEVICE__MODEL_NAME; + + /** + * The feature id for the '<em><b>Revision Year</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int COMBINED_HEAT_POWER__REVISION_YEAR = CHEMICAL_DEVICE__REVISION_YEAR; + + /** + * The feature id for the '<em><b>Produced By</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int COMBINED_HEAT_POWER__PRODUCED_BY = CHEMICAL_DEVICE__PRODUCED_BY; + + /** + * The feature id for the '<em><b>Installed Thermal Power</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int COMBINED_HEAT_POWER__INSTALLED_THERMAL_POWER = CHEMICAL_DEVICE__INSTALLED_THERMAL_POWER; + + /** + * The feature id for the '<em><b>Thermal Efficiency</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int COMBINED_HEAT_POWER__THERMAL_EFFICIENCY = CHEMICAL_DEVICE_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Combined Heat Power</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int COMBINED_HEAT_POWER_FEATURE_COUNT = CHEMICAL_DEVICE_FEATURE_COUNT + 1; + + /** + * The number of operations of the '<em>Combined Heat Power</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int COMBINED_HEAT_POWER_OPERATION_COUNT = CHEMICAL_DEVICE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.example.democatalog.impl.ElectricalDeviceImpl <em>Electrical Device</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.impl.ElectricalDeviceImpl + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getElectricalDevice() + * @generated + */ + int ELECTRICAL_DEVICE = 8; + + /** + * The feature id for the '<em><b>Model Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ELECTRICAL_DEVICE__MODEL_NAME = ENERGY_COMPONENT__MODEL_NAME; + + /** + * The feature id for the '<em><b>Revision Year</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ELECTRICAL_DEVICE__REVISION_YEAR = ENERGY_COMPONENT__REVISION_YEAR; + + /** + * The feature id for the '<em><b>Produced By</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ELECTRICAL_DEVICE__PRODUCED_BY = ENERGY_COMPONENT__PRODUCED_BY; + + /** + * The feature id for the '<em><b>Nominal Power</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ELECTRICAL_DEVICE__NOMINAL_POWER = ENERGY_COMPONENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Electrical Device</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ELECTRICAL_DEVICE_FEATURE_COUNT = ENERGY_COMPONENT_FEATURE_COUNT + 1; + + /** + * The number of operations of the '<em>Electrical Device</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ELECTRICAL_DEVICE_OPERATION_COUNT = ENERGY_COMPONENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.example.democatalog.impl.SolarPanelImpl <em>Solar Panel</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.impl.SolarPanelImpl + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getSolarPanel() + * @generated + */ + int SOLAR_PANEL = 3; + + /** + * The feature id for the '<em><b>Model Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SOLAR_PANEL__MODEL_NAME = ELECTRICAL_DEVICE__MODEL_NAME; + + /** + * The feature id for the '<em><b>Revision Year</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SOLAR_PANEL__REVISION_YEAR = ELECTRICAL_DEVICE__REVISION_YEAR; + + /** + * The feature id for the '<em><b>Produced By</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SOLAR_PANEL__PRODUCED_BY = ELECTRICAL_DEVICE__PRODUCED_BY; + + /** + * The feature id for the '<em><b>Nominal Power</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SOLAR_PANEL__NOMINAL_POWER = ELECTRICAL_DEVICE__NOMINAL_POWER; + + /** + * The feature id for the '<em><b>Mpp Voltage</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SOLAR_PANEL__MPP_VOLTAGE = ELECTRICAL_DEVICE_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Mpp Current</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SOLAR_PANEL__MPP_CURRENT = ELECTRICAL_DEVICE_FEATURE_COUNT + 1; + + /** + * The number of structural features of the '<em>Solar Panel</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SOLAR_PANEL_FEATURE_COUNT = ELECTRICAL_DEVICE_FEATURE_COUNT + 2; + + /** + * The number of operations of the '<em>Solar Panel</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SOLAR_PANEL_OPERATION_COUNT = ELECTRICAL_DEVICE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.example.democatalog.impl.InverterImpl <em>Inverter</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.impl.InverterImpl + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getInverter() + * @generated + */ + int INVERTER = 4; + + /** + * The feature id for the '<em><b>Model Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int INVERTER__MODEL_NAME = ELECTRICAL_DEVICE__MODEL_NAME; + + /** + * The feature id for the '<em><b>Revision Year</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int INVERTER__REVISION_YEAR = ELECTRICAL_DEVICE__REVISION_YEAR; + + /** + * The feature id for the '<em><b>Produced By</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int INVERTER__PRODUCED_BY = ELECTRICAL_DEVICE__PRODUCED_BY; + + /** + * The feature id for the '<em><b>Nominal Power</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int INVERTER__NOMINAL_POWER = ELECTRICAL_DEVICE__NOMINAL_POWER; + + /** + * The feature id for the '<em><b>Max DC Voltage</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int INVERTER__MAX_DC_VOLTAGE = ELECTRICAL_DEVICE_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Mac DC Current</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int INVERTER__MAC_DC_CURRENT = ELECTRICAL_DEVICE_FEATURE_COUNT + 1; + + /** + * The number of structural features of the '<em>Inverter</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int INVERTER_FEATURE_COUNT = ELECTRICAL_DEVICE_FEATURE_COUNT + 2; + + /** + * The number of operations of the '<em>Inverter</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int INVERTER_OPERATION_COUNT = ELECTRICAL_DEVICE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.example.democatalog.impl.ManufacturerImpl <em>Manufacturer</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.impl.ManufacturerImpl + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getManufacturer() + * @generated + */ + int MANUFACTURER = 5; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MANUFACTURER__NAME = 0; + + /** + * The number of structural features of the '<em>Manufacturer</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MANUFACTURER_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>Manufacturer</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MANUFACTURER_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link org.example.democatalog.BoilerType <em>Boiler Type</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.BoilerType + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getBoilerType() + * @generated + */ + int BOILER_TYPE = 9; + + /** + * Returns the meta object for class '{@link org.example.democatalog.EnergyComponentCatalog <em>Energy Component Catalog</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Energy Component Catalog</em>'. + * @see org.example.democatalog.EnergyComponentCatalog + * @generated + */ + EClass getEnergyComponentCatalog(); + + /** + * Returns the meta object for the attribute '{@link org.example.democatalog.EnergyComponentCatalog#getAuthor <em>Author</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Author</em>'. + * @see org.example.democatalog.EnergyComponentCatalog#getAuthor() + * @see #getEnergyComponentCatalog() + * @generated + */ + EAttribute getEnergyComponentCatalog_Author(); + + /** + * Returns the meta object for the containment reference list '{@link org.example.democatalog.EnergyComponentCatalog#getBoilers <em>Boilers</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Boilers</em>'. + * @see org.example.democatalog.EnergyComponentCatalog#getBoilers() + * @see #getEnergyComponentCatalog() + * @generated + */ + EReference getEnergyComponentCatalog_Boilers(); + + /** + * Returns the meta object for the containment reference list '{@link org.example.democatalog.EnergyComponentCatalog#getChps <em>Chps</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Chps</em>'. + * @see org.example.democatalog.EnergyComponentCatalog#getChps() + * @see #getEnergyComponentCatalog() + * @generated + */ + EReference getEnergyComponentCatalog_Chps(); + + /** + * Returns the meta object for the containment reference list '{@link org.example.democatalog.EnergyComponentCatalog#getSolarPanels <em>Solar Panels</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Solar Panels</em>'. + * @see org.example.democatalog.EnergyComponentCatalog#getSolarPanels() + * @see #getEnergyComponentCatalog() + * @generated + */ + EReference getEnergyComponentCatalog_SolarPanels(); + + /** + * Returns the meta object for the containment reference list '{@link org.example.democatalog.EnergyComponentCatalog#getInverters <em>Inverters</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Inverters</em>'. + * @see org.example.democatalog.EnergyComponentCatalog#getInverters() + * @see #getEnergyComponentCatalog() + * @generated + */ + EReference getEnergyComponentCatalog_Inverters(); + + /** + * Returns the meta object for the containment reference list '{@link org.example.democatalog.EnergyComponentCatalog#getManufacturers <em>Manufacturers</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Manufacturers</em>'. + * @see org.example.democatalog.EnergyComponentCatalog#getManufacturers() + * @see #getEnergyComponentCatalog() + * @generated + */ + EReference getEnergyComponentCatalog_Manufacturers(); + + /** + * Returns the meta object for class '{@link org.example.democatalog.Boiler <em>Boiler</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Boiler</em>'. + * @see org.example.democatalog.Boiler + * @generated + */ + EClass getBoiler(); + + /** + * Returns the meta object for the attribute '{@link org.example.democatalog.Boiler#getBoilerType <em>Boiler Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Boiler Type</em>'. + * @see org.example.democatalog.Boiler#getBoilerType() + * @see #getBoiler() + * @generated + */ + EAttribute getBoiler_BoilerType(); + + /** + * Returns the meta object for class '{@link org.example.democatalog.CombinedHeatPower <em>Combined Heat Power</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Combined Heat Power</em>'. + * @see org.example.democatalog.CombinedHeatPower + * @generated + */ + EClass getCombinedHeatPower(); + + /** + * Returns the meta object for the attribute '{@link org.example.democatalog.CombinedHeatPower#getThermalEfficiency <em>Thermal Efficiency</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Thermal Efficiency</em>'. + * @see org.example.democatalog.CombinedHeatPower#getThermalEfficiency() + * @see #getCombinedHeatPower() + * @generated + */ + EAttribute getCombinedHeatPower_ThermalEfficiency(); + + /** + * Returns the meta object for class '{@link org.example.democatalog.SolarPanel <em>Solar Panel</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Solar Panel</em>'. + * @see org.example.democatalog.SolarPanel + * @generated + */ + EClass getSolarPanel(); + + /** + * Returns the meta object for the attribute '{@link org.example.democatalog.SolarPanel#getMppVoltage <em>Mpp Voltage</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Mpp Voltage</em>'. + * @see org.example.democatalog.SolarPanel#getMppVoltage() + * @see #getSolarPanel() + * @generated + */ + EAttribute getSolarPanel_MppVoltage(); + + /** + * Returns the meta object for the attribute '{@link org.example.democatalog.SolarPanel#getMppCurrent <em>Mpp Current</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Mpp Current</em>'. + * @see org.example.democatalog.SolarPanel#getMppCurrent() + * @see #getSolarPanel() + * @generated + */ + EAttribute getSolarPanel_MppCurrent(); + + /** + * Returns the meta object for class '{@link org.example.democatalog.Inverter <em>Inverter</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Inverter</em>'. + * @see org.example.democatalog.Inverter + * @generated + */ + EClass getInverter(); + + /** + * Returns the meta object for the attribute '{@link org.example.democatalog.Inverter#getMaxDCVoltage <em>Max DC Voltage</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Max DC Voltage</em>'. + * @see org.example.democatalog.Inverter#getMaxDCVoltage() + * @see #getInverter() + * @generated + */ + EAttribute getInverter_MaxDCVoltage(); + + /** + * Returns the meta object for the attribute '{@link org.example.democatalog.Inverter#getMacDCCurrent <em>Mac DC Current</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Mac DC Current</em>'. + * @see org.example.democatalog.Inverter#getMacDCCurrent() + * @see #getInverter() + * @generated + */ + EAttribute getInverter_MacDCCurrent(); + + /** + * Returns the meta object for class '{@link org.example.democatalog.Manufacturer <em>Manufacturer</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Manufacturer</em>'. + * @see org.example.democatalog.Manufacturer + * @generated + */ + EClass getManufacturer(); + + /** + * Returns the meta object for the attribute '{@link org.example.democatalog.Manufacturer#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see org.example.democatalog.Manufacturer#getName() + * @see #getManufacturer() + * @generated + */ + EAttribute getManufacturer_Name(); + + /** + * Returns the meta object for class '{@link org.example.democatalog.ChemicalDevice <em>Chemical Device</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Chemical Device</em>'. + * @see org.example.democatalog.ChemicalDevice + * @generated + */ + EClass getChemicalDevice(); + + /** + * Returns the meta object for the attribute '{@link org.example.democatalog.ChemicalDevice#getInstalledThermalPower <em>Installed Thermal Power</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Installed Thermal Power</em>'. + * @see org.example.democatalog.ChemicalDevice#getInstalledThermalPower() + * @see #getChemicalDevice() + * @generated + */ + EAttribute getChemicalDevice_InstalledThermalPower(); + + /** + * Returns the meta object for class '{@link org.example.democatalog.EnergyComponent <em>Energy Component</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Energy Component</em>'. + * @see org.example.democatalog.EnergyComponent + * @generated + */ + EClass getEnergyComponent(); + + /** + * Returns the meta object for the attribute '{@link org.example.democatalog.EnergyComponent#getModelName <em>Model Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Model Name</em>'. + * @see org.example.democatalog.EnergyComponent#getModelName() + * @see #getEnergyComponent() + * @generated + */ + EAttribute getEnergyComponent_ModelName(); + + /** + * Returns the meta object for the attribute '{@link org.example.democatalog.EnergyComponent#getRevisionYear <em>Revision Year</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Revision Year</em>'. + * @see org.example.democatalog.EnergyComponent#getRevisionYear() + * @see #getEnergyComponent() + * @generated + */ + EAttribute getEnergyComponent_RevisionYear(); + + /** + * Returns the meta object for the reference '{@link org.example.democatalog.EnergyComponent#getProducedBy <em>Produced By</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Produced By</em>'. + * @see org.example.democatalog.EnergyComponent#getProducedBy() + * @see #getEnergyComponent() + * @generated + */ + EReference getEnergyComponent_ProducedBy(); + + /** + * Returns the meta object for class '{@link org.example.democatalog.ElectricalDevice <em>Electrical Device</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Electrical Device</em>'. + * @see org.example.democatalog.ElectricalDevice + * @generated + */ + EClass getElectricalDevice(); + + /** + * Returns the meta object for the attribute '{@link org.example.democatalog.ElectricalDevice#getNominalPower <em>Nominal Power</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Nominal Power</em>'. + * @see org.example.democatalog.ElectricalDevice#getNominalPower() + * @see #getElectricalDevice() + * @generated + */ + EAttribute getElectricalDevice_NominalPower(); + + /** + * Returns the meta object for enum '{@link org.example.democatalog.BoilerType <em>Boiler Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for enum '<em>Boiler Type</em>'. + * @see org.example.democatalog.BoilerType + * @generated + */ + EEnum getBoilerType(); + + /** + * Returns the factory that creates the instances of the model. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the factory that creates the instances of the model. + * @generated + */ + DemocatalogFactory getDemocatalogFactory(); + + /** + * <!-- begin-user-doc --> + * Defines literals for the meta objects that represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each operation of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @generated + */ + interface Literals { + /** + * The meta object literal for the '{@link org.example.democatalog.impl.EnergyComponentCatalogImpl <em>Energy Component Catalog</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.impl.EnergyComponentCatalogImpl + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getEnergyComponentCatalog() + * @generated + */ + EClass ENERGY_COMPONENT_CATALOG = eINSTANCE.getEnergyComponentCatalog(); + + /** + * The meta object literal for the '<em><b>Author</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute ENERGY_COMPONENT_CATALOG__AUTHOR = eINSTANCE.getEnergyComponentCatalog_Author(); + + /** + * The meta object literal for the '<em><b>Boilers</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference ENERGY_COMPONENT_CATALOG__BOILERS = eINSTANCE.getEnergyComponentCatalog_Boilers(); + + /** + * The meta object literal for the '<em><b>Chps</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference ENERGY_COMPONENT_CATALOG__CHPS = eINSTANCE.getEnergyComponentCatalog_Chps(); + + /** + * The meta object literal for the '<em><b>Solar Panels</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference ENERGY_COMPONENT_CATALOG__SOLAR_PANELS = eINSTANCE.getEnergyComponentCatalog_SolarPanels(); + + /** + * The meta object literal for the '<em><b>Inverters</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference ENERGY_COMPONENT_CATALOG__INVERTERS = eINSTANCE.getEnergyComponentCatalog_Inverters(); + + /** + * The meta object literal for the '<em><b>Manufacturers</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference ENERGY_COMPONENT_CATALOG__MANUFACTURERS = eINSTANCE.getEnergyComponentCatalog_Manufacturers(); + + /** + * The meta object literal for the '{@link org.example.democatalog.impl.BoilerImpl <em>Boiler</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.impl.BoilerImpl + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getBoiler() + * @generated + */ + EClass BOILER = eINSTANCE.getBoiler(); + + /** + * The meta object literal for the '<em><b>Boiler Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute BOILER__BOILER_TYPE = eINSTANCE.getBoiler_BoilerType(); + + /** + * The meta object literal for the '{@link org.example.democatalog.impl.CombinedHeatPowerImpl <em>Combined Heat Power</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.impl.CombinedHeatPowerImpl + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getCombinedHeatPower() + * @generated + */ + EClass COMBINED_HEAT_POWER = eINSTANCE.getCombinedHeatPower(); + + /** + * The meta object literal for the '<em><b>Thermal Efficiency</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute COMBINED_HEAT_POWER__THERMAL_EFFICIENCY = eINSTANCE.getCombinedHeatPower_ThermalEfficiency(); + + /** + * The meta object literal for the '{@link org.example.democatalog.impl.SolarPanelImpl <em>Solar Panel</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.impl.SolarPanelImpl + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getSolarPanel() + * @generated + */ + EClass SOLAR_PANEL = eINSTANCE.getSolarPanel(); + + /** + * The meta object literal for the '<em><b>Mpp Voltage</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute SOLAR_PANEL__MPP_VOLTAGE = eINSTANCE.getSolarPanel_MppVoltage(); + + /** + * The meta object literal for the '<em><b>Mpp Current</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute SOLAR_PANEL__MPP_CURRENT = eINSTANCE.getSolarPanel_MppCurrent(); + + /** + * The meta object literal for the '{@link org.example.democatalog.impl.InverterImpl <em>Inverter</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.impl.InverterImpl + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getInverter() + * @generated + */ + EClass INVERTER = eINSTANCE.getInverter(); + + /** + * The meta object literal for the '<em><b>Max DC Voltage</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute INVERTER__MAX_DC_VOLTAGE = eINSTANCE.getInverter_MaxDCVoltage(); + + /** + * The meta object literal for the '<em><b>Mac DC Current</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute INVERTER__MAC_DC_CURRENT = eINSTANCE.getInverter_MacDCCurrent(); + + /** + * The meta object literal for the '{@link org.example.democatalog.impl.ManufacturerImpl <em>Manufacturer</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.impl.ManufacturerImpl + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getManufacturer() + * @generated + */ + EClass MANUFACTURER = eINSTANCE.getManufacturer(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute MANUFACTURER__NAME = eINSTANCE.getManufacturer_Name(); + + /** + * The meta object literal for the '{@link org.example.democatalog.impl.ChemicalDeviceImpl <em>Chemical Device</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.impl.ChemicalDeviceImpl + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getChemicalDevice() + * @generated + */ + EClass CHEMICAL_DEVICE = eINSTANCE.getChemicalDevice(); + + /** + * The meta object literal for the '<em><b>Installed Thermal Power</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute CHEMICAL_DEVICE__INSTALLED_THERMAL_POWER = eINSTANCE.getChemicalDevice_InstalledThermalPower(); + + /** + * The meta object literal for the '{@link org.example.democatalog.impl.EnergyComponentImpl <em>Energy Component</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.impl.EnergyComponentImpl + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getEnergyComponent() + * @generated + */ + EClass ENERGY_COMPONENT = eINSTANCE.getEnergyComponent(); + + /** + * The meta object literal for the '<em><b>Model Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute ENERGY_COMPONENT__MODEL_NAME = eINSTANCE.getEnergyComponent_ModelName(); + + /** + * The meta object literal for the '<em><b>Revision Year</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute ENERGY_COMPONENT__REVISION_YEAR = eINSTANCE.getEnergyComponent_RevisionYear(); + + /** + * The meta object literal for the '<em><b>Produced By</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference ENERGY_COMPONENT__PRODUCED_BY = eINSTANCE.getEnergyComponent_ProducedBy(); + + /** + * The meta object literal for the '{@link org.example.democatalog.impl.ElectricalDeviceImpl <em>Electrical Device</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.impl.ElectricalDeviceImpl + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getElectricalDevice() + * @generated + */ + EClass ELECTRICAL_DEVICE = eINSTANCE.getElectricalDevice(); + + /** + * The meta object literal for the '<em><b>Nominal Power</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute ELECTRICAL_DEVICE__NOMINAL_POWER = eINSTANCE.getElectricalDevice_NominalPower(); + + /** + * The meta object literal for the '{@link org.example.democatalog.BoilerType <em>Boiler Type</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.example.democatalog.BoilerType + * @see org.example.democatalog.impl.DemocatalogPackageImpl#getBoilerType() + * @generated + */ + EEnum BOILER_TYPE = eINSTANCE.getBoilerType(); + + } + +} //DemocatalogPackage diff --git a/org.example.democatalog/src-gen/org/example/democatalog/ElectricalDevice.java b/org.example.democatalog/src-gen/org/example/democatalog/ElectricalDevice.java new file mode 100644 index 0000000000000000000000000000000000000000..506ef5dc51b8c4aaf6b6d8a669de5d969bb1933f --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/ElectricalDevice.java @@ -0,0 +1,45 @@ +/** + */ +package org.example.democatalog; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Electrical Device</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link org.example.democatalog.ElectricalDevice#getNominalPower <em>Nominal Power</em>}</li> + * </ul> + * + * @see org.example.democatalog.DemocatalogPackage#getElectricalDevice() + * @model abstract="true" + * @generated + */ +public interface ElectricalDevice extends EnergyComponent { + /** + * Returns the value of the '<em><b>Nominal Power</b></em>' attribute. + * The default value is <code>"0.0"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Nominal Power</em>' attribute. + * @see #setNominalPower(double) + * @see org.example.democatalog.DemocatalogPackage#getElectricalDevice_NominalPower() + * @model default="0.0" required="true" + * @generated + */ + double getNominalPower(); + + /** + * Sets the value of the '{@link org.example.democatalog.ElectricalDevice#getNominalPower <em>Nominal Power</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Nominal Power</em>' attribute. + * @see #getNominalPower() + * @generated + */ + void setNominalPower(double value); + +} // ElectricalDevice diff --git a/org.example.democatalog/src-gen/org/example/democatalog/EnergyComponent.java b/org.example.democatalog/src-gen/org/example/democatalog/EnergyComponent.java new file mode 100644 index 0000000000000000000000000000000000000000..13c1f2a1f0b08c5eca327cad313468dd2a80ae60 --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/EnergyComponent.java @@ -0,0 +1,92 @@ +/** + */ +package org.example.democatalog; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Energy Component</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link org.example.democatalog.EnergyComponent#getModelName <em>Model Name</em>}</li> + * <li>{@link org.example.democatalog.EnergyComponent#getRevisionYear <em>Revision Year</em>}</li> + * <li>{@link org.example.democatalog.EnergyComponent#getProducedBy <em>Produced By</em>}</li> + * </ul> + * + * @see org.example.democatalog.DemocatalogPackage#getEnergyComponent() + * @model abstract="true" + * @generated + */ +public interface EnergyComponent extends EObject { + /** + * Returns the value of the '<em><b>Model Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Model Name</em>' attribute. + * @see #setModelName(String) + * @see org.example.democatalog.DemocatalogPackage#getEnergyComponent_ModelName() + * @model required="true" + * @generated + */ + String getModelName(); + + /** + * Sets the value of the '{@link org.example.democatalog.EnergyComponent#getModelName <em>Model Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Model Name</em>' attribute. + * @see #getModelName() + * @generated + */ + void setModelName(String value); + + /** + * Returns the value of the '<em><b>Revision Year</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Revision Year</em>' attribute. + * @see #setRevisionYear(int) + * @see org.example.democatalog.DemocatalogPackage#getEnergyComponent_RevisionYear() + * @model + * @generated + */ + int getRevisionYear(); + + /** + * Sets the value of the '{@link org.example.democatalog.EnergyComponent#getRevisionYear <em>Revision Year</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Revision Year</em>' attribute. + * @see #getRevisionYear() + * @generated + */ + void setRevisionYear(int value); + + /** + * Returns the value of the '<em><b>Produced By</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Produced By</em>' reference. + * @see #setProducedBy(Manufacturer) + * @see org.example.democatalog.DemocatalogPackage#getEnergyComponent_ProducedBy() + * @model required="true" + * @generated + */ + Manufacturer getProducedBy(); + + /** + * Sets the value of the '{@link org.example.democatalog.EnergyComponent#getProducedBy <em>Produced By</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Produced By</em>' reference. + * @see #getProducedBy() + * @generated + */ + void setProducedBy(Manufacturer value); + +} // EnergyComponent diff --git a/org.example.democatalog/src-gen/org/example/democatalog/EnergyComponentCatalog.java b/org.example.democatalog/src-gen/org/example/democatalog/EnergyComponentCatalog.java new file mode 100644 index 0000000000000000000000000000000000000000..2ae4c3ea403fd4023d68d476fd3934a3fc5296f2 --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/EnergyComponentCatalog.java @@ -0,0 +1,113 @@ +/** + */ +package org.example.democatalog; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Energy Component Catalog</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link org.example.democatalog.EnergyComponentCatalog#getAuthor <em>Author</em>}</li> + * <li>{@link org.example.democatalog.EnergyComponentCatalog#getBoilers <em>Boilers</em>}</li> + * <li>{@link org.example.democatalog.EnergyComponentCatalog#getChps <em>Chps</em>}</li> + * <li>{@link org.example.democatalog.EnergyComponentCatalog#getSolarPanels <em>Solar Panels</em>}</li> + * <li>{@link org.example.democatalog.EnergyComponentCatalog#getInverters <em>Inverters</em>}</li> + * <li>{@link org.example.democatalog.EnergyComponentCatalog#getManufacturers <em>Manufacturers</em>}</li> + * </ul> + * + * @see org.example.democatalog.DemocatalogPackage#getEnergyComponentCatalog() + * @model + * @generated + */ +public interface EnergyComponentCatalog extends EObject { + /** + * Returns the value of the '<em><b>Author</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Author</em>' attribute. + * @see #setAuthor(String) + * @see org.example.democatalog.DemocatalogPackage#getEnergyComponentCatalog_Author() + * @model required="true" + * @generated + */ + String getAuthor(); + + /** + * Sets the value of the '{@link org.example.democatalog.EnergyComponentCatalog#getAuthor <em>Author</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Author</em>' attribute. + * @see #getAuthor() + * @generated + */ + void setAuthor(String value); + + /** + * Returns the value of the '<em><b>Boilers</b></em>' containment reference list. + * The list contents are of type {@link org.example.democatalog.Boiler}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Boilers</em>' containment reference list. + * @see org.example.democatalog.DemocatalogPackage#getEnergyComponentCatalog_Boilers() + * @model containment="true" + * @generated + */ + EList<Boiler> getBoilers(); + + /** + * Returns the value of the '<em><b>Chps</b></em>' containment reference list. + * The list contents are of type {@link org.example.democatalog.CombinedHeatPower}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Chps</em>' containment reference list. + * @see org.example.democatalog.DemocatalogPackage#getEnergyComponentCatalog_Chps() + * @model containment="true" + * @generated + */ + EList<CombinedHeatPower> getChps(); + + /** + * Returns the value of the '<em><b>Solar Panels</b></em>' containment reference list. + * The list contents are of type {@link org.example.democatalog.SolarPanel}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Solar Panels</em>' containment reference list. + * @see org.example.democatalog.DemocatalogPackage#getEnergyComponentCatalog_SolarPanels() + * @model containment="true" + * @generated + */ + EList<SolarPanel> getSolarPanels(); + + /** + * Returns the value of the '<em><b>Inverters</b></em>' containment reference list. + * The list contents are of type {@link org.example.democatalog.Inverter}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Inverters</em>' containment reference list. + * @see org.example.democatalog.DemocatalogPackage#getEnergyComponentCatalog_Inverters() + * @model containment="true" + * @generated + */ + EList<Inverter> getInverters(); + + /** + * Returns the value of the '<em><b>Manufacturers</b></em>' containment reference list. + * The list contents are of type {@link org.example.democatalog.Manufacturer}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Manufacturers</em>' containment reference list. + * @see org.example.democatalog.DemocatalogPackage#getEnergyComponentCatalog_Manufacturers() + * @model containment="true" + * @generated + */ + EList<Manufacturer> getManufacturers(); + +} // EnergyComponentCatalog diff --git a/org.example.democatalog/src-gen/org/example/democatalog/Inverter.java b/org.example.democatalog/src-gen/org/example/democatalog/Inverter.java new file mode 100644 index 0000000000000000000000000000000000000000..2615b0f2f80ff245ff7362131fa578b633949da9 --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/Inverter.java @@ -0,0 +1,69 @@ +/** + */ +package org.example.democatalog; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Inverter</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link org.example.democatalog.Inverter#getMaxDCVoltage <em>Max DC Voltage</em>}</li> + * <li>{@link org.example.democatalog.Inverter#getMacDCCurrent <em>Mac DC Current</em>}</li> + * </ul> + * + * @see org.example.democatalog.DemocatalogPackage#getInverter() + * @model + * @generated + */ +public interface Inverter extends ElectricalDevice { + /** + * Returns the value of the '<em><b>Max DC Voltage</b></em>' attribute. + * The default value is <code>"0.0"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Max DC Voltage</em>' attribute. + * @see #setMaxDCVoltage(double) + * @see org.example.democatalog.DemocatalogPackage#getInverter_MaxDCVoltage() + * @model default="0.0" required="true" + * @generated + */ + double getMaxDCVoltage(); + + /** + * Sets the value of the '{@link org.example.democatalog.Inverter#getMaxDCVoltage <em>Max DC Voltage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Max DC Voltage</em>' attribute. + * @see #getMaxDCVoltage() + * @generated + */ + void setMaxDCVoltage(double value); + + /** + * Returns the value of the '<em><b>Mac DC Current</b></em>' attribute. + * The default value is <code>"0.0"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Mac DC Current</em>' attribute. + * @see #setMacDCCurrent(double) + * @see org.example.democatalog.DemocatalogPackage#getInverter_MacDCCurrent() + * @model default="0.0" required="true" + * @generated + */ + double getMacDCCurrent(); + + /** + * Sets the value of the '{@link org.example.democatalog.Inverter#getMacDCCurrent <em>Mac DC Current</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Mac DC Current</em>' attribute. + * @see #getMacDCCurrent() + * @generated + */ + void setMacDCCurrent(double value); + +} // Inverter diff --git a/org.example.democatalog/src-gen/org/example/democatalog/Manufacturer.java b/org.example.democatalog/src-gen/org/example/democatalog/Manufacturer.java new file mode 100644 index 0000000000000000000000000000000000000000..8608d40b73ba662572977586130c00e07dc18de6 --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/Manufacturer.java @@ -0,0 +1,47 @@ +/** + */ +package org.example.democatalog; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Manufacturer</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link org.example.democatalog.Manufacturer#getName <em>Name</em>}</li> + * </ul> + * + * @see org.example.democatalog.DemocatalogPackage#getManufacturer() + * @model + * @generated + */ +public interface Manufacturer extends EObject { + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * The default value is <code>""</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.example.democatalog.DemocatalogPackage#getManufacturer_Name() + * @model default="" required="true" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link org.example.democatalog.Manufacturer#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + +} // Manufacturer diff --git a/org.example.democatalog/src-gen/org/example/democatalog/SolarPanel.java b/org.example.democatalog/src-gen/org/example/democatalog/SolarPanel.java new file mode 100644 index 0000000000000000000000000000000000000000..8c2bd48a9aa54a9e5b2afb5bfb932864ea7e826b --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/SolarPanel.java @@ -0,0 +1,67 @@ +/** + */ +package org.example.democatalog; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Solar Panel</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link org.example.democatalog.SolarPanel#getMppVoltage <em>Mpp Voltage</em>}</li> + * <li>{@link org.example.democatalog.SolarPanel#getMppCurrent <em>Mpp Current</em>}</li> + * </ul> + * + * @see org.example.democatalog.DemocatalogPackage#getSolarPanel() + * @model + * @generated + */ +public interface SolarPanel extends ElectricalDevice { + /** + * Returns the value of the '<em><b>Mpp Voltage</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Mpp Voltage</em>' attribute. + * @see #setMppVoltage(double) + * @see org.example.democatalog.DemocatalogPackage#getSolarPanel_MppVoltage() + * @model required="true" + * @generated + */ + double getMppVoltage(); + + /** + * Sets the value of the '{@link org.example.democatalog.SolarPanel#getMppVoltage <em>Mpp Voltage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Mpp Voltage</em>' attribute. + * @see #getMppVoltage() + * @generated + */ + void setMppVoltage(double value); + + /** + * Returns the value of the '<em><b>Mpp Current</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Mpp Current</em>' attribute. + * @see #setMppCurrent(double) + * @see org.example.democatalog.DemocatalogPackage#getSolarPanel_MppCurrent() + * @model required="true" + * @generated + */ + double getMppCurrent(); + + /** + * Sets the value of the '{@link org.example.democatalog.SolarPanel#getMppCurrent <em>Mpp Current</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Mpp Current</em>' attribute. + * @see #getMppCurrent() + * @generated + */ + void setMppCurrent(double value); + +} // SolarPanel diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/BoilerImpl.java b/org.example.democatalog/src-gen/org/example/democatalog/impl/BoilerImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..d5f72e888ed49c6f5a446169ab1951ac3e7bff60 --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/impl/BoilerImpl.java @@ -0,0 +1,165 @@ +/** + */ +package org.example.democatalog.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.example.democatalog.Boiler; +import org.example.democatalog.BoilerType; +import org.example.democatalog.DemocatalogPackage; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Boiler</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link org.example.democatalog.impl.BoilerImpl#getBoilerType <em>Boiler Type</em>}</li> + * </ul> + * + * @generated + */ +public class BoilerImpl extends ChemicalDeviceImpl implements Boiler { + /** + * The default value of the '{@link #getBoilerType() <em>Boiler Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getBoilerType() + * @generated + * @ordered + */ + protected static final BoilerType BOILER_TYPE_EDEFAULT = BoilerType.LOW_TEMPERATURE; + + /** + * The cached value of the '{@link #getBoilerType() <em>Boiler Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getBoilerType() + * @generated + * @ordered + */ + protected BoilerType boilerType = BOILER_TYPE_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected BoilerImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return DemocatalogPackage.Literals.BOILER; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public BoilerType getBoilerType() { + return boilerType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setBoilerType(BoilerType newBoilerType) { + BoilerType oldBoilerType = boilerType; + boilerType = newBoilerType == null ? BOILER_TYPE_EDEFAULT : newBoilerType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, DemocatalogPackage.BOILER__BOILER_TYPE, oldBoilerType, + boilerType)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case DemocatalogPackage.BOILER__BOILER_TYPE: + return getBoilerType(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case DemocatalogPackage.BOILER__BOILER_TYPE: + setBoilerType((BoilerType) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case DemocatalogPackage.BOILER__BOILER_TYPE: + setBoilerType(BOILER_TYPE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case DemocatalogPackage.BOILER__BOILER_TYPE: + return boilerType != BOILER_TYPE_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (boilerType: "); + result.append(boilerType); + result.append(')'); + return result.toString(); + } + +} //BoilerImpl diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/ChemicalDeviceImpl.java b/org.example.democatalog/src-gen/org/example/democatalog/impl/ChemicalDeviceImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..43dc55ba6575da8f79cccc2fa9bf8f32da45a56b --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/impl/ChemicalDeviceImpl.java @@ -0,0 +1,165 @@ +/** + */ +package org.example.democatalog.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.example.democatalog.ChemicalDevice; +import org.example.democatalog.DemocatalogPackage; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Chemical Device</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link org.example.democatalog.impl.ChemicalDeviceImpl#getInstalledThermalPower <em>Installed Thermal Power</em>}</li> + * </ul> + * + * @generated + */ +public abstract class ChemicalDeviceImpl extends EnergyComponentImpl implements ChemicalDevice { + /** + * The default value of the '{@link #getInstalledThermalPower() <em>Installed Thermal Power</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getInstalledThermalPower() + * @generated + * @ordered + */ + protected static final double INSTALLED_THERMAL_POWER_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getInstalledThermalPower() <em>Installed Thermal Power</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getInstalledThermalPower() + * @generated + * @ordered + */ + protected double installedThermalPower = INSTALLED_THERMAL_POWER_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ChemicalDeviceImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return DemocatalogPackage.Literals.CHEMICAL_DEVICE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public double getInstalledThermalPower() { + return installedThermalPower; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setInstalledThermalPower(double newInstalledThermalPower) { + double oldInstalledThermalPower = installedThermalPower; + installedThermalPower = newInstalledThermalPower; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + DemocatalogPackage.CHEMICAL_DEVICE__INSTALLED_THERMAL_POWER, oldInstalledThermalPower, + installedThermalPower)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case DemocatalogPackage.CHEMICAL_DEVICE__INSTALLED_THERMAL_POWER: + return getInstalledThermalPower(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case DemocatalogPackage.CHEMICAL_DEVICE__INSTALLED_THERMAL_POWER: + setInstalledThermalPower((Double) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case DemocatalogPackage.CHEMICAL_DEVICE__INSTALLED_THERMAL_POWER: + setInstalledThermalPower(INSTALLED_THERMAL_POWER_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case DemocatalogPackage.CHEMICAL_DEVICE__INSTALLED_THERMAL_POWER: + return installedThermalPower != INSTALLED_THERMAL_POWER_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (installedThermalPower: "); + result.append(installedThermalPower); + result.append(')'); + return result.toString(); + } + +} //ChemicalDeviceImpl diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/CombinedHeatPowerImpl.java b/org.example.democatalog/src-gen/org/example/democatalog/impl/CombinedHeatPowerImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..14eed755bb296143b5484534fdc0295ab076480a --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/impl/CombinedHeatPowerImpl.java @@ -0,0 +1,165 @@ +/** + */ +package org.example.democatalog.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.example.democatalog.CombinedHeatPower; +import org.example.democatalog.DemocatalogPackage; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Combined Heat Power</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link org.example.democatalog.impl.CombinedHeatPowerImpl#getThermalEfficiency <em>Thermal Efficiency</em>}</li> + * </ul> + * + * @generated + */ +public class CombinedHeatPowerImpl extends ChemicalDeviceImpl implements CombinedHeatPower { + /** + * The default value of the '{@link #getThermalEfficiency() <em>Thermal Efficiency</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getThermalEfficiency() + * @generated + * @ordered + */ + protected static final double THERMAL_EFFICIENCY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getThermalEfficiency() <em>Thermal Efficiency</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getThermalEfficiency() + * @generated + * @ordered + */ + protected double thermalEfficiency = THERMAL_EFFICIENCY_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected CombinedHeatPowerImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return DemocatalogPackage.Literals.COMBINED_HEAT_POWER; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public double getThermalEfficiency() { + return thermalEfficiency; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setThermalEfficiency(double newThermalEfficiency) { + double oldThermalEfficiency = thermalEfficiency; + thermalEfficiency = newThermalEfficiency; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + DemocatalogPackage.COMBINED_HEAT_POWER__THERMAL_EFFICIENCY, oldThermalEfficiency, + thermalEfficiency)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case DemocatalogPackage.COMBINED_HEAT_POWER__THERMAL_EFFICIENCY: + return getThermalEfficiency(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case DemocatalogPackage.COMBINED_HEAT_POWER__THERMAL_EFFICIENCY: + setThermalEfficiency((Double) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case DemocatalogPackage.COMBINED_HEAT_POWER__THERMAL_EFFICIENCY: + setThermalEfficiency(THERMAL_EFFICIENCY_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case DemocatalogPackage.COMBINED_HEAT_POWER__THERMAL_EFFICIENCY: + return thermalEfficiency != THERMAL_EFFICIENCY_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (thermalEfficiency: "); + result.append(thermalEfficiency); + result.append(')'); + return result.toString(); + } + +} //CombinedHeatPowerImpl diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/DemocatalogFactoryImpl.java b/org.example.democatalog/src-gen/org/example/democatalog/impl/DemocatalogFactoryImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..32deb2169d1048ff63e5e63e52d0653a2d7abb3d --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/impl/DemocatalogFactoryImpl.java @@ -0,0 +1,209 @@ +/** + */ +package org.example.democatalog.impl; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EDataType; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.impl.EFactoryImpl; + +import org.eclipse.emf.ecore.plugin.EcorePlugin; + +import org.example.democatalog.*; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Factory</b>. + * <!-- end-user-doc --> + * @generated + */ +public class DemocatalogFactoryImpl extends EFactoryImpl implements DemocatalogFactory { + /** + * Creates the default factory implementation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static DemocatalogFactory init() { + try { + DemocatalogFactory theDemocatalogFactory = (DemocatalogFactory) EPackage.Registry.INSTANCE + .getEFactory(DemocatalogPackage.eNS_URI); + if (theDemocatalogFactory != null) { + return theDemocatalogFactory; + } + } catch (Exception exception) { + EcorePlugin.INSTANCE.log(exception); + } + return new DemocatalogFactoryImpl(); + } + + /** + * Creates an instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public DemocatalogFactoryImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EObject create(EClass eClass) { + switch (eClass.getClassifierID()) { + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG: + return createEnergyComponentCatalog(); + case DemocatalogPackage.BOILER: + return createBoiler(); + case DemocatalogPackage.COMBINED_HEAT_POWER: + return createCombinedHeatPower(); + case DemocatalogPackage.SOLAR_PANEL: + return createSolarPanel(); + case DemocatalogPackage.INVERTER: + return createInverter(); + case DemocatalogPackage.MANUFACTURER: + return createManufacturer(); + default: + throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object createFromString(EDataType eDataType, String initialValue) { + switch (eDataType.getClassifierID()) { + case DemocatalogPackage.BOILER_TYPE: + return createBoilerTypeFromString(eDataType, initialValue); + default: + throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String convertToString(EDataType eDataType, Object instanceValue) { + switch (eDataType.getClassifierID()) { + case DemocatalogPackage.BOILER_TYPE: + return convertBoilerTypeToString(eDataType, instanceValue); + default: + throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EnergyComponentCatalog createEnergyComponentCatalog() { + EnergyComponentCatalogImpl energyComponentCatalog = new EnergyComponentCatalogImpl(); + return energyComponentCatalog; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Boiler createBoiler() { + BoilerImpl boiler = new BoilerImpl(); + return boiler; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public CombinedHeatPower createCombinedHeatPower() { + CombinedHeatPowerImpl combinedHeatPower = new CombinedHeatPowerImpl(); + return combinedHeatPower; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public SolarPanel createSolarPanel() { + SolarPanelImpl solarPanel = new SolarPanelImpl(); + return solarPanel; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Inverter createInverter() { + InverterImpl inverter = new InverterImpl(); + return inverter; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Manufacturer createManufacturer() { + ManufacturerImpl manufacturer = new ManufacturerImpl(); + return manufacturer; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public BoilerType createBoilerTypeFromString(EDataType eDataType, String initialValue) { + BoilerType result = BoilerType.get(initialValue); + if (result == null) + throw new IllegalArgumentException( + "The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertBoilerTypeToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public DemocatalogPackage getDemocatalogPackage() { + return (DemocatalogPackage) getEPackage(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @deprecated + * @generated + */ + @Deprecated + public static DemocatalogPackage getPackage() { + return DemocatalogPackage.eINSTANCE; + } + +} //DemocatalogFactoryImpl diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/DemocatalogPackageImpl.java b/org.example.democatalog/src-gen/org/example/democatalog/impl/DemocatalogPackageImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..e85f4d0dcd6a8ceecaad62aee308648594567adc --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/impl/DemocatalogPackageImpl.java @@ -0,0 +1,612 @@ +/** + */ +package org.example.democatalog.impl; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EEnum; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +import org.eclipse.emf.ecore.impl.EPackageImpl; + +import org.example.democatalog.Boiler; +import org.example.democatalog.BoilerType; +import org.example.democatalog.ChemicalDevice; +import org.example.democatalog.CombinedHeatPower; +import org.example.democatalog.DemocatalogFactory; +import org.example.democatalog.DemocatalogPackage; +import org.example.democatalog.ElectricalDevice; +import org.example.democatalog.EnergyComponent; +import org.example.democatalog.EnergyComponentCatalog; +import org.example.democatalog.Inverter; +import org.example.democatalog.Manufacturer; +import org.example.democatalog.SolarPanel; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Package</b>. + * <!-- end-user-doc --> + * @generated + */ +public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogPackage { + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass energyComponentCatalogEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass boilerEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass combinedHeatPowerEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass solarPanelEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass inverterEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass manufacturerEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass chemicalDeviceEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass energyComponentEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass electricalDeviceEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EEnum boilerTypeEEnum = null; + + /** + * Creates an instance of the model <b>Package</b>, registered with + * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package + * package URI value. + * <p>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. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.ecore.EPackage.Registry + * @see org.example.democatalog.DemocatalogPackage#eNS_URI + * @see #init() + * @generated + */ + private DemocatalogPackageImpl() { + super(eNS_URI, DemocatalogFactory.eINSTANCE); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static boolean isInited = false; + + /** + * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. + * + * <p>This method is used to initialize {@link DemocatalogPackage#eINSTANCE} when that field is accessed. + * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #eNS_URI + * @see #createPackageContents() + * @see #initializePackageContents() + * @generated + */ + public static DemocatalogPackage init() { + if (isInited) + return (DemocatalogPackage) EPackage.Registry.INSTANCE.getEPackage(DemocatalogPackage.eNS_URI); + + // Obtain or create and register package + Object registeredDemocatalogPackage = EPackage.Registry.INSTANCE.get(eNS_URI); + DemocatalogPackageImpl theDemocatalogPackage = registeredDemocatalogPackage instanceof DemocatalogPackageImpl + ? (DemocatalogPackageImpl) registeredDemocatalogPackage + : new DemocatalogPackageImpl(); + + isInited = true; + + // Create package meta-data objects + theDemocatalogPackage.createPackageContents(); + + // Initialize created meta-data + theDemocatalogPackage.initializePackageContents(); + + // Mark meta-data to indicate it can't be changed + theDemocatalogPackage.freeze(); + + // Update the registry and return the package + EPackage.Registry.INSTANCE.put(DemocatalogPackage.eNS_URI, theDemocatalogPackage); + return theDemocatalogPackage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getEnergyComponentCatalog() { + return energyComponentCatalogEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getEnergyComponentCatalog_Author() { + return (EAttribute) energyComponentCatalogEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getEnergyComponentCatalog_Boilers() { + return (EReference) energyComponentCatalogEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getEnergyComponentCatalog_Chps() { + return (EReference) energyComponentCatalogEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getEnergyComponentCatalog_SolarPanels() { + return (EReference) energyComponentCatalogEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getEnergyComponentCatalog_Inverters() { + return (EReference) energyComponentCatalogEClass.getEStructuralFeatures().get(4); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getEnergyComponentCatalog_Manufacturers() { + return (EReference) energyComponentCatalogEClass.getEStructuralFeatures().get(5); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getBoiler() { + return boilerEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getBoiler_BoilerType() { + return (EAttribute) boilerEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getCombinedHeatPower() { + return combinedHeatPowerEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getCombinedHeatPower_ThermalEfficiency() { + return (EAttribute) combinedHeatPowerEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getSolarPanel() { + return solarPanelEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getSolarPanel_MppVoltage() { + return (EAttribute) solarPanelEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getSolarPanel_MppCurrent() { + return (EAttribute) solarPanelEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getInverter() { + return inverterEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getInverter_MaxDCVoltage() { + return (EAttribute) inverterEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getInverter_MacDCCurrent() { + return (EAttribute) inverterEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getManufacturer() { + return manufacturerEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getManufacturer_Name() { + return (EAttribute) manufacturerEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getChemicalDevice() { + return chemicalDeviceEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getChemicalDevice_InstalledThermalPower() { + return (EAttribute) chemicalDeviceEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getEnergyComponent() { + return energyComponentEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getEnergyComponent_ModelName() { + return (EAttribute) energyComponentEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getEnergyComponent_RevisionYear() { + return (EAttribute) energyComponentEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getEnergyComponent_ProducedBy() { + return (EReference) energyComponentEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getElectricalDevice() { + return electricalDeviceEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getElectricalDevice_NominalPower() { + return (EAttribute) electricalDeviceEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EEnum getBoilerType() { + return boilerTypeEEnum; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public DemocatalogFactory getDemocatalogFactory() { + return (DemocatalogFactory) getEFactoryInstance(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @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. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void createPackageContents() { + if (isCreated) + return; + isCreated = true; + + // Create classes and their features + energyComponentCatalogEClass = createEClass(ENERGY_COMPONENT_CATALOG); + createEAttribute(energyComponentCatalogEClass, ENERGY_COMPONENT_CATALOG__AUTHOR); + createEReference(energyComponentCatalogEClass, ENERGY_COMPONENT_CATALOG__BOILERS); + createEReference(energyComponentCatalogEClass, ENERGY_COMPONENT_CATALOG__CHPS); + createEReference(energyComponentCatalogEClass, ENERGY_COMPONENT_CATALOG__SOLAR_PANELS); + createEReference(energyComponentCatalogEClass, ENERGY_COMPONENT_CATALOG__INVERTERS); + createEReference(energyComponentCatalogEClass, ENERGY_COMPONENT_CATALOG__MANUFACTURERS); + + boilerEClass = createEClass(BOILER); + createEAttribute(boilerEClass, BOILER__BOILER_TYPE); + + combinedHeatPowerEClass = createEClass(COMBINED_HEAT_POWER); + createEAttribute(combinedHeatPowerEClass, COMBINED_HEAT_POWER__THERMAL_EFFICIENCY); + + solarPanelEClass = createEClass(SOLAR_PANEL); + createEAttribute(solarPanelEClass, SOLAR_PANEL__MPP_VOLTAGE); + createEAttribute(solarPanelEClass, SOLAR_PANEL__MPP_CURRENT); + + inverterEClass = createEClass(INVERTER); + createEAttribute(inverterEClass, INVERTER__MAX_DC_VOLTAGE); + createEAttribute(inverterEClass, INVERTER__MAC_DC_CURRENT); + + manufacturerEClass = createEClass(MANUFACTURER); + createEAttribute(manufacturerEClass, MANUFACTURER__NAME); + + chemicalDeviceEClass = createEClass(CHEMICAL_DEVICE); + createEAttribute(chemicalDeviceEClass, CHEMICAL_DEVICE__INSTALLED_THERMAL_POWER); + + energyComponentEClass = createEClass(ENERGY_COMPONENT); + createEAttribute(energyComponentEClass, ENERGY_COMPONENT__MODEL_NAME); + createEAttribute(energyComponentEClass, ENERGY_COMPONENT__REVISION_YEAR); + createEReference(energyComponentEClass, ENERGY_COMPONENT__PRODUCED_BY); + + electricalDeviceEClass = createEClass(ELECTRICAL_DEVICE); + createEAttribute(electricalDeviceEClass, ELECTRICAL_DEVICE__NOMINAL_POWER); + + // Create enums + boilerTypeEEnum = createEEnum(BOILER_TYPE); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @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. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @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 + boilerEClass.getESuperTypes().add(this.getChemicalDevice()); + combinedHeatPowerEClass.getESuperTypes().add(this.getChemicalDevice()); + solarPanelEClass.getESuperTypes().add(this.getElectricalDevice()); + inverterEClass.getESuperTypes().add(this.getElectricalDevice()); + chemicalDeviceEClass.getESuperTypes().add(this.getEnergyComponent()); + electricalDeviceEClass.getESuperTypes().add(this.getEnergyComponent()); + + // Initialize classes, features, and operations; add parameters + initEClass(energyComponentCatalogEClass, EnergyComponentCatalog.class, "EnergyComponentCatalog", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getEnergyComponentCatalog_Author(), ecorePackage.getEString(), "author", null, 1, 1, + EnergyComponentCatalog.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getEnergyComponentCatalog_Boilers(), this.getBoiler(), null, "boilers", null, 0, -1, + EnergyComponentCatalog.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getEnergyComponentCatalog_Chps(), this.getCombinedHeatPower(), null, "chps", null, 0, -1, + EnergyComponentCatalog.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getEnergyComponentCatalog_SolarPanels(), this.getSolarPanel(), null, "solarPanels", null, 0, -1, + EnergyComponentCatalog.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getEnergyComponentCatalog_Inverters(), this.getInverter(), null, "inverters", null, 0, -1, + EnergyComponentCatalog.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getEnergyComponentCatalog_Manufacturers(), this.getManufacturer(), null, "manufacturers", null, + 0, -1, EnergyComponentCatalog.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(boilerEClass, Boiler.class, "Boiler", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getBoiler_BoilerType(), this.getBoilerType(), "boilerType", null, 1, 1, Boiler.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(combinedHeatPowerEClass, CombinedHeatPower.class, "CombinedHeatPower", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getCombinedHeatPower_ThermalEfficiency(), ecorePackage.getEDouble(), "thermalEfficiency", "0.0", + 1, 1, CombinedHeatPower.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(solarPanelEClass, SolarPanel.class, "SolarPanel", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getSolarPanel_MppVoltage(), ecorePackage.getEDouble(), "mppVoltage", null, 1, 1, + SolarPanel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getSolarPanel_MppCurrent(), ecorePackage.getEDouble(), "mppCurrent", null, 1, 1, + SolarPanel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + initEClass(inverterEClass, Inverter.class, "Inverter", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getInverter_MaxDCVoltage(), ecorePackage.getEDouble(), "maxDCVoltage", "0.0", 1, 1, + Inverter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getInverter_MacDCCurrent(), ecorePackage.getEDouble(), "macDCCurrent", "0.0", 1, 1, + Inverter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + initEClass(manufacturerEClass, Manufacturer.class, "Manufacturer", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getManufacturer_Name(), ecorePackage.getEString(), "name", "", 1, 1, Manufacturer.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(chemicalDeviceEClass, ChemicalDevice.class, "ChemicalDevice", IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getChemicalDevice_InstalledThermalPower(), ecorePackage.getEDouble(), "installedThermalPower", + "0.0", 1, 1, ChemicalDevice.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(energyComponentEClass, EnergyComponent.class, "EnergyComponent", IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getEnergyComponent_ModelName(), ecorePackage.getEString(), "modelName", null, 1, 1, + EnergyComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getEnergyComponent_RevisionYear(), ecorePackage.getEInt(), "revisionYear", null, 0, 1, + EnergyComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEReference(getEnergyComponent_ProducedBy(), this.getManufacturer(), null, "producedBy", null, 1, 1, + EnergyComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(electricalDeviceEClass, ElectricalDevice.class, "ElectricalDevice", IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getElectricalDevice_NominalPower(), ecorePackage.getEDouble(), "nominalPower", "0.0", 1, 1, + ElectricalDevice.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + // Initialize enums and add enum literals + initEEnum(boilerTypeEEnum, BoilerType.class, "BoilerType"); + addEEnumLiteral(boilerTypeEEnum, BoilerType.LOW_TEMPERATURE); + addEEnumLiteral(boilerTypeEEnum, BoilerType.CONDENSING); + + // Create resource + createResource(eNS_URI); + } + +} //DemocatalogPackageImpl diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/ElectricalDeviceImpl.java b/org.example.democatalog/src-gen/org/example/democatalog/impl/ElectricalDeviceImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..9526716cbf32459c8cf258478bed62f1855aae8e --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/impl/ElectricalDeviceImpl.java @@ -0,0 +1,164 @@ +/** + */ +package org.example.democatalog.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.example.democatalog.DemocatalogPackage; +import org.example.democatalog.ElectricalDevice; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Electrical Device</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link org.example.democatalog.impl.ElectricalDeviceImpl#getNominalPower <em>Nominal Power</em>}</li> + * </ul> + * + * @generated + */ +public abstract class ElectricalDeviceImpl extends EnergyComponentImpl implements ElectricalDevice { + /** + * The default value of the '{@link #getNominalPower() <em>Nominal Power</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getNominalPower() + * @generated + * @ordered + */ + protected static final double NOMINAL_POWER_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getNominalPower() <em>Nominal Power</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getNominalPower() + * @generated + * @ordered + */ + protected double nominalPower = NOMINAL_POWER_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ElectricalDeviceImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return DemocatalogPackage.Literals.ELECTRICAL_DEVICE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public double getNominalPower() { + return nominalPower; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setNominalPower(double newNominalPower) { + double oldNominalPower = nominalPower; + nominalPower = newNominalPower; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, DemocatalogPackage.ELECTRICAL_DEVICE__NOMINAL_POWER, + oldNominalPower, nominalPower)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case DemocatalogPackage.ELECTRICAL_DEVICE__NOMINAL_POWER: + return getNominalPower(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case DemocatalogPackage.ELECTRICAL_DEVICE__NOMINAL_POWER: + setNominalPower((Double) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case DemocatalogPackage.ELECTRICAL_DEVICE__NOMINAL_POWER: + setNominalPower(NOMINAL_POWER_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case DemocatalogPackage.ELECTRICAL_DEVICE__NOMINAL_POWER: + return nominalPower != NOMINAL_POWER_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (nominalPower: "); + result.append(nominalPower); + result.append(')'); + return result.toString(); + } + +} //ElectricalDeviceImpl diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/EnergyComponentCatalogImpl.java b/org.example.democatalog/src-gen/org/example/democatalog/impl/EnergyComponentCatalogImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..1b24eb82fd318ad3c19e0696edfe94e21612e735 --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/impl/EnergyComponentCatalogImpl.java @@ -0,0 +1,377 @@ +/** + */ +package org.example.democatalog.impl; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.example.democatalog.Boiler; +import org.example.democatalog.CombinedHeatPower; +import org.example.democatalog.DemocatalogPackage; +import org.example.democatalog.EnergyComponentCatalog; +import org.example.democatalog.Inverter; +import org.example.democatalog.Manufacturer; +import org.example.democatalog.SolarPanel; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Energy Component Catalog</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link org.example.democatalog.impl.EnergyComponentCatalogImpl#getAuthor <em>Author</em>}</li> + * <li>{@link org.example.democatalog.impl.EnergyComponentCatalogImpl#getBoilers <em>Boilers</em>}</li> + * <li>{@link org.example.democatalog.impl.EnergyComponentCatalogImpl#getChps <em>Chps</em>}</li> + * <li>{@link org.example.democatalog.impl.EnergyComponentCatalogImpl#getSolarPanels <em>Solar Panels</em>}</li> + * <li>{@link org.example.democatalog.impl.EnergyComponentCatalogImpl#getInverters <em>Inverters</em>}</li> + * <li>{@link org.example.democatalog.impl.EnergyComponentCatalogImpl#getManufacturers <em>Manufacturers</em>}</li> + * </ul> + * + * @generated + */ +public class EnergyComponentCatalogImpl extends MinimalEObjectImpl.Container implements EnergyComponentCatalog { + /** + * The default value of the '{@link #getAuthor() <em>Author</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAuthor() + * @generated + * @ordered + */ + protected static final String AUTHOR_EDEFAULT = null; + + /** + * The cached value of the '{@link #getAuthor() <em>Author</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAuthor() + * @generated + * @ordered + */ + protected String author = AUTHOR_EDEFAULT; + + /** + * The cached value of the '{@link #getBoilers() <em>Boilers</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getBoilers() + * @generated + * @ordered + */ + protected EList<Boiler> boilers; + + /** + * The cached value of the '{@link #getChps() <em>Chps</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getChps() + * @generated + * @ordered + */ + protected EList<CombinedHeatPower> chps; + + /** + * The cached value of the '{@link #getSolarPanels() <em>Solar Panels</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSolarPanels() + * @generated + * @ordered + */ + protected EList<SolarPanel> solarPanels; + + /** + * The cached value of the '{@link #getInverters() <em>Inverters</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getInverters() + * @generated + * @ordered + */ + protected EList<Inverter> inverters; + + /** + * The cached value of the '{@link #getManufacturers() <em>Manufacturers</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getManufacturers() + * @generated + * @ordered + */ + protected EList<Manufacturer> manufacturers; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected EnergyComponentCatalogImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return DemocatalogPackage.Literals.ENERGY_COMPONENT_CATALOG; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getAuthor() { + return author; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setAuthor(String newAuthor) { + String oldAuthor = author; + author = newAuthor; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, DemocatalogPackage.ENERGY_COMPONENT_CATALOG__AUTHOR, + oldAuthor, author)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<Boiler> getBoilers() { + if (boilers == null) { + boilers = new EObjectContainmentEList<Boiler>(Boiler.class, this, + DemocatalogPackage.ENERGY_COMPONENT_CATALOG__BOILERS); + } + return boilers; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<CombinedHeatPower> getChps() { + if (chps == null) { + chps = new EObjectContainmentEList<CombinedHeatPower>(CombinedHeatPower.class, this, + DemocatalogPackage.ENERGY_COMPONENT_CATALOG__CHPS); + } + return chps; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<SolarPanel> getSolarPanels() { + if (solarPanels == null) { + solarPanels = new EObjectContainmentEList<SolarPanel>(SolarPanel.class, this, + DemocatalogPackage.ENERGY_COMPONENT_CATALOG__SOLAR_PANELS); + } + return solarPanels; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<Inverter> getInverters() { + if (inverters == null) { + inverters = new EObjectContainmentEList<Inverter>(Inverter.class, this, + DemocatalogPackage.ENERGY_COMPONENT_CATALOG__INVERTERS); + } + return inverters; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<Manufacturer> getManufacturers() { + if (manufacturers == null) { + manufacturers = new EObjectContainmentEList<Manufacturer>(Manufacturer.class, this, + DemocatalogPackage.ENERGY_COMPONENT_CATALOG__MANUFACTURERS); + } + return manufacturers; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__BOILERS: + return ((InternalEList<?>) getBoilers()).basicRemove(otherEnd, msgs); + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__CHPS: + return ((InternalEList<?>) getChps()).basicRemove(otherEnd, msgs); + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__SOLAR_PANELS: + return ((InternalEList<?>) getSolarPanels()).basicRemove(otherEnd, msgs); + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__INVERTERS: + return ((InternalEList<?>) getInverters()).basicRemove(otherEnd, msgs); + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__MANUFACTURERS: + return ((InternalEList<?>) getManufacturers()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__AUTHOR: + return getAuthor(); + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__BOILERS: + return getBoilers(); + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__CHPS: + return getChps(); + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__SOLAR_PANELS: + return getSolarPanels(); + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__INVERTERS: + return getInverters(); + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__MANUFACTURERS: + return getManufacturers(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__AUTHOR: + setAuthor((String) newValue); + return; + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__BOILERS: + getBoilers().clear(); + getBoilers().addAll((Collection<? extends Boiler>) newValue); + return; + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__CHPS: + getChps().clear(); + getChps().addAll((Collection<? extends CombinedHeatPower>) newValue); + return; + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__SOLAR_PANELS: + getSolarPanels().clear(); + getSolarPanels().addAll((Collection<? extends SolarPanel>) newValue); + return; + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__INVERTERS: + getInverters().clear(); + getInverters().addAll((Collection<? extends Inverter>) newValue); + return; + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__MANUFACTURERS: + getManufacturers().clear(); + getManufacturers().addAll((Collection<? extends Manufacturer>) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__AUTHOR: + setAuthor(AUTHOR_EDEFAULT); + return; + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__BOILERS: + getBoilers().clear(); + return; + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__CHPS: + getChps().clear(); + return; + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__SOLAR_PANELS: + getSolarPanels().clear(); + return; + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__INVERTERS: + getInverters().clear(); + return; + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__MANUFACTURERS: + getManufacturers().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__AUTHOR: + return AUTHOR_EDEFAULT == null ? author != null : !AUTHOR_EDEFAULT.equals(author); + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__BOILERS: + return boilers != null && !boilers.isEmpty(); + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__CHPS: + return chps != null && !chps.isEmpty(); + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__SOLAR_PANELS: + return solarPanels != null && !solarPanels.isEmpty(); + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__INVERTERS: + return inverters != null && !inverters.isEmpty(); + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG__MANUFACTURERS: + return manufacturers != null && !manufacturers.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (author: "); + result.append(author); + result.append(')'); + return result.toString(); + } + +} //EnergyComponentCatalogImpl diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/EnergyComponentImpl.java b/org.example.democatalog/src-gen/org/example/democatalog/impl/EnergyComponentImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..dc774c146e6f27a69c4f4f9014336a089b5590a3 --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/impl/EnergyComponentImpl.java @@ -0,0 +1,285 @@ +/** + */ +package org.example.democatalog.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.example.democatalog.DemocatalogPackage; +import org.example.democatalog.EnergyComponent; +import org.example.democatalog.Manufacturer; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Energy Component</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link org.example.democatalog.impl.EnergyComponentImpl#getModelName <em>Model Name</em>}</li> + * <li>{@link org.example.democatalog.impl.EnergyComponentImpl#getRevisionYear <em>Revision Year</em>}</li> + * <li>{@link org.example.democatalog.impl.EnergyComponentImpl#getProducedBy <em>Produced By</em>}</li> + * </ul> + * + * @generated + */ +public abstract class EnergyComponentImpl extends MinimalEObjectImpl.Container implements EnergyComponent { + /** + * The default value of the '{@link #getModelName() <em>Model Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getModelName() + * @generated + * @ordered + */ + protected static final String MODEL_NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getModelName() <em>Model Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getModelName() + * @generated + * @ordered + */ + protected String modelName = MODEL_NAME_EDEFAULT; + + /** + * The default value of the '{@link #getRevisionYear() <em>Revision Year</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRevisionYear() + * @generated + * @ordered + */ + protected static final int REVISION_YEAR_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getRevisionYear() <em>Revision Year</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRevisionYear() + * @generated + * @ordered + */ + protected int revisionYear = REVISION_YEAR_EDEFAULT; + + /** + * The cached value of the '{@link #getProducedBy() <em>Produced By</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getProducedBy() + * @generated + * @ordered + */ + protected Manufacturer producedBy; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected EnergyComponentImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return DemocatalogPackage.Literals.ENERGY_COMPONENT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getModelName() { + return modelName; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setModelName(String newModelName) { + String oldModelName = modelName; + modelName = newModelName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, DemocatalogPackage.ENERGY_COMPONENT__MODEL_NAME, + oldModelName, modelName)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public int getRevisionYear() { + return revisionYear; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setRevisionYear(int newRevisionYear) { + int oldRevisionYear = revisionYear; + revisionYear = newRevisionYear; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, DemocatalogPackage.ENERGY_COMPONENT__REVISION_YEAR, + oldRevisionYear, revisionYear)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Manufacturer getProducedBy() { + if (producedBy != null && producedBy.eIsProxy()) { + InternalEObject oldProducedBy = (InternalEObject) producedBy; + producedBy = (Manufacturer) eResolveProxy(oldProducedBy); + if (producedBy != oldProducedBy) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + DemocatalogPackage.ENERGY_COMPONENT__PRODUCED_BY, oldProducedBy, producedBy)); + } + } + return producedBy; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Manufacturer basicGetProducedBy() { + return producedBy; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setProducedBy(Manufacturer newProducedBy) { + Manufacturer oldProducedBy = producedBy; + producedBy = newProducedBy; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, DemocatalogPackage.ENERGY_COMPONENT__PRODUCED_BY, + oldProducedBy, producedBy)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case DemocatalogPackage.ENERGY_COMPONENT__MODEL_NAME: + return getModelName(); + case DemocatalogPackage.ENERGY_COMPONENT__REVISION_YEAR: + return getRevisionYear(); + case DemocatalogPackage.ENERGY_COMPONENT__PRODUCED_BY: + if (resolve) + return getProducedBy(); + return basicGetProducedBy(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case DemocatalogPackage.ENERGY_COMPONENT__MODEL_NAME: + setModelName((String) newValue); + return; + case DemocatalogPackage.ENERGY_COMPONENT__REVISION_YEAR: + setRevisionYear((Integer) newValue); + return; + case DemocatalogPackage.ENERGY_COMPONENT__PRODUCED_BY: + setProducedBy((Manufacturer) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case DemocatalogPackage.ENERGY_COMPONENT__MODEL_NAME: + setModelName(MODEL_NAME_EDEFAULT); + return; + case DemocatalogPackage.ENERGY_COMPONENT__REVISION_YEAR: + setRevisionYear(REVISION_YEAR_EDEFAULT); + return; + case DemocatalogPackage.ENERGY_COMPONENT__PRODUCED_BY: + setProducedBy((Manufacturer) null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case DemocatalogPackage.ENERGY_COMPONENT__MODEL_NAME: + return MODEL_NAME_EDEFAULT == null ? modelName != null : !MODEL_NAME_EDEFAULT.equals(modelName); + case DemocatalogPackage.ENERGY_COMPONENT__REVISION_YEAR: + return revisionYear != REVISION_YEAR_EDEFAULT; + case DemocatalogPackage.ENERGY_COMPONENT__PRODUCED_BY: + return producedBy != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (modelName: "); + result.append(modelName); + result.append(", revisionYear: "); + result.append(revisionYear); + result.append(')'); + return result.toString(); + } + +} //EnergyComponentImpl diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/InverterImpl.java b/org.example.democatalog/src-gen/org/example/democatalog/impl/InverterImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..2113e413cdde5f8a0aa183d335830139ab94ea09 --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/impl/InverterImpl.java @@ -0,0 +1,219 @@ +/** + */ +package org.example.democatalog.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.example.democatalog.DemocatalogPackage; +import org.example.democatalog.Inverter; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Inverter</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link org.example.democatalog.impl.InverterImpl#getMaxDCVoltage <em>Max DC Voltage</em>}</li> + * <li>{@link org.example.democatalog.impl.InverterImpl#getMacDCCurrent <em>Mac DC Current</em>}</li> + * </ul> + * + * @generated + */ +public class InverterImpl extends ElectricalDeviceImpl implements Inverter { + /** + * The default value of the '{@link #getMaxDCVoltage() <em>Max DC Voltage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMaxDCVoltage() + * @generated + * @ordered + */ + protected static final double MAX_DC_VOLTAGE_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getMaxDCVoltage() <em>Max DC Voltage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMaxDCVoltage() + * @generated + * @ordered + */ + protected double maxDCVoltage = MAX_DC_VOLTAGE_EDEFAULT; + + /** + * The default value of the '{@link #getMacDCCurrent() <em>Mac DC Current</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMacDCCurrent() + * @generated + * @ordered + */ + protected static final double MAC_DC_CURRENT_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getMacDCCurrent() <em>Mac DC Current</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMacDCCurrent() + * @generated + * @ordered + */ + protected double macDCCurrent = MAC_DC_CURRENT_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected InverterImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return DemocatalogPackage.Literals.INVERTER; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public double getMaxDCVoltage() { + return maxDCVoltage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setMaxDCVoltage(double newMaxDCVoltage) { + double oldMaxDCVoltage = maxDCVoltage; + maxDCVoltage = newMaxDCVoltage; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, DemocatalogPackage.INVERTER__MAX_DC_VOLTAGE, + oldMaxDCVoltage, maxDCVoltage)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public double getMacDCCurrent() { + return macDCCurrent; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setMacDCCurrent(double newMacDCCurrent) { + double oldMacDCCurrent = macDCCurrent; + macDCCurrent = newMacDCCurrent; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, DemocatalogPackage.INVERTER__MAC_DC_CURRENT, + oldMacDCCurrent, macDCCurrent)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case DemocatalogPackage.INVERTER__MAX_DC_VOLTAGE: + return getMaxDCVoltage(); + case DemocatalogPackage.INVERTER__MAC_DC_CURRENT: + return getMacDCCurrent(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case DemocatalogPackage.INVERTER__MAX_DC_VOLTAGE: + setMaxDCVoltage((Double) newValue); + return; + case DemocatalogPackage.INVERTER__MAC_DC_CURRENT: + setMacDCCurrent((Double) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case DemocatalogPackage.INVERTER__MAX_DC_VOLTAGE: + setMaxDCVoltage(MAX_DC_VOLTAGE_EDEFAULT); + return; + case DemocatalogPackage.INVERTER__MAC_DC_CURRENT: + setMacDCCurrent(MAC_DC_CURRENT_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case DemocatalogPackage.INVERTER__MAX_DC_VOLTAGE: + return maxDCVoltage != MAX_DC_VOLTAGE_EDEFAULT; + case DemocatalogPackage.INVERTER__MAC_DC_CURRENT: + return macDCCurrent != MAC_DC_CURRENT_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (maxDCVoltage: "); + result.append(maxDCVoltage); + result.append(", macDCCurrent: "); + result.append(macDCCurrent); + result.append(')'); + return result.toString(); + } + +} //InverterImpl diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/ManufacturerImpl.java b/org.example.democatalog/src-gen/org/example/democatalog/impl/ManufacturerImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..52d5e1042e440cd79e15445d1fb695677b7093b6 --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/impl/ManufacturerImpl.java @@ -0,0 +1,165 @@ +/** + */ +package org.example.democatalog.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.example.democatalog.DemocatalogPackage; +import org.example.democatalog.Manufacturer; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Manufacturer</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link org.example.democatalog.impl.ManufacturerImpl#getName <em>Name</em>}</li> + * </ul> + * + * @generated + */ +public class ManufacturerImpl extends MinimalEObjectImpl.Container implements Manufacturer { + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = ""; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ManufacturerImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return DemocatalogPackage.Literals.MANUFACTURER; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setName(String newName) { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, DemocatalogPackage.MANUFACTURER__NAME, oldName, + name)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case DemocatalogPackage.MANUFACTURER__NAME: + return getName(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case DemocatalogPackage.MANUFACTURER__NAME: + setName((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case DemocatalogPackage.MANUFACTURER__NAME: + setName(NAME_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case DemocatalogPackage.MANUFACTURER__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} //ManufacturerImpl diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/SolarPanelImpl.java b/org.example.democatalog/src-gen/org/example/democatalog/impl/SolarPanelImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..199729cff29e620dc7651bb40e93115880eba647 --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/impl/SolarPanelImpl.java @@ -0,0 +1,219 @@ +/** + */ +package org.example.democatalog.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.example.democatalog.DemocatalogPackage; +import org.example.democatalog.SolarPanel; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Solar Panel</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link org.example.democatalog.impl.SolarPanelImpl#getMppVoltage <em>Mpp Voltage</em>}</li> + * <li>{@link org.example.democatalog.impl.SolarPanelImpl#getMppCurrent <em>Mpp Current</em>}</li> + * </ul> + * + * @generated + */ +public class SolarPanelImpl extends ElectricalDeviceImpl implements SolarPanel { + /** + * The default value of the '{@link #getMppVoltage() <em>Mpp Voltage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMppVoltage() + * @generated + * @ordered + */ + protected static final double MPP_VOLTAGE_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getMppVoltage() <em>Mpp Voltage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMppVoltage() + * @generated + * @ordered + */ + protected double mppVoltage = MPP_VOLTAGE_EDEFAULT; + + /** + * The default value of the '{@link #getMppCurrent() <em>Mpp Current</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMppCurrent() + * @generated + * @ordered + */ + protected static final double MPP_CURRENT_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getMppCurrent() <em>Mpp Current</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMppCurrent() + * @generated + * @ordered + */ + protected double mppCurrent = MPP_CURRENT_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected SolarPanelImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return DemocatalogPackage.Literals.SOLAR_PANEL; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public double getMppVoltage() { + return mppVoltage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setMppVoltage(double newMppVoltage) { + double oldMppVoltage = mppVoltage; + mppVoltage = newMppVoltage; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, DemocatalogPackage.SOLAR_PANEL__MPP_VOLTAGE, + oldMppVoltage, mppVoltage)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public double getMppCurrent() { + return mppCurrent; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setMppCurrent(double newMppCurrent) { + double oldMppCurrent = mppCurrent; + mppCurrent = newMppCurrent; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, DemocatalogPackage.SOLAR_PANEL__MPP_CURRENT, + oldMppCurrent, mppCurrent)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case DemocatalogPackage.SOLAR_PANEL__MPP_VOLTAGE: + return getMppVoltage(); + case DemocatalogPackage.SOLAR_PANEL__MPP_CURRENT: + return getMppCurrent(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case DemocatalogPackage.SOLAR_PANEL__MPP_VOLTAGE: + setMppVoltage((Double) newValue); + return; + case DemocatalogPackage.SOLAR_PANEL__MPP_CURRENT: + setMppCurrent((Double) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case DemocatalogPackage.SOLAR_PANEL__MPP_VOLTAGE: + setMppVoltage(MPP_VOLTAGE_EDEFAULT); + return; + case DemocatalogPackage.SOLAR_PANEL__MPP_CURRENT: + setMppCurrent(MPP_CURRENT_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case DemocatalogPackage.SOLAR_PANEL__MPP_VOLTAGE: + return mppVoltage != MPP_VOLTAGE_EDEFAULT; + case DemocatalogPackage.SOLAR_PANEL__MPP_CURRENT: + return mppCurrent != MPP_CURRENT_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (mppVoltage: "); + result.append(mppVoltage); + result.append(", mppCurrent: "); + result.append(mppCurrent); + result.append(')'); + return result.toString(); + } + +} //SolarPanelImpl diff --git a/org.example.democatalog/src-gen/org/example/democatalog/util/DemocatalogAdapterFactory.java b/org.example.democatalog/src-gen/org/example/democatalog/util/DemocatalogAdapterFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..37faf205d94225d65792a210eb2be938bcfd743e --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/util/DemocatalogAdapterFactory.java @@ -0,0 +1,271 @@ +/** + */ +package org.example.democatalog.util; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notifier; + +import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; + +import org.eclipse.emf.ecore.EObject; + +import org.example.democatalog.*; + +/** + * <!-- begin-user-doc --> + * The <b>Adapter Factory</b> for the model. + * It provides an adapter <code>createXXX</code> method for each class of the model. + * <!-- end-user-doc --> + * @see org.example.democatalog.DemocatalogPackage + * @generated + */ +public class DemocatalogAdapterFactory extends AdapterFactoryImpl { + /** + * The cached model package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static DemocatalogPackage modelPackage; + + /** + * Creates an instance of the adapter factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public DemocatalogAdapterFactory() { + if (modelPackage == null) { + modelPackage = DemocatalogPackage.eINSTANCE; + } + } + + /** + * Returns whether this factory is applicable for the type of the object. + * <!-- begin-user-doc --> + * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model. + * <!-- end-user-doc --> + * @return whether this factory is applicable for the type of the object. + * @generated + */ + @Override + public boolean isFactoryForType(Object object) { + if (object == modelPackage) { + return true; + } + if (object instanceof EObject) { + return ((EObject) object).eClass().getEPackage() == modelPackage; + } + return false; + } + + /** + * The switch that delegates to the <code>createXXX</code> methods. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected DemocatalogSwitch<Adapter> modelSwitch = new DemocatalogSwitch<Adapter>() { + @Override + public Adapter caseEnergyComponentCatalog(EnergyComponentCatalog object) { + return createEnergyComponentCatalogAdapter(); + } + + @Override + public Adapter caseBoiler(Boiler object) { + return createBoilerAdapter(); + } + + @Override + public Adapter caseCombinedHeatPower(CombinedHeatPower object) { + return createCombinedHeatPowerAdapter(); + } + + @Override + public Adapter caseSolarPanel(SolarPanel object) { + return createSolarPanelAdapter(); + } + + @Override + public Adapter caseInverter(Inverter object) { + return createInverterAdapter(); + } + + @Override + public Adapter caseManufacturer(Manufacturer object) { + return createManufacturerAdapter(); + } + + @Override + public Adapter caseChemicalDevice(ChemicalDevice object) { + return createChemicalDeviceAdapter(); + } + + @Override + public Adapter caseEnergyComponent(EnergyComponent object) { + return createEnergyComponentAdapter(); + } + + @Override + public Adapter caseElectricalDevice(ElectricalDevice object) { + return createElectricalDeviceAdapter(); + } + + @Override + public Adapter defaultCase(EObject object) { + return createEObjectAdapter(); + } + }; + + /** + * Creates an adapter for the <code>target</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param target the object to adapt. + * @return the adapter for the <code>target</code>. + * @generated + */ + @Override + public Adapter createAdapter(Notifier target) { + return modelSwitch.doSwitch((EObject) target); + } + + /** + * Creates a new adapter for an object of class '{@link org.example.democatalog.EnergyComponentCatalog <em>Energy Component Catalog</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.example.democatalog.EnergyComponentCatalog + * @generated + */ + public Adapter createEnergyComponentCatalogAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.example.democatalog.Boiler <em>Boiler</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.example.democatalog.Boiler + * @generated + */ + public Adapter createBoilerAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.example.democatalog.CombinedHeatPower <em>Combined Heat Power</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.example.democatalog.CombinedHeatPower + * @generated + */ + public Adapter createCombinedHeatPowerAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.example.democatalog.SolarPanel <em>Solar Panel</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.example.democatalog.SolarPanel + * @generated + */ + public Adapter createSolarPanelAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.example.democatalog.Inverter <em>Inverter</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.example.democatalog.Inverter + * @generated + */ + public Adapter createInverterAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.example.democatalog.Manufacturer <em>Manufacturer</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.example.democatalog.Manufacturer + * @generated + */ + public Adapter createManufacturerAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.example.democatalog.ChemicalDevice <em>Chemical Device</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.example.democatalog.ChemicalDevice + * @generated + */ + public Adapter createChemicalDeviceAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.example.democatalog.EnergyComponent <em>Energy Component</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.example.democatalog.EnergyComponent + * @generated + */ + public Adapter createEnergyComponentAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.example.democatalog.ElectricalDevice <em>Electrical Device</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.example.democatalog.ElectricalDevice + * @generated + */ + public Adapter createElectricalDeviceAdapter() { + return null; + } + + /** + * Creates a new adapter for the default case. + * <!-- begin-user-doc --> + * This default implementation returns null. + * <!-- end-user-doc --> + * @return the new adapter. + * @generated + */ + public Adapter createEObjectAdapter() { + return null; + } + +} //DemocatalogAdapterFactory diff --git a/org.example.democatalog/src-gen/org/example/democatalog/util/DemocatalogSwitch.java b/org.example.democatalog/src-gen/org/example/democatalog/util/DemocatalogSwitch.java new file mode 100644 index 0000000000000000000000000000000000000000..f863ffa2f6154f9afe2320110cdad2243a5db81a --- /dev/null +++ b/org.example.democatalog/src-gen/org/example/democatalog/util/DemocatalogSwitch.java @@ -0,0 +1,308 @@ +/** + */ +package org.example.democatalog.util; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.util.Switch; + +import org.example.democatalog.*; + +/** + * <!-- begin-user-doc --> + * The <b>Switch</b> for the model's inheritance hierarchy. + * It supports the call {@link #doSwitch(EObject) doSwitch(object)} + * to invoke the <code>caseXXX</code> method for each class of the model, + * starting with the actual class of the object + * and proceeding up the inheritance hierarchy + * until a non-null result is returned, + * which is the result of the switch. + * <!-- end-user-doc --> + * @see org.example.democatalog.DemocatalogPackage + * @generated + */ +public class DemocatalogSwitch<T> extends Switch<T> { + /** + * The cached model package + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static DemocatalogPackage modelPackage; + + /** + * Creates an instance of the switch. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public DemocatalogSwitch() { + if (modelPackage == null) { + modelPackage = DemocatalogPackage.eINSTANCE; + } + } + + /** + * Checks whether this is a switch for the given package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param ePackage the package in question. + * @return whether this is a switch for the given package. + * @generated + */ + @Override + protected boolean isSwitchFor(EPackage ePackage) { + return ePackage == modelPackage; + } + + /** + * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the first non-null result returned by a <code>caseXXX</code> call. + * @generated + */ + @Override + protected T doSwitch(int classifierID, EObject theEObject) { + switch (classifierID) { + case DemocatalogPackage.ENERGY_COMPONENT_CATALOG: { + EnergyComponentCatalog energyComponentCatalog = (EnergyComponentCatalog) theEObject; + T result = caseEnergyComponentCatalog(energyComponentCatalog); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case DemocatalogPackage.BOILER: { + Boiler boiler = (Boiler) theEObject; + T result = caseBoiler(boiler); + if (result == null) + result = caseChemicalDevice(boiler); + if (result == null) + result = caseEnergyComponent(boiler); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case DemocatalogPackage.COMBINED_HEAT_POWER: { + CombinedHeatPower combinedHeatPower = (CombinedHeatPower) theEObject; + T result = caseCombinedHeatPower(combinedHeatPower); + if (result == null) + result = caseChemicalDevice(combinedHeatPower); + if (result == null) + result = caseEnergyComponent(combinedHeatPower); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case DemocatalogPackage.SOLAR_PANEL: { + SolarPanel solarPanel = (SolarPanel) theEObject; + T result = caseSolarPanel(solarPanel); + if (result == null) + result = caseElectricalDevice(solarPanel); + if (result == null) + result = caseEnergyComponent(solarPanel); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case DemocatalogPackage.INVERTER: { + Inverter inverter = (Inverter) theEObject; + T result = caseInverter(inverter); + if (result == null) + result = caseElectricalDevice(inverter); + if (result == null) + result = caseEnergyComponent(inverter); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case DemocatalogPackage.MANUFACTURER: { + Manufacturer manufacturer = (Manufacturer) theEObject; + T result = caseManufacturer(manufacturer); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case DemocatalogPackage.CHEMICAL_DEVICE: { + ChemicalDevice chemicalDevice = (ChemicalDevice) theEObject; + T result = caseChemicalDevice(chemicalDevice); + if (result == null) + result = caseEnergyComponent(chemicalDevice); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case DemocatalogPackage.ENERGY_COMPONENT: { + EnergyComponent energyComponent = (EnergyComponent) theEObject; + T result = caseEnergyComponent(energyComponent); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case DemocatalogPackage.ELECTRICAL_DEVICE: { + ElectricalDevice electricalDevice = (ElectricalDevice) theEObject; + T result = caseElectricalDevice(electricalDevice); + if (result == null) + result = caseEnergyComponent(electricalDevice); + if (result == null) + result = defaultCase(theEObject); + return result; + } + default: + return defaultCase(theEObject); + } + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Energy Component Catalog</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Energy Component Catalog</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseEnergyComponentCatalog(EnergyComponentCatalog object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Boiler</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Boiler</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseBoiler(Boiler object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Combined Heat Power</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Combined Heat Power</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseCombinedHeatPower(CombinedHeatPower object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Solar Panel</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Solar Panel</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseSolarPanel(SolarPanel object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Inverter</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Inverter</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseInverter(Inverter object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Manufacturer</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Manufacturer</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseManufacturer(Manufacturer object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Chemical Device</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Chemical Device</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseChemicalDevice(ChemicalDevice object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Energy Component</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Energy Component</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseEnergyComponent(EnergyComponent object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Electrical Device</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Electrical Device</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseElectricalDevice(ElectricalDevice object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch, but this is the last case anyway. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>EObject</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) + * @generated + */ + @Override + public T defaultCase(EObject object) { + return null; + } + +} //DemocatalogSwitch diff --git a/org.example.democatalog/src/.gitkeep b/org.example.democatalog/src/.gitkeep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391