Address Sonar issues in core UI bundle
This commit addresses a number of bugs and
code smells reported by Sonar in the Eclipse Capra's
core UI bundle.
Change-Id: Iebbad97f4257cbf39026eca5c802dc33e7559969
diff --git a/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/adapters/ArtifactAdapter.java b/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/adapters/ArtifactAdapter.java
index 7f8c329..09ee75a 100644
--- a/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/adapters/ArtifactAdapter.java
+++ b/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/adapters/ArtifactAdapter.java
@@ -58,7 +58,7 @@
public ArtifactAdapter(EObject theItem) {
this.artifact = theItem;
- TracePersistenceAdapter persistenceAdapter = ExtensionPointHelper.getTracePersistenceAdapter().get();
+ TracePersistenceAdapter persistenceAdapter = ExtensionPointHelper.getTracePersistenceAdapter().orElseThrow();
ResourceSet resourceSet = new ResourceSetImpl();
EObject artifactModel = persistenceAdapter.getArtifactWrappers(resourceSet);
artifactHelper = new ArtifactHelper(artifactModel);
diff --git a/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/adapters/ConnectionAdapter.java b/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/adapters/ConnectionAdapter.java
index 3c5fe26..4a807b8 100644
--- a/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/adapters/ConnectionAdapter.java
+++ b/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/adapters/ConnectionAdapter.java
@@ -40,7 +40,7 @@
*/
public class ConnectionAdapter implements IPropertySource {
- private static enum DescriptorIDs {
+ private enum DescriptorIDs {
ORIGIN, TARGETS, TYPE
}
@@ -58,7 +58,7 @@
public ConnectionAdapter(Connection theItem) {
this.connection = theItem;
- TracePersistenceAdapter persistenceAdapter = ExtensionPointHelper.getTracePersistenceAdapter().get();
+ TracePersistenceAdapter persistenceAdapter = ExtensionPointHelper.getTracePersistenceAdapter().orElseThrow();
ResourceSet resourceSet = new ResourceSetImpl();
EObject artifactModel = persistenceAdapter.getArtifactWrappers(resourceSet);
artifactHelper = new ArtifactHelper(artifactModel);
@@ -97,8 +97,7 @@
if (id.equals(DescriptorIDs.ORIGIN)) {
return artifactHelper.getArtifactLabel(connection.getOrigin());
} else if (id.equals(DescriptorIDs.TARGETS)) {
- return connection.getTargets().stream().map(t -> artifactHelper.getArtifactLabel(t))
- .collect(Collectors.toList());
+ return connection.getTargets().stream().map(artifactHelper::getArtifactLabel).collect(Collectors.toList());
} else if (id.equals(DescriptorIDs.TYPE)) {
return connection.getTlink().eClass().getName();
} else {
diff --git a/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/handlers/TraceCreationHandler.java b/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/handlers/TraceCreationHandler.java
index 32e8207..ed4b0ab 100644
--- a/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/handlers/TraceCreationHandler.java
+++ b/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/handlers/TraceCreationHandler.java
@@ -39,9 +39,8 @@
SelectionView.getOpenedView().getSelection());
createTraceOperation.addContext(undoContext);
if (SelectionView.getOpenedView().getSelectedTraceType() != null) {
- createTraceOperation.setChooseTraceType((a, b) -> {
- return Optional.of(SelectionView.getOpenedView().getSelectedTraceType());
- });
+ createTraceOperation
+ .setChooseTraceType((a, b) -> Optional.of(SelectionView.getOpenedView().getSelectedTraceType()));
}
operationHistory.execute(createTraceOperation, null, adapter);
return null;
diff --git a/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/helpers/SelectionSupportHelper.java b/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/helpers/SelectionSupportHelper.java
index dbe776f..fbe73b7 100644
--- a/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/helpers/SelectionSupportHelper.java
+++ b/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/helpers/SelectionSupportHelper.java
@@ -38,11 +38,10 @@
*/
public class SelectionSupportHelper {
- private static final List<ISelectionSupport> SELECTION_SUPPORTS = new ArrayList<ISelectionSupport>();
+ private static final List<ISelectionSupport> SELECTION_SUPPORTS = new ArrayList<>();
static {
- for (Object extension : ExtensionPointHelper.getExtensions("org.eclipse.capra.ui.selectionSupport",
- "class")) {
+ for (Object extension : ExtensionPointHelper.getExtensions("org.eclipse.capra.ui.selectionSupport", "class")) {
SELECTION_SUPPORTS.add((ISelectionSupport) extension);
}
}
@@ -53,8 +52,7 @@
/**
* Extract selected elements from an {@link ExecutionEvent}.
*
- * @param event
- * This is the click event to create a trace
+ * @param event This is the click event to create a trace
* @return A list of all the selected elements
*/
public static List<Object> extractSelectedElements(final ExecutionEvent event) {
@@ -76,17 +74,15 @@
/**
* Extract selected elements from an {@link ISelection} by delegating the
* retrieval and unwrapping of the selection to the registered
- * {@link ISelectionSupport} instances. If this fails, the selected
- * elements of type {@link IAdaptable} are retrieved using
- * {@link IAdaptable#getAdapter(Class)}. If this fails, too, the list is
- * either empty or only contains those elements that are instances of type
+ * {@link ISelectionSupport} instances. If this fails, the selected elements of
+ * type {@link IAdaptable} are retrieved using
+ * {@link IAdaptable#getAdapter(Class)}. If this fails, too, the list is either
+ * empty or only contains those elements that are instances of type
* {@code IAdaptable}.
*
- * @param selection
- * the selection from the workbench part
- * @param workbenchPart
- * the workbench part from which the selection should be
- * extracted
+ * @param selection the selection from the workbench part
+ * @param workbenchPart the workbench part from which the selection should be
+ * extracted
* @return a list of all selected elements retrieved using the first
* {@code IWorkbenchSelectionSupport} instance registered for the
* {@code WorkbenchPart} or all selected elements of type
@@ -135,11 +131,10 @@
* {@code WorkbenchPart} handles EMF models. If this is not the case, this
* method returns {@code null}.
*
- * @param part
- * the {@code WorkbenchPart} whose {@code ResourceSet} should be
- * retrieved
- * @return the {@code ResourceSet} used by {@code part} or {@code null} if
- * no {@code ResourceSet} can be found
+ * @param part the {@code WorkbenchPart} whose {@code ResourceSet} should be
+ * retrieved
+ * @return the {@code ResourceSet} used by {@code part} or {@code null} if no
+ * {@code ResourceSet} can be found
*/
public static ResourceSet getResourceSet(final IWorkbenchPart part) {
ResourceSet resourceSet = null;
diff --git a/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/operations/CreateTraceOperation.java b/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/operations/CreateTraceOperation.java
index 19f34cf..19803e8 100644
--- a/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/operations/CreateTraceOperation.java
+++ b/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/operations/CreateTraceOperation.java
@@ -71,10 +71,6 @@
private BiFunction<Collection<EClass>, List<EObject>, Optional<EClass>> chooseTraceType = null;
- private CreateTraceOperation(String label) {
- super(label);
- }
-
/**
* Creates a new operation to create links.
*
@@ -130,8 +126,8 @@
*/
public void createTrace(Shell shell,
BiFunction<Collection<EClass>, List<EObject>, Optional<EClass>> chooseTraceType) {
- TraceMetaModelAdapter traceAdapter = ExtensionPointHelper.getTraceMetamodelAdapter().get();
- TracePersistenceAdapter persistenceAdapter = ExtensionPointHelper.getTracePersistenceAdapter().get();
+ TraceMetaModelAdapter traceAdapter = ExtensionPointHelper.getTraceMetamodelAdapter().orElseThrow();
+ TracePersistenceAdapter persistenceAdapter = ExtensionPointHelper.getTracePersistenceAdapter().orElseThrow();
ResourceSet resourceSet = new ResourceSetImpl();
// add trace model to resource set
@@ -203,10 +199,10 @@
}
private String getSelectionDisplayName(EObject element) {
- TracePersistenceAdapter persistenceAdapter = ExtensionPointHelper.getTracePersistenceAdapter().get();
+ TracePersistenceAdapter persistenceAdapter = ExtensionPointHelper.getTracePersistenceAdapter().orElseThrow();
EObject artifactModel = persistenceAdapter.getArtifactWrappers(new ResourceSetImpl());
ArtifactHelper artifactHelper = new ArtifactHelper(artifactModel);
- IArtifactHandler<?> handler = artifactHelper.getHandler(artifactHelper.unwrapWrapper(element)).get();
+ IArtifactHandler<?> handler = artifactHelper.getHandler(artifactHelper.unwrapWrapper(element)).orElseThrow();
return handler.withCastedHandler(artifactHelper.unwrapWrapper(element), (h, o) -> h.getDisplayName(o))
.orElse(EMFHelper.getIdentifier(element));
diff --git a/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/preferences/CapraPreferences.java b/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/preferences/CapraPreferences.java
index cf5576e..749d705 100644
--- a/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/preferences/CapraPreferences.java
+++ b/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/preferences/CapraPreferences.java
@@ -28,8 +28,6 @@
public static final String SHOW_TRACE_CREATED_CONFIRMATION_DIALOG_LABEL = "Show confirmation after a trace link has been created";
private static final String PREFERENCE_PAGE_DESCRIPTION = "Eclipse Capra UI Preferences";
- private BooleanFieldEditor booleanEditor;
-
@Override
public void init(IWorkbench workbench) {
setDescription(PREFERENCE_PAGE_DESCRIPTION);
@@ -38,7 +36,7 @@
@Override
protected void createFieldEditors() {
- booleanEditor = new BooleanFieldEditor(SHOW_TRACE_CREATED_CONFIRMATION_DIALOG,
+ BooleanFieldEditor booleanEditor = new BooleanFieldEditor(SHOW_TRACE_CREATED_CONFIRMATION_DIALOG,
SHOW_TRACE_CREATED_CONFIRMATION_DIALOG_LABEL, getFieldEditorParent());
addField(booleanEditor);
}
diff --git a/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/views/SelectionView.java b/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/views/SelectionView.java
index 9048fde..47cca83 100644
--- a/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/views/SelectionView.java
+++ b/bundles/org.eclipse.capra.ui/src/org/eclipse/capra/ui/views/SelectionView.java
@@ -92,12 +92,12 @@
/**
* The actual table containing selected elements.
*/
- public TableViewer artifactTable;
+ private TableViewer artifactTable;
/**
* The combo box to select the trace type.
*/
- public ComboViewer traceTypeCombo;
+ private ComboViewer traceTypeCombo;
/**
* The maintained selection of EObjects .
@@ -110,16 +110,6 @@
*/
private IUndoContext undoContext = IOperationHistory.GLOBAL_UNDO_CONTEXT;
- /**
- * Action handler to undo the creation of a trace.
- */
- private UndoActionHandler undoAction;
-
- /**
- * Action handler to redo the creation of a trace.
- */
- private RedoActionHandler redoAction;
-
private Collection<EClass> traceTypes = new ArrayList<>();
/**
@@ -129,7 +119,7 @@
@Override
public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-
+ // We do not need to react to this event.
}
@Override
@@ -150,7 +140,7 @@
@Override
public String getText(Object element) {
- return (element == null || !(element instanceof EClass)) ? "" : ((EClass) element).getName();//$NON-NLS-1$
+ return (!(element instanceof EClass)) ? "" : ((EClass) element).getName();//$NON-NLS-1$
}
}
@@ -162,10 +152,11 @@
@Override
public String getText(Object element) {
- TracePersistenceAdapter persistenceAdapter = ExtensionPointHelper.getTracePersistenceAdapter().get();
+ TracePersistenceAdapter persistenceAdapter = ExtensionPointHelper.getTracePersistenceAdapter()
+ .orElseThrow();
EObject artifactModel = persistenceAdapter.getArtifactWrappers(new ResourceSetImpl());
ArtifactHelper artifactHelper = new ArtifactHelper(artifactModel);
- IArtifactHandler<?> handler = artifactHelper.getHandler(element).get();
+ IArtifactHandler<?> handler = artifactHelper.getHandler(element).orElseThrow();
return handler.withCastedHandler(element, (h, o) -> h.getDisplayName(o)).orElseGet(element::toString);
}
@@ -246,7 +237,7 @@
int ops = DND.DROP_COPY | DND.DROP_MOVE;
- List<Transfer> transfers = new ArrayList<Transfer>(Arrays.asList(DEFAULT_TRANSFERS));
+ List<Transfer> transfers = new ArrayList<>(Arrays.asList(DEFAULT_TRANSFERS));
// Get all additionally configured transfers from the extension point.
transfers.addAll(ExtensionPointHelper.getExtensions(TRANSFER_EXTENSION_POINT_ID, "class").stream()
@@ -264,7 +255,7 @@
menuMgr.addMenuListener(new IMenuListener() {
@Override
public void menuAboutToShow(IMenuManager manager) {
-
+ // Do something here
}
});
Menu menu = menuMgr.createContextMenu(artifactTable.getControl());
@@ -299,8 +290,8 @@
}
private void refreshAvailableTraceTypes() {
- TraceMetaModelAdapter traceAdapter = ExtensionPointHelper.getTraceMetamodelAdapter().get();
- TracePersistenceAdapter persistenceAdapter = ExtensionPointHelper.getTracePersistenceAdapter().get();
+ TraceMetaModelAdapter traceAdapter = ExtensionPointHelper.getTraceMetamodelAdapter().orElseThrow();
+ TracePersistenceAdapter persistenceAdapter = ExtensionPointHelper.getTracePersistenceAdapter().orElseThrow();
ResourceSet resourceSet = new ResourceSetImpl();
// add artifact model to resource set
@@ -309,7 +300,7 @@
ArtifactHelper artifactHelper = new ArtifactHelper(artifactModel);
// Create the artifact wrappers
- List<EObject> wrappers = artifactHelper.createWrappers(new ArrayList<Object>(selection));
+ List<EObject> wrappers = artifactHelper.createWrappers(new ArrayList<>(selection));
// Get the type of trace to be created
traceTypes = traceAdapter.getAvailableTraceTypes(wrappers);
@@ -322,7 +313,7 @@
.filter(handler -> handler.canHandleArtifact(target)).collect(toList());
Optional<PriorityHandler> priorityHandler = ExtensionPointHelper.getPriorityHandler();
- if (availableHandlers.size() == 0) {
+ if (availableHandlers.isEmpty()) {
MessageDialog.openWarning(getSite().getShell(), "No handler for selected item",
"There is no handler for " + target + " so it will be ignored.");
} else if (availableHandlers.size() > 1 && !priorityHandler.isPresent()) {
@@ -337,7 +328,7 @@
}
public List<Object> getSelection() {
- return new ArrayList<Object>(selection);
+ return new ArrayList<>(selection);
}
public void clearSelection() {
@@ -368,8 +359,8 @@
private void createGlobalActionHandlers() {
// set up action handlers that operate on the current context
- undoAction = new UndoActionHandler(this.getSite(), undoContext);
- redoAction = new RedoActionHandler(this.getSite(), undoContext);
+ UndoActionHandler undoAction = new UndoActionHandler(this.getSite(), undoContext);
+ RedoActionHandler redoAction = new RedoActionHandler(this.getSite(), undoContext);
IActionBars actionBars = getViewSite().getActionBars();
actionBars.setGlobalActionHandler(ActionFactory.UNDO.getId(), undoAction);
actionBars.setGlobalActionHandler(ActionFactory.REDO.getId(), redoAction);