CleanUp

Change-Id: I68fb9859f130f8ceef351a2421b4ddce2bc7ba20
diff --git a/ecommons/org.eclipse.statet.ecommons.coremisc/src/org/eclipse/statet/ecommons/collections/IntArrayMap.java b/ecommons/org.eclipse.statet.ecommons.coremisc/src/org/eclipse/statet/ecommons/collections/IntArrayMap.java
index f9ff29d..f583022 100644
--- a/ecommons/org.eclipse.statet.ecommons.coremisc/src/org/eclipse/statet/ecommons/collections/IntArrayMap.java
+++ b/ecommons/org.eclipse.statet.ecommons.coremisc/src/org/eclipse/statet/ecommons/collections/IntArrayMap.java
@@ -15,6 +15,7 @@
 package org.eclipse.statet.ecommons.collections;
 
 import java.lang.reflect.Array;
+import java.util.Arrays;
 import java.util.Collection;
 import java.util.Map;
 import java.util.Set;
@@ -144,9 +145,7 @@
 	@Override
 	public void clear() {
 		if (fSize > 0) {
-			for (int i = fArray.length-1; i >= 0; i--) {
-				fArray[i] = null;
-			}
+			Arrays.fill(fArray, null);
 			fSize = 0;
 		}
 	}
diff --git a/ecommons/org.eclipse.statet.ecommons.coremisc/src/org/eclipse/statet/ecommons/collections/IntHashMap.java b/ecommons/org.eclipse.statet.ecommons.coremisc/src/org/eclipse/statet/ecommons/collections/IntHashMap.java
index d3bf9c6..b7c9d3f 100644
--- a/ecommons/org.eclipse.statet.ecommons.coremisc/src/org/eclipse/statet/ecommons/collections/IntHashMap.java
+++ b/ecommons/org.eclipse.statet.ecommons.coremisc/src/org/eclipse/statet/ecommons/collections/IntHashMap.java
@@ -16,6 +16,7 @@
 
 import java.nio.channels.UnsupportedAddressTypeException;
 import java.util.AbstractSet;
+import java.util.Arrays;
 import java.util.Collection;
 import java.util.Iterator;
 import java.util.Map;
@@ -310,16 +311,14 @@
 	
 	@Override
 	public void clear() {
-		for (int i = fEntries.length-1; i >= 0; i--) {
-			fEntries[i] = null;
-		}
+		Arrays.fill(fEntries, null);
 		fSize = 0;
 	}
 	
 	
 	public Set<IntEntry<V>> entryIntSet() {
 		final Set<IntEntry<V>> entries = fEntryIntSet;
-		return (entries != null) ? entries : (fEntryIntSet = new AbstractSet<IntEntry<V>>() {
+		return (entries != null) ? entries : (fEntryIntSet = new AbstractSet<>() {
 			@Override
 			public int size() {
 				return fSize;
diff --git a/ecommons/org.eclipse.statet.ecommons.coremisc/src/org/eclipse/statet/ecommons/variables/core/VariableText.java b/ecommons/org.eclipse.statet.ecommons.coremisc/src/org/eclipse/statet/ecommons/variables/core/VariableText.java
index 303ee38..5d51118 100644
--- a/ecommons/org.eclipse.statet.ecommons.coremisc/src/org/eclipse/statet/ecommons/variables/core/VariableText.java
+++ b/ecommons/org.eclipse.statet.ecommons.coremisc/src/org/eclipse/statet/ecommons/variables/core/VariableText.java
@@ -32,6 +32,8 @@
 import org.eclipse.core.variables.VariablesPlugin;
 import org.eclipse.osgi.util.NLS;
 
+import org.eclipse.statet.jcommons.collections.ImCollections;
+
 
 /**
  * Allows string substitution of special variables with manual replacement strings
@@ -45,9 +47,9 @@
 	
 	
 	private static boolean isEscaped(final String text, final int offset) {
-		int count = 1;
-		while (offset >= count) { // offset-count >= 0
-			final char c = text.charAt(offset-count);
+		int count= 1;
+		while (offset >= count) { // offset - count >= 0
+			final char c= text.charAt(offset - count);
 			if (c == '$') {
 				count++;
 			}
@@ -63,42 +65,41 @@
 			if (region[0] == 0) {
 				return;
 			}
-			final char c1 = text.charAt(region[0]-1);
+			final char c1= text.charAt(region[0] - 1);
 			if (c1 != ':') {
 				return;
 			}
-			final int start = text.lastIndexOf("${", region[0]-1); //$NON-NLS-1$
-			if (start < 0 || text.lastIndexOf("}", region[0]-1) > start || isEscaped(text, start)) { //$NON-NLS-1$
+			final int start= text.lastIndexOf("${", region[0] - 1); //$NON-NLS-1$
+			if (start < 0 || text.lastIndexOf("}", region[0] - 1) > start || isEscaped(text, start)) { //$NON-NLS-1$
 				return;
 			}
 			
-			region[0] = start;
-			final int end = text.indexOf('}', region[1]);
+			region[0]= start;
+			final int end= text.indexOf('}', region[1]);
 			if (end >= 0) {
-				region[1] = end + 1;
+				region[1]= end + 1;
 			}
 		}
 	}
 	
-	private static final String[] LOCATION_VARIABLES = new String[] {
-		"resource_loc", "selected_resource_loc", "container_loc", "project_loc", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-	};
+	private static final List<String> LOCATION_VARIABLES= ImCollections.newList(
+			"resource_loc", "selected_resource_loc", "container_loc", "project_loc" ); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
 	
 	
-	private String fText;
+	private String text;
 	
-	private int fState;
+	private int state;
 	
-	private final List<String> fSpecialVariablesNames;
-	private List<IDynamicVariable> fSpecialVariables;
-	private final Set<String> fUnresolvedSpecial= new HashSet<>();
-	private final Map<String, String> fLocationVariables= new HashMap<>();
+	private final List<String> specialVariablesNames;
+	private List<IDynamicVariable> specialVariables;
+	private final Set<String> unresolvedSpecial= new HashSet<>();
+	private final Map<String, String> locationVariables= new HashMap<>();
 	
 	
 	public VariableText(final String text, final List<String> specialVariablesNames) {
-		fSpecialVariablesNames = specialVariablesNames;
-		fText = text;
-		fState = 1;
+		this.specialVariablesNames= specialVariablesNames;
+		this.text= text;
+		this.state= 1;
 	}
 	
 	public VariableText(final String text, final List<IDynamicVariable> checkedVariables, final boolean useDirectly) {
@@ -106,39 +107,39 @@
 		for (final IStringVariable variable : checkedVariables) {
 			specialVariablesNames.add(variable.getName());
 		}
-		fSpecialVariablesNames = specialVariablesNames;
+		this.specialVariablesNames= specialVariablesNames;
 		if (useDirectly) {
-			fSpecialVariables = checkedVariables;
+			this.specialVariables= checkedVariables;
 		}
-		fText = text;
-		fState = 1;
+		this.text= text;
+		this.state= 1;
 	}
 	
 	
 	public String getText() {
-		return fText;
+		return this.text;
 	}
 	
 	public void performInitialStringSubstitution(final boolean reportUndefinedVariables) throws CoreException {
-		if (fState != 1) {
+		if (this.state != 1) {
 			throw new IllegalStateException();
 		}
-		String text = fText;
+		String text= this.text;
 		
 		final LinkedHashMap<String, String> specialVariables= new LinkedHashMap<>();
-		for (final String variableName : fSpecialVariablesNames) {
-			final String pattern = "${"+variableName; //$NON-NLS-1$
-			int offset = -1;
-			while ((offset = text.indexOf(pattern, offset + 1)) >= 0) {
+		for (final String variableName : this.specialVariablesNames) {
+			final String pattern= "${" + variableName; //$NON-NLS-1$
+			int offset= -1;
+			while ((offset= text.indexOf(pattern, offset + 1)) >= 0) {
 				if (!isEscaped(text, offset)) {
 					final int length;
-					switch (offset+pattern.length() < text.length() ?
+					switch (offset + pattern.length() < text.length() ?
 							text.charAt(offset + pattern.length()) : 0) {
 					case '}':
-						length = pattern.length() + 1;
+						length= pattern.length() + 1;
 						break;
 					case ':':
-						length = text.indexOf('}', offset + pattern.length()) - offset + 1;
+						length= text.indexOf('}', offset + pattern.length()) - offset + 1;
 						if (length > 0) {
 							break;
 						}
@@ -147,54 +148,54 @@
 								NLS.bind("Malformed variable expression: variable ''{0}'' not closed.",
 										variableName )));
 					}
-					fUnresolvedSpecial.add(variableName);
-					final int[] region = new int[] { offset, offset + length };
+					this.unresolvedSpecial.add(variableName);
+					final int[] region= new int[] { offset, offset + length };
 					searchSurrounding(text, region);
-					final String key = "XX-SPECIALVAR-"+specialVariables.size()+"-XX"; //$NON-NLS-1$ //$NON-NLS-2$
+					final String key= "XX-SPECIALVAR-" + specialVariables.size() + "-XX"; //$NON-NLS-1$ //$NON-NLS-2$
 					specialVariables.put(key, new String(text.substring(region[0], region[1])));
-					text = text.substring(0, region[0]) + key + text.substring(region[1], text.length());
+					text= text.substring(0, region[0]) + key + text.substring(region[1]);
 				}
 			}
 		}
 		
-		text = searchResourceVar(text, reportUndefinedVariables);
+		text= searchResourceVar(text, reportUndefinedVariables);
 		
-		text = VariablesPlugin.getDefault().getStringVariableManager().performStringSubstitution(text, reportUndefinedVariables);
+		text= VariablesPlugin.getDefault().getStringVariableManager().performStringSubstitution(text, reportUndefinedVariables);
 		
-		final Entry<String, String>[] entries = specialVariables.entrySet().toArray(new Entry[specialVariables.size()]);
-		for (int i = entries.length - 1; i >= 0; i--) {
-			text = text.replace(entries[i].getKey(), entries[i].getValue());
+		final Entry<String, String>[] entries= specialVariables.entrySet().toArray(new Entry[specialVariables.size()]);
+		for (int i= entries.length - 1; i >= 0; i--) {
+			text= text.replace(entries[i].getKey(), entries[i].getValue());
 		}
 		
-		fText = text;
+		this.text= text;
 		
-		if (fSpecialVariables != null) {
-			for (final IDynamicVariable variable : fSpecialVariables) {
+		if (this.specialVariables != null) {
+			for (final IDynamicVariable variable : this.specialVariables) {
 				if (require(variable.getName())) {
 					set(variable);
 				}
 			}
 		}
 		
-		fState = 2;
+		this.state= 2;
 	}
 	
 	private String searchResourceVar(String text, final boolean reportUndefinedVariables) throws CoreException {
-		final IStringVariableManager variableManager = VariablesPlugin.getDefault().getStringVariableManager();
+		final IStringVariableManager variableManager= VariablesPlugin.getDefault().getStringVariableManager();
 		
 		for (final String variableName : LOCATION_VARIABLES) {
-			final String pattern = "${"+variableName; //$NON-NLS-1$
-			int offset = -1;
-			while ((offset = text.indexOf(pattern, offset+1)) >= 0) {
+			final String pattern= "${" + variableName; //$NON-NLS-1$
+			int offset= -1;
+			while ((offset= text.indexOf(pattern, offset + 1)) >= 0) {
 				if (!isEscaped(text, offset)) {
-					int end = text.indexOf('}', offset);
-					int next = offset+1;
-					while ((next = text.indexOf('{', next+1)) >= 0 && next < end) {
-						end = text.indexOf('}', end+1);
+					int end= text.indexOf('}', offset);
+					int next= offset + 1;
+					while ((next= text.indexOf('{', next + 1)) >= 0 && next < end) {
+						end= text.indexOf('}', end + 1);
 					}
-					final String key = "XX-RESOURCEVAR-" + fLocationVariables.size() + "-XX"; //$NON-NLS-1$ //$NON-NLS-2$
-					fLocationVariables.put(key, new String(variableManager.performStringSubstitution(text.substring(offset, end+1), reportUndefinedVariables)));
-					text = text.substring(0, offset) + key + text.substring(end+1, text.length());
+					final String key= "XX-RESOURCEVAR-" + this.locationVariables.size() + "-XX"; //$NON-NLS-1$ //$NON-NLS-2$
+					this.locationVariables.put(key, new String(variableManager.performStringSubstitution(text.substring(offset, end + 1), reportUndefinedVariables)));
+					text= text.substring(0, offset) + key + text.substring(end + 1);
 				}
 			}
 		}
@@ -202,39 +203,39 @@
 	}
 	
 	public boolean require(final String variableName) {
-		return fUnresolvedSpecial.contains(variableName);
+		return this.unresolvedSpecial.contains(variableName);
 	}
 	
 	public void set(final String variableName, final String value) {
-		if (fUnresolvedSpecial.remove(variableName)) {
-			final String pattern = "${"+variableName+"}"; //$NON-NLS-1$ //$NON-NLS-2$
-			String text = fText;
+		if (this.unresolvedSpecial.remove(variableName)) {
+			final String pattern= "${" + variableName + "}"; //$NON-NLS-1$ //$NON-NLS-2$
+			String text= this.text;
 			
-			int offset = -1;
-			while ((offset = text.indexOf(pattern, offset+1)) >= 0) {
+			int offset= -1;
+			while ((offset= text.indexOf(pattern, offset + 1)) >= 0) {
 				if (!isEscaped(text, offset)) {
-					text = text.substring(0, offset) + value + text.substring(offset+pattern.length(), text.length());
+					text= text.substring(0, offset) + value + text.substring(offset + pattern.length());
 				}
 			}
 			
-			fText = text;
+			this.text= text;
 		}
 	}
 	
 	public void set(final IDynamicVariable variable) throws CoreException {
-		if (fUnresolvedSpecial.remove(variable.getName())) {
-			final String pattern = "${"+variable.getName(); //$NON-NLS-1$
-			String text = fText;
+		if (this.unresolvedSpecial.remove(variable.getName())) {
+			final String pattern= "${" + variable.getName(); //$NON-NLS-1$
+			String text= this.text;
 			
-			int offset = -1;
-			while ((offset = text.indexOf(pattern, offset+1)) >= 0) {
+			int offset= -1;
+			while ((offset= text.indexOf(pattern, offset + 1)) >= 0) {
 				if (!isEscaped(text, offset)) {
 					final int length;
 					final String value;
 					switch (text.charAt(offset + pattern.length())) {
 					case '}':
-						length = pattern.length() + 1;
-						value = variable.getValue(null);
+						length= pattern.length() + 1;
+						value= variable.getValue(null);
 						break;
 					case ':':
 						if (!variable.supportsArgument()) {
@@ -242,43 +243,43 @@
 									NLS.bind("Malformed variable expression: variable ''{0}'' doesn't support arguments.",
 											variable.getName() )));
 						}
-						length = text.indexOf('}', offset + pattern.length()) - offset + 1;
-						value = variable.getValue(
+						length= text.indexOf('}', offset + pattern.length()) - offset + 1;
+						value= variable.getValue(
 								text.substring(offset + pattern.length() + 1, offset + length - 1) );
 						break;
 					default:
 						throw new IllegalStateException();
 					}
-					text = text.substring(0, offset) + value + text.substring(offset+length, text.length());
+					text= text.substring(0, offset) + value + text.substring(offset + length);
 				}
 			}
 			
-			fText = text;
+			this.text= text;
 		}
 	}
 	
 	public void performFinalStringSubstitution(final LocationProcessor locationProcessor) throws CoreException {
-		if (!fUnresolvedSpecial.isEmpty()) {
+		if (!this.unresolvedSpecial.isEmpty()) {
 			throw new CoreException(new Status(IStatus.ERROR, ECommonsVariablesCore.BUNDLE_ID,
-					"Unresolved variable(s): " + fUnresolvedSpecial.toString() + "." ));
+					"Unresolved variable(s): " + this.unresolvedSpecial.toString() + "." ));
 		}
-		if (fState == 1) {
+		if (this.state == 1) {
 			performInitialStringSubstitution(true);
 		}
-		if (fState != 2) {
+		if (this.state != 2) {
 			throw new IllegalStateException();
 		}
-		String text = fText;
+		String text= this.text;
 		
-		text = searchResourceVar(text, true);
-		text = VariablesPlugin.getDefault().getStringVariableManager().performStringSubstitution(text, true);
-		for (final Entry<String, String> entry : fLocationVariables.entrySet()) {
-			final String value = (locationProcessor != null) ? locationProcessor.process(entry.getValue()) : entry.getValue();
-			text = text.replace(entry.getKey(), value);
+		text= searchResourceVar(text, true);
+		text= VariablesPlugin.getDefault().getStringVariableManager().performStringSubstitution(text, true);
+		for (final Entry<String, String> entry : this.locationVariables.entrySet()) {
+			final String value= (locationProcessor != null) ? locationProcessor.process(entry.getValue()) : entry.getValue();
+			text= text.replace(entry.getKey(), value);
 		}
 		
-		fText = text;
-		fState = 3;
+		this.text= text;
+		this.state= 3;
 	}
 	
 }
diff --git a/ecommons/org.eclipse.statet.ecommons.databinding.core/src/org/eclipse/statet/ecommons/databinding/core/DataBindingSubContext.java b/ecommons/org.eclipse.statet.ecommons.databinding.core/src/org/eclipse/statet/ecommons/databinding/core/DataBindingSubContext.java
index 8112715..13f4f2a 100644
--- a/ecommons/org.eclipse.statet.ecommons.databinding.core/src/org/eclipse/statet/ecommons/databinding/core/DataBindingSubContext.java
+++ b/ecommons/org.eclipse.statet.ecommons.databinding.core/src/org/eclipse/statet/ecommons/databinding/core/DataBindingSubContext.java
@@ -62,7 +62,7 @@
 	}
 	
 	public void run(final Runnable runnable) {
-		final IListChangeListener<Binding> bindingsListener= new IListChangeListener<Binding>() {
+		final IListChangeListener<Binding> bindingsListener= new IListChangeListener<>() {
 			@Override
 			public void handleListChange(final ListChangeEvent<? extends Binding> event) {
 				for (final ListDiffEntry<? extends Binding> diff : event.diff.getDifferences()) {
diff --git a/ecommons/org.eclipse.statet.ecommons.databinding.core/src/org/eclipse/statet/ecommons/databinding/core/conversion/ClassTypedConverter.java b/ecommons/org.eclipse.statet.ecommons.databinding.core/src/org/eclipse/statet/ecommons/databinding/core/conversion/ClassTypedConverter.java
index 5dba9ca..e28ca53 100644
--- a/ecommons/org.eclipse.statet.ecommons.databinding.core/src/org/eclipse/statet/ecommons/databinding/core/conversion/ClassTypedConverter.java
+++ b/ecommons/org.eclipse.statet.ecommons.databinding.core/src/org/eclipse/statet/ecommons/databinding/core/conversion/ClassTypedConverter.java
@@ -37,7 +37,7 @@
 	
 	static <F, T> ClassTypedConverter<F, T> create(final Class<F> fromType, final Class<T> toType,
 			final Function<? super F, ? extends T> function) {
-		return new ClassTypedConverter<F, T>() {
+		return new ClassTypedConverter<>() {
 			@Override
 			public Class<F> getFromType() {
 				return fromType;
@@ -55,7 +55,7 @@
 	
 	
 	static <F, T> ClassTypedConverter<F, T> createIdentity(final Class<F> fromType, final Class<T> toType) {
-		return new ClassTypedConverter<F, T>() {
+		return new ClassTypedConverter<>() {
 			@Override
 			public Class<F> getFromType() {
 				return fromType;
diff --git a/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/preferences/ui/ManagedConfigurationBlock.java b/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/preferences/ui/ManagedConfigurationBlock.java
index 498b330..c805e24 100644
--- a/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/preferences/ui/ManagedConfigurationBlock.java
+++ b/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/preferences/ui/ManagedConfigurationBlock.java
@@ -586,7 +586,7 @@
 	}
 	
 	public <T> IObservableValue<T> createObservable(final Preference<T> pref) {
-		return new AbstractObservableValue<T>() {
+		return new AbstractObservableValue<>() {
 			@Override
 			public Object getValueType() {
 				return pref.getUsageType();
diff --git a/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/preferences/ui/ScopedPreferenceStore.java b/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/preferences/ui/ScopedPreferenceStore.java
index 43d9aa4..4454adc 100644
--- a/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/preferences/ui/ScopedPreferenceStore.java
+++ b/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/preferences/ui/ScopedPreferenceStore.java
@@ -417,8 +417,7 @@
 	@Override
 	public boolean getBoolean(final String name) {
 		final String value = internalGet(name);
-		return value == null ? BOOLEAN_DEFAULT_DEFAULT : Boolean.valueOf(value)
-				.booleanValue();
+		return (value != null) ? Boolean.parseBoolean(value) : BOOLEAN_DEFAULT_DEFAULT;
 	}
 	
 	@Override
diff --git a/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/actions/ControlServicesUtil.java b/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/actions/ControlServicesUtil.java
index ad25c75..02a375e 100644
--- a/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/actions/ControlServicesUtil.java
+++ b/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/actions/ControlServicesUtil.java
@@ -123,7 +123,7 @@
 	}
 	
 	private Expression initExpression(final Control control) {
-		Expression focusExpression= new FocusExpression();
+		final Expression focusExpression= new FocusExpression();
 		if (this.serviceLocator instanceof IWorkbench) {
 			final AndExpression and= new AndExpression();
 			and.add(new ActiveShellExpression(control.getShell()));
@@ -178,7 +178,7 @@
 	
 	
 	protected void dispose() {
-		IHandlerService handlerService= this.handlerService;
+		final var handlerService= this.handlerService;
 		if (handlerService != null) {
 			this.handlerService= null;
 			if (this.activatedHandlers != null) {
diff --git a/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/components/ExtensibleTextCellEditor.java b/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/components/ExtensibleTextCellEditor.java
index 2430bcf..b2339d3 100644
--- a/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/components/ExtensibleTextCellEditor.java
+++ b/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/components/ExtensibleTextCellEditor.java
@@ -317,8 +317,7 @@
 		final boolean newValidState= isCorrect(typedValue);
 		if (!newValidState) {
 			// try to insert the current value into the error message.
-			setErrorMessage(MessageFormat.format(getErrorMessage(),
-					new Object[] { value }));
+			setErrorMessage(MessageFormat.format(getErrorMessage(), value));
 		}
 		valueChanged(oldValidState, newValidState);
 	}
diff --git a/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/components/TreeAndListGroup.java b/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/components/TreeAndListGroup.java
index f8402ef..3b6a535 100644
--- a/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/components/TreeAndListGroup.java
+++ b/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/components/TreeAndListGroup.java
@@ -164,7 +164,7 @@
 		
 		createTreeViewer(fSplitControl);
 		createListViewer(fSplitControl);
-		fSplitControl.setWeights(new int[] { 1, 1 });
+		fSplitControl.setWeights(1, 1);
 		
 		return fSplitControl;
 	}
diff --git a/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/mpbv/BrowserAddressBar.java b/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/mpbv/BrowserAddressBar.java
index 6220842..3c3f562 100644
--- a/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/mpbv/BrowserAddressBar.java
+++ b/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/mpbv/BrowserAddressBar.java
@@ -91,7 +91,7 @@
 		if (this.inputHistory != null) {
 			final IObservableList<String> textItemList= WidgetProperties.items()
 					.observe(this.textControl);
-			this.urlHistoryListener= new IListChangeListener<String>() {
+			this.urlHistoryListener= new IListChangeListener<>() {
 				@Override
 				public void handleListChange(final ListChangeEvent<? extends String> event) {
 					event.diff.applyTo(textItemList);
diff --git a/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/mpbv/ManageBookmarksDialog.java b/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/mpbv/ManageBookmarksDialog.java
index 8f653a0..11f9ad8 100644
--- a/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/mpbv/ManageBookmarksDialog.java
+++ b/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/ecommons/ui/mpbv/ManageBookmarksDialog.java
@@ -98,7 +98,7 @@
 			this.tableViewer.setLabelProvider(new LabelProvider());
 		}
 		
-		this.buttons= new ButtonGroup<BrowserBookmark>(composite) {
+		this.buttons= new ButtonGroup<>(composite) {
 			@Override
 			protected BrowserBookmark edit1(final BrowserBookmark item, final boolean newItem, final Object parent) {
 				final EditBookmarkDialog dialog= new EditBookmarkDialog(getShell(), item);
diff --git a/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/internal/ecommons/ui/UIMiscellanyPlugin.java b/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/internal/ecommons/ui/UIMiscellanyPlugin.java
index 348966a..7618bd3 100644
--- a/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/internal/ecommons/ui/UIMiscellanyPlugin.java
+++ b/ecommons/org.eclipse.statet.ecommons.uimisc/src/org/eclipse/statet/internal/ecommons/ui/UIMiscellanyPlugin.java
@@ -236,7 +236,9 @@
 				final Color hotYellow = new Color(display, new RGB(252, 232, 160));
 				final Color transparent = display.getSystemColor(SWT.COLOR_MAGENTA);
 				
-				final PaletteData palette = new PaletteData(new RGB[] { transparent.getRGB(), border.getRGB(), background.getRGB(), hotRed.getRGB(), hotYellow.getRGB() });
+				final PaletteData palette = new PaletteData(transparent.getRGB(),
+						border.getRGB(), background.getRGB(),
+						hotRed.getRGB(), hotYellow.getRGB() );
 				final ImageData data = new ImageData(16, 16, 8, palette);
 				data.transparentPixel = 0;
 				
diff --git a/jcommons/org.eclipse.statet.jcommons.util/src/org/eclipse/statet/jcommons/io/UriUtils.java b/jcommons/org.eclipse.statet.jcommons.util/src/org/eclipse/statet/jcommons/io/UriUtils.java
index 1ef82cb..c554e67 100644
--- a/jcommons/org.eclipse.statet.jcommons.util/src/org/eclipse/statet/jcommons/io/UriUtils.java
+++ b/jcommons/org.eclipse.statet.jcommons.util/src/org/eclipse/statet/jcommons/io/UriUtils.java
@@ -182,7 +182,7 @@
 		if (jarSepIdx < containerSchemeIdx) {
 			throw new URISyntaxException(url.toString(), "missing JAR separator");
 		}
-		return ssp.substring(jarSepIdx + 2, ssp.length());
+		return ssp.substring(jarSepIdx + 2);
 	}
 	
 	/**
diff --git a/jcommons/org.eclipse.statet.jcommons.util/src/org/eclipse/statet/jcommons/net/PortRange.java b/jcommons/org.eclipse.statet.jcommons.util/src/org/eclipse/statet/jcommons/net/PortRange.java
index 90b6f86..3b33487 100644
--- a/jcommons/org.eclipse.statet.jcommons.util/src/org/eclipse/statet/jcommons/net/PortRange.java
+++ b/jcommons/org.eclipse.statet.jcommons.util/src/org/eclipse/statet/jcommons/net/PortRange.java
@@ -33,7 +33,7 @@
 			if (idx != -1) {
 				return new PortRange(
 						Integer.parseInt(s.substring(0, idx)),
-						Integer.parseInt(s.substring(idx + 1, s.length())) );
+						Integer.parseInt(s.substring(idx + 1)) );
 			}
 		}
 		if (s.length() > 0) {