Code cleanup
diff --git a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/dialogs/SelectedElementContentDialog.java b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/dialogs/SelectedElementContentDialog.java
index 8de6d96..09c16ec 100644
--- a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/dialogs/SelectedElementContentDialog.java
+++ b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/dialogs/SelectedElementContentDialog.java
@@ -79,8 +79,7 @@
 				new org.eclipse.app4mc.emf.metamodelviewer.views.providers.ViewContentProvider());
 		this.tv.setLabelProvider(new org.eclipse.app4mc.emf.metamodelviewer.views.providers.ViewLabelProvider());
 
-		final Entry<String, EObject> entry = new AbstractMap.SimpleEntry<String, EObject>("Selected Element",
-				this.eObject);
+		final Entry<String, EObject> entry = new AbstractMap.SimpleEntry<>("Selected Element", this.eObject);
 
 		this.tv.setInput(entry);
 
@@ -96,7 +95,7 @@
 
 				IContributionItem[] menuItems = super.getItems();
 
-				final List<IContributionItem> filteredContributionItems = new LinkedList<IContributionItem>();
+				final List<IContributionItem> filteredContributionItems = new LinkedList<>();
 
 				for (final IContributionItem contributionItem : menuItems) {
 					if (contributionItem != null && (contributionItem.getId() != null && (!(contributionItem.getId()
@@ -156,7 +155,6 @@
 
 						new SelectedElementContentDialog(parentShell, getIWorkbenchPartSite(), (EObject) firstElement)
 								.open();
-
 					}
 				}
 			}
@@ -168,8 +166,6 @@
 		super.configureShell(newShell);
 
 		final String name = ((this.eObject instanceof EClass) ? ((EClass) this.eObject).getName() : "");
-
-		// newShell.setText("Details of : " + this.eObject.eClass().getName() + " " + name);
 		newShell.setText(name);
 
 		//
diff --git a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/preferences/MetaModelViewerPreferenceConstants.java b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/preferences/MetaModelViewerPreferenceConstants.java
index 33bf14b..e810976 100644
--- a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/preferences/MetaModelViewerPreferenceConstants.java
+++ b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/preferences/MetaModelViewerPreferenceConstants.java
@@ -20,10 +20,12 @@
  */
 public class MetaModelViewerPreferenceConstants {
 
+	// Suppress default constructor
+	private MetaModelViewerPreferenceConstants() {
+		throw new IllegalStateException("Utility class");
+	}
+
 	public static final String P_DIALOG_DISPLAY = "P_DIALOG_DISPLAY";
-
 	public static final String V_ON_TOP = "On Top";
-
 	public static final String V_DEFAUT = "Default";
-
 }
diff --git a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/preferences/MetaModelViewerPreferencePage.java b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/preferences/MetaModelViewerPreferencePage.java
index 4fdf827..7642e00 100644
--- a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/preferences/MetaModelViewerPreferencePage.java
+++ b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/preferences/MetaModelViewerPreferencePage.java
@@ -42,7 +42,6 @@
 
 		addField(new ComboFieldEditor(MetaModelViewerPreferenceConstants.P_DIALOG_DISPLAY,
 				"&Configure the way child dialogs should be displayed", options, getFieldEditorParent()));
-
 	}
 
 	/*
@@ -51,6 +50,7 @@
 	 * @see org.eclipse.ui.IWorkbenchPreferencePage#init(org.eclipse.ui.IWorkbench)
 	 */
 	public void init(final IWorkbench workbench) {
+		// no specific initialization required
 	}
 
 }
\ No newline at end of file
diff --git a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/utils/RegisterECOREfilesAction.java b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/utils/RegisterECOREfilesAction.java
index e57bad8..f1a24eb 100644
--- a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/utils/RegisterECOREfilesAction.java
+++ b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/utils/RegisterECOREfilesAction.java
@@ -37,6 +37,11 @@
 
 public class RegisterECOREfilesAction {
 
+	// Suppress default constructor
+	private RegisterECOREfilesAction() {
+		throw new IllegalStateException("Utility class");
+	}
+	
 	@SuppressWarnings({ "unused", "rawtypes", "unchecked" })
 	public static ResourceSet loadECOREs(List<String> ecoreFiles, ComboViewer combo_ecore) throws IOException {
 
@@ -58,8 +63,6 @@
 
 		// resourceSet.getURIConverter().getURIMap().putAll(EcorePlugin.computePlatformURIMap(true));
 
-		EcorePackage ecorePackage = EcorePackage.eINSTANCE;
-
 		// register Ecore model in resourceSet registry
 		Map packageRegistry = metaDataResourceSet.getPackageRegistry();
 
@@ -109,7 +112,7 @@
 //		Resource metaResource = metaResourceSet.getResource(URI.createURI(path), true);
 		Resource metaResource = metaResourceSet.getResource(URI.createFileURI(path), true);
 
-		metaResource.load(Collections.EMPTY_MAP);
+		metaResource.load(Collections.emptyMap());
 
 		EObject eObject = metaResource.getContents().get(0);
 
@@ -122,4 +125,5 @@
 		File file = new File(path);
 		return file.getCanonicalPath();
 	}
+
 }
diff --git a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/utils/SubClassesListBuilder.java b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/utils/SubClassesListBuilder.java
index d0a6fbc..b62900a 100644
--- a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/utils/SubClassesListBuilder.java
+++ b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/utils/SubClassesListBuilder.java
@@ -38,7 +38,7 @@
 
 	private boolean isCalculated;
 
-	final Set<EClass> allSubClasses = new HashSet<EClass>();
+	final Set<EClass> allSubClasses = new HashSet<>();
 
 	public Set<EClass> getAllSubClasses() {
 
@@ -62,7 +62,7 @@
 
 	private List<EClass> getSubClasses(final EClass selectedObjClass) {
 
-		final List<EClass> allSubClasses = new ArrayList<EClass>();
+		final List<EClass> allSubClasses = new ArrayList<>();
 
 		final ResourceSet resourceSet = selectedObjClass.eResource().getResourceSet();
 
@@ -112,7 +112,7 @@
 
 	private List<EClass> getSubClasses(final EClass selectedObjClass, final EPackage ePackage) {
 
-		final List<EClass> allSubClasses = new ArrayList<EClass>();
+		final List<EClass> allSubClasses = new ArrayList<>();
 
 		EList<EPackage> eSubpackages = ePackage.getESubpackages();
 
@@ -126,7 +126,7 @@
 
 			if (eClassifier instanceof EClass) {
 
-				if (!(selectedObjClass == eClassifier) && selectedObjClass.isSuperTypeOf((EClass) eClassifier)) {
+				if (selectedObjClass != eClassifier && selectedObjClass.isSuperTypeOf((EClass) eClassifier)) {
 					allSubClasses.add((EClass) eClassifier);
 				}
 
diff --git a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/utils/SuperClassesListBuilder.java b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/utils/SuperClassesListBuilder.java
index 8d38bf2..884b300 100644
--- a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/utils/SuperClassesListBuilder.java
+++ b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/utils/SuperClassesListBuilder.java
@@ -27,7 +27,7 @@
 
 	private boolean isCalculated;
 
-	final Set<EClass> allSuperClasses = new HashSet<EClass>();
+	final Set<EClass> allSuperClasses = new HashSet<>();
 
 	public SuperClassesListBuilder(final EClass eClass) {
 		this.eClass = eClass;
diff --git a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/views/MetaModelExplorerView.java b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/views/MetaModelExplorerView.java
index dea0599..8d96cf9 100644
--- a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/views/MetaModelExplorerView.java
+++ b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/views/MetaModelExplorerView.java
@@ -36,7 +36,6 @@
 import org.eclipse.jface.action.Action;
 import org.eclipse.jface.action.IAction;
 import org.eclipse.jface.action.IContributionItem;
-import org.eclipse.jface.action.IMenuListener;
 import org.eclipse.jface.action.IMenuManager;
 import org.eclipse.jface.action.IToolBarManager;
 import org.eclipse.jface.action.MenuManager;
@@ -44,8 +43,6 @@
 import org.eclipse.jface.dialogs.MessageDialog;
 import org.eclipse.jface.viewers.ArrayContentProvider;
 import org.eclipse.jface.viewers.ComboViewer;
-import org.eclipse.jface.viewers.DoubleClickEvent;
-import org.eclipse.jface.viewers.IDoubleClickListener;
 import org.eclipse.jface.viewers.ISelection;
 import org.eclipse.jface.viewers.LabelProvider;
 import org.eclipse.jface.viewers.TreeSelection;
@@ -86,11 +83,6 @@
 	private ElementSearchPatternFilter patternFilter;
 	private ComboViewer combo_ecore;
 
-	/**
-	 * The constructor.
-	 */
-	public MetaModelExplorerView() {
-	}
 
 	/**
 	 * This is a callback that will allow us to create the viewer and initialize it.
@@ -130,7 +122,7 @@
 			}
 		});
 
-		ArrayList<String> arrayList = new ArrayList<String>(keySet);
+		ArrayList<String> arrayList = new ArrayList<>(keySet);
 
 		Collections.sort(arrayList);
 
@@ -216,7 +208,7 @@
 			public IContributionItem[] getItems() {
 				IContributionItem[] menuItems = super.getItems();
 
-				final List<IContributionItem> filteredContributionItems = new LinkedList<IContributionItem>();
+				final List<IContributionItem> filteredContributionItems = new LinkedList<>();
 
 				for (final IContributionItem contributionItem : menuItems) {
 					if ((contributionItem != null) && ((contributionItem.getId() != null) && (!(contributionItem.getId()
@@ -232,12 +224,7 @@
 		};
 
 		menuMgr.setRemoveAllWhenShown(true);
-		menuMgr.addMenuListener(new IMenuListener() {
-			@Override
-			public void menuAboutToShow(final IMenuManager manager) {
-				MetaModelExplorerView.this.fillContextMenu(manager);
-			}
-		});
+		menuMgr.addMenuListener(MetaModelExplorerView.this::fillContextMenu);
 
 		final Menu menu = menuMgr.createContextMenu(this.viewer.getControl());
 		this.viewer.getControl().setMenu(menu);
@@ -295,11 +282,7 @@
 		this.filterAttributesAction = new Action("Filter for Attributes", IAction.AS_CHECK_BOX) {
 			@Override
 			public void run() {
-				if (isChecked()) {
-					setFilterForAttributesBoolean(true);
-				} else {
-					setFilterForAttributesBoolean(false);
-				}
+				setFilterForAttributesBoolean(isChecked());
 			}
 		};
 		this.filterAttributesAction.setToolTipText("Filter for Attributes");
@@ -334,7 +317,7 @@
 					return;
 				}
 
-				List<String> files = new ArrayList<String>();
+				List<String> files = new ArrayList<>();
 
 				for (String fileName : dialog.getFileNames()) {
 					String filePath = dialog.getFilterPath() + File.separator + fileName;
@@ -345,12 +328,9 @@
 				try {
 					RegisterECOREfilesAction.loadECOREs(files, combo_ecore);
 				} catch (Exception e) {
-					Display.getDefault().asyncExec(new Runnable() {
-						@Override
-						public void run() {
-							MessageDialog.openError(Display.getDefault().getActiveShell(), "Error", e.getMessage());
-						}
-					});
+					Display.getDefault().asyncExec(
+						() -> MessageDialog.openError(Display.getDefault().getActiveShell(), "Error", e.getMessage())
+					);
 				}
 			}
 		};
@@ -359,9 +339,8 @@
 	}
 
 	private void hookDoubleClickAction() {
-		this.viewer.addDoubleClickListener(new IDoubleClickListener() {
-			@Override
-			public void doubleClick(final DoubleClickEvent event) {
+		this.viewer.addDoubleClickListener(
+			event -> {
 				final ISelection selection = event.getSelection();
 
 				if (selection instanceof TreeSelection) {
@@ -399,7 +378,7 @@
 					}
 				}
 			}
-		});
+		);
 	}
 
 	/**
diff --git a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/views/providers/ViewContentProvider.java b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/views/providers/ViewContentProvider.java
index aa2519d..551c7e9 100644
--- a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/views/providers/ViewContentProvider.java
+++ b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.metamodelviewer/src/org/eclipse/app4mc/emf/metamodelviewer/views/providers/ViewContentProvider.java
@@ -37,7 +37,6 @@
 import org.eclipse.emf.ecore.EStructuralFeature;
 import org.eclipse.emf.ecore.ETypeParameter;
 import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.Viewer;
 import org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor;
 
 public class ViewContentProvider implements ITreeContentProvider {
@@ -54,19 +53,19 @@
 			final EList<EPackage> eSubpackages = ((EPackage) parent).getESubpackages();
 			final EList<EClassifier> eClassifiers = ((EPackage) parent).getEClassifiers();
 
-			final ArrayList<EPackage> arrayList1 = new ArrayList<EPackage>();
+			final ArrayList<EPackage> arrayList1 = new ArrayList<>();
 
 			arrayList1.addAll(eSubpackages);
 
 			Collections.sort(arrayList1, this.comparator);
 
-			final ArrayList<EClassifier> arrayList2 = new ArrayList<EClassifier>();
+			final ArrayList<EClassifier> arrayList2 = new ArrayList<>();
 
 			arrayList2.addAll(eClassifiers);
 
 			Collections.sort(arrayList2, this.comparator);
 
-			final List<ENamedElement> combinedList = new ArrayList<ENamedElement>();
+			final List<ENamedElement> combinedList = new ArrayList<>();
 
 			combinedList.addAll(arrayList1);
 			combinedList.addAll(arrayList2);
@@ -102,19 +101,19 @@
 			final EList<EPackage> eSubpackages = ((EPackage) parent).getESubpackages();
 			final EList<EClassifier> eClassifiers = ((EPackage) parent).getEClassifiers();
 
-			final ArrayList<EPackage> arrayList1 = new ArrayList<EPackage>();
+			final ArrayList<EPackage> arrayList1 = new ArrayList<>();
 
 			arrayList1.addAll(eSubpackages);
 
 			Collections.sort(arrayList1, this.comparator);
 
-			final ArrayList<EClassifier> arrayList2 = new ArrayList<EClassifier>();
+			final ArrayList<EClassifier> arrayList2 = new ArrayList<>();
 
 			arrayList2.addAll(eClassifiers);
 
 			Collections.sort(arrayList2, this.comparator);
 
-			final List<ENamedElement> combinedList = new ArrayList<ENamedElement>();
+			final List<ENamedElement> combinedList = new ArrayList<>();
 
 			combinedList.addAll(arrayList1);
 			combinedList.addAll(arrayList2);
@@ -134,15 +133,12 @@
 			int index = 0;
 
 			final SuperClassesListBuilder superClassList = new SuperClassesListBuilder((EClass) parent);
-
-			if (superClassList.getAllSuperClasses().size() > 0) {
+			if (!superClassList.getAllSuperClasses().isEmpty()) {
 				list.add(index++, superClassList);
 			}
 
 			final SubClassesListBuilder SubClassesListBuilder = new SubClassesListBuilder((EClass) parent);
-
-			if (SubClassesListBuilder.getAllSubClasses().size() > 0) {
-
+			if (!SubClassesListBuilder.getAllSubClasses().isEmpty()) {
 				list.add(index++, SubClassesListBuilder);
 			}
 
@@ -153,7 +149,7 @@
 
 				final EList<EEnumLiteral> eLiterals = ((EEnum) parent).getELiterals();
 
-				final List<ENamedElement> list = new ArrayList<ENamedElement>();
+				final List<ENamedElement> list = new ArrayList<>();
 
 				list.addAll(eLiterals);
 
@@ -164,7 +160,7 @@
 
 			final EList<ETypeParameter> eTypeParameters = ((EDataType) parent).getETypeParameters();
 
-			final List<ENamedElement> list = new ArrayList<ENamedElement>();
+			final List<ENamedElement> list = new ArrayList<>();
 
 			list.addAll(eTypeParameters);
 
@@ -175,7 +171,7 @@
 
 			final EList<EEnumLiteral> eLiterals = ((EEnum) parent).getELiterals();
 
-			final List<ENamedElement> list = new ArrayList<ENamedElement>();
+			final List<ENamedElement> list = new ArrayList<>();
 
 			list.addAll(eLiterals);
 
@@ -184,12 +180,12 @@
 			return list.toArray();
 		} else if (parent instanceof SuperClassesListBuilder) {
 			final Set<EClass> allSuperClasses = ((SuperClassesListBuilder) parent).getAllSuperClasses();
-			final ArrayList<ENamedElement> arrayList = new ArrayList<ENamedElement>(allSuperClasses);
+			final ArrayList<ENamedElement> arrayList = new ArrayList<>(allSuperClasses);
 			Collections.sort(arrayList, this.comparator);
 			return arrayList.toArray();
 		} else if (parent instanceof SubClassesListBuilder) {
 			final Set<EClass> allSubClasses = ((SubClassesListBuilder) parent).getAllSubClasses();
-			final ArrayList<ENamedElement> arrayList = new ArrayList<ENamedElement>(allSubClasses);
+			final ArrayList<ENamedElement> arrayList = new ArrayList<>(allSubClasses);
 			Collections.sort(arrayList, this.comparator);
 			return arrayList.toArray();
 		} else if (parent instanceof EStructuralFeature) {
@@ -204,54 +200,38 @@
 
 	@Override
 	public boolean hasChildren(final Object parent) {
-		if (parent instanceof EPackage) {
+		if (parent instanceof EPackage || parent instanceof EClass || parent instanceof EStructuralFeature) {
 			return true;
-		} else if (parent instanceof EClass) {
-			return true;
-		} else if (parent instanceof EDataType) {
+		} 
 
-			if (parent instanceof EEnum) {
-				return ((EEnum) parent).getELiterals().size() > 0;
-			}
-			return ((EDataType) parent).getETypeParameters().size() > 0;
-		} else if (parent instanceof EEnum) {
-			return ((EEnum) parent).getELiterals().size() > 0;
+		// order is important: EEnum is a sub interface of EDataType
+		if (parent instanceof EEnum) {
+			return !((EEnum) parent).getELiterals().isEmpty();
+		}
+		
+		if (parent instanceof EDataType) {
+			return !((EDataType) parent).getETypeParameters().isEmpty();
 		}
 
-		else if (parent instanceof EStructuralFeature) {
-			return true;
+		if (parent instanceof SuperClassesListBuilder) {
+			return !((SuperClassesListBuilder) parent).getAllSuperClasses().isEmpty();
 		}
 
-		else if (parent instanceof SuperClassesListBuilder) {
-			return ((SuperClassesListBuilder) parent).getAllSuperClasses().size() > 0;
-		} else if (parent instanceof SubClassesListBuilder) {
-			return ((SubClassesListBuilder) parent).getAllSubClasses().size() > 0;
-		} else if (parent instanceof EEnumLiteral) {
+		if (parent instanceof SubClassesListBuilder) {
+			return !((SubClassesListBuilder) parent).getAllSubClasses().isEmpty();
+		}
+
+		if (parent instanceof EEnumLiteral) {
 			return false;
-		} else if (parent instanceof TypeElement) {
+		}
+
+		if (parent instanceof TypeElement) {
 			return true;
 		}
+		
 		return true;
 	}
 
-	@Override
-	public void dispose() {
-		// Auto-generated method stub
+	final Comparator<ENamedElement> comparator = ( (arg0, arg1) -> arg0.getName().compareTo(arg1.getName()) );
 
-	}
-
-	@Override
-	public void inputChanged(final Viewer viewer, final Object oldInput, final Object newInput) {
-		// Auto-generated method stub
-
-	}
-
-	final Comparator<ENamedElement> comparator = new Comparator<ENamedElement>() {
-
-		@Override
-		public int compare(final ENamedElement arg0, final ENamedElement arg1) {
-			return arg0.getName().compareTo(arg1.getName());
-		}
-	};
-
-}
\ No newline at end of file
+}
diff --git a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.viewer.plantuml/src/org/eclipse/app4mc/emf/viewer/plantuml/builders/EObjectRefsBuilder.java b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.viewer.plantuml/src/org/eclipse/app4mc/emf/viewer/plantuml/builders/EObjectRefsBuilder.java
index 5438e70..d837aa0 100644
--- a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.viewer.plantuml/src/org/eclipse/app4mc/emf/viewer/plantuml/builders/EObjectRefsBuilder.java
+++ b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.viewer.plantuml/src/org/eclipse/app4mc/emf/viewer/plantuml/builders/EObjectRefsBuilder.java
@@ -112,7 +112,7 @@
 										: (allRefSettings.size() - 1));
 
 					} else {
-						subList = new ArrayList<Setting>(allRefSettings).subList(0, 99);
+						subList = new ArrayList<>(allRefSettings).subList(0, 99);
 					}
 					
 					allRefSettings.clear();
diff --git a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.viewer.plantuml/src/org/eclipse/app4mc/emf/viewer/plantuml/views/DiagramView.java b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.viewer.plantuml/src/org/eclipse/app4mc/emf/viewer/plantuml/views/DiagramView.java
index 9ff0cfb..80efcad 100644
--- a/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.viewer.plantuml/src/org/eclipse/app4mc/emf/viewer/plantuml/views/DiagramView.java
+++ b/eclipse-tools/emf-graphical-viewer/plugins/org.eclipse.app4mc.emf.viewer.plantuml/src/org/eclipse/app4mc/emf/viewer/plantuml/views/DiagramView.java
@@ -15,10 +15,11 @@
 
 package org.eclipse.app4mc.emf.viewer.plantuml.views;
 
+import java.util.ArrayDeque;
 import java.util.Arrays;
+import java.util.Deque;
 import java.util.HashMap;
 import java.util.Map;
-import java.util.Stack;
 
 import javax.annotation.PostConstruct;
 import javax.inject.Inject;
@@ -103,7 +104,7 @@
 			value = PreferenceConstants.P_FOLDER_PATH) 
 	String genFolderPath;
 	
-	private Stack<String> history = new Stack<>();
+	private Deque<String> history = new ArrayDeque<>();
 	
 	/**
 	 * This is a callback that will allow us to create the viewer and initialize it.
@@ -112,7 +113,7 @@
 	public void createPartControl(Composite parent, MPart part) {
 		Map<String, String> state = part.getPersistedState();
 	    String value = state.get(LINKED_KEY);
-	    this.linkedWithEditor = value != null ? Boolean.valueOf(value) : false;
+	    this.linkedWithEditor = value != null && Boolean.valueOf(value);
 	    
 		this.browser = new Browser(parent, SWT.None);
 		this.browser.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));