diff options
author | Alexander Kurtakov | 2018-04-18 18:39:50 +0000 |
---|---|---|
committer | Alexander Kurtakov | 2018-04-18 18:39:50 +0000 |
commit | b2261b0dc9f7d491a636626fa892e99f064899ff (patch) | |
tree | af89dd581d578ebb1d0a722760a1ea59886d10c8 | |
parent | 1a99f645367958e4efe7a8f2b752df856f102785 (diff) | |
download | rt.equinox.bundles-b2261b0dc9f7d491a636626fa892e99f064899ff.tar.gz rt.equinox.bundles-b2261b0dc9f7d491a636626fa892e99f064899ff.tar.xz rt.equinox.bundles-b2261b0dc9f7d491a636626fa892e99f064899ff.zip |
Bug 533787 - Move o.e.equinox.cm to Java 7I20180418-2000
Bump BREE and version. Enable warnings and fix them.
Change-Id: I528218c6ae5b4b2b838348ceb3a512249dfe560a
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
20 files changed, 132 insertions, 59 deletions
diff --git a/bundles/org.eclipse.equinox.cm/.classpath b/bundles/org.eclipse.equinox.cm/.classpath index 64c5e31b7..098194ca4 100644 --- a/bundles/org.eclipse.equinox.cm/.classpath +++ b/bundles/org.eclipse.equinox.cm/.classpath @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <classpath> - <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/> <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> <classpathentry kind="src" path="src"/> <classpathentry kind="output" path="bin"/> diff --git a/bundles/org.eclipse.equinox.cm/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.equinox.cm/.settings/org.eclipse.jdt.core.prefs index 157c47747..5c300d3dc 100644 --- a/bundles/org.eclipse.equinox.cm/.settings/org.eclipse.jdt.core.prefs +++ b/bundles/org.eclipse.equinox.cm/.settings/org.eclipse.jdt.core.prefs @@ -9,18 +9,22 @@ org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull +org.eclipse.jdt.core.compiler.annotation.nonnull.secondary= org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault +org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary= org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable +org.eclipse.jdt.core.compiler.annotation.nullable.secondary= org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7 org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.5 +org.eclipse.jdt.core.compiler.compliance=1.7 org.eclipse.jdt.core.compiler.debug.lineNumber=generate org.eclipse.jdt.core.compiler.debug.localVariable=generate org.eclipse.jdt.core.compiler.debug.sourceFile=generate org.eclipse.jdt.core.compiler.doc.comment.support=enabled org.eclipse.jdt.core.compiler.maxProblemPerUnit=1000 +org.eclipse.jdt.core.compiler.problem.APILeak=warning org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning org.eclipse.jdt.core.compiler.problem.assertIdentifier=error org.eclipse.jdt.core.compiler.problem.autoboxing=ignore @@ -49,7 +53,7 @@ org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore -org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore +org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore @@ -58,7 +62,7 @@ org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=public -org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore @@ -66,19 +70,21 @@ org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning +org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error org.eclipse.jdt.core.compiler.problem.nullReference=warning org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore +org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore -org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore +org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore @@ -88,12 +94,16 @@ org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning +org.eclipse.jdt.core.compiler.problem.terminalDeprecation=warning org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=disabled org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning +org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentType=warning +org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentTypeStrict=disabled +org.eclipse.jdt.core.compiler.problem.unlikelyEqualsArgumentType=info org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore @@ -102,6 +112,7 @@ org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=enabled +org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=ignore org.eclipse.jdt.core.compiler.problem.unusedImport=error org.eclipse.jdt.core.compiler.problem.unusedLabel=warning org.eclipse.jdt.core.compiler.problem.unusedLocal=warning @@ -114,7 +125,7 @@ org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning -org.eclipse.jdt.core.compiler.source=1.5 +org.eclipse.jdt.core.compiler.source=1.7 org.eclipse.jdt.core.formatter.align_type_members_on_columns=false org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16 org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 diff --git a/bundles/org.eclipse.equinox.cm/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.cm/META-INF/MANIFEST.MF index e86b4b2ba..329478de5 100644 --- a/bundles/org.eclipse.equinox.cm/META-INF/MANIFEST.MF +++ b/bundles/org.eclipse.equinox.cm/META-INF/MANIFEST.MF @@ -4,14 +4,14 @@ Bundle-Name: %bundleName Bundle-Vendor: %providerName Bundle-Localization: plugin Bundle-SymbolicName: org.eclipse.equinox.cm -Bundle-Version: 1.2.100.qualifier +Bundle-Version: 1.3.0.qualifier Bundle-Activator: org.eclipse.equinox.internal.cm.Activator Import-Package: org.osgi.framework;version="1.7.0", org.osgi.service.cm;version="[1.5,1.6)", org.osgi.service.log;version="1.3.0", org.osgi.service.event;version="1.0"; resolution:=optional, org.osgi.util.tracker;version="1.3.1" -Bundle-RequiredExecutionEnvironment: J2SE-1.5 +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Provide-Capability: osgi.service; objectClass:List<String>="org.osgi.service.cm.ConfigurationAdmin"; diff --git a/bundles/org.eclipse.equinox.cm/pom.xml b/bundles/org.eclipse.equinox.cm/pom.xml index e3cf86b01..1f686cbcd 100644 --- a/bundles/org.eclipse.equinox.cm/pom.xml +++ b/bundles/org.eclipse.equinox.cm/pom.xml @@ -19,6 +19,6 @@ </parent> <groupId>org.eclipse.equinox</groupId> <artifactId>org.eclipse.equinox.cm</artifactId> - <version>1.2.100-SNAPSHOT</version> + <version>1.3.0-SNAPSHOT</version> <packaging>eclipse-plugin</packaging> </project> diff --git a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/Activator.java b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/Activator.java index 19763782f..0b7d9b369 100644 --- a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/Activator.java +++ b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/Activator.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2006, 2014 Cognos Incorporated, IBM Corporation + * Copyright (c) 2006, 2018 Cognos Incorporated, IBM Corporation * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -39,6 +39,7 @@ public class Activator implements BundleActivator { return null; } + @Override public void start(BundleContext context) throws Exception { setBundleContext(context); logTracker = new LogTracker(context, System.err); @@ -53,6 +54,7 @@ public class Activator implements BundleActivator { registration = context.registerService(ConfigurationAdmin.class.getName(), factory, null); } + @Override public void stop(BundleContext context) throws Exception { registration.unregister(); registration = null; diff --git a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationAdminFactory.java b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationAdminFactory.java index 05fd73743..85ec6eb62 100644 --- a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationAdminFactory.java +++ b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationAdminFactory.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2005, 2013 Cognos Incorporated, IBM Corporation and others. + * Copyright (c) 2005, 2018 Cognos Incorporated, IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -55,16 +55,19 @@ public class ConfigurationAdminFactory implements ServiceFactory<ConfigurationAd pluginManager.stop(); } + @Override public ConfigurationAdmin getService(Bundle bundle, ServiceRegistration<ConfigurationAdmin> registration) { ServiceReference<ConfigurationAdmin> reference = registration.getReference(); eventDispatcher.setServiceReference(reference); return new ConfigurationAdminImpl(this, configurationStore, bundle); } + @Override public void ungetService(Bundle bundle, ServiceRegistration<ConfigurationAdmin> registration, ConfigurationAdmin service) { // do nothing } + @Override public void bundleChanged(BundleEvent event) { if (event.getType() == BundleEvent.UNINSTALLED) configurationStore.unbindConfigurations(event.getBundle()); diff --git a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationAdminImpl.java b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationAdminImpl.java index 5b92d031e..e567a3bf9 100644 --- a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationAdminImpl.java +++ b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationAdminImpl.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2005, 2013 Cognos Incorporated, IBM Corporation and others.. + * Copyright (c) 2005, 2018 Cognos Incorporated, IBM Corporation and others.. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -34,19 +34,23 @@ class ConfigurationAdminImpl implements ConfigurationAdmin { this.bundleLocation = ConfigurationAdminImpl.getLocation(bundle); } + @Override public Configuration createFactoryConfiguration(String factoryPid) { return internalGetConfiguration(factoryPid, bundleLocation, true, true); } + @Override public Configuration createFactoryConfiguration(String factoryPid, String location) { return internalGetConfiguration(factoryPid, location, true, false); } + @Override public Configuration getConfiguration(String pid) { return internalGetConfiguration(pid, bundleLocation, false, true); } + @Override public Configuration getConfiguration(String pid, String location) { return internalGetConfiguration(pid, location, false, false); } @@ -75,6 +79,7 @@ class ConfigurationAdminImpl implements ConfigurationAdmin { return config; } + @Override public Configuration[] listConfigurations(String filterString) throws InvalidSyntaxException { if (filterString == null) filterString = "(" + Constants.SERVICE_PID + "=*)"; //$NON-NLS-1$ //$NON-NLS-2$ @@ -84,7 +89,7 @@ class ConfigurationAdminImpl implements ConfigurationAdmin { return null; } - List<Configuration> result = new ArrayList<Configuration>(configs.length); + List<Configuration> result = new ArrayList<>(configs.length); SecurityManager sm = System.getSecurityManager(); for (int i = 0; i < configs.length; i++) { try { @@ -106,6 +111,7 @@ class ConfigurationAdminImpl implements ConfigurationAdmin { static String getLocation(final Bundle bundle) { return AccessController.doPrivileged(new PrivilegedAction<String>() { + @Override public String run() { return bundle.getLocation(); } diff --git a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationDictionary.java b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationDictionary.java index 0c9e61117..c8a4af3e9 100644 --- a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationDictionary.java +++ b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationDictionary.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2005, 2013 Cognos Incorporated, IBM Corporation and others. + * Copyright (c) 2005, 2018 Cognos Incorporated, IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -31,12 +31,13 @@ public class ConfigurationDictionary extends Dictionary<String, Object> implemen static class CaseInsensitiveStringComparator implements Comparator<String>, Serializable { private static final long serialVersionUID = 6501536810492374044L; + @Override public int compare(String s1, String s2) { return (s1).compareToIgnoreCase(s2); } } - protected final Map<String, Object> configurationProperties = Collections.synchronizedMap(new TreeMap<String, Object>(new CaseInsensitiveStringComparator())); + protected final Map<String, Object> configurationProperties = Collections.synchronizedMap(new TreeMap<>(new CaseInsensitiveStringComparator())); private static void validateValue(Object value) { Class<?> clazz = value.getClass(); @@ -63,44 +64,53 @@ public class ConfigurationDictionary extends Dictionary<String, Object> implemen throw new IllegalArgumentException(clazz.getName()); } + @Override public Enumeration<Object> elements() { return new Enumeration<Object>() { final Iterator<Object> valuesIterator = configurationProperties.values().iterator(); + @Override public boolean hasMoreElements() { return valuesIterator.hasNext(); } + @Override public Object nextElement() { return valuesIterator.next(); } }; } + @Override public Object get(Object key) { if (key == null) throw new NullPointerException(); return configurationProperties.get(key); } + @Override public boolean isEmpty() { return configurationProperties.isEmpty(); } + @Override public Enumeration<String> keys() { return new Enumeration<String>() { Iterator<String> keysIterator = configurationProperties.keySet().iterator(); + @Override public boolean hasMoreElements() { return keysIterator.hasNext(); } + @Override public String nextElement() { return keysIterator.next(); } }; } + @Override public Object put(String key, Object value) { if (key == null || value == null) throw new NullPointerException(); @@ -111,12 +121,14 @@ public class ConfigurationDictionary extends Dictionary<String, Object> implemen return configurationProperties.put(key, value); } + @Override public Object remove(Object key) { if (key == null) throw new NullPointerException(); return configurationProperties.remove(key); } + @Override public int size() { return configurationProperties.size(); } diff --git a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationEventAdapter.java b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationEventAdapter.java index 64bda8e03..8208abc22 100644 --- a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationEventAdapter.java +++ b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationEventAdapter.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2007, 2013 IBM Corporation. + * Copyright (c) 2007, 2018 IBM Corporation. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -39,7 +39,7 @@ public class ConfigurationEventAdapter implements ConfigurationListener { public ConfigurationEventAdapter(BundleContext context) { this.context = context; - eventAdminTracker = new ServiceTracker<EventAdmin, EventAdmin>(context, EventAdmin.class, null); + eventAdminTracker = new ServiceTracker<>(context, EventAdmin.class, null); } public void start() throws Exception { @@ -53,6 +53,7 @@ public class ConfigurationEventAdapter implements ConfigurationListener { eventAdminTracker.close(); } + @Override public void configurationEvent(ConfigurationEvent event) { EventAdmin eventAdmin = eventAdminTracker.getService(); if (eventAdmin == null) { @@ -74,7 +75,7 @@ public class ConfigurationEventAdapter implements ConfigurationListener { if (ref == null) { throw new RuntimeException("ServiceEvent.getServiceReference() is null"); //$NON-NLS-1$ } - Hashtable<String, Object> properties = new Hashtable<String, Object>(); + Hashtable<String, Object> properties = new Hashtable<>(); properties.put(CM_PID, event.getPid()); if (event.getFactoryPid() != null) { properties.put(CM_FACTORY_PID, event.getFactoryPid()); diff --git a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationImpl.java b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationImpl.java index 489df3272..1dac3b36e 100644 --- a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationImpl.java +++ b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationImpl.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2005, 2015 Cognos Incorporated, IBM Corporation and others. + * Copyright (c) 2005, 2018 Cognos Incorporated, IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -137,6 +137,7 @@ class ConfigurationImpl implements Configuration { } } + @Override public void delete() { Object deleteToken; try { @@ -167,6 +168,7 @@ class ConfigurationImpl implements Configuration { } } + @Override public String getBundleLocation() { try { lock(); @@ -191,6 +193,7 @@ class ConfigurationImpl implements Configuration { } } + @Override public String getFactoryPid() { return getFactoryPid(true); } @@ -206,10 +209,12 @@ class ConfigurationImpl implements Configuration { } } + @Override public String getPid() { return getPid(true); } + @Override public Dictionary<String, Object> getProperties() { try { lock(); @@ -267,6 +272,7 @@ class ConfigurationImpl implements Configuration { } } + @Override public void setBundleLocation(String bundleLocation) { try { lock(); @@ -289,6 +295,7 @@ class ConfigurationImpl implements Configuration { } } + @Override public void update() throws IOException { try { lock(); @@ -303,6 +310,7 @@ class ConfigurationImpl implements Configuration { } } + @Override public void update(Dictionary<String, ?> properties) throws IOException { try { lock(); @@ -335,7 +343,7 @@ class ConfigurationImpl implements Configuration { System.arraycopy(value, 0, copyOfArray, 0, arrayLength); newDictionary.put(key, copyOfArray); } else if (value instanceof Collection) - newDictionary.put(key, new Vector<Object>((Collection<?>) value)); + newDictionary.put(key, new Vector<>((Collection<?>) value)); else newDictionary.put(key, properties.get(key)); } else @@ -348,10 +356,12 @@ class ConfigurationImpl implements Configuration { dictionary = newDictionary; } + @Override public boolean equals(Object obj) { return (obj instanceof ConfigurationImpl) && pid.equals(((ConfigurationImpl) obj).getPid()); } + @Override public int hashCode() { return pid.hashCode(); } @@ -365,6 +375,7 @@ class ConfigurationImpl implements Configuration { } } + @Override public long getChangeCount() { try { lock(); diff --git a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationStore.java b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationStore.java index 68b0f715e..75e346d81 100644 --- a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationStore.java +++ b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationStore.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2005, 2015 Cognos Incorporated, IBM Corporation and others. + * Copyright (c) 2005, 2018 Cognos Incorporated, IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -31,7 +31,7 @@ class ConfigurationStore { private static final String STORE_DIR = "store"; //$NON-NLS-1$ private static final String DATA_PRE = "data"; //$NON-NLS-1$ private static final String CFG_EXT = ".cfg"; //$NON-NLS-1$ - private final Map<String, ConfigurationImpl> configurations = new HashMap<String, ConfigurationImpl>(); + private final Map<String, ConfigurationImpl> configurations = new HashMap<>(); private int createdPidCount = 0; private final File store; @@ -109,6 +109,7 @@ class ConfigurationStore { try { final File storeCopy = store; return AccessController.doPrivileged(new PrivilegedExceptionAction<File>() { + @Override public File run() throws Exception { File toFile = token == null ? File.createTempFile(DATA_PRE, CFG_EXT, storeCopy) : (File) token; writeConfigurationFile(toFile, configProperties); @@ -151,6 +152,7 @@ class ConfigurationStore { if (store == null || token == null) return; // no persistent store AccessController.doPrivileged(new PrivilegedAction<Object>() { + @Override public Object run() { deleteConfigurationFile((File) token); return null; @@ -184,7 +186,7 @@ class ConfigurationStore { } public ConfigurationImpl[] getFactoryConfigurations(String factoryPid) { - List<ConfigurationImpl> resultList = new ArrayList<ConfigurationImpl>(); + List<ConfigurationImpl> resultList = new ArrayList<>(); synchronized (this) { resultList.addAll(configurations.values()); } @@ -198,7 +200,7 @@ class ConfigurationStore { } public ConfigurationImpl[] listConfigurations(Filter filter) { - List<ConfigurationImpl> resultList = new ArrayList<ConfigurationImpl>(); + List<ConfigurationImpl> resultList = new ArrayList<>(); synchronized (this) { resultList.addAll(configurations.values()); } diff --git a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/EventDispatcher.java b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/EventDispatcher.java index ac7b18796..8c785cf0f 100644 --- a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/EventDispatcher.java +++ b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/EventDispatcher.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2005, 2013 Cognos Incorporated, IBM Corporation and others. + * Copyright (c) 2005, 2018 Cognos Incorporated, IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -33,8 +33,8 @@ public class EventDispatcher { public EventDispatcher(BundleContext context, LogTracker log) { this.log = log; - tracker = new ServiceTracker<ConfigurationListener, ConfigurationListener>(context, ConfigurationListener.class, null); - syncTracker = new ServiceTracker<SynchronousConfigurationListener, SynchronousConfigurationListener>(context, SynchronousConfigurationListener.class, null); + tracker = new ServiceTracker<>(context, ConfigurationListener.class, null); + syncTracker = new ServiceTracker<>(context, SynchronousConfigurationListener.class, null); } public void start() { @@ -80,6 +80,7 @@ public class EventDispatcher { for (int i = 0; i < refs.length; ++i) { final ServiceReference<ConfigurationListener> ref = refs[i]; queue.put(new Runnable() { + @Override public void run() { ConfigurationListener listener = tracker.getService(ref); if (listener == null) { diff --git a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ManagedServiceFactoryTracker.java b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ManagedServiceFactoryTracker.java index af93f1acb..1d01c322e 100644 --- a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ManagedServiceFactoryTracker.java +++ b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ManagedServiceFactoryTracker.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2005, 2015 Cognos Incorporated, IBM Corporation and others. + * Copyright (c) 2005, 2018 Cognos Incorporated, IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -146,6 +146,7 @@ class ManagedServiceFactoryTracker extends ServiceTracker<ManagedServiceFactory, return false; } + @Override public ManagedServiceFactory addingService(ServiceReference<ManagedServiceFactory> reference) { ManagedServiceFactory service = context.getService(reference); if (service == null) @@ -155,6 +156,7 @@ class ManagedServiceFactoryTracker extends ServiceTracker<ManagedServiceFactory, return service; } + @Override public void modifiedService(ServiceReference<ManagedServiceFactory> reference, ManagedServiceFactory service) { List<String> newPids = TargetMap.getPids(reference.getProperty(Constants.SERVICE_PID)); synchronized (targets) { @@ -178,14 +180,15 @@ class ManagedServiceFactoryTracker extends ServiceTracker<ManagedServiceFactory, } } } - + untrackManagedServiceFactory(reference); addingService(reference); } + @Override public void removedService(ServiceReference<ManagedServiceFactory> reference, ManagedServiceFactory service) { untrackManagedServiceFactory(reference); - + context.ungetService(reference); } @@ -259,6 +262,7 @@ class ManagedServiceFactoryTracker extends ServiceTracker<ManagedServiceFactory, private void asynchDeleted(final ManagedServiceFactory service, final String pid) { queue.put(new Runnable() { + @Override public void run() { try { service.deleted(pid); @@ -274,6 +278,7 @@ class ManagedServiceFactoryTracker extends ServiceTracker<ManagedServiceFactory, return; } queue.put(new Runnable() { + @Override public void run() { try { service.updated(pid, properties); diff --git a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ManagedServiceTracker.java b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ManagedServiceTracker.java index 2aa969663..b5c659100 100644 --- a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ManagedServiceTracker.java +++ b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ManagedServiceTracker.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2005, 2015 Cognos Incorporated, IBM Corporation and others. + * Copyright (c) 2005, 2018 Cognos Incorporated, IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -155,6 +155,7 @@ class ManagedServiceTracker extends ServiceTracker<ManagedService, ManagedServic return false; } + @Override public ManagedService addingService(ServiceReference<ManagedService> reference) { ManagedService service = context.getService(reference); if (service == null) @@ -164,6 +165,7 @@ class ManagedServiceTracker extends ServiceTracker<ManagedService, ManagedServic return service; } + @Override public void modifiedService(ServiceReference<ManagedService> reference, ManagedService service) { List<String> newPids = TargetMap.getPids(reference.getProperty(Constants.SERVICE_PID)); synchronized (targets) { @@ -187,14 +189,15 @@ class ManagedServiceTracker extends ServiceTracker<ManagedService, ManagedServic } } } - + untrackManagedService(reference); addingService(reference); } + @Override public void removedService(ServiceReference<ManagedService> reference, ManagedService service) { untrackManagedService(reference); - + context.ungetService(reference); } @@ -267,6 +270,7 @@ class ManagedServiceTracker extends ServiceTracker<ManagedService, ManagedServic private void asynchUpdated(final ManagedService service, final Dictionary<String, ?> properties) { queue.put(new Runnable() { + @Override public void run() { try { service.updated(properties); diff --git a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/PluginManager.java b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/PluginManager.java index 0456ce461..30cd61876 100644 --- a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/PluginManager.java +++ b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/PluginManager.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2005, 2016 Cognos Incorporated, IBM Corporation and others. + * Copyright (c) 2005, 2018 Cognos Incorporated, IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -54,7 +54,8 @@ public class PluginManager { private static class PluginTracker extends ServiceTracker<ConfigurationPlugin, ConfigurationPlugin> { final Integer ZERO = Integer.valueOf(0); - private TreeSet<ServiceReference<ConfigurationPlugin>> serviceReferences = new TreeSet<ServiceReference<ConfigurationPlugin>>(new Comparator<ServiceReference<ConfigurationPlugin>>() { + private TreeSet<ServiceReference<ConfigurationPlugin>> serviceReferences = new TreeSet<>(new Comparator<ServiceReference<ConfigurationPlugin>>() { + @Override public int compare(ServiceReference<ConfigurationPlugin> s1, ServiceReference<ConfigurationPlugin> s2) { int rankCompare = getRank(s1).compareTo(getRank(s2)); @@ -81,12 +82,14 @@ public class PluginManager { * Rather than returning null if no references are present, it * returns an empty array. */ + @Override public ServiceReference<ConfigurationPlugin>[] getServiceReferences() { synchronized (serviceReferences) { return serviceReferences.toArray(new ServiceReference[serviceReferences.size()]); } } + @Override public ConfigurationPlugin addingService(ServiceReference<ConfigurationPlugin> reference) { synchronized (serviceReferences) { serviceReferences.add(reference); @@ -94,10 +97,12 @@ public class PluginManager { return context.getService(reference); } + @Override public void modifiedService(ServiceReference<ConfigurationPlugin> reference, ConfigurationPlugin service) { // nothing to do } + @Override public void removedService(ServiceReference<ConfigurationPlugin> reference, ConfigurationPlugin service) { synchronized (serviceReferences) { serviceReferences.remove(reference); diff --git a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/SerializedTaskQueue.java b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/SerializedTaskQueue.java index 0e53b8c78..5473bdd4c 100644 --- a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/SerializedTaskQueue.java +++ b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/SerializedTaskQueue.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2006, 2013 Cognos Incorporated + * Copyright (c) 2006, 2018 Cognos Incorporated * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -18,7 +18,7 @@ import java.util.LinkedList; public class SerializedTaskQueue { private static final int MAX_WAIT = 5000; - private final LinkedList<Runnable> tasks = new LinkedList<Runnable>(); + private final LinkedList<Runnable> tasks = new LinkedList<>(); private Thread thread; private final String queueName; @@ -30,6 +30,7 @@ public class SerializedTaskQueue { tasks.add(newTask); if (thread == null) { thread = new Thread(queueName) { + @Override public void run() { Runnable task = nextTask(MAX_WAIT); while (task != null) { diff --git a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/TargetMap.java b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/TargetMap.java index 2608a9325..92c3dc56d 100644 --- a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/TargetMap.java +++ b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/TargetMap.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2013 IBM Corporation and others. + * Copyright (c) 2013, 2018 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -15,8 +15,8 @@ import org.osgi.framework.*; public class TargetMap { - private final Map<ServiceReference<?>, List<List<String>>> targetToQualifiedPids = new HashMap<ServiceReference<?>, List<List<String>>>(); - private final Map<String, Collection<ServiceReference<?>>> qualifiedPidToTargets = new HashMap<String, Collection<ServiceReference<?>>>(); + private final Map<ServiceReference<?>, List<List<String>>> targetToQualifiedPids = new HashMap<>(); + private final Map<String, Collection<ServiceReference<?>>> qualifiedPidToTargets = new HashMap<>(); public List<List<String>> add(ServiceReference<?> ref) { List<String> specifiedPids = getPids(ref.getProperty(Constants.SERVICE_PID)); @@ -32,7 +32,7 @@ public class TargetMap { String version = v == null ? "" : v.toString(); //$NON-NLS-1$ String location = ConfigurationAdminImpl.getLocation(b); - List<List<String>> result = new ArrayList<List<String>>(specifiedPids.size()); + List<List<String>> result = new ArrayList<>(specifiedPids.size()); for (String specifiedPid : specifiedPids) { getTargetsInternal(specifiedPid).add(ref); @@ -49,7 +49,7 @@ public class TargetMap { String pidBsnVersionLocation = sb.toString(); getTargetsInternal(pidBsnVersionLocation).add(ref); - List<String> qualifiedPIDs = new ArrayList<String>(4); + List<String> qualifiedPIDs = new ArrayList<>(4); qualifiedPIDs.add(pidBsnVersionLocation); qualifiedPIDs.add(pidBsnVersion); qualifiedPIDs.add(pidBsn); @@ -72,9 +72,9 @@ public class TargetMap { } else if (pid instanceof Collection) { @SuppressWarnings("unchecked") Collection<String> pidList = (Collection<String>) pid; - specifiedPids = new ArrayList<String>(pidList); + specifiedPids = new ArrayList<>(pidList); } else if (pid.getClass().isArray()) { - specifiedPids = new ArrayList<String>(Arrays.asList((String[]) pid)); + specifiedPids = new ArrayList<>(Arrays.asList((String[]) pid)); } return specifiedPids; } @@ -96,7 +96,7 @@ public class TargetMap { private Collection<ServiceReference<?>> getTargetsInternal(String pid) { Collection<ServiceReference<?>> targets = qualifiedPidToTargets.get(pid); if (targets == null) { - targets = new ArrayList<ServiceReference<?>>(1); + targets = new ArrayList<>(1); qualifiedPidToTargets.put(pid, targets); } return targets; @@ -104,7 +104,7 @@ public class TargetMap { List<ServiceReference<?>> getTargets(String qualifiedPid) { Collection<ServiceReference<?>> targets = qualifiedPidToTargets.get(qualifiedPid); - return targets == null ? Collections.EMPTY_LIST : new ArrayList<ServiceReference<?>>(targets); + return targets == null ? Collections.EMPTY_LIST : new ArrayList<>(targets); } List<List<String>> getQualifiedPids(ServiceReference<?> ref) { diff --git a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/reliablefile/ReliableFile.java b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/reliablefile/ReliableFile.java index f4e3dfbb8..f79aec49a 100644 --- a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/reliablefile/ReliableFile.java +++ b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/reliablefile/ReliableFile.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2003, 2013 IBM Corporation and others. + * Copyright (c) 2003, 2018 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -12,6 +12,7 @@ package org.eclipse.equinox.internal.cm.reliablefile; import java.io.*; +import java.nio.charset.StandardCharsets; import java.util.*; import java.util.zip.CRC32; import java.util.zip.Checksum; @@ -128,7 +129,7 @@ public class ReliableFile { private File referenceFile; /** List of checksum file objects: File => specific ReliableFile generation */ - private static Hashtable<File, CacheInfo> cacheFiles = new Hashtable<File, CacheInfo>(20); + private static Hashtable<File, CacheInfo> cacheFiles = new Hashtable<>(20); private File inputFile = null; private File outputFile = null; @@ -195,7 +196,7 @@ public class ReliableFile { String[] files = parent.list(); if (files == null) return null; - List<Integer> list = new ArrayList<Integer>(defaultMaxGenerations); + List<Integer> list = new ArrayList<>(defaultMaxGenerations); if (file.exists()) list.add(Integer.valueOf(0)); //base file exists for (int i = 0; i < files.length; i++) { @@ -625,7 +626,7 @@ public class ReliableFile { if (!directory.isDirectory()) throw new IOException("Not a valid directory"); //$NON-NLS-1$ String files[] = directory.list(); - Set<String> list = new HashSet<String>(files.length / 2); + Set<String> list = new HashSet<>(files.length / 2); for (int idx = 0; idx < files.length; idx++) { String file = files[idx]; int pos = file.lastIndexOf('.'); @@ -793,12 +794,7 @@ public class ReliableFile { crc.update(data, 0, 16); // update crc w/ sig bytes return FILETYPE_NOSIGNATURE; } - long crccmp; - try { - crccmp = Long.valueOf(new String(data, 4, 8, "UTF-8"), 16).longValue(); //$NON-NLS-1$ - } catch (UnsupportedEncodingException e) { - crccmp = Long.valueOf(new String(data, 4, 8), 16).longValue(); - } + long crccmp = Long.valueOf(new String(data, 4, 8, StandardCharsets.UTF_8), 16).longValue(); if (crccmp == crc.getValue()) { return FILETYPE_VALID; } diff --git a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/reliablefile/ReliableFileInputStream.java b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/reliablefile/ReliableFileInputStream.java index c28d399ac..86c6758a9 100644 --- a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/reliablefile/ReliableFileInputStream.java +++ b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/reliablefile/ReliableFileInputStream.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2003, 2013 IBM Corporation and others. + * Copyright (c) 2003, 2018 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -109,6 +109,7 @@ public class ReliableFileInputStream extends FilterInputStream { * * @exception java.io.IOException If an error occurs closing the file. */ + @Override public synchronized void close() throws IOException { if (reliable != null) { try { @@ -124,6 +125,7 @@ public class ReliableFileInputStream extends FilterInputStream { * Override default FilterInputStream method. * @see FilterInputStream#read(byte[], int, int) */ + @Override public synchronized int read(byte b[], int off, int len) throws IOException { if (readPos >= length) { return -1; @@ -143,6 +145,7 @@ public class ReliableFileInputStream extends FilterInputStream { * Override default FilterInputStream method. * @see FilterInputStream#read(byte[]) */ + @Override public synchronized int read(byte b[]) throws IOException { return read(b, 0, b.length); } @@ -151,6 +154,7 @@ public class ReliableFileInputStream extends FilterInputStream { * Override default FilterInputStream method. * @see FilterInputStream#read() */ + @Override public synchronized int read() throws IOException { if (readPos >= length) { return -1; @@ -167,6 +171,7 @@ public class ReliableFileInputStream extends FilterInputStream { * Override default available method. * @see FilterInputStream#available() */ + @Override public synchronized int available() { if (readPos < length) // just in case return (length - readPos); @@ -177,6 +182,7 @@ public class ReliableFileInputStream extends FilterInputStream { * Override default skip method. * @see FilterInputStream#skip(long) */ + @Override public synchronized long skip(long n) throws IOException { long len = super.skip(n); if (readPos + len > length) @@ -189,6 +195,7 @@ public class ReliableFileInputStream extends FilterInputStream { * Override default markSupported method. * @see FilterInputStream#markSupported() */ + @Override public boolean markSupported() { return false; } @@ -197,6 +204,7 @@ public class ReliableFileInputStream extends FilterInputStream { * Override default mark method. * @see FilterInputStream#mark(int) */ + @Override public void mark(int readlimit) { //ignore } @@ -205,6 +213,7 @@ public class ReliableFileInputStream extends FilterInputStream { * Override default reset method. * @see FilterInputStream#reset() */ + @Override public void reset() throws IOException { throw new IOException("reset not supported."); //$NON-NLS-1$ } diff --git a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/reliablefile/ReliableFileOutputStream.java b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/reliablefile/ReliableFileOutputStream.java index 01fe77509..d1643a7a4 100644 --- a/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/reliablefile/ReliableFileOutputStream.java +++ b/bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/reliablefile/ReliableFileOutputStream.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2003, 2008 IBM Corporation and others. + * Copyright (c) 2003, 2018 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -113,6 +113,7 @@ public class ReliableFileOutputStream extends FilterOutputStream { * * @exception java.io.IOException If an error occurs closing the file. */ + @Override public synchronized void close() throws IOException { closeIntermediateFile(); reliable.closeOutputFile(crc); @@ -146,6 +147,7 @@ public class ReliableFileOutputStream extends FilterOutputStream { * Override default FilterOutputStream method. * @see FilterOutputStream#write(byte[]) */ + @Override public void write(byte[] b) throws IOException { this.write(b, 0, b.length); } @@ -154,6 +156,7 @@ public class ReliableFileOutputStream extends FilterOutputStream { * Override default FilterOutputStream method. * @see FilterOutputStream#write(byte[], int, int) */ + @Override public void write(byte[] b, int off, int len) throws IOException { out.write(b, off, len); crc.update(b, off, len); @@ -163,6 +166,7 @@ public class ReliableFileOutputStream extends FilterOutputStream { * Override default FilterOutputStream method. * @see FilterOutputStream#write(int) */ + @Override public void write(int b) throws IOException { out.write(b); crc.update((byte) b); |