diff --git a/bundles/org.eclipse.passage.lic.features.ecore/model/features.ecore b/bundles/org.eclipse.passage.lic.features.ecore/model/features.ecore index 25fe15145..5d11a7e0b 100644 --- a/bundles/org.eclipse.passage.lic.features.ecore/model/features.ecore +++ b/bundles/org.eclipse.passage.lic.features.ecore/model/features.ecore @@ -1,14 +1,8 @@ <?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="features" nsURI="http://www.eclipse.org/passage/lic/features/2.0.0" + xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="features" nsURI="http://www.eclipse.org/passage/lic/features/3.0.0" nsPrefix="features"> - <eClassifiers xsi:type="ecore:EClass" name="FeatureSetDescriptor" instanceClassName="org.eclipse.passage.lic.features.FeatureSetDescriptor" - abstract="true" interface="true"/> - <eClassifiers xsi:type="ecore:EClass" name="FeatureDescriptor" instanceClassName="org.eclipse.passage.lic.features.FeatureDescriptor" - abstract="true" interface="true"/> - <eClassifiers xsi:type="ecore:EClass" name="FeatureVersionDescriptor" instanceClassName="org.eclipse.passage.lic.features.FeatureVersionDescriptor" - abstract="true" interface="true"/> - <eClassifiers xsi:type="ecore:EClass" name="FeatureSet" eSuperTypes="#//FeatureSetDescriptor"> + <eClassifiers xsi:type="ecore:EClass" name="FeatureSet"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="identifier" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> @@ -16,7 +10,7 @@ <eStructuralFeatures xsi:type="ecore:EReference" name="features" upperBound="-1" eType="#//Feature" containment="true" eOpposite="#//Feature/featureSet"/> </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Feature" eSuperTypes="#//FeatureDescriptor"> + <eClassifiers xsi:type="ecore:EClass" name="Feature"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="identifier" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> <eStructuralFeatures xsi:type="ecore:EAttribute" name="provider" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> @@ -27,7 +21,7 @@ <eStructuralFeatures xsi:type="ecore:EReference" name="featureVersions" upperBound="-1" eType="#//FeatureVersion" containment="true" eOpposite="#//FeatureVersion/feature"/> </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="FeatureVersion" eSuperTypes="#//FeatureVersionDescriptor"> + <eClassifiers xsi:type="ecore:EClass" name="FeatureVersion"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> <eStructuralFeatures xsi:type="ecore:EReference" name="feature" lowerBound="1" diff --git a/bundles/org.eclipse.passage.lic.features.edit/plugin.properties b/bundles/org.eclipse.passage.lic.features.edit/plugin.properties index fc48f8801..26d34e310 100644 --- a/bundles/org.eclipse.passage.lic.features.edit/plugin.properties +++ b/bundles/org.eclipse.passage.lic.features.edit/plugin.properties @@ -29,10 +29,7 @@ _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_FeatureSetDescriptor_type = Feature Set Descriptor -_UI_FeatureDescriptor_type = Feature Descriptor -_UI_FeatureVersionDescriptor_type = Feature Version Descriptor -_UI_FeatureSet_type = Feature Set + _UI_FeatureSet_type = Feature Set _UI_Feature_type = Feature _UI_FeatureVersion_type = Feature Version _UI_Unknown_type = Object @@ -46,12 +43,12 @@ _UI_Feature_name_feature = Name _UI_Feature_description_feature = Description _UI_Feature_featureSet_feature = Feature Set _UI_Feature_featureVersions_feature = Feature Versions +_UI_Feature_provider_feature = Provider +_UI_FeatureVersion_agreements_feature = Agreements _UI_FeatureVersion_version_feature = Version _UI_FeatureVersion_feature_feature = Feature _UI_FeatureVersion_news_feature = News -_UI_Unknown_feature = Unspecified - _UI_Feature_text_pattern = {1} ({0}) +_UI_Unknown_feature = Unspecified +_UI_Feature_text_pattern = {1} ({0}) _UI_FeatureSet_text_pattern = {1} ({0}) _UI_FeatureVersion_text_pattern = {0} {1} -_UI_Feature_provider_feature = Provider -_UI_FeatureVersion_agreements_feature = Agreements diff --git a/bundles/org.eclipse.passage.lic.features.edit/plugin.xml b/bundles/org.eclipse.passage.lic.features.edit/plugin.xml index a22e980e0..07dca5605 100644 --- a/bundles/org.eclipse.passage.lic.features.edit/plugin.xml +++ b/bundles/org.eclipse.passage.lic.features.edit/plugin.xml @@ -19,7 +19,7 @@ <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories"> <!-- @generated features --> <factory - uri="http://www.eclipse.org/passage/lic/features/2.0.0" + uri="http://www.eclipse.org/passage/lic/features/3.0.0" class="org.eclipse.passage.lic.features.edit.providers.FeaturesItemProviderAdapterFactory" supportedTypes= "org.eclipse.emf.edit.provider.IEditingDomainItemProvider diff --git a/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/FeaturesEditPlugin.java b/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/FeaturesEditPlugin.java index 9ae4a8e0b..7fcbc2932 100644 --- a/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/FeaturesEditPlugin.java +++ b/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/FeaturesEditPlugin.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2020 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at diff --git a/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/providers/FeatureItemProvider.java b/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/providers/FeatureItemProvider.java index d60da1473..56c39df0e 100644 --- a/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/providers/FeatureItemProvider.java +++ b/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/providers/FeatureItemProvider.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2020 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at @@ -166,7 +166,8 @@ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object objec */ @Override protected EStructuralFeature getChildFeature(Object object, Object child) { - // Check the type of the specified child object and return the proper feature to use for + // 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); diff --git a/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/providers/FeatureSetItemProvider.java b/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/providers/FeatureSetItemProvider.java index d5506b423..25ad586a4 100644 --- a/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/providers/FeatureSetItemProvider.java +++ b/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/providers/FeatureSetItemProvider.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2020 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at @@ -150,7 +150,8 @@ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object objec */ @Override protected EStructuralFeature getChildFeature(Object object, Object child) { - // Check the type of the specified child object and return the proper feature to use for + // 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); diff --git a/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/providers/FeatureVersionItemProvider.java b/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/providers/FeatureVersionItemProvider.java index db494fbcd..f389e68af 100644 --- a/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/providers/FeatureVersionItemProvider.java +++ b/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/providers/FeatureVersionItemProvider.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2020 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at diff --git a/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/providers/FeaturesItemProviderAdapterFactory.java b/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/providers/FeaturesItemProviderAdapterFactory.java index f5a71d8a5..b7107950e 100644 --- a/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/providers/FeaturesItemProviderAdapterFactory.java +++ b/bundles/org.eclipse.passage.lic.features.edit/src-gen/org/eclipse/passage/lic/features/edit/providers/FeaturesItemProviderAdapterFactory.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2020 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at diff --git a/bundles/org.eclipse.passage.lic.features.model/model/features.genmodel b/bundles/org.eclipse.passage.lic.features.model/model/features.genmodel index ced5709bb..1aec5279b 100644 --- a/bundles/org.eclipse.passage.lic.features.model/model/features.genmodel +++ b/bundles/org.eclipse.passage.lic.features.model/model/features.genmodel @@ -8,7 +8,7 @@ editorPluginClass="org.eclipse.passage.lic.features.editor.FeaturesEditorPlugin" nonNLSMarkers="true" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container" codeFormatting="true" testSuiteClass="org.eclipse.passage.lic.features.model.tests.FeaturesAllTests" - importerID="org.eclipse.emf.importer.ecore" complianceLevel="8.0" copyrightFields="false" + importerID="org.eclipse.emf.importer.ecore" complianceLevel="17.0" copyrightFields="false" editPluginID="org.eclipse.passage.lic.features.edit" editorPluginID="org.eclipse.passage.lic.features.editor" language="" operationReflection="true" runtimePlatform="RCP" importOrganizing="true" cleanup="true" oSGiCompatible="true"> @@ -18,9 +18,6 @@ classPackageSuffix="model.impl" utilityPackageSuffix="model.util" providerPackageSuffix="edit.providers" presentationPackageSuffix="editor" testsPackageSuffix="model.tests" literalsInterface="false" ecorePackage="../../org.eclipse.passage.lic.features.ecore/model/features.ecore#/"> - <genClasses image="false" ecoreClass="../../org.eclipse.passage.lic.features.ecore/model/features.ecore#//FeatureSetDescriptor"/> - <genClasses image="false" ecoreClass="../../org.eclipse.passage.lic.features.ecore/model/features.ecore#//FeatureDescriptor"/> - <genClasses image="false" ecoreClass="../../org.eclipse.passage.lic.features.ecore/model/features.ecore#//FeatureVersionDescriptor"/> <genClasses image="false" ecoreClass="../../org.eclipse.passage.lic.features.ecore/model/features.ecore#//FeatureSet"> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute ../../org.eclipse.passage.lic.features.ecore/model/features.ecore#//FeatureSet/identifier"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute ../../org.eclipse.passage.lic.features.ecore/model/features.ecore#//FeatureSet/name"/> diff --git a/bundles/org.eclipse.passage.lic.features.model/plugin.xml b/bundles/org.eclipse.passage.lic.features.model/plugin.xml index c6e134580..f4fdd32a2 100644 --- a/bundles/org.eclipse.passage.lic.features.model/plugin.xml +++ b/bundles/org.eclipse.passage.lic.features.model/plugin.xml @@ -18,7 +18,7 @@ <extension point="org.eclipse.emf.ecore.generated_package"> <!-- @generated features --> <package - uri="http://www.eclipse.org/passage/lic/features/2.0.0" + uri="http://www.eclipse.org/passage/lic/features/3.0.0" class="org.eclipse.passage.lic.features.model.meta.FeaturesPackage" genModel="model/features.genmodel"/> </extension> @@ -28,9 +28,6 @@ <parser type="features" class="org.eclipse.passage.lic.features.model.util.FeaturesResourceFactoryImpl"/> - <parser - type="lic_features" - class="org.eclipse.passage.lic.features.model.util.FeaturesResourceFactoryImpl"/> </extension> </plugin> diff --git a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/api/Feature.java b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/api/Feature.java index ef01a0944..978a0c731 100644 --- a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/api/Feature.java +++ b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/api/Feature.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2021 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at @@ -13,11 +13,8 @@ package org.eclipse.passage.lic.features.model.api; import org.eclipse.emf.common.util.EList; - import org.eclipse.emf.ecore.EObject; -import org.eclipse.passage.lic.features.FeatureDescriptor; - /** * <!-- begin-user-doc --> * A representation of the model object '<em><b>Feature</b></em>'. @@ -36,10 +33,10 @@ * </ul> * * @see org.eclipse.passage.lic.features.model.meta.FeaturesPackage#getFeature() - * @model superTypes="org.eclipse.passage.lic.features.model.api.FeatureDescriptor" + * @model * @generated */ -public interface Feature extends EObject, FeatureDescriptor { +public interface Feature extends EObject { /** * Returns the value of the '<em><b>Identifier</b></em>' attribute. * <!-- begin-user-doc --> @@ -50,7 +47,6 @@ public interface Feature extends EObject, FeatureDescriptor { * @model required="true" * @generated */ - @Override String getIdentifier(); /** @@ -73,7 +69,6 @@ public interface Feature extends EObject, FeatureDescriptor { * @model * @generated */ - @Override String getProvider(); /** @@ -96,7 +91,6 @@ public interface Feature extends EObject, FeatureDescriptor { * @model * @generated */ - @Override String getName(); /** @@ -119,7 +113,6 @@ public interface Feature extends EObject, FeatureDescriptor { * @model * @generated */ - @Override String getDescription(); /** @@ -144,7 +137,6 @@ public interface Feature extends EObject, FeatureDescriptor { * @model opposite="features" required="true" transient="false" * @generated */ - @Override FeatureSet getFeatureSet(); /** @@ -169,7 +161,6 @@ public interface Feature extends EObject, FeatureDescriptor { * @model opposite="feature" containment="true" * @generated */ - @Override EList<FeatureVersion> getFeatureVersions(); } // Feature diff --git a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/api/FeatureSet.java b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/api/FeatureSet.java index a9e91b59c..fce32728a 100644 --- a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/api/FeatureSet.java +++ b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/api/FeatureSet.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2021 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at @@ -13,11 +13,8 @@ package org.eclipse.passage.lic.features.model.api; import org.eclipse.emf.common.util.EList; - import org.eclipse.emf.ecore.EObject; -import org.eclipse.passage.lic.features.FeatureSetDescriptor; - /** * <!-- begin-user-doc --> * A representation of the model object '<em><b>Feature Set</b></em>'. @@ -34,10 +31,10 @@ * </ul> * * @see org.eclipse.passage.lic.features.model.meta.FeaturesPackage#getFeatureSet() - * @model superTypes="org.eclipse.passage.lic.features.model.api.FeatureSetDescriptor" + * @model * @generated */ -public interface FeatureSet extends EObject, FeatureSetDescriptor { +public interface FeatureSet extends EObject { /** * Returns the value of the '<em><b>Identifier</b></em>' attribute. * <!-- begin-user-doc --> @@ -48,7 +45,6 @@ public interface FeatureSet extends EObject, FeatureSetDescriptor { * @model required="true" * @generated */ - @Override String getIdentifier(); /** @@ -71,7 +67,6 @@ public interface FeatureSet extends EObject, FeatureSetDescriptor { * @model * @generated */ - @Override String getName(); /** @@ -94,7 +89,6 @@ public interface FeatureSet extends EObject, FeatureSetDescriptor { * @model * @generated */ - @Override String getDescription(); /** @@ -119,7 +113,6 @@ public interface FeatureSet extends EObject, FeatureSetDescriptor { * @model opposite="featureSet" containment="true" * @generated */ - @Override EList<Feature> getFeatures(); } // FeatureSet diff --git a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/api/FeatureVersion.java b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/api/FeatureVersion.java index a55fad3e2..1ae8dd8a6 100644 --- a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/api/FeatureVersion.java +++ b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/api/FeatureVersion.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2021 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at @@ -14,8 +14,6 @@ import org.eclipse.emf.ecore.EObject; -import org.eclipse.passage.lic.features.FeatureVersionDescriptor; - /** * <!-- begin-user-doc --> * A representation of the model object '<em><b>Feature Version</b></em>'. @@ -31,10 +29,10 @@ * </ul> * * @see org.eclipse.passage.lic.features.model.meta.FeaturesPackage#getFeatureVersion() - * @model superTypes="org.eclipse.passage.lic.features.model.api.FeatureVersionDescriptor" + * @model * @generated */ -public interface FeatureVersion extends EObject, FeatureVersionDescriptor { +public interface FeatureVersion extends EObject { /** * Returns the value of the '<em><b>Version</b></em>' attribute. * <!-- begin-user-doc --> @@ -45,7 +43,6 @@ public interface FeatureVersion extends EObject, FeatureVersionDescriptor { * @model required="true" * @generated */ - @Override String getVersion(); /** @@ -70,7 +67,6 @@ public interface FeatureVersion extends EObject, FeatureVersionDescriptor { * @model opposite="featureVersions" required="true" transient="false" * @generated */ - @Override Feature getFeature(); /** @@ -93,7 +89,6 @@ public interface FeatureVersion extends EObject, FeatureVersionDescriptor { * @model * @generated */ - @Override String getNews(); /** diff --git a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeatureImpl.java b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeatureImpl.java index 8b5e1a389..8db5795fc 100644 --- a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeatureImpl.java +++ b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeatureImpl.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2021 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at @@ -17,23 +17,17 @@ 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.EObjectContainmentWithInverseEList; import org.eclipse.emf.ecore.util.EcoreUtil; import org.eclipse.emf.ecore.util.InternalEList; - import org.eclipse.passage.lic.features.model.api.Feature; import org.eclipse.passage.lic.features.model.api.FeatureSet; import org.eclipse.passage.lic.features.model.api.FeatureVersion; - import org.eclipse.passage.lic.features.model.meta.FeaturesPackage; /** @@ -521,4 +515,4 @@ public String toString() { return result.toString(); } -} //FeatureImpl +} // FeatureImpl diff --git a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeatureSetImpl.java b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeatureSetImpl.java index 04bf997e5..38c39f258 100644 --- a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeatureSetImpl.java +++ b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeatureSetImpl.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2021 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at @@ -17,21 +17,15 @@ 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.EObjectContainmentWithInverseEList; import org.eclipse.emf.ecore.util.InternalEList; - import org.eclipse.passage.lic.features.model.api.Feature; import org.eclipse.passage.lic.features.model.api.FeatureSet; - import org.eclipse.passage.lic.features.model.meta.FeaturesPackage; /** @@ -376,4 +370,4 @@ public String toString() { return result.toString(); } -} //FeatureSetImpl +} // FeatureSetImpl diff --git a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeatureVersionImpl.java b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeatureVersionImpl.java index c54b43cce..32550d4ae 100644 --- a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeatureVersionImpl.java +++ b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeatureVersionImpl.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2021 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at @@ -353,4 +353,4 @@ public String toString() { return result.toString(); } -} //FeatureVersionImpl +} // FeatureVersionImpl diff --git a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeaturesFactoryImpl.java b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeaturesFactoryImpl.java index 7148c1a9b..1a7f8e361 100644 --- a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeaturesFactoryImpl.java +++ b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeaturesFactoryImpl.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2021 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at @@ -15,13 +15,11 @@ import org.eclipse.emf.ecore.EClass; 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.eclipse.passage.lic.features.model.api.*; - +import org.eclipse.passage.lic.features.model.api.Feature; +import org.eclipse.passage.lic.features.model.api.FeatureSet; +import org.eclipse.passage.lic.features.model.api.FeatureVersion; import org.eclipse.passage.lic.features.model.meta.FeaturesFactory; import org.eclipse.passage.lic.features.model.meta.FeaturesPackage; @@ -134,4 +132,4 @@ public static FeaturesPackage getPackage() { return FeaturesPackage.eINSTANCE; } -} //FeaturesFactoryImpl +} // FeaturesFactoryImpl diff --git a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeaturesPackageImpl.java b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeaturesPackageImpl.java index 45b3bf5b7..95848c05c 100644 --- a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeaturesPackageImpl.java +++ b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/impl/FeaturesPackageImpl.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2021 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at @@ -16,17 +16,10 @@ import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.ecore.EReference; - import org.eclipse.emf.ecore.impl.EPackageImpl; - -import org.eclipse.passage.lic.features.FeatureDescriptor; -import org.eclipse.passage.lic.features.FeatureSetDescriptor; -import org.eclipse.passage.lic.features.FeatureVersionDescriptor; - import org.eclipse.passage.lic.features.model.api.Feature; import org.eclipse.passage.lic.features.model.api.FeatureSet; import org.eclipse.passage.lic.features.model.api.FeatureVersion; - import org.eclipse.passage.lic.features.model.meta.FeaturesFactory; import org.eclipse.passage.lic.features.model.meta.FeaturesPackage; @@ -37,27 +30,6 @@ * @generated */ public class FeaturesPackageImpl extends EPackageImpl implements FeaturesPackage { - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private EClass featureSetDescriptorEClass = null; - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private EClass featureDescriptorEClass = null; - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private EClass featureVersionDescriptorEClass = null; - /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -143,36 +115,6 @@ public static FeaturesPackage init() { return theFeaturesPackage; } - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public EClass getFeatureSetDescriptor() { - return featureSetDescriptorEClass; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public EClass getFeatureDescriptor() { - return featureDescriptorEClass; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public EClass getFeatureVersionDescriptor() { - return featureVersionDescriptorEClass; - } - /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -363,12 +305,6 @@ public void createPackageContents() { isCreated = true; // Create classes and their features - featureSetDescriptorEClass = createEClass(FEATURE_SET_DESCRIPTOR); - - featureDescriptorEClass = createEClass(FEATURE_DESCRIPTOR); - - featureVersionDescriptorEClass = createEClass(FEATURE_VERSION_DESCRIPTOR); - featureSetEClass = createEClass(FEATURE_SET); createEAttribute(featureSetEClass, FEATURE_SET__IDENTIFIER); createEAttribute(featureSetEClass, FEATURE_SET__NAME); @@ -418,20 +354,8 @@ public void initializePackageContents() { // Set bounds for type parameters // Add supertypes to classes - featureSetEClass.getESuperTypes().add(this.getFeatureSetDescriptor()); - featureEClass.getESuperTypes().add(this.getFeatureDescriptor()); - featureVersionEClass.getESuperTypes().add(this.getFeatureVersionDescriptor()); // Initialize classes, features, and operations; add parameters - initEClass(featureSetDescriptorEClass, FeatureSetDescriptor.class, "FeatureSetDescriptor", IS_ABSTRACT, //$NON-NLS-1$ - IS_INTERFACE, !IS_GENERATED_INSTANCE_CLASS); - - initEClass(featureDescriptorEClass, FeatureDescriptor.class, "FeatureDescriptor", IS_ABSTRACT, IS_INTERFACE, //$NON-NLS-1$ - !IS_GENERATED_INSTANCE_CLASS); - - initEClass(featureVersionDescriptorEClass, FeatureVersionDescriptor.class, "FeatureVersionDescriptor", //$NON-NLS-1$ - IS_ABSTRACT, IS_INTERFACE, !IS_GENERATED_INSTANCE_CLASS); - initEClass(featureSetEClass, FeatureSet.class, "FeatureSet", !IS_ABSTRACT, !IS_INTERFACE, //$NON-NLS-1$ IS_GENERATED_INSTANCE_CLASS); initEAttribute(getFeatureSet_Identifier(), ecorePackage.getEString(), "identifier", null, 1, 1, //$NON-NLS-1$ @@ -477,4 +401,4 @@ public void initializePackageContents() { createResource(eNS_URI); } -} //FeaturesPackageImpl +} // FeaturesPackageImpl diff --git a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/meta/FeaturesFactory.java b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/meta/FeaturesFactory.java index 65f71d340..5bf9d1f00 100644 --- a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/meta/FeaturesFactory.java +++ b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/meta/FeaturesFactory.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2021 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at @@ -13,7 +13,6 @@ package org.eclipse.passage.lic.features.model.meta; import org.eclipse.emf.ecore.EFactory; - import org.eclipse.passage.lic.features.model.api.Feature; import org.eclipse.passage.lic.features.model.api.FeatureSet; import org.eclipse.passage.lic.features.model.api.FeatureVersion; @@ -71,4 +70,4 @@ public interface FeaturesFactory extends EFactory { */ FeaturesPackage getFeaturesPackage(); -} //FeaturesFactory +} // FeaturesFactory diff --git a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/meta/FeaturesPackage.java b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/meta/FeaturesPackage.java index e6303077e..e3deef7f6 100644 --- a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/meta/FeaturesPackage.java +++ b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/meta/FeaturesPackage.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2021 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at @@ -48,7 +48,7 @@ public interface FeaturesPackage extends EPackage { * <!-- end-user-doc --> * @generated */ - String eNS_URI = "http://www.eclipse.org/passage/lic/features/2.0.0"; //$NON-NLS-1$ + String eNS_URI = "http://www.eclipse.org/passage/lic/features/3.0.0"; //$NON-NLS-1$ /** * The package namespace name. @@ -66,90 +66,6 @@ public interface FeaturesPackage extends EPackage { */ FeaturesPackage eINSTANCE = org.eclipse.passage.lic.features.model.impl.FeaturesPackageImpl.init(); - /** - * The meta object id for the '{@link org.eclipse.passage.lic.features.FeatureSetDescriptor <em>Feature Set Descriptor</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see org.eclipse.passage.lic.features.FeatureSetDescriptor - * @see org.eclipse.passage.lic.features.model.impl.FeaturesPackageImpl#getFeatureSetDescriptor() - * @generated - */ - int FEATURE_SET_DESCRIPTOR = 0; - - /** - * The number of structural features of the '<em>Feature Set Descriptor</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int FEATURE_SET_DESCRIPTOR_FEATURE_COUNT = 0; - - /** - * The number of operations of the '<em>Feature Set Descriptor</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int FEATURE_SET_DESCRIPTOR_OPERATION_COUNT = 0; - - /** - * The meta object id for the '{@link org.eclipse.passage.lic.features.FeatureDescriptor <em>Feature Descriptor</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see org.eclipse.passage.lic.features.FeatureDescriptor - * @see org.eclipse.passage.lic.features.model.impl.FeaturesPackageImpl#getFeatureDescriptor() - * @generated - */ - int FEATURE_DESCRIPTOR = 1; - - /** - * The number of structural features of the '<em>Feature Descriptor</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int FEATURE_DESCRIPTOR_FEATURE_COUNT = 0; - - /** - * The number of operations of the '<em>Feature Descriptor</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int FEATURE_DESCRIPTOR_OPERATION_COUNT = 0; - - /** - * The meta object id for the '{@link org.eclipse.passage.lic.features.FeatureVersionDescriptor <em>Feature Version Descriptor</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see org.eclipse.passage.lic.features.FeatureVersionDescriptor - * @see org.eclipse.passage.lic.features.model.impl.FeaturesPackageImpl#getFeatureVersionDescriptor() - * @generated - */ - int FEATURE_VERSION_DESCRIPTOR = 2; - - /** - * The number of structural features of the '<em>Feature Version Descriptor</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int FEATURE_VERSION_DESCRIPTOR_FEATURE_COUNT = 0; - - /** - * The number of operations of the '<em>Feature Version Descriptor</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int FEATURE_VERSION_DESCRIPTOR_OPERATION_COUNT = 0; - /** * The meta object id for the '{@link org.eclipse.passage.lic.features.model.impl.FeatureSetImpl <em>Feature Set</em>}' class. * <!-- begin-user-doc --> @@ -158,7 +74,7 @@ public interface FeaturesPackage extends EPackage { * @see org.eclipse.passage.lic.features.model.impl.FeaturesPackageImpl#getFeatureSet() * @generated */ - int FEATURE_SET = 3; + int FEATURE_SET = 0; /** * The feature id for the '<em><b>Identifier</b></em>' attribute. @@ -167,7 +83,7 @@ public interface FeaturesPackage extends EPackage { * @generated * @ordered */ - int FEATURE_SET__IDENTIFIER = FEATURE_SET_DESCRIPTOR_FEATURE_COUNT + 0; + int FEATURE_SET__IDENTIFIER = 0; /** * The feature id for the '<em><b>Name</b></em>' attribute. @@ -176,7 +92,7 @@ public interface FeaturesPackage extends EPackage { * @generated * @ordered */ - int FEATURE_SET__NAME = FEATURE_SET_DESCRIPTOR_FEATURE_COUNT + 1; + int FEATURE_SET__NAME = 1; /** * The feature id for the '<em><b>Description</b></em>' attribute. @@ -185,7 +101,7 @@ public interface FeaturesPackage extends EPackage { * @generated * @ordered */ - int FEATURE_SET__DESCRIPTION = FEATURE_SET_DESCRIPTOR_FEATURE_COUNT + 2; + int FEATURE_SET__DESCRIPTION = 2; /** * The feature id for the '<em><b>Features</b></em>' containment reference list. @@ -194,7 +110,7 @@ public interface FeaturesPackage extends EPackage { * @generated * @ordered */ - int FEATURE_SET__FEATURES = FEATURE_SET_DESCRIPTOR_FEATURE_COUNT + 3; + int FEATURE_SET__FEATURES = 3; /** * The number of structural features of the '<em>Feature Set</em>' class. @@ -203,7 +119,7 @@ public interface FeaturesPackage extends EPackage { * @generated * @ordered */ - int FEATURE_SET_FEATURE_COUNT = FEATURE_SET_DESCRIPTOR_FEATURE_COUNT + 4; + int FEATURE_SET_FEATURE_COUNT = 4; /** * The number of operations of the '<em>Feature Set</em>' class. @@ -212,7 +128,7 @@ public interface FeaturesPackage extends EPackage { * @generated * @ordered */ - int FEATURE_SET_OPERATION_COUNT = FEATURE_SET_DESCRIPTOR_OPERATION_COUNT + 0; + int FEATURE_SET_OPERATION_COUNT = 0; /** * The meta object id for the '{@link org.eclipse.passage.lic.features.model.impl.FeatureImpl <em>Feature</em>}' class. @@ -222,7 +138,7 @@ public interface FeaturesPackage extends EPackage { * @see org.eclipse.passage.lic.features.model.impl.FeaturesPackageImpl#getFeature() * @generated */ - int FEATURE = 4; + int FEATURE = 1; /** * The feature id for the '<em><b>Identifier</b></em>' attribute. @@ -231,7 +147,7 @@ public interface FeaturesPackage extends EPackage { * @generated * @ordered */ - int FEATURE__IDENTIFIER = FEATURE_DESCRIPTOR_FEATURE_COUNT + 0; + int FEATURE__IDENTIFIER = 0; /** * The feature id for the '<em><b>Provider</b></em>' attribute. @@ -240,7 +156,7 @@ public interface FeaturesPackage extends EPackage { * @generated * @ordered */ - int FEATURE__PROVIDER = FEATURE_DESCRIPTOR_FEATURE_COUNT + 1; + int FEATURE__PROVIDER = 1; /** * The feature id for the '<em><b>Name</b></em>' attribute. @@ -249,7 +165,7 @@ public interface FeaturesPackage extends EPackage { * @generated * @ordered */ - int FEATURE__NAME = FEATURE_DESCRIPTOR_FEATURE_COUNT + 2; + int FEATURE__NAME = 2; /** * The feature id for the '<em><b>Description</b></em>' attribute. @@ -258,7 +174,7 @@ public interface FeaturesPackage extends EPackage { * @generated * @ordered */ - int FEATURE__DESCRIPTION = FEATURE_DESCRIPTOR_FEATURE_COUNT + 3; + int FEATURE__DESCRIPTION = 3; /** * The feature id for the '<em><b>Feature Set</b></em>' container reference. @@ -267,7 +183,7 @@ public interface FeaturesPackage extends EPackage { * @generated * @ordered */ - int FEATURE__FEATURE_SET = FEATURE_DESCRIPTOR_FEATURE_COUNT + 4; + int FEATURE__FEATURE_SET = 4; /** * The feature id for the '<em><b>Feature Versions</b></em>' containment reference list. @@ -276,7 +192,7 @@ public interface FeaturesPackage extends EPackage { * @generated * @ordered */ - int FEATURE__FEATURE_VERSIONS = FEATURE_DESCRIPTOR_FEATURE_COUNT + 5; + int FEATURE__FEATURE_VERSIONS = 5; /** * The number of structural features of the '<em>Feature</em>' class. @@ -285,7 +201,7 @@ public interface FeaturesPackage extends EPackage { * @generated * @ordered */ - int FEATURE_FEATURE_COUNT = FEATURE_DESCRIPTOR_FEATURE_COUNT + 6; + int FEATURE_FEATURE_COUNT = 6; /** * The number of operations of the '<em>Feature</em>' class. @@ -294,7 +210,7 @@ public interface FeaturesPackage extends EPackage { * @generated * @ordered */ - int FEATURE_OPERATION_COUNT = FEATURE_DESCRIPTOR_OPERATION_COUNT + 0; + int FEATURE_OPERATION_COUNT = 0; /** * The meta object id for the '{@link org.eclipse.passage.lic.features.model.impl.FeatureVersionImpl <em>Feature Version</em>}' class. @@ -304,7 +220,7 @@ public interface FeaturesPackage extends EPackage { * @see org.eclipse.passage.lic.features.model.impl.FeaturesPackageImpl#getFeatureVersion() * @generated */ - int FEATURE_VERSION = 5; + int FEATURE_VERSION = 2; /** * The feature id for the '<em><b>Version</b></em>' attribute. @@ -313,7 +229,7 @@ public interface FeaturesPackage extends EPackage { * @generated * @ordered */ - int FEATURE_VERSION__VERSION = FEATURE_VERSION_DESCRIPTOR_FEATURE_COUNT + 0; + int FEATURE_VERSION__VERSION = 0; /** * The feature id for the '<em><b>Feature</b></em>' container reference. @@ -322,7 +238,7 @@ public interface FeaturesPackage extends EPackage { * @generated * @ordered */ - int FEATURE_VERSION__FEATURE = FEATURE_VERSION_DESCRIPTOR_FEATURE_COUNT + 1; + int FEATURE_VERSION__FEATURE = 1; /** * The feature id for the '<em><b>News</b></em>' attribute. @@ -331,7 +247,7 @@ public interface FeaturesPackage extends EPackage { * @generated * @ordered */ - int FEATURE_VERSION__NEWS = FEATURE_VERSION_DESCRIPTOR_FEATURE_COUNT + 2; + int FEATURE_VERSION__NEWS = 2; /** * The number of structural features of the '<em>Feature Version</em>' class. @@ -340,7 +256,7 @@ public interface FeaturesPackage extends EPackage { * @generated * @ordered */ - int FEATURE_VERSION_FEATURE_COUNT = FEATURE_VERSION_DESCRIPTOR_FEATURE_COUNT + 3; + int FEATURE_VERSION_FEATURE_COUNT = 3; /** * The number of operations of the '<em>Feature Version</em>' class. @@ -349,40 +265,7 @@ public interface FeaturesPackage extends EPackage { * @generated * @ordered */ - int FEATURE_VERSION_OPERATION_COUNT = FEATURE_VERSION_DESCRIPTOR_OPERATION_COUNT + 0; - - /** - * Returns the meta object for class '{@link org.eclipse.passage.lic.features.FeatureSetDescriptor <em>Feature Set Descriptor</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for class '<em>Feature Set Descriptor</em>'. - * @see org.eclipse.passage.lic.features.FeatureSetDescriptor - * @model instanceClass="org.eclipse.passage.lic.features.FeatureSetDescriptor" - * @generated - */ - EClass getFeatureSetDescriptor(); - - /** - * Returns the meta object for class '{@link org.eclipse.passage.lic.features.FeatureDescriptor <em>Feature Descriptor</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for class '<em>Feature Descriptor</em>'. - * @see org.eclipse.passage.lic.features.FeatureDescriptor - * @model instanceClass="org.eclipse.passage.lic.features.FeatureDescriptor" - * @generated - */ - EClass getFeatureDescriptor(); - - /** - * Returns the meta object for class '{@link org.eclipse.passage.lic.features.FeatureVersionDescriptor <em>Feature Version Descriptor</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for class '<em>Feature Version Descriptor</em>'. - * @see org.eclipse.passage.lic.features.FeatureVersionDescriptor - * @model instanceClass="org.eclipse.passage.lic.features.FeatureVersionDescriptor" - * @generated - */ - EClass getFeatureVersionDescriptor(); + int FEATURE_VERSION_OPERATION_COUNT = 0; /** * Returns the meta object for class '{@link org.eclipse.passage.lic.features.model.api.FeatureSet <em>Feature Set</em>}'. @@ -566,4 +449,4 @@ public interface FeaturesPackage extends EPackage { */ FeaturesFactory getFeaturesFactory(); -} //FeaturesPackage +} // FeaturesPackage diff --git a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/util/FeaturesAdapterFactory.java b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/util/FeaturesAdapterFactory.java index f606d9526..06d06bbd1 100644 --- a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/util/FeaturesAdapterFactory.java +++ b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/util/FeaturesAdapterFactory.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2021 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at @@ -14,17 +14,11 @@ 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.eclipse.passage.lic.features.FeatureDescriptor; -import org.eclipse.passage.lic.features.FeatureSetDescriptor; -import org.eclipse.passage.lic.features.FeatureVersionDescriptor; - -import org.eclipse.passage.lic.features.model.api.*; - +import org.eclipse.passage.lic.features.model.api.Feature; +import org.eclipse.passage.lic.features.model.api.FeatureSet; +import org.eclipse.passage.lic.features.model.api.FeatureVersion; import org.eclipse.passage.lic.features.model.meta.FeaturesPackage; /** @@ -82,21 +76,6 @@ public boolean isFactoryForType(Object object) { * @generated */ protected FeaturesSwitch<Adapter> modelSwitch = new FeaturesSwitch<Adapter>() { - @Override - public Adapter caseFeatureSetDescriptor(FeatureSetDescriptor object) { - return createFeatureSetDescriptorAdapter(); - } - - @Override - public Adapter caseFeatureDescriptor(FeatureDescriptor object) { - return createFeatureDescriptorAdapter(); - } - - @Override - public Adapter caseFeatureVersionDescriptor(FeatureVersionDescriptor object) { - return createFeatureVersionDescriptorAdapter(); - } - @Override public Adapter caseFeatureSet(FeatureSet object) { return createFeatureSetAdapter(); @@ -131,48 +110,6 @@ public Adapter createAdapter(Notifier target) { return modelSwitch.doSwitch((EObject) target); } - /** - * Creates a new adapter for an object of class '{@link org.eclipse.passage.lic.features.FeatureSetDescriptor <em>Feature Set Descriptor</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.eclipse.passage.lic.features.FeatureSetDescriptor - * @generated - */ - public Adapter createFeatureSetDescriptorAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.passage.lic.features.FeatureDescriptor <em>Feature Descriptor</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.eclipse.passage.lic.features.FeatureDescriptor - * @generated - */ - public Adapter createFeatureDescriptorAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.passage.lic.features.FeatureVersionDescriptor <em>Feature Version Descriptor</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.eclipse.passage.lic.features.FeatureVersionDescriptor - * @generated - */ - public Adapter createFeatureVersionDescriptorAdapter() { - return null; - } - /** * Creates a new adapter for an object of class '{@link org.eclipse.passage.lic.features.model.api.FeatureSet <em>Feature Set</em>}'. * <!-- begin-user-doc --> @@ -227,4 +164,4 @@ public Adapter createEObjectAdapter() { return null; } -} //FeaturesAdapterFactory +} // FeaturesAdapterFactory diff --git a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/util/FeaturesResourceFactoryImpl.java b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/util/FeaturesResourceFactoryImpl.java index 9d6fb8f3a..c57010bb5 100644 --- a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/util/FeaturesResourceFactoryImpl.java +++ b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/util/FeaturesResourceFactoryImpl.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2021 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at @@ -47,4 +47,4 @@ public Resource createResource(URI uri) { return result; } -} //FeaturesResourceFactoryImpl +} // FeaturesResourceFactoryImpl diff --git a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/util/FeaturesResourceImpl.java b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/util/FeaturesResourceImpl.java index 7743576f3..1d73fae2d 100644 --- a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/util/FeaturesResourceImpl.java +++ b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/util/FeaturesResourceImpl.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2021 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at @@ -46,4 +46,4 @@ protected void init() { options.put(OPTION_RESOURCE_HANDLER, new FeaturesResourceHandler()); } -} //FeaturesResourceImpl +} // FeaturesResourceImpl diff --git a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/util/FeaturesSwitch.java b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/util/FeaturesSwitch.java index 4ee0b287a..46ee88b0e 100644 --- a/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/util/FeaturesSwitch.java +++ b/bundles/org.eclipse.passage.lic.features.model/src-gen/org/eclipse/passage/lic/features/model/util/FeaturesSwitch.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2021 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at @@ -14,15 +14,10 @@ import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.EPackage; - import org.eclipse.emf.ecore.util.Switch; - -import org.eclipse.passage.lic.features.FeatureDescriptor; -import org.eclipse.passage.lic.features.FeatureSetDescriptor; -import org.eclipse.passage.lic.features.FeatureVersionDescriptor; - -import org.eclipse.passage.lic.features.model.api.*; - +import org.eclipse.passage.lic.features.model.api.Feature; +import org.eclipse.passage.lic.features.model.api.FeatureSet; +import org.eclipse.passage.lic.features.model.api.FeatureVersion; import org.eclipse.passage.lic.features.model.meta.FeaturesPackage; /** @@ -82,32 +77,9 @@ protected boolean isSwitchFor(EPackage ePackage) { @Override protected T doSwitch(int classifierID, EObject theEObject) { switch (classifierID) { - case FeaturesPackage.FEATURE_SET_DESCRIPTOR: { - FeatureSetDescriptor featureSetDescriptor = (FeatureSetDescriptor) theEObject; - T result = caseFeatureSetDescriptor(featureSetDescriptor); - if (result == null) - result = defaultCase(theEObject); - return result; - } - case FeaturesPackage.FEATURE_DESCRIPTOR: { - FeatureDescriptor featureDescriptor = (FeatureDescriptor) theEObject; - T result = caseFeatureDescriptor(featureDescriptor); - if (result == null) - result = defaultCase(theEObject); - return result; - } - case FeaturesPackage.FEATURE_VERSION_DESCRIPTOR: { - FeatureVersionDescriptor featureVersionDescriptor = (FeatureVersionDescriptor) theEObject; - T result = caseFeatureVersionDescriptor(featureVersionDescriptor); - if (result == null) - result = defaultCase(theEObject); - return result; - } case FeaturesPackage.FEATURE_SET: { FeatureSet featureSet = (FeatureSet) theEObject; T result = caseFeatureSet(featureSet); - if (result == null) - result = caseFeatureSetDescriptor(featureSet); if (result == null) result = defaultCase(theEObject); return result; @@ -115,8 +87,6 @@ protected T doSwitch(int classifierID, EObject theEObject) { case FeaturesPackage.FEATURE: { Feature feature = (Feature) theEObject; T result = caseFeature(feature); - if (result == null) - result = caseFeatureDescriptor(feature); if (result == null) result = defaultCase(theEObject); return result; @@ -124,8 +94,6 @@ protected T doSwitch(int classifierID, EObject theEObject) { case FeaturesPackage.FEATURE_VERSION: { FeatureVersion featureVersion = (FeatureVersion) theEObject; T result = caseFeatureVersion(featureVersion); - if (result == null) - result = caseFeatureVersionDescriptor(featureVersion); if (result == null) result = defaultCase(theEObject); return result; @@ -135,51 +103,6 @@ protected T doSwitch(int classifierID, EObject theEObject) { } } - /** - * Returns the result of interpreting the object as an instance of '<em>Feature Set Descriptor</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>Feature Set Descriptor</em>'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseFeatureSetDescriptor(FeatureSetDescriptor object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of '<em>Feature Descriptor</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>Feature Descriptor</em>'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseFeatureDescriptor(FeatureDescriptor object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of '<em>Feature Version Descriptor</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>Feature Version Descriptor</em>'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseFeatureVersionDescriptor(FeatureVersionDescriptor object) { - return null; - } - /** * Returns the result of interpreting the object as an instance of '<em>Feature Set</em>'. * <!-- begin-user-doc --> @@ -241,4 +164,4 @@ public T defaultCase(EObject object) { return null; } -} //FeaturesSwitch +} // FeaturesSwitch diff --git a/bundles/org.eclipse.passage.lic.features.model/src/org/eclipse/passage/lic/internal/features/model/FeaturesClassMetadata.java b/bundles/org.eclipse.passage.lic.features.model/src/org/eclipse/passage/lic/internal/features/model/FeaturesClassMetadata.java index 8448af04e..38f8612fc 100644 --- a/bundles/org.eclipse.passage.lic.features.model/src/org/eclipse/passage/lic/internal/features/model/FeaturesClassMetadata.java +++ b/bundles/org.eclipse.passage.lic.features.model/src/org/eclipse/passage/lic/internal/features/model/FeaturesClassMetadata.java @@ -19,8 +19,6 @@ import org.eclipse.passage.lic.emf.meta.ClassMetadata; import org.eclipse.passage.lic.emf.meta.EntityMetadata; import org.eclipse.passage.lic.emf.meta.PlainEntityMetadata; -import org.eclipse.passage.lic.features.FeatureDescriptor; -import org.eclipse.passage.lic.features.FeatureSetDescriptor; import org.eclipse.passage.lic.features.model.api.Feature; import org.eclipse.passage.lic.features.model.api.FeatureSet; import org.eclipse.passage.lic.features.model.meta.FeaturesPackage; @@ -34,18 +32,16 @@ public final class FeaturesClassMetadata implements ClassMetadata { public FeaturesClassMetadata() { meta = FeaturesPackage.eINSTANCE; map = new HashMap<Class<?>, EntityMetadata>(); - map.put(FeatureSetDescriptor.class, // + map.put(FeatureSet.class, // new PlainEntityMetadata(// meta.getFeatureSet(), // meta.getFeatureSet_Identifier(), // meta.getFeatureSet_Name())); - map.put(FeatureSet.class, map.get(FeatureSetDescriptor.class)); - map.put(FeatureDescriptor.class, // + map.put(Feature.class, // new PlainEntityMetadata(// meta.getFeature(), // meta.getFeature_Identifier(), // meta.getFeature_Name())); - map.put(Feature.class, map.get(FeatureDescriptor.class)); } @Override diff --git a/bundles/org.eclipse.passage.lic.features.model/src/org/eclipse/passage/lic/internal/features/model/migration/FeaturesResourceHandler.java b/bundles/org.eclipse.passage.lic.features.model/src/org/eclipse/passage/lic/internal/features/model/migration/FeaturesResourceHandler.java index 66ae73ab7..753afacfe 100644 --- a/bundles/org.eclipse.passage.lic.features.model/src/org/eclipse/passage/lic/internal/features/model/migration/FeaturesResourceHandler.java +++ b/bundles/org.eclipse.passage.lic.features.model/src/org/eclipse/passage/lic/internal/features/model/migration/FeaturesResourceHandler.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2021 ArSysOp + * Copyright (c) 2021, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at @@ -34,6 +34,7 @@ protected void register() { migrate033(); migrate040(); migrate050(); + migrate200(); } @Override @@ -63,4 +64,10 @@ private void migrate050() { EPackage.Registry.INSTANCE.computeIfAbsent(uri, ns -> delegate); } + private void migrate200() { + String uri = "http://www.eclipse.org/passage/lic/features/2.0.0"; //$NON-NLS-1$ + FeaturesPackage delegate = FeaturesPackage.eINSTANCE; + EPackage.Registry.INSTANCE.computeIfAbsent(uri, ns -> delegate); + } + } diff --git a/bundles/org.eclipse.passage.lic.features/.classpath b/bundles/org.eclipse.passage.lic.features/.classpath index 81fe078c2..a7a673fa7 100644 --- a/bundles/org.eclipse.passage.lic.features/.classpath +++ b/bundles/org.eclipse.passage.lic.features/.classpath @@ -2,6 +2,5 @@ <classpath> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-17"/> <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> - <classpathentry kind="src" path="src"/> <classpathentry kind="output" path="bin"/> </classpath> diff --git a/bundles/org.eclipse.passage.lic.features/.project b/bundles/org.eclipse.passage.lic.features/.project index b8f3b3cb7..4a390c934 100644 --- a/bundles/org.eclipse.passage.lic.features/.project +++ b/bundles/org.eclipse.passage.lic.features/.project @@ -5,11 +5,6 @@ <projects> </projects> <buildSpec> - <buildCommand> - <name>org.eclipse.jdt.core.javabuilder</name> - <arguments> - </arguments> - </buildCommand> <buildCommand> <name>org.eclipse.pde.ManifestBuilder</name> <arguments> @@ -28,7 +23,6 @@ </buildSpec> <natures> <nature>org.eclipse.pde.PluginNature</nature> - <nature>org.eclipse.jdt.core.javanature</nature> <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature> </natures> <linkedResources> diff --git a/bundles/org.eclipse.passage.lic.features/META-INF/MANIFEST.MF b/bundles/org.eclipse.passage.lic.features/META-INF/MANIFEST.MF index 7a5667846..bdea7d92e 100644 --- a/bundles/org.eclipse.passage.lic.features/META-INF/MANIFEST.MF +++ b/bundles/org.eclipse.passage.lic.features/META-INF/MANIFEST.MF @@ -8,4 +8,3 @@ Bundle-Vendor: %Bundle-Vendor Bundle-Copyright: %Bundle-Copyright Bundle-RequiredExecutionEnvironment: JavaSE-17 Require-Bundle: org.eclipse.passage.lic.api;bundle-version="0.0.0";visibility:=reexport -Export-Package: org.eclipse.passage.lic.features diff --git a/bundles/org.eclipse.passage.lic.features/build.properties b/bundles/org.eclipse.passage.lic.features/build.properties index 31247d8d1..40677a74b 100644 --- a/bundles/org.eclipse.passage.lic.features/build.properties +++ b/bundles/org.eclipse.passage.lic.features/build.properties @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2018, 2020 ArSysOp and others +# Copyright (c) 2018, 2024 ArSysOp and others # # This program and the accompanying materials are made available under the # terms of the Eclipse Public License 2.0 which is available at @@ -11,8 +11,6 @@ # ArSysOp - initial API and implementation ############################################################################### -source.. = src/ -output.. = bin/ bin.includes = META-INF/,\ .,\ OSGI-INF/,\ diff --git a/bundles/org.eclipse.passage.lic.features/src/org/eclipse/passage/lic/features/FeatureDescriptor.java b/bundles/org.eclipse.passage.lic.features/src/org/eclipse/passage/lic/features/FeatureDescriptor.java deleted file mode 100644 index d88278750..000000000 --- a/bundles/org.eclipse.passage.lic.features/src/org/eclipse/passage/lic/features/FeatureDescriptor.java +++ /dev/null @@ -1,66 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2018, 2020 ArSysOp - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * https://www.eclipse.org/legal/epl-2.0/. - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contributors: - * ArSysOp - initial API and implementation - *******************************************************************************/ -package org.eclipse.passage.lic.features; - -/** - * <p> - * A <code>"Feature"</code> corresponds to the scenario for your product, that - * you want to restrict. For example, you may want to restrict export to some - * proprietary format or other actions. You do not need to describe all the - * functionality of your <code>"Product"</code>, but only the parts you want to - * restrict. The <code>"identifier"</code> attribute of the - * <code>"Feature"</code> is important for the - * <code>"Licensing Configuration"</code>. - * <p> - * - */ -public interface FeatureDescriptor { - - /** - * Returns the identifier of this feature. This is the value of its - * <code>"identifier"</code> attribute. - * - * @return the identifier - */ - String getIdentifier(); - - /** - * Returns the provider of this feature. This is the value of its - * <code>"provider"</code> attribute. - * - * @return the provider - * @since 0.5.0 - */ - String getProvider(); - - /** - * Returns the name of this feature. This is the value of its - * <code>"name"</code> attribute. - * - * @return the name - */ - String getName(); - - /** - * Returns the description of this feature. This is the value of its - * <code>"description"</code> attribute. - * - * @return the description - */ - String getDescription(); - - FeatureSetDescriptor getFeatureSet(); - - Iterable<? extends FeatureVersionDescriptor> getFeatureVersions(); - -} diff --git a/bundles/org.eclipse.passage.lic.features/src/org/eclipse/passage/lic/features/FeatureSetDescriptor.java b/bundles/org.eclipse.passage.lic.features/src/org/eclipse/passage/lic/features/FeatureSetDescriptor.java deleted file mode 100644 index 10dad96b4..000000000 --- a/bundles/org.eclipse.passage.lic.features/src/org/eclipse/passage/lic/features/FeatureSetDescriptor.java +++ /dev/null @@ -1,50 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2018, 2020 ArSysOp - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * https://www.eclipse.org/legal/epl-2.0/. - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contributors: - * ArSysOp - initial API and implementation - *******************************************************************************/ -package org.eclipse.passage.lic.features; - -/** - * <p> - * The <code>"Feature Set"</code> groups the related functionality that may be - * distributed via several <code>"Products"</code>. - * <p> - * - */ -public interface FeatureSetDescriptor { - - /** - * Returns the identifier of this feature set. This is the value of its - * <code>"identifier"</code> attribute. - * - * @return the identifier - */ - String getIdentifier(); - - /** - * Returns the name of this feature set. This is the value of its - * <code>"name"</code> attribute. - * - * @return the name - */ - String getName(); - - /** - * Returns the description of this feature set. This is the value of its - * <code>"description"</code> attribute. - * - * @return the description - */ - String getDescription(); - - Iterable<? extends FeatureDescriptor> getFeatures(); - -} diff --git a/bundles/org.eclipse.passage.lic.features/src/org/eclipse/passage/lic/features/FeatureVersionDescriptor.java b/bundles/org.eclipse.passage.lic.features/src/org/eclipse/passage/lic/features/FeatureVersionDescriptor.java deleted file mode 100644 index 382de8349..000000000 --- a/bundles/org.eclipse.passage.lic.features/src/org/eclipse/passage/lic/features/FeatureVersionDescriptor.java +++ /dev/null @@ -1,44 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2018, 2021 ArSysOp - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * https://www.eclipse.org/legal/epl-2.0/. - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contributors: - * ArSysOp - initial API and implementation - *******************************************************************************/ -package org.eclipse.passage.lic.features; - -/** - * <p> - * The <code>"Feature Version"</code> is a state of your <code>"Feature"</code> - * that included to the <code>"Product Version"</code>.The - * <code>"version"</code> attribute of the <code>"Feature Version"</code> is - * important for the <code>"Licensing Configuration"</code>. - * <p> - * - */ -public interface FeatureVersionDescriptor { - - /** - * Returns the version of this feature version. This is the value of its - * <code>"version"</code> attribute. - * - * @return the version - */ - String getVersion(); - - /** - * Returns the "what's new" of this feature version. This is the value of its - * <code>"news"</code> attribute. - * - * @return the news - */ - String getNews(); - - FeatureDescriptor getFeature(); - -} diff --git a/bundles/org.eclipse.passage.loc.dashboard.ui/src/org/eclipse/passage/loc/dashboard/ui/panel/DashboardPanelPart.java b/bundles/org.eclipse.passage.loc.dashboard.ui/src/org/eclipse/passage/loc/dashboard/ui/panel/DashboardPanelPart.java index 6f9e197d1..aa9f9c28c 100644 --- a/bundles/org.eclipse.passage.loc.dashboard.ui/src/org/eclipse/passage/loc/dashboard/ui/panel/DashboardPanelPart.java +++ b/bundles/org.eclipse.passage.loc.dashboard.ui/src/org/eclipse/passage/loc/dashboard/ui/panel/DashboardPanelPart.java @@ -27,9 +27,9 @@ import org.eclipse.passage.lic.agreements.model.api.Agreement; import org.eclipse.passage.lic.agreements.model.api.AgreementGroup; import org.eclipse.passage.lic.emf.meta.ComposableClassMetadata; -import org.eclipse.passage.lic.features.FeatureDescriptor; -import org.eclipse.passage.lic.features.FeatureSetDescriptor; -import org.eclipse.passage.lic.features.FeatureVersionDescriptor; +import org.eclipse.passage.lic.features.model.api.Feature; +import org.eclipse.passage.lic.features.model.api.FeatureSet; +import org.eclipse.passage.lic.features.model.api.FeatureVersion; import org.eclipse.passage.lic.internal.agreements.model.AgreementsClassMetadata; import org.eclipse.passage.lic.internal.features.model.FeaturesClassMetadata; import org.eclipse.passage.lic.internal.licenses.model.LicensesClassMetadata; @@ -138,39 +138,39 @@ protected void createFooterInfo(Composite parent) { @Inject @Optional - public void createdFeatureSet(@UIEventTopic(FeatureRegistryEvents.FEATURE_SET_CREATE) FeatureSetDescriptor input) { + public void createdFeatureSet(@UIEventTopic(FeatureRegistryEvents.FEATURE_SET_CREATE) FeatureSet input) { dashboard.updateFeatureInfo(features); } @Inject @Optional - public void deletedFeatureSet(@UIEventTopic(FeatureRegistryEvents.FEATURE_SET_DELETE) FeatureSetDescriptor input) { + public void deletedFeatureSet(@UIEventTopic(FeatureRegistryEvents.FEATURE_SET_DELETE) FeatureSet input) { dashboard.updateFeatureInfo(features); } @Inject @Optional - public void createdFeature(@UIEventTopic(FeatureRegistryEvents.FEATURE_CREATE) FeatureDescriptor input) { + public void createdFeature(@UIEventTopic(FeatureRegistryEvents.FEATURE_CREATE) Feature input) { dashboard.updateFeatureInfo(features); } @Inject @Optional - public void deletedFeature(@UIEventTopic(FeatureRegistryEvents.FEATURE_DELETE) FeatureDescriptor input) { + public void deletedFeature(@UIEventTopic(FeatureRegistryEvents.FEATURE_DELETE) Feature input) { dashboard.updateFeatureInfo(features); } @Inject @Optional public void createdFeatureVersion( - @UIEventTopic(FeatureRegistryEvents.FEATURE_VERSION_CREATE) FeatureVersionDescriptor input) { + @UIEventTopic(FeatureRegistryEvents.FEATURE_VERSION_CREATE) FeatureVersion input) { dashboard.updateFeatureInfo(features); } @Inject @Optional public void deletedFeatureVersion( - @UIEventTopic(FeatureRegistryEvents.FEATURE_VERSION_DELETE) FeatureVersionDescriptor input) { + @UIEventTopic(FeatureRegistryEvents.FEATURE_VERSION_DELETE) FeatureVersion input) { dashboard.updateFeatureInfo(features); } diff --git a/bundles/org.eclipse.passage.loc.dashboard.ui/src/org/eclipse/passage/loc/dashboard/ui/panel/DefaultDashboardPanelAdvisor.java b/bundles/org.eclipse.passage.loc.dashboard.ui/src/org/eclipse/passage/loc/dashboard/ui/panel/DefaultDashboardPanelAdvisor.java index be56958ac..2feff0925 100644 --- a/bundles/org.eclipse.passage.loc.dashboard.ui/src/org/eclipse/passage/loc/dashboard/ui/panel/DefaultDashboardPanelAdvisor.java +++ b/bundles/org.eclipse.passage.loc.dashboard.ui/src/org/eclipse/passage/loc/dashboard/ui/panel/DefaultDashboardPanelAdvisor.java @@ -124,9 +124,9 @@ protected DashboardPanelBlock createFeatureVersionBlock(Composite parent) { @Override public void updateFeatureInfo(FeatureRegistry featureRegistry) { - featureSets.update(featureRegistry.getFeatureSets()); - features.update(featureRegistry.getFeatures()); - featureVersions.update(featureRegistry.getFeatureVersions()); + featureSets.update(featureRegistry.featureSets()); + features.update(featureRegistry.features()); + featureVersions.update(featureRegistry.featureVersions()); } @Override diff --git a/bundles/org.eclipse.passage.loc.features.core/OSGI-INF/org.eclipse.passage.loc.internal.features.core.FeaturesSelectionCommandAdvisor.xml b/bundles/org.eclipse.passage.loc.features.core/OSGI-INF/org.eclipse.passage.loc.internal.features.core.FeaturesSelectionCommandAdvisor.xml index c91ce95bf..270c7c124 100644 --- a/bundles/org.eclipse.passage.loc.features.core/OSGI-INF/org.eclipse.passage.loc.internal.features.core.FeaturesSelectionCommandAdvisor.xml +++ b/bundles/org.eclipse.passage.loc.features.core/OSGI-INF/org.eclipse.passage.loc.internal.features.core.FeaturesSelectionCommandAdvisor.xml @@ -1,9 +1,9 @@ <?xml version="1.0" encoding="UTF-8"?> -<scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.1.0" name="org.eclipse.passage.loc.internal.features.core.FeaturesSelectionCommandAdvisor"> +<scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.3.0" name="org.eclipse.passage.loc.internal.features.core.FeaturesSelectionCommandAdvisor"> <property name="org.eclipse.passage.lic.emf.edit.domain.name" value="features"/> <service> <provide interface="org.eclipse.passage.loc.internal.emf.SelectionCommandAdvisor"/> </service> - <reference bind="bindDomainRegistry" interface="org.eclipse.passage.loc.internal.features.FeatureRegistry" name="DomainRegistry" unbind="unbindDomainRegistry"/> + <reference cardinality="1..1" field="registry" interface="org.eclipse.passage.loc.internal.features.FeatureRegistry" name="registry"/> <implementation class="org.eclipse.passage.loc.internal.features.core.FeaturesSelectionCommandAdvisor"/> </scr:component> \ No newline at end of file diff --git a/bundles/org.eclipse.passage.loc.features.core/src/org/eclipse/passage/loc/internal/features/FeatureRegistry.java b/bundles/org.eclipse.passage.loc.features.core/src/org/eclipse/passage/loc/internal/features/FeatureRegistry.java index b28343fa6..149cfcef1 100644 --- a/bundles/org.eclipse.passage.loc.features.core/src/org/eclipse/passage/loc/internal/features/FeatureRegistry.java +++ b/bundles/org.eclipse.passage.loc.features.core/src/org/eclipse/passage/loc/internal/features/FeatureRegistry.java @@ -12,38 +12,23 @@ *******************************************************************************/ package org.eclipse.passage.loc.internal.features; -import org.eclipse.passage.lic.features.FeatureDescriptor; -import org.eclipse.passage.lic.features.FeatureSetDescriptor; -import org.eclipse.passage.lic.features.FeatureVersionDescriptor; +import java.util.Collection; +import java.util.Optional; -public interface FeatureRegistry { - - Iterable<? extends FeatureSetDescriptor> getFeatureSets(); - - FeatureSetDescriptor getFeatureSet(String featureSetId); - - void registerFeatureSet(FeatureSetDescriptor featureSet); - - void unregisterFeatureSet(String featureSetId); +import org.eclipse.passage.lic.features.model.api.Feature; +import org.eclipse.passage.lic.features.model.api.FeatureSet; +import org.eclipse.passage.lic.features.model.api.FeatureVersion; - Iterable<? extends FeatureDescriptor> getFeatures(); - - Iterable<? extends FeatureDescriptor> getFeatures(String featureSetId); - - FeatureDescriptor getFeature(String featureId); - - void registerFeature(FeatureDescriptor feature); - - void unregisterFeature(String featureId); +public interface FeatureRegistry { - Iterable<? extends FeatureVersionDescriptor> getFeatureVersions(); + Collection<FeatureSet> featureSets(); - Iterable<? extends FeatureVersionDescriptor> getFeatureVersions(String featureId); + Optional<FeatureSet> featureSet(String id); - FeatureVersionDescriptor getFeatureVersion(String featureId, String version); + Collection<Feature> features(); - void registerFeatureVersion(FeatureDescriptor feature, FeatureVersionDescriptor featureVersion); + Optional<Feature> feature(String id); - void unregisterFeatureVersion(String featureId, String version); + Collection<FeatureVersion> featureVersions(); } diff --git a/bundles/org.eclipse.passage.loc.features.core/src/org/eclipse/passage/loc/internal/features/core/FeatureDomainRegistry.java b/bundles/org.eclipse.passage.loc.features.core/src/org/eclipse/passage/loc/internal/features/core/FeatureDomainRegistry.java index b28d4f808..0f5cce01c 100644 --- a/bundles/org.eclipse.passage.loc.features.core/src/org/eclipse/passage/loc/internal/features/core/FeatureDomainRegistry.java +++ b/bundles/org.eclipse.passage.loc.features.core/src/org/eclipse/passage/loc/internal/features/core/FeatureDomainRegistry.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2022 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at @@ -14,10 +14,10 @@ import java.util.ArrayList; import java.util.Collection; -import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Optional; import org.eclipse.core.runtime.Platform; import org.eclipse.emf.common.util.URI; @@ -25,9 +25,9 @@ import org.eclipse.emf.ecore.EStructuralFeature; import org.eclipse.emf.ecore.resource.Resource; import org.eclipse.osgi.util.NLS; -import org.eclipse.passage.lic.features.FeatureDescriptor; -import org.eclipse.passage.lic.features.FeatureSetDescriptor; -import org.eclipse.passage.lic.features.FeatureVersionDescriptor; +import org.eclipse.passage.lic.features.model.api.Feature; +import org.eclipse.passage.lic.features.model.api.FeatureSet; +import org.eclipse.passage.lic.features.model.api.FeatureVersion; import org.eclipse.passage.lic.features.model.meta.FeaturesPackage; import org.eclipse.passage.lic.features.model.util.FeaturesResourceImpl; import org.eclipse.passage.lic.internal.equinox.events.EquinoxEvent; @@ -52,12 +52,12 @@ @SuppressWarnings("restriction") @Component(property = { EditingDomainRegistryAccess.PROPERTY_DOMAIN_NAME + '=' + FeaturesPackage.eNAME, EditingDomainRegistryAccess.PROPERTY_FILE_EXTENSION + '=' + "features_xmi" }) -public class FeatureDomainRegistry extends BaseDomainRegistry<FeatureSetDescriptor> - implements FeatureRegistry, EditingDomainRegistry<FeatureSetDescriptor> { +public class FeatureDomainRegistry extends BaseDomainRegistry<FeatureSet> + implements FeatureRegistry, EditingDomainRegistry<FeatureSet> { - private final Map<String, FeatureSetDescriptor> featureSetIndex = new HashMap<>(); - private final Map<String, FeatureDescriptor> featureIndex = new HashMap<>(); - private final Map<String, Map<String, FeatureVersionDescriptor>> featureVersionIndex = new HashMap<>(); + private final Map<String, FeatureSet> sets = new HashMap<>(); + private final Map<String, Feature> features = new HashMap<>(); + private final Map<String, Map<String, FeatureVersion>> versions = new HashMap<>(); private EventAdmin events; @@ -90,13 +90,10 @@ public void activate(Map<String, Object> properties) { @Deactivate @Override public void deactivate(Map<String, Object> properties) { - Collection<Map<String, FeatureVersionDescriptor>> values = featureVersionIndex.values(); - for (Map<String, FeatureVersionDescriptor> map : values) { - map.clear(); - } - featureVersionIndex.clear(); - featureIndex.clear(); - featureSetIndex.clear(); + versions.values().forEach(Map::clear); + versions.clear(); + features.clear(); + sets.clear(); super.deactivate(properties); } @@ -106,159 +103,106 @@ public String getFileExtension() { } @Override - public Class<FeatureSetDescriptor> getContentClass() { - return FeatureSetDescriptor.class; + public Class<FeatureSet> getContentClass() { + return FeatureSet.class; } @Override - public String resolveIdentifier(FeatureSetDescriptor content) { + public String resolveIdentifier(FeatureSet content) { return content.getIdentifier(); } @Override - public Iterable<? extends FeatureSetDescriptor> getFeatureSets() { - return new ArrayList<>(featureSetIndex.values()); - } - - @Override - public FeatureSetDescriptor getFeatureSet(String identifier) { - return featureSetIndex.get(identifier); + public Collection<FeatureSet> featureSets() { + return new ArrayList<>(sets.values()); } @Override - public Iterable<? extends FeatureDescriptor> getFeatures() { - return new ArrayList<>(featureIndex.values()); + public Optional<FeatureSet> featureSet(String identifier) { + return Optional.ofNullable(sets.get(identifier)); } @Override - public Iterable<? extends FeatureDescriptor> getFeatures(String featureSetId) { - FeatureSetDescriptor featureSet = featureSetIndex.get(featureSetId); - if (featureSet == null) { - return Collections.emptyList(); - } - List<FeatureDescriptor> features = new ArrayList<>(); - featureSet.getFeatures().forEach(features::add); - return features; + public Collection<Feature> features() { + return new ArrayList<>(features.values()); } @Override - public FeatureDescriptor getFeature(String identifier) { - return featureIndex.get(identifier); + public Optional<Feature> feature(String id) { + return Optional.ofNullable(features.get(id)); } @Override - public Iterable<? extends FeatureVersionDescriptor> getFeatureVersions() { - List<FeatureVersionDescriptor> list = new ArrayList<>(); - Collection<Map<String, FeatureVersionDescriptor>> values = featureVersionIndex.values(); - for (Map<String, FeatureVersionDescriptor> map : values) { + public Collection<FeatureVersion> featureVersions() { + List<FeatureVersion> list = new ArrayList<>(); + Collection<Map<String, FeatureVersion>> values = versions.values(); + for (Map<String, FeatureVersion> map : values) { list.addAll(map.values()); } return list; } @Override - public Iterable<? extends FeatureVersionDescriptor> getFeatureVersions(String featureId) { - Map<String, FeatureVersionDescriptor> map = featureVersionIndex.get(featureId); - if (map == null) { - return Collections.emptyList(); - } - return new ArrayList<>(map.values()); - } - - @Override - public FeatureVersionDescriptor getFeatureVersion(String featureId, String version) { - Map<String, FeatureVersionDescriptor> map = featureVersionIndex.get(featureId); - if (map == null) { - return null; - } - return map.get(version); - } - - @Override - protected DomainContentAdapter<FeatureSetDescriptor, FeatureDomainRegistry> createContentAdapter() { + protected DomainContentAdapter<FeatureSet, FeatureDomainRegistry> createContentAdapter() { return new FeaturesDomainRegistryTracker(this); } - @Override - public void registerFeatureSet(FeatureSetDescriptor featureSet) { - String identifier = featureSet.getIdentifier(); - FeatureSetDescriptor existing = featureSetIndex.put(identifier, featureSet); - if ((existing != null) && (existing != featureSet)) { - String msg = NLS.bind(FeaturesCoreMessages.FeatureDomain_instance_duplication_message, existing, - featureSet); - Platform.getLog(getClass()).warn(msg); - } - events.postEvent(new EquinoxEvent(FeatureRegistryEvents.FEATURE_SET_CREATE, featureSet).get()); - Iterable<? extends FeatureDescriptor> features = featureSet.getFeatures(); - for (FeatureDescriptor feature : features) { - registerFeature(feature); + void registerFeatureSet(FeatureSet fs) { + FeatureSet existing = sets.put(fs.getIdentifier(), fs); + if ((existing != null) && (existing != fs)) { + Platform.getLog(getClass()) + .warn(NLS.bind(FeaturesCoreMessages.FeatureDomain_instance_duplication_message, existing, fs)); } + events.postEvent(new EquinoxEvent(FeatureRegistryEvents.FEATURE_SET_CREATE, fs).get()); + fs.getFeatures().forEach(this::registerFeature); } - @Override - public void registerFeature(FeatureDescriptor feature) { - String identifier = feature.getIdentifier(); - FeatureDescriptor existing = featureIndex.put(identifier, feature); + void registerFeature(Feature feature) { + Feature existing = features.put(feature.getIdentifier(), feature); if ((existing != null) && (existing != feature)) { - String msg = NLS.bind(FeaturesCoreMessages.FeatureDomain_instance_duplication_message, existing, feature); - Platform.getLog(getClass()).warn(msg); + Platform.getLog(getClass()) + .warn(NLS.bind(FeaturesCoreMessages.FeatureDomain_instance_duplication_message, existing, feature)); } events.postEvent(new EquinoxEvent(FeatureRegistryEvents.FEATURE_CREATE, feature).get()); - Iterable<? extends FeatureVersionDescriptor> featureVersions = feature.getFeatureVersions(); - for (FeatureVersionDescriptor featureVersion : featureVersions) { - registerFeatureVersion(feature, featureVersion); - } + feature.getFeatureVersions().forEach(fv -> registerFeatureVersion(feature, fv)); } - @Override - public void registerFeatureVersion(FeatureDescriptor feature, FeatureVersionDescriptor featureVersion) { + void registerFeatureVersion(Feature feature, FeatureVersion version) { String identifier = feature.getIdentifier(); - Map<String, FeatureVersionDescriptor> map = featureVersionIndex.computeIfAbsent(identifier, - key -> new HashMap<>()); - String version = featureVersion.getVersion(); - FeatureVersionDescriptor existing = map.put(version, featureVersion); - if ((existing != null) && (existing != featureVersion)) { - String msg = NLS.bind(FeaturesCoreMessages.FeatureDomain_instance_duplication_message, existing, - featureVersion); - Platform.getLog(getClass()).warn(msg); + Map<String, FeatureVersion> map = versions.computeIfAbsent(identifier, key -> new HashMap<>()); + FeatureVersion existing = map.put(version.getVersion(), version); + if ((existing != null) && (existing != version)) { + Platform.getLog(getClass()) + .warn(NLS.bind(FeaturesCoreMessages.FeatureDomain_instance_duplication_message, existing, version)); } - events.postEvent(new EquinoxEvent(FeatureRegistryEvents.FEATURE_VERSION_CREATE, featureVersion).get()); + events.postEvent(new EquinoxEvent(FeatureRegistryEvents.FEATURE_VERSION_CREATE, version).get()); } - @Override - public void unregisterFeatureSet(String featureSetId) { - FeatureSetDescriptor removed = featureSetIndex.remove(featureSetId); + void unregisterFeatureSet(String id) { + FeatureSet removed = sets.remove(id); if (removed != null) { events.postEvent(new EquinoxEvent(FeatureRegistryEvents.FEATURE_SET_DELETE, removed).get()); - Iterable<? extends FeatureDescriptor> features = removed.getFeatures(); - for (FeatureDescriptor feature : features) { - unregisterFeature(feature.getIdentifier()); - } + removed.getFeatures().stream().map(Feature::getIdentifier).forEach(this::unregisterFeature); } } - @Override - public void unregisterFeature(String featureId) { - FeatureDescriptor removed = featureIndex.remove(featureId); + void unregisterFeature(String id) { + Feature removed = features.remove(id); if (removed != null) { events.postEvent(new EquinoxEvent(FeatureRegistryEvents.FEATURE_DELETE, removed).get()); - Iterable<? extends FeatureVersionDescriptor> featureVersions = removed.getFeatureVersions(); - for (FeatureVersionDescriptor featureVersion : featureVersions) { - unregisterFeatureVersion(featureId, featureVersion.getVersion()); - } + removed.getFeatureVersions().forEach(fv -> unregisterFeatureVersion(id, fv.getVersion())); } } - @Override - public void unregisterFeatureVersion(String featureId, String version) { - Map<String, FeatureVersionDescriptor> map = featureVersionIndex.get(featureId); + void unregisterFeatureVersion(String featureId, String version) { + Map<String, FeatureVersion> map = versions.get(featureId); if (map != null) { - FeatureVersionDescriptor removed = map.remove(version); + FeatureVersion removed = map.remove(version); if (removed != null) { events.postEvent(new EquinoxEvent(FeatureRegistryEvents.FEATURE_VERSION_DELETE, removed).get()); } if (map.isEmpty()) { - featureVersionIndex.remove(version); + versions.remove(version); } } } @@ -279,7 +223,7 @@ public EStructuralFeature getContentNameAttribute() { } @Override - public void registerContent(FeatureSetDescriptor content) { + public void registerContent(FeatureSet content) { registerFeatureSet(content); } diff --git a/bundles/org.eclipse.passage.loc.features.core/src/org/eclipse/passage/loc/internal/features/core/FeaturesDomainRegistryTracker.java b/bundles/org.eclipse.passage.loc.features.core/src/org/eclipse/passage/loc/internal/features/core/FeaturesDomainRegistryTracker.java index 9c7b62971..a6106d915 100644 --- a/bundles/org.eclipse.passage.loc.features.core/src/org/eclipse/passage/loc/internal/features/core/FeaturesDomainRegistryTracker.java +++ b/bundles/org.eclipse.passage.loc.features.core/src/org/eclipse/passage/loc/internal/features/core/FeaturesDomainRegistryTracker.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2018, 2020 ArSysOp + * Copyright (c) 2018, 2024 ArSysOp * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at @@ -13,14 +13,13 @@ package org.eclipse.passage.loc.internal.features.core; import org.eclipse.emf.common.notify.Notification; -import org.eclipse.passage.lic.features.FeatureSetDescriptor; import org.eclipse.passage.lic.features.model.api.Feature; import org.eclipse.passage.lic.features.model.api.FeatureSet; import org.eclipse.passage.lic.features.model.api.FeatureVersion; import org.eclipse.passage.lic.features.model.meta.FeaturesPackage; import org.eclipse.passage.loc.internal.emf.DomainContentAdapter; -public class FeaturesDomainRegistryTracker extends DomainContentAdapter<FeatureSetDescriptor, FeatureDomainRegistry> { +public class FeaturesDomainRegistryTracker extends DomainContentAdapter<FeatureSet, FeatureDomainRegistry> { public FeaturesDomainRegistryTracker(FeatureDomainRegistry registry) { super(registry); diff --git a/bundles/org.eclipse.passage.loc.features.core/src/org/eclipse/passage/loc/internal/features/core/FeaturesSelectionCommandAdvisor.java b/bundles/org.eclipse.passage.loc.features.core/src/org/eclipse/passage/loc/internal/features/core/FeaturesSelectionCommandAdvisor.java index 3001f051e..f7d3b5c4c 100644 --- a/bundles/org.eclipse.passage.loc.features.core/src/org/eclipse/passage/loc/internal/features/core/FeaturesSelectionCommandAdvisor.java +++ b/bundles/org.eclipse.passage.loc.features.core/src/org/eclipse/passage/loc/internal/features/core/FeaturesSelectionCommandAdvisor.java @@ -25,16 +25,8 @@ @Component(property = { EditingDomainRegistryAccess.PROPERTY_DOMAIN_NAME + '=' + FeaturesPackage.eNAME }) public class FeaturesSelectionCommandAdvisor implements SelectionCommandAdvisor { - private FeatureRegistry registry; - @Reference - public void bindDomainRegistry(FeatureRegistry featureRegistry) { - this.registry = featureRegistry; - } - - public void unbindDomainRegistry(FeatureRegistry featureRegistry) { - this.registry = null; - } + private FeatureRegistry registry; @Override public String getSelectionTitle(String classifier) { @@ -56,13 +48,13 @@ public Iterable<?> getSelectionInput(String classifier) { return Collections.emptyList(); } if (FeaturesPackage.eINSTANCE.getFeatureSet().getName().equals(classifier)) { - return registry.getFeatureSets(); + return registry.featureSets(); } if (FeaturesPackage.eINSTANCE.getFeature().getName().equals(classifier)) { - return registry.getFeatures(); + return registry.features(); } if (FeaturesPackage.eINSTANCE.getFeatureVersion().getName().equals(classifier)) { - return registry.getFeatureVersions(); + return registry.featureVersions(); } return Collections.emptyList(); } diff --git a/bundles/org.eclipse.passage.loc.features.emfforms/src/org/eclipse/passage/loc/features/emfforms/renderers/FeatureIdentifierRenderer.java b/bundles/org.eclipse.passage.loc.features.emfforms/src/org/eclipse/passage/loc/features/emfforms/renderers/FeatureIdentifierRenderer.java index 3f7ea1e07..e91b806a0 100644 --- a/bundles/org.eclipse.passage.loc.features.emfforms/src/org/eclipse/passage/loc/features/emfforms/renderers/FeatureIdentifierRenderer.java +++ b/bundles/org.eclipse.passage.loc.features.emfforms/src/org/eclipse/passage/loc/features/emfforms/renderers/FeatureIdentifierRenderer.java @@ -12,6 +12,8 @@ *******************************************************************************/ package org.eclipse.passage.loc.features.emfforms.renderers; +import java.util.Optional; + import javax.inject.Inject; import org.eclipse.emf.ecp.view.spi.context.ViewModelContext; @@ -22,7 +24,7 @@ import org.eclipse.emfforms.spi.core.services.databinding.DatabindingFailedReport; import org.eclipse.emfforms.spi.core.services.databinding.EMFFormsDatabinding; import org.eclipse.emfforms.spi.core.services.label.EMFFormsLabelProvider; -import org.eclipse.passage.lic.features.FeatureDescriptor; +import org.eclipse.passage.lic.features.model.api.Feature; import org.eclipse.passage.loc.features.ui.FeaturesUi; import org.eclipse.passage.loc.internal.features.FeatureRegistry; import org.eclipse.passage.loc.workbench.emfforms.renderers.TextWithButtonRenderer; @@ -68,17 +70,17 @@ protected String getUnsetText() { protected void selectIdentifier() { Shell shell = Display.getDefault().getActiveShell(); - FeatureDescriptor initial = null; + Optional<Feature> initial = Optional.empty(); try { Object value = getModelValue().getValue(); if (value instanceof String) { String id = (String) value; - initial = registry.getFeature(id); + initial = registry.feature(id); } } catch (DatabindingFailedException e) { getReportService().report(new DatabindingFailedReport(e)); } - FeatureDescriptor descriptor = FeaturesUi.selectFeatureDescriptor(shell, registry, initial); + Feature descriptor = FeaturesUi.selectFeatureDescriptor(shell, registry, initial); if (descriptor != null) { String identifier = descriptor.getIdentifier(); if (identifier != null) { diff --git a/bundles/org.eclipse.passage.loc.features.ui/src/org/eclipse/passage/loc/features/ui/FeaturesUi.java b/bundles/org.eclipse.passage.loc.features.ui/src/org/eclipse/passage/loc/features/ui/FeaturesUi.java index ed600471a..6ad554ad1 100644 --- a/bundles/org.eclipse.passage.loc.features.ui/src/org/eclipse/passage/loc/features/ui/FeaturesUi.java +++ b/bundles/org.eclipse.passage.loc.features.ui/src/org/eclipse/passage/loc/features/ui/FeaturesUi.java @@ -14,7 +14,7 @@ import java.util.Optional; -import org.eclipse.passage.lic.features.FeatureDescriptor; +import org.eclipse.passage.lic.features.model.api.Feature; import org.eclipse.passage.lic.features.model.meta.FeaturesPackage; import org.eclipse.passage.loc.internal.features.FeatureRegistry; import org.eclipse.passage.loc.internal.features.ui.i18n.FeatureUiMessages; @@ -27,13 +27,10 @@ public class FeaturesUi { public static final String PERSPECTIVE_MAIN = BUNDLE_SYMBOLIC_NAME + '.' + "perspective.main"; //$NON-NLS-1$ - public static FeatureDescriptor selectFeatureDescriptor(Shell shell, FeatureRegistry registry, - FeatureDescriptor initial) { + public static Feature selectFeatureDescriptor(Shell shell, FeatureRegistry registry, Optional<Feature> initial) { String classifier = FeaturesPackage.eINSTANCE.getFeature().getName(); String title = FeatureUiMessages.FeaturesUi_select_feature_title; - Iterable<? extends FeatureDescriptor> input = registry.getFeatures(); - Class<FeatureDescriptor> clazz = FeatureDescriptor.class; - return LocWokbench.selectClassifier(shell, classifier, title, input, Optional.ofNullable(initial), clazz); + return LocWokbench.selectClassifier(shell, classifier, title, registry.features(), initial, Feature.class); } } diff --git a/bundles/org.eclipse.passage.loc.workbench/src/org/eclipse/passage/loc/workbench/LocWokbench.java b/bundles/org.eclipse.passage.loc.workbench/src/org/eclipse/passage/loc/workbench/LocWokbench.java index 978f3f2ee..64462b35c 100644 --- a/bundles/org.eclipse.passage.loc.workbench/src/org/eclipse/passage/loc/workbench/LocWokbench.java +++ b/bundles/org.eclipse.passage.loc.workbench/src/org/eclipse/passage/loc/workbench/LocWokbench.java @@ -135,9 +135,6 @@ public static <C> Object selectClassifier(IEclipseContext context, String classi return selectClassifier(shell, classifier, title, input, initial); } - /** - * @since 1.0 - */ public static <C> C selectClassifier(Shell shell, String classifier, String title, Iterable<? extends C> input, Optional<C> initial, Class<C> clazz) { Object selected = selectClassifier(shell, classifier, title, input, initial); diff --git a/tests/org.eclipse.passage.lic.features.model.tests/src/org/eclipse/passage/lic/features/model/tests/FeaturesClassMetadataTest.java b/tests/org.eclipse.passage.lic.features.model.tests/src/org/eclipse/passage/lic/features/model/tests/FeaturesClassMetadataTest.java index f1c972086..8752df58f 100644 --- a/tests/org.eclipse.passage.lic.features.model.tests/src/org/eclipse/passage/lic/features/model/tests/FeaturesClassMetadataTest.java +++ b/tests/org.eclipse.passage.lic.features.model.tests/src/org/eclipse/passage/lic/features/model/tests/FeaturesClassMetadataTest.java @@ -14,8 +14,6 @@ import static org.junit.Assert.assertTrue; -import org.eclipse.passage.lic.features.FeatureDescriptor; -import org.eclipse.passage.lic.features.FeatureSetDescriptor; import org.eclipse.passage.lic.features.model.api.Feature; import org.eclipse.passage.lic.features.model.api.FeatureSet; import org.eclipse.passage.lic.internal.features.model.FeaturesClassMetadata; @@ -31,20 +29,17 @@ public FeaturesClassMetadataTest() { @Test public void featureSetMetadata() { - assertTrue(metadata.find(FeatureSetDescriptor.class).isPresent()); assertTrue(metadata.find(FeatureSet.class).isPresent()); } @Test public void featureMetadata() { - assertTrue(metadata.find(FeatureDescriptor.class).isPresent()); assertTrue(metadata.find(Feature.class).isPresent()); } @Test public void featureVersionMetadata() { // FIXME: implement -// assertTrue(metadata.find(FeatureVersionDescriptor.class).isPresent()); // assertTrue(metadata.find(FeatureVersion.class).isPresent()); } }