Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • af3/kernel
  • diewald/kernel
2 results
Show changes
Commits on Source (31)
Showing
with 135 additions and 44 deletions
...@@ -2,10 +2,10 @@ Manifest-Version: 1.0 ...@@ -2,10 +2,10 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2 Bundle-ManifestVersion: 2
Bundle-Name: Tooling Base UI Bundle-Name: Tooling Base UI
Bundle-SymbolicName: org.fortiss.tooling.base.ui;singleton:=true Bundle-SymbolicName: org.fortiss.tooling.base.ui;singleton:=true
Bundle-Version: 2.22.0.qualifier Bundle-Version: 2.23.0.qualifier
Bundle-Activator: org.fortiss.tooling.base.ui.ToolingBaseUIActivator Bundle-Activator: org.fortiss.tooling.base.ui.ToolingBaseUIActivator
Require-Bundle: org.fortiss.tooling.base;bundle-version="2.22.0";visibility:=reexport, Require-Bundle: org.fortiss.tooling.base;bundle-version="2.23.0";visibility:=reexport,
org.fortiss.tooling.kernel.ui;bundle-version="2.22.0";visibility:=reexport, org.fortiss.tooling.kernel.ui;bundle-version="2.23.0";visibility:=reexport,
org.eclipse.swt, org.eclipse.swt,
org.fortiss.tooling.common.ui org.fortiss.tooling.common.ui
Bundle-ActivationPolicy: lazy Bundle-ActivationPolicy: lazy
......
...@@ -2,7 +2,7 @@ Manifest-Version: 1.0 ...@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2 Bundle-ManifestVersion: 2
Bundle-Name: %pluginName Bundle-Name: %pluginName
Bundle-SymbolicName: org.fortiss.tooling.base;singleton:=true Bundle-SymbolicName: org.fortiss.tooling.base;singleton:=true
Bundle-Version: 2.22.0.qualifier Bundle-Version: 2.23.0.qualifier
Bundle-ClassPath: . Bundle-ClassPath: .
Bundle-Vendor: %providerName Bundle-Vendor: %providerName
Bundle-Localization: plugin Bundle-Localization: plugin
......
...@@ -2,7 +2,7 @@ Manifest-Version: 1.0 ...@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2 Bundle-ManifestVersion: 2
Bundle-Name: Tooling Commons UI Bundle-Name: Tooling Commons UI
Bundle-SymbolicName: org.fortiss.tooling.common.ui;singleton:=true Bundle-SymbolicName: org.fortiss.tooling.common.ui;singleton:=true
Bundle-Version: 2.22.0.qualifier Bundle-Version: 2.23.0.qualifier
Bundle-RequiredExecutionEnvironment: JavaSE-11 Bundle-RequiredExecutionEnvironment: JavaSE-11
Require-Bundle: org.fortiss.tooling.common;visibility:=reexport, Require-Bundle: org.fortiss.tooling.common;visibility:=reexport,
org.eclipse.core.resources;visibility:=reexport, org.eclipse.core.resources;visibility:=reexport,
......
...@@ -2,7 +2,7 @@ Manifest-Version: 1.0 ...@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2 Bundle-ManifestVersion: 2
Bundle-Name: Tooling Commons Bundle-Name: Tooling Commons
Bundle-SymbolicName: org.fortiss.tooling.common;singleton:=true Bundle-SymbolicName: org.fortiss.tooling.common;singleton:=true
Bundle-Version: 2.22.0.qualifier Bundle-Version: 2.23.0.qualifier
Require-Bundle: org.eclipse.core.runtime;visibility:=reexport, Require-Bundle: org.eclipse.core.runtime;visibility:=reexport,
com.ibm.icu;visibility:=reexport, com.ibm.icu;visibility:=reexport,
org.junit;visibility:=reexport org.junit;visibility:=reexport
......
...@@ -3,7 +3,7 @@ Automatic-Module-Name: org.fortiss.tooling.ext.reuse.ui ...@@ -3,7 +3,7 @@ Automatic-Module-Name: org.fortiss.tooling.ext.reuse.ui
Bundle-ManifestVersion: 2 Bundle-ManifestVersion: 2
Bundle-Name: AF3 Reuse UI Bundle-Name: AF3 Reuse UI
Bundle-SymbolicName: org.fortiss.tooling.ext.reuse.ui;singleton:=true Bundle-SymbolicName: org.fortiss.tooling.ext.reuse.ui;singleton:=true
Bundle-Version: 2.22.0.qualifier Bundle-Version: 2.23.0.qualifier
Bundle-Activator: org.fortiss.tooling.ext.reuse.ui.ToolingReuseUIActivator Bundle-Activator: org.fortiss.tooling.ext.reuse.ui.ToolingReuseUIActivator
Require-Bundle: org.eclipse.ui.ide;visibility:=reexport, Require-Bundle: org.eclipse.ui.ide;visibility:=reexport,
org.fortiss.tooling.base.ui;visibility:=reexport, org.fortiss.tooling.base.ui;visibility:=reexport,
......
org.fortiss.tooling.ext.reuse.ui/icons/af3_icon64.png

6.11 KiB

org.fortiss.tooling.ext.reuse.ui/icons/af3_logo.png

22.2 KiB

org.fortiss.tooling.ext.reuse.ui/icons/af3_logo_square.png

33.5 KiB

ReuseLibraryUIUtils.java 0f8d233c725d9dbd39ff6613a69c997786264054 GREEN ReuseLibraryUIUtils.java fed62784975bf8e6fc1625505636e247dfb6c86e GREEN
ReuseLibraryViewUtils.java 34a852dc692ec56cb3e9fd8dcea99d64f31503b3 GREEN ReuseLibraryViewUtils.java 34a852dc692ec56cb3e9fd8dcea99d64f31503b3 GREEN
...@@ -16,10 +16,12 @@ ...@@ -16,10 +16,12 @@
package org.fortiss.tooling.ext.reuse.ui.utils; package org.fortiss.tooling.ext.reuse.ui.utils;
import static java.lang.String.join; import static java.lang.String.join;
import static javafx.scene.control.Alert.AlertType.INFORMATION;
import static org.conqat.ide.commons.ui.dialog.MessageUtils.askQuestion; import static org.conqat.ide.commons.ui.dialog.MessageUtils.askQuestion;
import static org.conqat.ide.commons.ui.dialog.MessageUtils.showInfo; import static org.conqat.ide.commons.ui.dialog.MessageUtils.showInfo;
import static org.conqat.ide.commons.ui.dialog.MessageUtils.showWarning; import static org.conqat.ide.commons.ui.dialog.MessageUtils.showWarning;
import static org.conqat.ide.commons.ui.ui.WorkbenchUtils.getActiveWorkbenchWindow; import static org.conqat.ide.commons.ui.ui.WorkbenchUtils.getActiveWorkbenchWindow;
import static org.fortiss.tooling.common.ui.javafx.util.GraphicUtils.getFXImage;
import static org.fortiss.tooling.ext.reuse.storage.ReuseLibraryStorageManager.REUSE_PROJECT_DIR; import static org.fortiss.tooling.ext.reuse.storage.ReuseLibraryStorageManager.REUSE_PROJECT_DIR;
import static org.fortiss.tooling.ext.reuse.utils.ReuseLibraryUtilsBasics.getAllReuseSpecs; import static org.fortiss.tooling.ext.reuse.utils.ReuseLibraryUtilsBasics.getAllReuseSpecs;
import static org.fortiss.tooling.ext.reuse.utils.ReuseLibraryUtilsBasics.getElementInsideLibrary; import static org.fortiss.tooling.ext.reuse.utils.ReuseLibraryUtilsBasics.getElementInsideLibrary;
...@@ -35,8 +37,16 @@ import org.eclipse.swt.widgets.Shell; ...@@ -35,8 +37,16 @@ import org.eclipse.swt.widgets.Shell;
import org.fortiss.tooling.base.model.element.IModelElement; import org.fortiss.tooling.base.model.element.IModelElement;
import org.fortiss.tooling.ext.reuse.model.ReuseElementSpec; import org.fortiss.tooling.ext.reuse.model.ReuseElementSpec;
import org.fortiss.tooling.ext.reuse.model.ReuseLibrary; import org.fortiss.tooling.ext.reuse.model.ReuseLibrary;
import org.fortiss.tooling.ext.reuse.ui.ToolingReuseUIActivator;
import org.fortiss.tooling.ext.reuse.ui.dialog.SelectLibDialog; import org.fortiss.tooling.ext.reuse.ui.dialog.SelectLibDialog;
import javafx.scene.control.Alert;
import javafx.scene.control.Alert.AlertType;
import javafx.scene.control.DialogPane;
import javafx.scene.control.TextArea;
import javafx.scene.image.Image;
import javafx.stage.Stage;
/** /**
* Utility methods for {@link ReuseLibrary}s' UI. * Utility methods for {@link ReuseLibrary}s' UI.
* *
...@@ -44,6 +54,12 @@ import org.fortiss.tooling.ext.reuse.ui.dialog.SelectLibDialog; ...@@ -44,6 +54,12 @@ import org.fortiss.tooling.ext.reuse.ui.dialog.SelectLibDialog;
*/ */
public class ReuseLibraryUIUtils { public class ReuseLibraryUIUtils {
/** Standard width preference for dialog windows used in the reuse context. */
private final static Double DIALOG_WINDOW_WIDTH_PREF = 700.0;
/** Standard height preference for dialog windows used in the reuse context. */
private final static Double DIALOG_WINDOW_HEIGHT_PREF = 500.0;
/** /**
* Returns the selected {@link ReuseElementSpec} by user from all * Returns the selected {@link ReuseElementSpec} by user from all
* {@link ReuseElementSpec}s of the given element. Returns null if no * {@link ReuseElementSpec}s of the given element. Returns null if no
...@@ -231,18 +247,84 @@ public class ReuseLibraryUIUtils { ...@@ -231,18 +247,84 @@ public class ReuseLibraryUIUtils {
List<EObject> externalRefs = getExternalReferencesOfElement(reuseElement); List<EObject> externalRefs = getExternalReferencesOfElement(reuseElement);
if (!externalRefs.isEmpty()) { if (!externalRefs.isEmpty()) {
String infoMessage = "The following elements were found as references inside the reuse element you " String headerText = "The following elements were found as references inside the reuse element you "
+ actionText + ".\n\nIn case of reusing this element" + currentReuseTest + actionText + ".\n\nIn case of reusing this element" + currentReuseTest
+ ", these referenced elements will be needed in the new environment, too. " + ", these referenced elements will be needed in the new environment, too. "
+ "Therefore, you might want to add/update these reference elements as well (if not already done).\n"; + "Therefore, you might want to add/update these reference elements as well (if not already done).\n";
String bodyText = "";
for (EObject externalRef : externalRefs) { for (EObject externalRef : externalRefs) {
infoMessage += "\n- " + getReuseElementName(externalRef) + " (" + externalRef.getClass().getSimpleName() bodyText += "\n- " + getReuseElementName(externalRef) + " (" + externalRef.getClass().getSimpleName()
+ ")"; + ")";
if (getReuseElementName(externalRef).equals(getReuseElementName(reuseElement))) { if (getReuseElementName(externalRef).equals(getReuseElementName(reuseElement))) {
infoMessage += " [ignore this if it is actually " + sourceText + "]"; bodyText += " [ignore this if it is actually " + sourceText + "]";
} }
} }
showInfo(infoTitle, infoMessage);
showBasicScrollableInformation(shellTitle, headerText, bodyText);
} }
} }
/**
* Creates and displays a information box with only an OK button. Everything is
* already set except the text for the title, the header and the body.
*
* @param windowTitle The title of the dialog window
* @param headerText The text of the header between title and body
* @param bodyText The actual text body
*/
public static void showBasicScrollableInformation(String windowTitle, String headerText, String bodyText) {
boolean showSymbol = true;
showCustomScrollableAlert(INFORMATION, windowTitle, headerText, bodyText, showSymbol, DIALOG_WINDOW_WIDTH_PREF,
DIALOG_WINDOW_HEIGHT_PREF);
}
/**
* Creates and displays a dialog/alert message box depending on the given
* {@link AlertType}. You can customize the title, the text in the header, if
* the symbol besides the header should be displayed, the actual text body and
* the preferred size of the window (null if nothing is preferred).
*
* @param alertType The alert type like Information, Error, etc.
* @param windowTitle The title of the dialog window
* @param headerText The text of the header between title and body
* @param bodyText The actual text body
* @param showSymbol Whether the symbol besides the header text should be
* displayed
* @param windowPrefWidth Preferred width of the window
* @param windowPrefHeight Preferred height of the window
*/
public static void showCustomScrollableAlert(AlertType alertType, String windowTitle, String headerText,
String bodyText, boolean showSymbol, Double windowPrefWidth, Double windowPrefHeight) {
Alert alert = new Alert(alertType);
if (!showSymbol) {
alert.setGraphic(null);
}
alert.setTitle(windowTitle);
alert.setHeaderText(headerText);
alert.setResizable(true);
TextArea area = new TextArea(bodyText);
area.setWrapText(true);
area.setEditable(false);
DialogPane dialogPane = alert.getDialogPane();
Image taskbarIcon = getFXImage(ToolingReuseUIActivator.PLUGIN_ID, "icons/af3_icon64.png");
Stage stage = (Stage) dialogPane.getScene().getWindow();
stage.getIcons().add(taskbarIcon);
// use setExpandableContent(area) if the scrollable text should be first hidden
// under "Show details". Then, alert.setContentText() can be used to show a
// short message before
dialogPane.setContent(area);
if (windowPrefWidth != null && windowPrefWidth > 0.0) {
dialogPane.setPrefWidth(windowPrefWidth);
}
if (windowPrefHeight != null && windowPrefHeight > 0.0) {
dialogPane.setPrefHeight(windowPrefHeight);
}
alert.showAndWait();
}
} }
...@@ -3,7 +3,7 @@ Automatic-Module-Name: org.fortiss.tooling.ext.reuse ...@@ -3,7 +3,7 @@ Automatic-Module-Name: org.fortiss.tooling.ext.reuse
Bundle-ManifestVersion: 2 Bundle-ManifestVersion: 2
Bundle-Name: %pluginName Bundle-Name: %pluginName
Bundle-SymbolicName: org.fortiss.tooling.ext.reuse;singleton:=true Bundle-SymbolicName: org.fortiss.tooling.ext.reuse;singleton:=true
Bundle-Version: 2.22.0.qualifier Bundle-Version: 2.23.0.qualifier
Bundle-ClassPath: . Bundle-ClassPath: .
Bundle-Vendor: %providerName Bundle-Vendor: %providerName
Bundle-Localization: plugin Bundle-Localization: plugin
......
ReuseLibraryModelElementFactory.java 4ee3eb7449e212643992a3dec6cfb8f4278efb70 GREEN ReuseLibraryModelElementFactory.java 4ee3eb7449e212643992a3dec6cfb8f4278efb70 GREEN
ReuseLibraryUtilsBasics.java 9aa543630acf9555721821519d96d4356a07f341 GREEN ReuseLibraryUtilsBasics.java b651b31f6d94ff98a8f965440d662bfc4655c31b GREEN
ReuseLibraryUtilsManipulation.java 77a646db5a63ba7c61664dbcaf34a9036003fde5 GREEN ReuseLibraryUtilsManipulation.java 77a646db5a63ba7c61664dbcaf34a9036003fde5 GREEN
...@@ -45,10 +45,10 @@ import org.fortiss.tooling.kernel.model.INamedElement; ...@@ -45,10 +45,10 @@ import org.fortiss.tooling.kernel.model.INamedElement;
public class ReuseLibraryUtilsBasics { public class ReuseLibraryUtilsBasics {
/** Standard internal date format used for reuse (e.g. for hash dates) */ /** Standard internal date format used for reuse (e.g. for hash dates) */
public static DateTimeFormatter internalReuseDateFormatter = ISO_DATE_TIME; public final static DateTimeFormatter INTERNAL_REUSE_DATE_FORMATTER = ISO_DATE_TIME;
/** Standard date format used for reuse (easier readable) */ /** Standard date format used for reuse (easier readable) */
public static DateTimeFormatter displayReuseDateFormatter = RFC_1123_DATE_TIME; public final static DateTimeFormatter DISPLAY_REUSE_DATE_FORMATTER = RFC_1123_DATE_TIME;
/** /**
* Returns whether the given element can be used as reuse element. * Returns whether the given element can be used as reuse element.
...@@ -343,9 +343,9 @@ public class ReuseLibraryUtilsBasics { ...@@ -343,9 +343,9 @@ public class ReuseLibraryUtilsBasics {
public static String getDateAsString(ZonedDateTime date, boolean forDisplay) { public static String getDateAsString(ZonedDateTime date, boolean forDisplay) {
if (date != null) { if (date != null) {
if (forDisplay) { if (forDisplay) {
return displayReuseDateFormatter.format(date); return DISPLAY_REUSE_DATE_FORMATTER.format(date);
} else { } else {
return internalReuseDateFormatter.format(date); return INTERNAL_REUSE_DATE_FORMATTER.format(date);
} }
} }
return ""; return "";
......
...@@ -3,7 +3,7 @@ Automatic-Module-Name: org.fortiss.tooling.ext.variability.ui ...@@ -3,7 +3,7 @@ Automatic-Module-Name: org.fortiss.tooling.ext.variability.ui
Bundle-ManifestVersion: 2 Bundle-ManifestVersion: 2
Bundle-Name: fortiss AF3 variability UI Bundle-Name: fortiss AF3 variability UI
Bundle-SymbolicName: org.fortiss.tooling.ext.variability.ui;singleton:=true Bundle-SymbolicName: org.fortiss.tooling.ext.variability.ui;singleton:=true
Bundle-Version: 2.22.0.qualifier Bundle-Version: 2.23.0.qualifier
Bundle-Activator: org.fortiss.tooling.ext.variability.ui.VariabilityUIActivator Bundle-Activator: org.fortiss.tooling.ext.variability.ui.VariabilityUIActivator
Require-Bundle: org.fortiss.tooling.ext.variability;visibility:=reexport, Require-Bundle: org.fortiss.tooling.ext.variability;visibility:=reexport,
org.fortiss.tooling.base.ui;visibility:=reexport org.fortiss.tooling.base.ui;visibility:=reexport
......
...@@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2 ...@@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2
Bundle-Name: %pluginName Bundle-Name: %pluginName
Bundle-SymbolicName: org.fortiss.tooling.ext.variability;singleton:=true Bundle-SymbolicName: org.fortiss.tooling.ext.variability;singleton:=true
Automatic-Module-Name: org.fortiss.tooling.ext.variability Automatic-Module-Name: org.fortiss.tooling.ext.variability
Bundle-Version: 2.22.0.qualifier Bundle-Version: 2.23.0.qualifier
Bundle-ClassPath: . Bundle-ClassPath: .
Bundle-Vendor: %providerName Bundle-Vendor: %providerName
Bundle-Localization: plugin Bundle-Localization: plugin
......
DependingElementProviderService.java 5c4547e63b0f2ff547e0c3a7253105466e0b94c1 GREEN DependingElementProviderService.java a041f3b5ff00984304ea94e9333555192c990053 GREEN
IDependingElementProvider.java bd4b7ff7c0a25368fc86d7fb26ecaa8a5234c76b GREEN IDependingElementProvider.java 11b174e8a48f2152a0cc6066335e471cf288893c GREEN
IDependingElementProviderService.java 9b59f524a513caf9f5a2b6d16d3523a643b7cc9e GREEN IDependingElementProviderService.java 5bbff0a28f64b01331a6a5424cdb2104c000b57d GREEN
...@@ -29,7 +29,7 @@ import org.fortiss.tooling.kernel.service.base.EObjectAwareServiceBase; ...@@ -29,7 +29,7 @@ import org.fortiss.tooling.kernel.service.base.EObjectAwareServiceBase;
* @author bayha * @author bayha
*/ */
public class DependingElementProviderService public class DependingElementProviderService
extends EObjectAwareServiceBase<IDependingElementProvider<? extends EObject>> extends EObjectAwareServiceBase<IDependingElementProvider<EObject>>
implements IDependingElementProviderService { implements IDependingElementProviderService {
/** Singleton instance. */ /** Singleton instance. */
...@@ -41,11 +41,11 @@ public class DependingElementProviderService ...@@ -41,11 +41,11 @@ public class DependingElementProviderService
public List<EObject> getDependingElements(EObject obj) { public List<EObject> getDependingElements(EObject obj) {
List<EObject> res = new ArrayList<EObject>(); List<EObject> res = new ArrayList<EObject>();
List<IDependingElementProvider<? extends EObject>> registeredHandlers = List<IDependingElementProvider<EObject>> registeredHandlers =
getRegisteredHandlers(obj.getClass()); getRegisteredHandlers(obj.getClass());
if(registeredHandlers != null) { if(registeredHandlers != null) {
for(IDependingElementProvider<?> p : registeredHandlers) { for(IDependingElementProvider<EObject> p : registeredHandlers) {
res.addAll(p.getDependingElements(obj)); res.addAll(p.getDependingElements(obj));
} }
} }
...@@ -100,9 +100,10 @@ public class DependingElementProviderService ...@@ -100,9 +100,10 @@ public class DependingElementProviderService
} }
/** {@inheritDoc} */ /** {@inheritDoc} */
@SuppressWarnings("unchecked")
@Override @Override
public void registerDependingElementProvider( public void registerDependingElementProvider(
IDependingElementProvider<? extends EObject> provider, Class<? extends EObject> cls) { IDependingElementProvider<? extends EObject> provider, Class<? extends EObject> cls) {
addHandler(cls, provider); addHandler(cls, (IDependingElementProvider<EObject>)provider);
} }
} }
...@@ -21,19 +21,22 @@ import org.eclipse.emf.ecore.EObject; ...@@ -21,19 +21,22 @@ import org.eclipse.emf.ecore.EObject;
import org.fortiss.tooling.kernel.service.base.IEObjectAware; import org.fortiss.tooling.kernel.service.base.IEObjectAware;
/** /**
* Interface for DependingElementProviders that can be registered in the {@link IDependingElementProviderService}. * Interface for DependingElementProviders that can be registered in the
* {@link IDependingElementProviderService}.
* *
* @author bayha * @author bayha
* *
* @param <T> The subclass of {@link EObject} for which this provider shall be invoked. * @param <T>
* The subclass of {@link EObject} for which this provider shall be invoked.
*/ */
public interface IDependingElementProvider<T extends EObject> extends IEObjectAware<T> { public interface IDependingElementProvider<T extends EObject> extends IEObjectAware<T> {
/** /**
* Retrieves the {@link EObject}s which depend on the given {@link EObject}. * Retrieves the {@link EObject}s which depend on the given {@link EObject}.
* *
* @param elem The {@link EObject} to retrieve elements which depend on it. * @param elem
* @return The {@link List} of {@link EObject} which depend on elem. * The {@link EObject} to retrieve elements which depend on it.
* @return The {@link List} of {@link EObject} which depend on elem.
*/ */
public List<EObject> getDependingElements(EObject elem); public List<EObject> getDependingElements(T elem);
} }
...@@ -17,9 +17,9 @@ package org.fortiss.tooling.ext.variability.service; ...@@ -17,9 +17,9 @@ package org.fortiss.tooling.ext.variability.service;
import java.util.List; import java.util.List;
import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.EObject;
import org.fortiss.tooling.kernel.introspection.IIntrospectiveKernelService; import org.fortiss.tooling.kernel.introspection.IIntrospectiveKernelService;
/** /**
* Interface of the DependingElementProviderService which resolves semantic * Interface of the DependingElementProviderService which resolves semantic
* and syntactic dependencies between model elements. * and syntactic dependencies between model elements.
...@@ -29,7 +29,8 @@ import org.fortiss.tooling.kernel.introspection.IIntrospectiveKernelService; ...@@ -29,7 +29,8 @@ import org.fortiss.tooling.kernel.introspection.IIntrospectiveKernelService;
public interface IDependingElementProviderService extends IIntrospectiveKernelService { public interface IDependingElementProviderService extends IIntrospectiveKernelService {
/** Name of the respective extension point. */ /** Name of the respective extension point. */
/* package */static final String EXTENSION_POINT_NAME = "org.fortiss.af3.variability.dependingElementProvider"; /* package */static final String EXTENSION_POINT_NAME =
"org.fortiss.af3.variability.dependingElementProvider";
/** Name of the respective configuration element. */ /** Name of the respective configuration element. */
/* package */ static final String CONFIGURATION_ELEMENT_NAME = "dependingElementProvider"; /* package */ static final String CONFIGURATION_ELEMENT_NAME = "dependingElementProvider";
...@@ -41,16 +42,20 @@ public interface IDependingElementProviderService extends IIntrospectiveKernelSe ...@@ -41,16 +42,20 @@ public interface IDependingElementProviderService extends IIntrospectiveKernelSe
/** /**
* Retrieves all depending elements for the given {@link EObject}. * Retrieves all depending elements for the given {@link EObject}.
* *
* @param obj The {@link EObject} to retrieve the elements which depend on it. * @param obj
* @return The {@link List} of {@link EObject} which depend on the obj. * The {@link EObject} to retrieve the elements which depend on it.
* @return The {@link List} of {@link EObject} which depend on the obj.
*/ */
public List<EObject> getDependingElements(EObject obj); public List<EObject> getDependingElements(EObject obj);
/** /**
* Registers the given {@link IDependingElementProvider} in this service. * Registers the given {@link IDependingElementProvider} in this service.
* *
* @param provider The {@link IDependingElementProvider} to register. * @param provider
* @param cls The subclass of {@link EObject} the given provider shall be used for. * The {@link IDependingElementProvider} to register.
* @param cls
* The subclass of {@link EObject} the given provider shall be used for.
*/ */
public void registerDependingElementProvider(IDependingElementProvider<? extends EObject> provider, Class<? extends EObject> cls); public void registerDependingElementProvider(
IDependingElementProvider<? extends EObject> provider, Class<? extends EObject> cls);
} }
VariabilityUtils.java ccbcc8a13557a107608130e25880f9523b84cfba GREEN VariabilityUtils.java 6f2ffd231c27f5f7ab8c62d05350c0a92392eaf8 GREEN