diff -pruN 4.8-1/bundles/ie.wombat.jbdiff/about.html 4.9-1/bundles/ie.wombat.jbdiff/about.html --- 4.8-1/bundles/ie.wombat.jbdiff/about.html 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff/about.html 1970-01-01 00:00:00.000000000 +0000 @@ -1,50 +0,0 @@ - - - - - - - - - About - - - - - -

About This Content

- -

June 5, 2006

- -

License

- -

The Eclipse Foundation makes available all content in this plug-in ("Content"). - Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the - Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available - at http://www.eclipse.org/legal/epl-v10.html. - For purposes of the EPL, "Program" will mean the Content.

- -

If you did not receive this Content directly from the Eclipse Foundation, the Content is - being redistributed by another party ("Redistributor") and different terms and conditions may - apply to your use of any object code in the Content. Check the Redistributor’s license - that was provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise - indicated below, the terms and conditions of the EPL still apply to any source code in the Content - and such source code may be obtained at http://www.eclipse.org.

- -

Third Party Content

- -

The Content includes items that have been sourced from third parties as set out below. If you - did not receive this Content directly from the Eclipse Foundation, the following is provided - for informational purposes only, and you should look to the Redistributor’s license for - terms and conditions of use.

- - -

ie.wombat.jbdiff 

- -

This library version is based on JBDiff (http://www.wombat.ie/software/jbdiff/downloads/) which is also available under the OSI Approved :: BSD License (original) http://www.opensource.org/licenses/bsd-license.html
- -

- -
- - diff -pruN 4.8-1/bundles/ie.wombat.jbdiff/build.properties 4.9-1/bundles/ie.wombat.jbdiff/build.properties --- 4.8-1/bundles/ie.wombat.jbdiff/build.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff/build.properties 1970-01-01 00:00:00.000000000 +0000 @@ -1,4 +0,0 @@ -source.. = src/ -output.. = bin/ -bin.includes = META-INF/,\ - . diff -pruN 4.8-1/bundles/ie.wombat.jbdiff/.classpath 4.9-1/bundles/ie.wombat.jbdiff/.classpath --- 4.8-1/bundles/ie.wombat.jbdiff/.classpath 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff/.classpath 1970-01-01 00:00:00.000000000 +0000 @@ -1,7 +0,0 @@ - - - - - - - diff -pruN 4.8-1/bundles/ie.wombat.jbdiff/forceQualifierUpdate.txt 4.9-1/bundles/ie.wombat.jbdiff/forceQualifierUpdate.txt --- 4.8-1/bundles/ie.wombat.jbdiff/forceQualifierUpdate.txt 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff/forceQualifierUpdate.txt 1970-01-01 00:00:00.000000000 +0000 @@ -1,2 +0,0 @@ -# To force a version qualifier update add the bug here -Bug 403352 - Update all parent versions to match our build stream diff -pruN 4.8-1/bundles/ie.wombat.jbdiff/META-INF/MANIFEST.MF 4.9-1/bundles/ie.wombat.jbdiff/META-INF/MANIFEST.MF --- 4.8-1/bundles/ie.wombat.jbdiff/META-INF/MANIFEST.MF 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff/META-INF/MANIFEST.MF 1970-01-01 00:00:00.000000000 +0000 @@ -1,11 +0,0 @@ -Manifest-Version: 1.0 -Bundle-ManifestVersion: 2 -Bundle-Name: Jbdiff Plug-in -Bundle-SymbolicName: ie.wombat.jbdiff -Bundle-Version: 0.1.0.qualifier -Import-Package: org.osgi.framework;version="1.3.0" -Bundle-ActivationPolicy: lazy -Export-Package: ie.wombat.jbdiff -Bundle-RequiredExecutionEnvironment: CDC-1.1/Foundation-1.1, - J2SE-1.4 -Automatic-Module-Name: ie.wombat.jbdiff diff -pruN 4.8-1/bundles/ie.wombat.jbdiff/pom.xml 4.9-1/bundles/ie.wombat.jbdiff/pom.xml --- 4.8-1/bundles/ie.wombat.jbdiff/pom.xml 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff/pom.xml 1970-01-01 00:00:00.000000000 +0000 @@ -1,14 +0,0 @@ - - - 4.0.0 - - org.eclipse.equinox.p2-parent - org.eclipse - 4.8.0-SNAPSHOT - ../../org.eclipse.equinox.p2.releng/org.eclipse.equinox.p2-parent - - ie.wombat.jbdiff - ie.wombat.jbdiff - 0.1.0-SNAPSHOT - eclipse-plugin - diff -pruN 4.8-1/bundles/ie.wombat.jbdiff/.project 4.9-1/bundles/ie.wombat.jbdiff/.project --- 4.8-1/bundles/ie.wombat.jbdiff/.project 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff/.project 1970-01-01 00:00:00.000000000 +0000 @@ -1,28 +0,0 @@ - - - ie.wombat.jbdiff - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.pde.ManifestBuilder - - - - - org.eclipse.pde.SchemaBuilder - - - - - - org.eclipse.pde.PluginNature - org.eclipse.jdt.core.javanature - - diff -pruN 4.8-1/bundles/ie.wombat.jbdiff/.settings/org.eclipse.core.resources.prefs 4.9-1/bundles/ie.wombat.jbdiff/.settings/org.eclipse.core.resources.prefs --- 4.8-1/bundles/ie.wombat.jbdiff/.settings/org.eclipse.core.resources.prefs 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff/.settings/org.eclipse.core.resources.prefs 1970-01-01 00:00:00.000000000 +0000 @@ -1,3 +0,0 @@ -#Wed Nov 14 12:49:16 EST 2007 -eclipse.preferences.version=1 -encoding/=ISO-8859-1 diff -pruN 4.8-1/bundles/ie.wombat.jbdiff/.settings/org.eclipse.jdt.core.prefs 4.9-1/bundles/ie.wombat.jbdiff/.settings/org.eclipse.jdt.core.prefs --- 4.8-1/bundles/ie.wombat.jbdiff/.settings/org.eclipse.jdt.core.prefs 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff/.settings/org.eclipse.jdt.core.prefs 1970-01-01 00:00:00.000000000 +0000 @@ -1,12 +0,0 @@ -#Tue Dec 18 11:43:17 EST 2007 -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.4 -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.problem.assertIdentifier=warning -org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning -org.eclipse.jdt.core.compiler.source=1.3 diff -pruN 4.8-1/bundles/ie.wombat.jbdiff/.settings/org.eclipse.pde.core.prefs 4.9-1/bundles/ie.wombat.jbdiff/.settings/org.eclipse.pde.core.prefs --- 4.8-1/bundles/ie.wombat.jbdiff/.settings/org.eclipse.pde.core.prefs 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff/.settings/org.eclipse.pde.core.prefs 1970-01-01 00:00:00.000000000 +0000 @@ -1,4 +0,0 @@ -#Thu Nov 01 14:00:53 CET 2007 -eclipse.preferences.version=1 -pluginProject.extensions=false -resolve.requirebundle=false diff -pruN 4.8-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/JBDiff.java 4.9-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/JBDiff.java --- 4.8-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/JBDiff.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/JBDiff.java 1970-01-01 00:00:00.000000000 +0000 @@ -1,612 +0,0 @@ -/* - * Copyright (c) 2005, Joe Desbonnet, (jdesbonnet@gmail.com) - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of the nor the - * names of its contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package ie.wombat.jbdiff; - -import java.io.BufferedInputStream; -import java.io.ByteArrayOutputStream; -import java.io.DataOutputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.util.zip.GZIPOutputStream; - -/** - * Java Binary Diff utility. Based on bsdiff (v4.2) by Colin Percival (see - * http://www.daemonology.net/bsdiff/ ) and distributed under BSD license. - * - *

- * Running this on large files will probably require an increase of the default - * maximum heap size (use java -Xmx200m) - *

- * - * @author Joe Desbonnet, joe@galway.net - * - */ -public class JBDiff { - - // JBDiff extensions by Stefan.Liebig@compeople.de: - // - // - uses GZIP compressor to compress ALL of the blocks (ctrl,diff,extra). - // - added interfaces that allows using of JBDiff with streams and byte - // arrays. - -// private static final String VERSION = "jbdiff-0.1.0.1"; - - // This is ´jbdiff40´. - private static final byte[] MAGIC_BYTES = new byte[] { 0x6a, 0x62, 0x64, - 0x69, 0x66, 0x66, 0x34, 0x30 }; - - private final static void split(int[] I, int[] V, int start, int len, int h) { - - int i, j, k, x, tmp, jj, kk; - - if (len < 16) { - for (k = start; k < start + len; k += j) { - j = 1; - x = V[I[k] + h]; - for (i = 1; k + i < start + len; i++) { - if (V[I[k + i] + h] < x) { - x = V[I[k + i] + h]; - j = 0; - } - - if (V[I[k + i] + h] == x) { - tmp = I[k + j]; - I[k + j] = I[k + i]; - I[k + i] = tmp; - j++; - } - - } - - for (i = 0; i < j; i++) { - V[I[k + i]] = k + j - 1; - } - if (j == 1) { - I[k] = -1; - } - } - - return; - } - - x = V[I[start + len / 2] + h]; - jj = 0; - kk = 0; - for (i = start; i < start + len; i++) { - if (V[I[i] + h] < x) { - jj++; - } - if (V[I[i] + h] == x) { - kk++; - } - } - - jj += start; - kk += jj; - - i = start; - j = 0; - k = 0; - while (i < jj) { - if (V[I[i] + h] < x) { - i++; - } else if (V[I[i] + h] == x) { - tmp = I[i]; - I[i] = I[jj + j]; - I[jj + j] = tmp; - j++; - } else { - tmp = I[i]; - I[i] = I[kk + k]; - I[kk + k] = tmp; - k++; - } - - } - - while (jj + j < kk) { - if (V[I[jj + j] + h] == x) { - j++; - } else { - tmp = I[jj + j]; - I[jj + j] = I[kk + k]; - I[kk + k] = tmp; - k++; - } - - } - - if (jj > start) { - split(I, V, start, jj - start, h); - } - - for (i = 0; i < kk - jj; i++) { - V[I[jj + i]] = kk - 1; - } - - if (jj == kk - 1) { - I[jj] = -1; - } - - if (start + len > kk) { - split(I, V, kk, start + len - kk, h); - } - - } - - /** - * Fast suffix sporting. Larsson and Sadakane's qsufsort algorithm. See - * http://www.cs.lth.se/Research/Algorithms/Papers/jesper5.ps - * - * @param I - * @param V - * @param oldBuf - * @param oldsize - */ - private static void qsufsort(int[] I, int[] V, byte[] oldBuf, int oldsize) { - - // int oldsize = oldBuf.length; - int[] buckets = new int[256]; - - // No need to do that in Java. - // for ( int i = 0; i < 256; i++ ) { - // buckets[i] = 0; - // } - - for (int i = 0; i < oldsize; i++) { - buckets[oldBuf[i] & 0xff]++; - } - - for (int i = 1; i < 256; i++) { - buckets[i] += buckets[i - 1]; - } - - for (int i = 255; i > 0; i--) { - buckets[i] = buckets[i - 1]; - } - - buckets[0] = 0; - - for (int i = 0; i < oldsize; i++) { - I[++buckets[oldBuf[i] & 0xff]] = i; - } - - I[0] = oldsize; - for (int i = 0; i < oldsize; i++) { - V[i] = buckets[oldBuf[i] & 0xff]; - } - V[oldsize] = 0; - - for (int i = 1; i < 256; i++) { - if (buckets[i] == buckets[i - 1] + 1) { - I[buckets[i]] = -1; - } - } - - I[0] = -1; - - for (int h = 1; I[0] != -(oldsize + 1); h += h) { - int len = 0; - int i; - for (i = 0; i < oldsize + 1;) { - if (I[i] < 0) { - len -= I[i]; - i -= I[i]; - } else { - // if(len) I[i-len]=-len; - if (len != 0) { - I[i - len] = -len; - } - len = V[I[i]] + 1 - i; - split(I, V, i, len, h); - i += len; - len = 0; - } - - } - - if (len != 0) { - I[i - len] = -len; - } - } - - for (int i = 0; i < oldsize + 1; i++) { - I[V[i]] = i; - } - } - - /** - * Count the number of bytes that match in oldBuf (starting at offset - * oldOffset) and newBuf (starting at offset newOffset). - * - * @param oldBuf - * @param oldOffset - * @param newBuf - * @param newOffset - * @return - */ - private final static int matchlen(byte[] oldBuf, int oldSize, - int oldOffset, byte[] newBuf, int newSize, int newOffset) { - // int end = Math - // .min(oldBuf.length - oldOffset, newBuf.length - newOffset); - int end = Math.min(oldSize - oldOffset, newSize - newOffset); - for (int i = 0; i < end; i++) { - if (oldBuf[oldOffset + i] != newBuf[newOffset + i]) { - return i; - } - } - return end; - } - - private final static int search(int[] I, byte[] oldBuf, int oldSize, - byte[] newBuf, int newSize, int newBufOffset, int start, int end, - IntByRef pos) { - - if (end - start < 2) { - int x = matchlen(oldBuf, oldSize, I[start], newBuf, newSize, - newBufOffset); - int y = matchlen(oldBuf, oldSize, I[end], newBuf, newSize, - newBufOffset); - - if (x > y) { - pos.value = I[start]; - return x; - } else { - pos.value = I[end]; - return y; - } - } - - int x = start + (end - start) / 2; - if (Util.memcmp(oldBuf, oldSize, I[x], newBuf, newSize, newBufOffset) < 0) { - return search(I, oldBuf, oldSize, newBuf, newSize, newBufOffset, x, - end, pos); - } else { - return search(I, oldBuf, oldSize, newBuf, newSize, newBufOffset, - start, x, pos); - } - - } - - /** - * @param oldFile - * @param newFile - * @param diffFile - * @throws IOException - */ - public static void bsdiff(File oldFile, File newFile, File diffFile) - throws IOException { - InputStream oldInputStream = new BufferedInputStream( - new FileInputStream(oldFile)); - InputStream newInputStream = new BufferedInputStream( - new FileInputStream(newFile)); - OutputStream diffOutputStream = new FileOutputStream(diffFile); - - byte[] diffBytes = bsdiff(oldInputStream, (int) oldFile.length(), - newInputStream, (int) newFile.length()); - - diffOutputStream.write(diffBytes); - diffOutputStream.close(); - } - - /** - * @param oldInputStream - * @param oldsize - * @param newInputStream - * @param newsize - * @return - * @throws IOException - */ - public static byte[] bsdiff(InputStream oldInputStream, int oldsize, - InputStream newInputStream, int newsize) throws IOException { - - byte[] oldBuf = new byte[oldsize]; - - Util.readFromStream(oldInputStream, oldBuf, 0, oldsize); - oldInputStream.close(); - - byte[] newBuf = new byte[newsize]; - Util.readFromStream(newInputStream, newBuf, 0, newsize); - newInputStream.close(); - - return bsdiff(oldBuf, oldsize, newBuf, newsize); - } - - /** - * @param oldBuf - * @param oldsize - * @param newBuf - * @param newsize - * @return - * @throws IOException - */ - public static byte[] bsdiff(byte[] oldBuf, int oldsize, byte[] newBuf, - int newsize) throws IOException { - - int[] I = new int[oldsize + 1]; - qsufsort(I, new int[oldsize + 1], oldBuf, oldsize); - - // diff block - int dblen = 0; - byte[] db = new byte[newsize]; - - // extra block - int eblen = 0; - byte[] eb = new byte[newsize]; - - /* - * Diff file is composed as follows: - * - * Header (32 bytes) Data (from offset 32 to end of file) - * - * Header: Offset 0, length 8 bytes: file magic "jbdiff40" Offset 8, - * length 8 bytes: length of compressed ctrl block Offset 16, length 8 - * bytes: length of compressed diff block Offset 24, length 8 bytes: - * length of new file - * - * Data: 32 (length ctrlBlockLen): ctrlBlock (bzip2) 32+ctrlBlockLen - * (length diffBlockLen): diffBlock (bzip2) 32+ctrlBlockLen+diffBlockLen - * (to end of file): extraBlock (bzip2) - * - * ctrlBlock comprises a set of records, each record 12 bytes. A record - * comprises 3 x 32 bit integers. The ctrlBlock is not compressed. - */ - - ByteArrayOutputStream byteOut = new ByteArrayOutputStream(); - DataOutputStream diffOut = new DataOutputStream(byteOut); - - /* - * Write as much of header as we have now. Size of ctrlBlock and - * diffBlock must be filled in later. - */ - diffOut.write(MAGIC_BYTES); - diffOut.writeLong(-1); // place holder for ctrlBlockLen - diffOut.writeLong(-1); // place holder for diffBlockLen - diffOut.writeLong(newsize); - diffOut.flush(); - - GZIPOutputStream bzip2Out = new GZIPOutputStream(diffOut); - DataOutputStream dataOut = new DataOutputStream(bzip2Out); - - int oldscore, scsc; - - int overlap, Ss, lens; - int i; - int scan = 0; - int len = 0; - int lastscan = 0; - int lastpos = 0; - int lastoffset = 0; - - IntByRef pos = new IntByRef(); - // int ctrlBlockLen = 0; - - while (scan < newsize) { - oldscore = 0; - - for (scsc = scan += len; scan < newsize; scan++) { - - len = search(I, oldBuf, oldsize, newBuf, newsize, scan, 0, - oldsize, pos); - - for (; scsc < scan + len; scsc++) { - if ((scsc + lastoffset < oldsize) - && (oldBuf[scsc + lastoffset] == newBuf[scsc])) { - oldscore++; - } - } - - if (((len == oldscore) && (len != 0)) || (len > oldscore + 8)) { - break; - } - - if ((scan + lastoffset < oldsize) - && (oldBuf[scan + lastoffset] == newBuf[scan])) { - oldscore--; - } - } - - if ((len != oldscore) || (scan == newsize)) { - int s = 0; - int Sf = 0; - int lenf = 0; - for (i = 0; (lastscan + i < scan) && (lastpos + i < oldsize);) { - if (oldBuf[lastpos + i] == newBuf[lastscan + i]) - s++; - i++; - if (s * 2 - i > Sf * 2 - lenf) { - Sf = s; - lenf = i; - } - } - - int lenb = 0; - if (scan < newsize) { - s = 0; - int Sb = 0; - for (i = 1; (scan >= lastscan + i) && (pos.value >= i); i++) { - if (oldBuf[pos.value - i] == newBuf[scan - i]) - s++; - if (s * 2 - i > Sb * 2 - lenb) { - Sb = s; - lenb = i; - } - } - } - - if (lastscan + lenf > scan - lenb) { - overlap = (lastscan + lenf) - (scan - lenb); - s = 0; - Ss = 0; - lens = 0; - for (i = 0; i < overlap; i++) { - if (newBuf[lastscan + lenf - overlap + i] == oldBuf[lastpos - + lenf - overlap + i]) { - s++; - } - if (newBuf[scan - lenb + i] == oldBuf[pos.value - lenb - + i]) { - s--; - } - if (s > Ss) { - Ss = s; - lens = i + 1; - } - } - - lenf += lens - overlap; - lenb -= lens; - } - - // ? byte casting introduced here -- might affect things - for (i = 0; i < lenf; i++) { - db[dblen + i] = (byte) (newBuf[lastscan + i] - oldBuf[lastpos - + i]); - } - - for (i = 0; i < (scan - lenb) - (lastscan + lenf); i++) { - eb[eblen + i] = newBuf[lastscan + lenf + i]; - } - - dblen += lenf; - eblen += (scan - lenb) - (lastscan + lenf); - - /* - * Write control block entry (3 x int) - */ - // diffOut.writeInt( lenf ); - // diffOut.writeInt( ( scan - lenb ) - ( lastscan + lenf ) ); - // diffOut.writeInt( ( pos[0] - lenb ) - ( lastpos + lenf ) ); - // ctrlBlockLen += 12; - dataOut.writeInt(lenf); - dataOut.writeInt((scan - lenb) - (lastscan + lenf)); - dataOut.writeInt((pos.value - lenb) - (lastpos + lenf)); - - lastscan = scan - lenb; - lastpos = pos.value - lenb; - lastoffset = pos.value - scan; - } // end if - } // end while loop - - dataOut.flush(); - bzip2Out.finish(); - - // now compressed ctrlBlockLen - int ctrlBlockLen = diffOut.size() - Util.HEADER_SIZE; - // System.err.println( "Diff: ctrlBlockLen=" + ctrlBlockLen ); - - // GZIPOutputStream gzOut; - - /* - * Write diff block - */ - // gzOut = new GZIPOutputStream( diffOut ); - bzip2Out = new GZIPOutputStream(diffOut); - bzip2Out.write(db, 0, dblen); - bzip2Out.finish(); - bzip2Out.flush(); - int diffBlockLen = diffOut.size() - ctrlBlockLen - Util.HEADER_SIZE; - // System.err.println( "Diff: diffBlockLen=" + diffBlockLen ); - - /* - * Write extra block - */ - // gzOut = new GZIPOutputStream( diffOut ); - bzip2Out = new GZIPOutputStream(diffOut); - bzip2Out.write(eb, 0, eblen); - bzip2Out.finish(); - bzip2Out.flush(); - // long extraBlockLen = diffOut.size() - diffBlockLen - ctrlBlockLen - - // HEADER_SIZE; - // System.err.println( "Diff: extraBlockLen=" + extraBlockLen ); - - diffOut.close(); - - /* - * Write missing header info. - */ - ByteArrayOutputStream byteHeaderOut = new ByteArrayOutputStream( - Util.HEADER_SIZE); - DataOutputStream headerOut = new DataOutputStream(byteHeaderOut); - headerOut.write(MAGIC_BYTES); - headerOut.writeLong(ctrlBlockLen); // place holder for ctrlBlockLen - headerOut.writeLong(diffBlockLen); // place holder for diffBlockLen - headerOut.writeLong(newsize); - headerOut.close(); - - // Copy header information into the diff - byte[] diffBytes = byteOut.toByteArray(); - byte[] headerBytes = byteHeaderOut.toByteArray(); - - System.arraycopy(headerBytes, 0, diffBytes, 0, headerBytes.length); - - return diffBytes; - // /* - // * Write missing header info. Need to reopen the file with - // RandomAccessFile - // * for this. - // */ - // RandomAccessFile diff = new RandomAccessFile( diffFile, "rw" ); - // diff.seek( 8 ); - // diff.writeLong( ctrlBlockLen ); // ctrlBlockLen (compressed) @offset - // 8 - // diff.writeLong( diffBlockLen ); // diffBlockLen (compressed) @offset - // 16 - // diff.close(); - } - - /** - * Run JBDiff from the command line. Params: oldfile newfile difffile. diff - * file will be created. - * - * @param arg - * @throws IOException - */ - public static void main(String[] arg) throws IOException { - - if (arg.length != 3) { - System.err - .println("usage example: java -Xmx200m ie.wombat.jbdiff.JBDiff oldfile newfile patchfile\n"); - return; - } - - File oldFile = new File(arg[0]); - File newFile = new File(arg[1]); - File diffFile = new File(arg[2]); - - bsdiff(oldFile, newFile, diffFile); - - } - - private static class IntByRef { - private int value; - } -} diff -pruN 4.8-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/JBPatch.java 4.9-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/JBPatch.java --- 4.8-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/JBPatch.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/JBPatch.java 1970-01-01 00:00:00.000000000 +0000 @@ -1,241 +0,0 @@ -/* - * Copyright (c) 2005, Joe Desbonnet, (jdesbonnet@gmail.com) - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of the nor the - * names of its contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */package ie.wombat.jbdiff; - -import java.io.BufferedInputStream; -import java.io.ByteArrayInputStream; -import java.io.DataInputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.util.zip.GZIPInputStream; - -/** - * Java Binary patcher (based on bspatch by Colin Percival) - * - * @author Joe Desbonnet, joe@galway.net - */ -public class JBPatch { - - // JBPatch extensions by Stefan.Liebig@compeople.de: - // - // - uses GZIP compressor to compress ALL of the blocks (ctrl,diff,extra). - // - added an interface that allows using of JBPatch with streams and byte - // arrays - -// private static final String VERSION = "jbdiff-0.1.0"; - - /** - * Run JBPatch from the command line. Params: oldfile newfile patchfile. - * newfile will be created. - * - * @param arg - * @throws IOException - */ - public static void main(String[] arg) throws IOException { - - if (arg.length != 3) { - System.err - .println("usage example: java -Xmx200m ie.wombat.jbdiff.JBPatch oldfile newfile patchfile"); - } - - File oldFile = new File(arg[0]); - File newFile = new File(arg[1]); - File diffFile = new File(arg[2]); - - bspatch(oldFile, newFile, diffFile); - } - - /** - * @param oldFile - * @param newFile - * @param diffFile - * @throws IOException - */ - public static void bspatch(File oldFile, File newFile, File diffFile) - throws IOException { - InputStream oldInputStream = new BufferedInputStream( - new FileInputStream(oldFile)); - byte[] diffBytes = new byte[(int) diffFile.length()]; - InputStream diffInputStream = new FileInputStream(diffFile); - Util.readFromStream(diffInputStream, diffBytes, 0, diffBytes.length); - - byte[] newBytes = bspatch(oldInputStream, (int) oldFile.length(), - diffBytes); - - OutputStream newOutputStream = new FileOutputStream(newFile); - newOutputStream.write(newBytes); - newOutputStream.close(); - } - - /** - * @param oldInputStream - * @param diffInputStream - * @return - */ - public static byte[] bspatch(InputStream oldInputStream, int oldsize, - byte[] diffBytes) throws IOException { - /* - * Read in old file (file to be patched) to oldBuf - */ - // int oldsize = (int) oldFile.length(); - // byte[] oldBuf = new byte[oldsize + 1]; - byte[] oldBuf = new byte[oldsize]; - // InputStream oldIn = new FileInputStream( oldFile ); - Util.readFromStream(oldInputStream, oldBuf, 0, oldsize); - oldInputStream.close(); - // oldIn.close(); - - return JBPatch.bspatch(oldBuf, oldsize, diffBytes); - } - - /** - * @param oldBuf - * @param oldsize - * @param diffBytes - * @return - * @throws IOException - */ - public static byte[] bspatch(byte[] oldBuf, int oldsize, byte[] diffBytes) - throws IOException { - return bspatch(oldBuf, oldsize, diffBytes, diffBytes.length); - } - - /** - * @param oldBuf - * @param oldsize - * @param diffBuf - * @param diffSize - * @return - * @throws IOException - */ - public static byte[] bspatch(byte[] oldBuf, int oldsize, byte[] diffBuf, - int diffSize) throws IOException { - - DataInputStream diffIn = new DataInputStream(new ByteArrayInputStream( - diffBuf, 0, diffSize)); - - // skip headerMagic at header offset 0 (length 8 bytes) - diffIn.skip(8); - - // ctrlBlockLen after bzip2 compression at heater offset 8 (length 8 - // bytes) - long ctrlBlockLen = diffIn.readLong(); - - // diffBlockLen after bzip2 compression at header offset 16 (length 8 - // bytes) - long diffBlockLen = diffIn.readLong(); - - // size of new file at header offset 24 (length 8 bytes) - int newsize = (int) diffIn.readLong(); - - // System.err.println( "newsize=" + newsize ); - // System.err.println( "ctrlBlockLen=" + ctrlBlockLen ); - // System.err.println( "diffBlockLen=" + diffBlockLen ); - // System.err.println( "newsize=" + newsize ); - - InputStream in; - in = new ByteArrayInputStream(diffBuf, 0, diffSize); - in.skip(Util.HEADER_SIZE); - DataInputStream ctrlBlockIn = new DataInputStream(new GZIPInputStream( - in)); - - in = new ByteArrayInputStream(diffBuf, 0, diffSize); - in.skip(ctrlBlockLen + Util.HEADER_SIZE); - InputStream diffBlockIn = new GZIPInputStream(in); - - in = new ByteArrayInputStream(diffBuf, 0, diffSize); - in.skip(diffBlockLen + ctrlBlockLen + Util.HEADER_SIZE); - InputStream extraBlockIn = new GZIPInputStream(in); - - // byte[] newBuf = new byte[newsize + 1]; - byte[] newBuf = new byte[newsize]; - - int oldpos = 0; - int newpos = 0; - int[] ctrl = new int[3]; - // int nbytes; - while (newpos < newsize) { - - for (int i = 0; i <= 2; i++) { - // ctrl[i] = diffIn.readInt(); - ctrl[i] = ctrlBlockIn.readInt(); - // System.err.println (" ctrl[" + i + "]=" + ctrl[i]); - } - - if (newpos + ctrl[0] > newsize) { - throw new IOException("Corrupt patch."); - } - - /* - * Read ctrl[0] bytes from diffBlock stream - */ - - Util.readFromStream(diffBlockIn, newBuf, newpos, ctrl[0]); - - for (int i = 0; i < ctrl[0]; i++) { - if ((oldpos + i >= 0) && (oldpos + i < oldsize)) { - newBuf[newpos + i] += oldBuf[oldpos + i]; - } - } - - newpos += ctrl[0]; - oldpos += ctrl[0]; - - if (newpos + ctrl[1] > newsize) { - throw new IOException("Corrupt patch."); - } - - Util.readFromStream(extraBlockIn, newBuf, newpos, ctrl[1]); - - newpos += ctrl[1]; - oldpos += ctrl[2]; - } - - // TODO: Check if at end of ctrlIn - // TODO: Check if at the end of diffIn - // TODO: Check if at the end of extraIn - - // This check is not needed since the byte array has been allocated with - // this constraint! - // if ( newBuf.length - 1 != newsize ) { - // throw new IOException( "Corrupt patch." ); - // } - - ctrlBlockIn.close(); - diffBlockIn.close(); - extraBlockIn.close(); - diffIn.close(); - - return newBuf; - // OutputStream out = new FileOutputStream( newFile ); - // out.write( newBuf, 0, newBuf.length - 1 ); - // out.close(); - } -} diff -pruN 4.8-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/LICENSE.txt 4.9-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/LICENSE.txt --- 4.8-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/LICENSE.txt 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/LICENSE.txt 1970-01-01 00:00:00.000000000 +0000 @@ -1,29 +0,0 @@ -/* Copyright (c) 2005, Joe Desbonnet (jdesbonnet@gmail.com). -* Based on a direct translation of bsdiff utility by Colin Percival -* and available at http://www.daemonology.net/bsdiff/ under the -* same license. - -* All rights reserved. -* -* Redistribution and use in source and binary forms, with or without -* modification, are permitted provided that the following conditions are met: -* * Redistributions of source code must retain the above copyright -* notice, this list of conditions and the following disclaimer. -* * Redistributions in binary form must reproduce the above copyright -* notice, this list of conditions and the following disclaimer in the -* documentation and/or other materials provided with the distribution. -* * Neither the name of the nor the -* names of its contributors may be used to endorse or promote products -* derived from this software without specific prior written permission. -* -* THIS SOFTWARE IS PROVIDED BY ``AS IS'' AND ANY -* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -* DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY -* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*/ \ No newline at end of file diff -pruN 4.8-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/readme-more.txt 4.9-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/readme-more.txt --- 4.8-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/readme-more.txt 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/readme-more.txt 1970-01-01 00:00:00.000000000 +0000 @@ -1,7 +0,0 @@ -This library version is based on JBDiff (http://www.wombat.ie/software/jbdiff/downloads/jbdiff-0.1.1.tar.gz) -which is also available under the OSI Approved :: BSD License (original) -http://www.opensource.org/licenses/bsd-license.html - -Version 0.1.0.1 - - Extended interface so that it is not only file based and uses GZIP compressor for all data structures. - diff -pruN 4.8-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/README.txt 4.9-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/README.txt --- 4.8-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/README.txt 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/README.txt 1970-01-01 00:00:00.000000000 +0000 @@ -1,51 +0,0 @@ -README file for JBDiff (Java Binary Diff) -Version: 0.1.1 -Release date: 1 Oct 2007 - -JBDiff (Java Binary Diff) utility is a Java translation of the bsdiff (v4.2) utility -by Colin Percival. See http://www.daemonology.net/bsdiff/ - -The file format is similar to, but currently not compatible with the bsdiff utility. -This is because bsdiff uses bzip2 for compression which is not available in the -standard Java libraries. Instead I use gzip (java.util.zip.*) - -The diff utility is very memory hungry. Attempting to diff very large files with -insufficient RAM may cause your computer to 'trash' (ie become unusably slow and may -require a reset to recover). Comparing two 20MB files will take approx 80 seconds -on a 2GHz Pentium 4 and will require a maximum heap size of at least 220 MBytes. The -maximum heap size can be specified using the -Xmx switch to the Java VM (see examples -below). The patch utility has more modest resource requirements. - -EXAMPLES: - -To compare old.bin with new.bin and produce diff file new-old.diff: - -java -Xmx200m -classpath jbdiff.jar ie.wombat.jbdiff.JBDiff old.bin new.bin new-old.diff - -To patch old.bin with new-old.diff to produce new.bin: - -java -Xmx200m -classpath jbdiff.jar ie.wombat.jbdiff.JBPatch old.bin new.bin new-old.diff - -TODO: - -This first release is a rather blind port of the bsdiff utility. A vast bulk of -the code ported to Java without any modification. There is scope -for optimization (the C bsdiff runs in approx 50% faster than JBDiff). - -Also it would be nice to be able to produce output that is compatible with bsdiff. -I need a bzip2 library for that. - -Any suggestions, feedback and bugs will be much appreciated. Please email -to joe@galway.net - -LICENSE: - -Now available under BSD license (previously GPL). - -CHANGES SINCE 0.1.0 RELEASE: - -Change of license from GPL v2 to BSD license. - -Joe Desbonnet -jdesbonnet@gmail.com -1 Oct 2007 diff -pruN 4.8-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/Util.java 4.9-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/Util.java --- 4.8-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/Util.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff/src/ie/wombat/jbdiff/Util.java 1970-01-01 00:00:00.000000000 +0000 @@ -1,132 +0,0 @@ -/* - * Copyright (c) 2005, Joe Desbonnet, (jdesbonnet@gmail.com) - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of the nor the - * names of its contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package ie.wombat.jbdiff; - -import java.io.IOException; -import java.io.InputStream; - -/** - * @author - * @author Joe Desbonnet, joe@galway.net - * - */ -public class Util { - - // JBDiff extensions by Stefan.Liebig@compeople.de: - // - // - introduced a HEADER_SIZE constant here - - /** - * Length of the diff file header. - */ - public static final int HEADER_SIZE = 32; - - /** - * Equiv of C library memcmp(). - * - * @param s1 - * @param s1offset - * @param s2 - * @param n - * @return - */ - /* - * public final static int memcmp(byte[] s1, int s1offset, byte[] s2, int - * s2offset, int n) { - * - * if ((s1offset + n) > s1.length) { n = s1.length - s1offset; } if - * ((s2offset + n) > s2.length) { n = s2.length - s2offset; } for (int i = - * 0; i < n; i++) { if (s1[i + s1offset] != s2[i + s2offset]) { return s1[i + - * s1offset] < s2[i + s2offset] ? -1 : 1; } } - * - * return 0; } - */ - - /** - * Equiv of C library memcmp(). - * - * @param s1 - * @param s1offset - * @param s2 - * @param n - * @return - */ - public final static int memcmp(byte[] s1, int s1Size, int s1offset, - byte[] s2, int s2Size, int s2offset) { - - int n = s1Size - s1offset; - - if (n > (s2Size - s2offset)) { - n = s2Size - s2offset; - } - for (int i = 0; i < n; i++) { - if (s1[i + s1offset] != s2[i + s2offset]) { - return s1[i + s1offset] < s2[i + s2offset] ? -1 : 1; - } - } - - return 0; - // int n = s1.length - s1offset; - // - // if (n > (s2.length - s2offset)) { - // n = s2.length - s2offset; - // } - // for (int i = 0; i < n; i++) { - // if (s1[i + s1offset] != s2[i + s2offset]) { - // return s1[i + s1offset] < s2[i + s2offset] ? -1 : 1; - // } - // } - // - // return 0; - } - - /** - * Read from input stream and fill the given buffer from the given offset up - * to length len. - * - * @param in - * @param buf - * @param offset - * @param len - * @throws IOException - */ - public static final void readFromStream(InputStream in, byte[] buf, - int offset, int len) throws IOException { - - int totalBytesRead = 0; - while (totalBytesRead < len) { - int bytesRead = in.read(buf, offset + totalBytesRead, len - - totalBytesRead); - if (bytesRead < 0) { - throw new IOException( - "Could not read expected number of bytes."); - } - totalBytesRead += bytesRead; - } - } - -} diff -pruN 4.8-1/bundles/ie.wombat.jbdiff.test/build.properties 4.9-1/bundles/ie.wombat.jbdiff.test/build.properties --- 4.8-1/bundles/ie.wombat.jbdiff.test/build.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff.test/build.properties 1970-01-01 00:00:00.000000000 +0000 @@ -1,4 +0,0 @@ -source.. = src/ -output.. = bin/ -bin.includes = META-INF/,\ - . diff -pruN 4.8-1/bundles/ie.wombat.jbdiff.test/.classpath 4.9-1/bundles/ie.wombat.jbdiff.test/.classpath --- 4.8-1/bundles/ie.wombat.jbdiff.test/.classpath 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff.test/.classpath 1970-01-01 00:00:00.000000000 +0000 @@ -1,7 +0,0 @@ - - - - - - - diff -pruN 4.8-1/bundles/ie.wombat.jbdiff.test/forceQualifierUpdate.txt 4.9-1/bundles/ie.wombat.jbdiff.test/forceQualifierUpdate.txt --- 4.8-1/bundles/ie.wombat.jbdiff.test/forceQualifierUpdate.txt 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff.test/forceQualifierUpdate.txt 1970-01-01 00:00:00.000000000 +0000 @@ -1,2 +0,0 @@ -# To force a version qualifier update add the bug here -Bug 403352 - Update all parent versions to match our build stream diff -pruN 4.8-1/bundles/ie.wombat.jbdiff.test/META-INF/MANIFEST.MF 4.9-1/bundles/ie.wombat.jbdiff.test/META-INF/MANIFEST.MF --- 4.8-1/bundles/ie.wombat.jbdiff.test/META-INF/MANIFEST.MF 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff.test/META-INF/MANIFEST.MF 1970-01-01 00:00:00.000000000 +0000 @@ -1,13 +0,0 @@ -Manifest-Version: 1.0 -Bundle-ManifestVersion: 2 -Bundle-Name: JBDiff Test Plug-in -Bundle-SymbolicName: ie.wombat.jbdiff.test -Bundle-Version: 0.1.0.qualifier -Bundle-Activator: ie.wombat.jbdiff.test.Activator -Import-Package: org.osgi.framework;version="1.3.0" -Bundle-ActivationPolicy: lazy -Bundle-RequiredExecutionEnvironment: CDC-1.1/Foundation-1.1, - J2SE-1.4 -Require-Bundle: org.junit, - ie.wombat.jbdiff -Automatic-Module-Name: ie.wombat.jbdiff.test diff -pruN 4.8-1/bundles/ie.wombat.jbdiff.test/pom.xml 4.9-1/bundles/ie.wombat.jbdiff.test/pom.xml --- 4.8-1/bundles/ie.wombat.jbdiff.test/pom.xml 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff.test/pom.xml 1970-01-01 00:00:00.000000000 +0000 @@ -1,14 +0,0 @@ - - - 4.0.0 - - org.eclipse.equinox.p2-parent - org.eclipse - 4.8.0-SNAPSHOT - ../../org.eclipse.equinox.p2.releng/org.eclipse.equinox.p2-parent - - ie.wombat.jbdiff - ie.wombat.jbdiff.test - 0.1.0-SNAPSHOT - eclipse-test-plugin - diff -pruN 4.8-1/bundles/ie.wombat.jbdiff.test/.project 4.9-1/bundles/ie.wombat.jbdiff.test/.project --- 4.8-1/bundles/ie.wombat.jbdiff.test/.project 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff.test/.project 1970-01-01 00:00:00.000000000 +0000 @@ -1,28 +0,0 @@ - - - ie.wombat.jbdiff.test - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.pde.ManifestBuilder - - - - - org.eclipse.pde.SchemaBuilder - - - - - - org.eclipse.pde.PluginNature - org.eclipse.jdt.core.javanature - - diff -pruN 4.8-1/bundles/ie.wombat.jbdiff.test/.settings/org.eclipse.jdt.core.prefs 4.9-1/bundles/ie.wombat.jbdiff.test/.settings/org.eclipse.jdt.core.prefs --- 4.8-1/bundles/ie.wombat.jbdiff.test/.settings/org.eclipse.jdt.core.prefs 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff.test/.settings/org.eclipse.jdt.core.prefs 1970-01-01 00:00:00.000000000 +0000 @@ -1,12 +0,0 @@ -#Tue Dec 18 11:44:16 EST 2007 -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.4 -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.problem.assertIdentifier=warning -org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning -org.eclipse.jdt.core.compiler.source=1.3 diff -pruN 4.8-1/bundles/ie.wombat.jbdiff.test/.settings/org.eclipse.pde.core.prefs 4.9-1/bundles/ie.wombat.jbdiff.test/.settings/org.eclipse.pde.core.prefs --- 4.8-1/bundles/ie.wombat.jbdiff.test/.settings/org.eclipse.pde.core.prefs 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff.test/.settings/org.eclipse.pde.core.prefs 1970-01-01 00:00:00.000000000 +0000 @@ -1,4 +0,0 @@ -#Thu Nov 01 14:26:02 CET 2007 -eclipse.preferences.version=1 -pluginProject.extensions=false -resolve.requirebundle=false diff -pruN 4.8-1/bundles/ie.wombat.jbdiff.test/src/ie/wombat/jbdiff/test/Activator.java 4.9-1/bundles/ie.wombat.jbdiff.test/src/ie/wombat/jbdiff/test/Activator.java --- 4.8-1/bundles/ie.wombat.jbdiff.test/src/ie/wombat/jbdiff/test/Activator.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff.test/src/ie/wombat/jbdiff/test/Activator.java 1970-01-01 00:00:00.000000000 +0000 @@ -1,45 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2007 compeople AG 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 - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * compeople AG (Stefan Liebig) - initial API and implementation - *******************************************************************************/ -package ie.wombat.jbdiff.test; - -import org.osgi.framework.BundleActivator; -import org.osgi.framework.BundleContext; - -public class Activator implements BundleActivator { - - private static BundleContext context; - - /* - * (non-Javadoc) - * - * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext) - */ - public void start(BundleContext context) throws Exception { - Activator.context = context; - } - - /* - * (non-Javadoc) - * - * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext) - */ - public void stop(BundleContext context) throws Exception { - Activator.context = null; - } - - /** - * @return the context - */ - public static BundleContext getContext() { - return context; - } - -} diff -pruN 4.8-1/bundles/ie.wombat.jbdiff.test/src/ie/wombat/jbdiff/test/DiffPatchTest.java 4.9-1/bundles/ie.wombat.jbdiff.test/src/ie/wombat/jbdiff/test/DiffPatchTest.java --- 4.8-1/bundles/ie.wombat.jbdiff.test/src/ie/wombat/jbdiff/test/DiffPatchTest.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/ie.wombat.jbdiff.test/src/ie/wombat/jbdiff/test/DiffPatchTest.java 1970-01-01 00:00:00.000000000 +0000 @@ -1,112 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2007 compeople AG 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 - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * compeople AG (Stefan Liebig) - initial API and implementation - *******************************************************************************/ -package ie.wombat.jbdiff.test; - -import ie.wombat.jbdiff.JBDiff; -import ie.wombat.jbdiff.JBPatch; - -import java.io.BufferedInputStream; -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.util.Arrays; - -import junit.framework.TestCase; - -public class DiffPatchTest extends TestCase { - - public void testNullData() throws Exception { - bench("null.data", "null.data"); - } - - public void testOneData() throws Exception { - bench("one.data", "one.data"); - } - - public void testOneHundredData() throws Exception { - bench("onehundred.data", "onehundred.data"); - } - - public void testOneHundredXData() throws Exception { - bench("onehundred.data", "onehundredX.data"); - } - - public void testOneXHundredXData() throws Exception { - bench("onehundred.data", "oneXhundredX.data"); - } - - public void testPdeCoreJar() throws Exception { - bench("org.eclipse.pde.core_3.2.jar", "org.eclipse.pde.core_3.3.jar"); - } - - public void testEclipse() throws Exception { - bench("eclipse-3.2.exe", "eclipse-3.3.exe"); - } - - private void bench(String resource1, String resource2) throws Exception { - - byte[] oldData = getTestData(resource1); - byte[] newData = getTestData(resource2); - - System.out.println(resource1 + "(" + (oldData.length / 1024) - + " kb) -> " + resource2 + "(" + (newData.length / 1024) - + " kb)"); - - diffAndPatchJBDiff(oldData, newData); - - System.out.println(""); - } - - /** - * @param resource1 - * @param resource2 - * @throws IOException - */ - private void diffAndPatchJBDiff(byte[] oldData, byte[] newData) - throws IOException { - - try { - - long start = System.currentTimeMillis(); - - byte[] diff = JBDiff.bsdiff(oldData, oldData.length, newData, - newData.length); - - long diffEnd = System.currentTimeMillis(); - - byte[] patch = JBPatch.bspatch(oldData, oldData.length, diff); - - long patchEnd = System.currentTimeMillis(); - - System.out.println("JBDiff: Size= " + diff.length + " b (" - + diff.length / 1024 + " kb), Diffing " + (diffEnd - start) - + " ms, Patching: " + (patchEnd - diffEnd) + " ms"); - - assertTrue(Arrays.equals(newData, patch)); - - } catch (RuntimeException re) { - System.err.println("JBDiff: error: " + re.getMessage()); - } - } - - private static byte[] getTestData(String name) throws IOException { - ByteArrayOutputStream out = new ByteArrayOutputStream(); - InputStream input = new BufferedInputStream(Activator.getContext() - .getBundle().getEntry("testData/" + name).openStream()); - int r; - while ((r = input.read()) != -1) { - out.write(r); - } - input.close(); - out.close(); - return out.toByteArray(); - } -} \ No newline at end of file diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/about.html 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/about.html --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/about.html 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/about.html 2018-08-29 14:43:08.000000000 +0000 @@ -2,27 +2,35 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + About -

About This Content

- -

June 2, 2006

-

License

+

About This Content

-

The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise -indicated below, the Content is provided to you under the terms and conditions of the -Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available -at http://www.eclipse.org/legal/epl-v10.html. -For purposes of the EPL, "Program" will mean the Content.

+

November 30, 2017

+

License

-

If you did not receive this Content directly from the Eclipse Foundation, the Content is -being redistributed by another party ("Redistributor") and different terms and conditions may -apply to your use of any object code in the Content. Check the Redistributor's license that was -provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise -indicated below, the terms and conditions of the EPL still apply to any source code in the Content -and such source code may be obtained at http://www.eclipse.org.

+

+ The Eclipse Foundation makes available all content in this plug-in + ("Content"). Unless otherwise indicated below, the Content + is provided to you under the terms and conditions of the Eclipse + Public License Version 2.0 ("EPL"). A copy of the EPL is + available at http://www.eclipse.org/legal/epl-2.0. + For purposes of the EPL, "Program" will mean the Content. +

+ +

+ If you did not receive this Content directly from the Eclipse + Foundation, the Content is being redistributed by another party + ("Redistributor") and different terms and conditions may + apply to your use of any object code in the Content. Check the + Redistributor's license that was provided with the Content. If no such + license exists, contact the Redistributor. Unless otherwise indicated + below, the terms and conditions of the EPL still apply to any source + code in the Content and such source code may be obtained at http://www.eclipse.org. +

\ No newline at end of file diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/build.properties 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/build.properties --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/build.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/build.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2005, 2008 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/META-INF/MANIFEST.MF 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/META-INF/MANIFEST.MF --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/META-INF/MANIFEST.MF 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/META-INF/MANIFEST.MF 2018-08-29 14:43:08.000000000 +0000 @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-SymbolicName: org.eclipse.equinox.frameworkadmin;singleton:=true -Bundle-Version: 2.1.0.qualifier +Bundle-Version: 2.1.100.qualifier Bundle-Vendor: %providerName Bundle-Localization: plugin Import-Package: org.eclipse.osgi.service.pluginconversion;version="1.0.0", diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/plugin.properties 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/plugin.properties --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/plugin.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/plugin.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2008, 2009 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/pom.xml 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/pom.xml --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/pom.xml 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/pom.xml 2018-08-29 14:43:08.000000000 +0000 @@ -2,13 +2,13 @@ 4.0.0 - org.eclipse.equinox.p2-parent - org.eclipse - 4.8.0-SNAPSHOT - ../../org.eclipse.equinox.p2.releng/org.eclipse.equinox.p2-parent + org.eclipse.equinox.p2 + rt.equinox.p2 + 4.9.0-SNAPSHOT + ../.. org.eclipse.equinox org.eclipse.equinox.frameworkadmin - 2.1.0-SNAPSHOT + 2.1.100-SNAPSHOT eclipse-plugin diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/frameworkadmin/BundleInfo.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/frameworkadmin/BundleInfo.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/frameworkadmin/BundleInfo.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/frameworkadmin/BundleInfo.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/frameworkadmin/utils/SimpleBundlesState.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/frameworkadmin/utils/SimpleBundlesState.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/frameworkadmin/utils/SimpleBundlesState.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/frameworkadmin/utils/SimpleBundlesState.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/frameworkadmin/utils/Utils.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/frameworkadmin/utils/Utils.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/frameworkadmin/utils/Utils.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/frameworkadmin/utils/Utils.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/configuratormanipulator/ConfiguratorManipulatorFactory.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/configuratormanipulator/ConfiguratorManipulatorFactory.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/configuratormanipulator/ConfiguratorManipulatorFactory.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/configuratormanipulator/ConfiguratorManipulatorFactory.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/configuratormanipulator/ConfiguratorManipulator.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/configuratormanipulator/ConfiguratorManipulator.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/configuratormanipulator/ConfiguratorManipulator.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/configuratormanipulator/ConfiguratorManipulator.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/BundlesState.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/BundlesState.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/BundlesState.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/BundlesState.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/ConfigData.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/ConfigData.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/ConfigData.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/ConfigData.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/FrameworkAdminFactory.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/FrameworkAdminFactory.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/FrameworkAdminFactory.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/FrameworkAdminFactory.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2005, 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/FrameworkAdmin.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/FrameworkAdmin.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/FrameworkAdmin.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/FrameworkAdmin.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/FrameworkAdminRuntimeException.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/FrameworkAdminRuntimeException.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/FrameworkAdminRuntimeException.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/FrameworkAdminRuntimeException.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2008 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/LauncherData.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/LauncherData.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/LauncherData.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/LauncherData.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/Manipulator.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/Manipulator.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/Manipulator.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin/src/org/eclipse/equinox/internal/provisional/frameworkadmin/Manipulator.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/about.html 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/about.html --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/about.html 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/about.html 2018-08-29 14:43:08.000000000 +0000 @@ -2,27 +2,35 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + About -

About This Content

- -

June 2, 2006

-

License

+

About This Content

-

The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise -indicated below, the Content is provided to you under the terms and conditions of the -Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available -at http://www.eclipse.org/legal/epl-v10.html. -For purposes of the EPL, "Program" will mean the Content.

+

November 30, 2017

+

License

-

If you did not receive this Content directly from the Eclipse Foundation, the Content is -being redistributed by another party ("Redistributor") and different terms and conditions may -apply to your use of any object code in the Content. Check the Redistributor's license that was -provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise -indicated below, the terms and conditions of the EPL still apply to any source code in the Content -and such source code may be obtained at http://www.eclipse.org.

+

+ The Eclipse Foundation makes available all content in this plug-in + ("Content"). Unless otherwise indicated below, the Content + is provided to you under the terms and conditions of the Eclipse + Public License Version 2.0 ("EPL"). A copy of the EPL is + available at http://www.eclipse.org/legal/epl-2.0. + For purposes of the EPL, "Program" will mean the Content. +

+ +

+ If you did not receive this Content directly from the Eclipse + Foundation, the Content is being redistributed by another party + ("Redistributor") and different terms and conditions may + apply to your use of any object code in the Content. Check the + Redistributor's license that was provided with the Content. If no such + license exists, contact the Redistributor. Unless otherwise indicated + below, the terms and conditions of the EPL still apply to any source + code in the Content and such source code may be obtained at http://www.eclipse.org. +

\ No newline at end of file diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/build.properties 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/build.properties --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/build.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/build.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2011 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/META-INF/MANIFEST.MF 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/META-INF/MANIFEST.MF --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/META-INF/MANIFEST.MF 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/META-INF/MANIFEST.MF 2018-08-29 14:43:08.000000000 +0000 @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-SymbolicName: org.eclipse.equinox.frameworkadmin.equinox;singleton:=true -Bundle-Version: 1.1.0.qualifier +Bundle-Version: 1.1.100.qualifier Bundle-Vendor: %providerName Bundle-Localization: plugin Import-Package: org.eclipse.equinox.frameworkadmin;version="[2.0.0,3.0.0)", diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/plugin.properties 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/plugin.properties --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/plugin.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/plugin.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2008, 2009 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/pom.xml 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/pom.xml --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/pom.xml 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/pom.xml 2018-08-29 14:43:08.000000000 +0000 @@ -2,13 +2,13 @@ 4.0.0 - org.eclipse.equinox.p2-parent - org.eclipse - 4.8.0-SNAPSHOT - ../../org.eclipse.equinox.p2.releng/org.eclipse.equinox.p2-parent + org.eclipse.equinox.p2 + rt.equinox.p2 + 4.9.0-SNAPSHOT + ../.. org.eclipse.equinox org.eclipse.equinox.frameworkadmin.equinox - 1.1.0-SNAPSHOT + 1.1.100-SNAPSHOT eclipse-plugin diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EclipseLauncherImpl.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EclipseLauncherImpl.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EclipseLauncherImpl.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EclipseLauncherImpl.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EclipseLauncherParser.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EclipseLauncherParser.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EclipseLauncherParser.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EclipseLauncherParser.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxBundlesState.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxBundlesState.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxBundlesState.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxBundlesState.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxConstants.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxConstants.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxConstants.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxConstants.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2011 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxFrameworkAdminFactoryImpl.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxFrameworkAdminFactoryImpl.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxFrameworkAdminFactoryImpl.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxFrameworkAdminFactoryImpl.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxFwAdminImpl.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxFwAdminImpl.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxFwAdminImpl.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxFwAdminImpl.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxFwConfigFileParser.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxFwConfigFileParser.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxFwConfigFileParser.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxFwConfigFileParser.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxLauncherData.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxLauncherData.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxLauncherData.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxLauncherData.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,13 @@ /******************************************************************************* * Copyright (c) 2008, 2017 IBM Corporation and others. - * All rights reserved. This + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: IBM Corporation - initial API and implementation ******************************************************************************/ diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxManipulatorImpl.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxManipulatorImpl.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxManipulatorImpl.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxManipulatorImpl.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/Log.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/Log.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/Log.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/Log.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2008 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/Messages.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/Messages.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/Messages.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/Messages.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM - Initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/messages.properties 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/messages.properties --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/messages.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/messages.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2008, 2010 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/ParserUtils.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/ParserUtils.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/ParserUtils.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/ParserUtils.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2012 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/utils/FileUtils.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/utils/FileUtils.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/utils/FileUtils.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/utils/FileUtils.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/about.html 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/about.html --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/about.html 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/about.html 2018-08-29 14:43:08.000000000 +0000 @@ -2,27 +2,35 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + About -

About This Content

- -

June 2, 2006

-

License

+

About This Content

-

The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise -indicated below, the Content is provided to you under the terms and conditions of the -Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available -at http://www.eclipse.org/legal/epl-v10.html. -For purposes of the EPL, "Program" will mean the Content.

+

November 30, 2017

+

License

-

If you did not receive this Content directly from the Eclipse Foundation, the Content is -being redistributed by another party ("Redistributor") and different terms and conditions may -apply to your use of any object code in the Content. Check the Redistributor's license that was -provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise -indicated below, the terms and conditions of the EPL still apply to any source code in the Content -and such source code may be obtained at http://www.eclipse.org.

+

+ The Eclipse Foundation makes available all content in this plug-in + ("Content"). Unless otherwise indicated below, the Content + is provided to you under the terms and conditions of the Eclipse + Public License Version 2.0 ("EPL"). A copy of the EPL is + available at http://www.eclipse.org/legal/epl-2.0. + For purposes of the EPL, "Program" will mean the Content. +

+ +

+ If you did not receive this Content directly from the Eclipse + Foundation, the Content is being redistributed by another party + ("Redistributor") and different terms and conditions may + apply to your use of any object code in the Content. Check the + Redistributor's license that was provided with the Content. If no such + license exists, contact the Redistributor. Unless otherwise indicated + below, the terms and conditions of the EPL still apply to any source + code in the Content and such source code may be obtained at http://www.eclipse.org. +

\ No newline at end of file diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/build.properties 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/build.properties --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/build.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/build.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2005, 2008 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/META-INF/MANIFEST.MF 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/META-INF/MANIFEST.MF --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/META-INF/MANIFEST.MF 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/META-INF/MANIFEST.MF 2018-08-29 14:43:08.000000000 +0000 @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Bundle-SymbolicName: org.eclipse.equinox.frameworkadmin.test -Bundle-Version: 1.2.0.qualifier +Bundle-Version: 1.2.100.qualifier Bundle-Vendor: %Bundle-Vendor Require-Bundle: org.eclipse.core.runtime, org.eclipse.equinox.frameworkadmin, diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/OSGI-INF/l10n/bundle.properties 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/OSGI-INF/l10n/bundle.properties --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/OSGI-INF/l10n/bundle.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/OSGI-INF/l10n/bundle.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2018 Red Hat Inc. and others. -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Eclipse Public License v1.0 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # Red Hat Inc. - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/pom.xml 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/pom.xml --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/pom.xml 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/pom.xml 2018-08-29 14:43:08.000000000 +0000 @@ -4,11 +4,11 @@ org.eclipse.equinox.p2.tests-parent org.eclipse - 4.8.0-SNAPSHOT + 4.9.0-SNAPSHOT ../../org.eclipse.equinox.p2.releng/org.eclipse.equinox.p2.tests-parent org.eclipse.equinox org.eclipse.equinox.frameworkadmin.test - 1.2.0-SNAPSHOT + 1.2.100-SNAPSHOT eclipse-plugin
diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/AbstractFwkAdminTest.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/AbstractFwkAdminTest.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/AbstractFwkAdminTest.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/AbstractFwkAdminTest.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/Activator.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/Activator.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/Activator.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/Activator.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/AllTests.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/AllTests.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/AllTests.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/AllTests.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2013 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/Bug196525.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/Bug196525.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/Bug196525.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/Bug196525.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/Bug258370.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/Bug258370.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/Bug258370.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/Bug258370.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/CleanupTest.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/CleanupTest.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/CleanupTest.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/CleanupTest.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/FrameworkExtensionTest.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/FrameworkExtensionTest.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/FrameworkExtensionTest.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/FrameworkExtensionTest.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/FwkAdminAndSimpleConfiguratorTest.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/FwkAdminAndSimpleConfiguratorTest.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/FwkAdminAndSimpleConfiguratorTest.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/FwkAdminAndSimpleConfiguratorTest.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/LauncherConfigLocationTest.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/LauncherConfigLocationTest.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/LauncherConfigLocationTest.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/LauncherConfigLocationTest.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/LauncherDataTest.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/LauncherDataTest.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/LauncherDataTest.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/LauncherDataTest.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/MacOSLikeSetup.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/MacOSLikeSetup.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/MacOSLikeSetup.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/MacOSLikeSetup.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,8 +1,13 @@ /******************************************************************************* - * Copyright (c) 2008, 2010 IBM Corporation and others. All rights reserved. This + * Copyright (c) 2008, 2010 IBM Corporation and others. + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: IBM Corporation - initial API and implementation ******************************************************************************/ diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ManipulatorTests.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ManipulatorTests.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ManipulatorTests.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ManipulatorTests.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/NoConfigurationValueInEclipseIni.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/NoConfigurationValueInEclipseIni.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/NoConfigurationValueInEclipseIni.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/NoConfigurationValueInEclipseIni.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,8 +1,13 @@ /******************************************************************************* - * Copyright (c) 2008, 2010 IBM Corporation and others. All rights reserved. This + * Copyright (c) 2008, 2010 IBM Corporation and others. + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: IBM Corporation - initial API and implementation ******************************************************************************/ diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/NoRenamingLauncherIni.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/NoRenamingLauncherIni.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/NoRenamingLauncherIni.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/NoRenamingLauncherIni.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/OSGiVersionChange.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/OSGiVersionChange.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/OSGiVersionChange.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/OSGiVersionChange.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ParserUtilsTest.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ParserUtilsTest.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ParserUtilsTest.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ParserUtilsTest.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest1.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest1.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest1.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest1.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest2.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest2.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest2.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest2.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest3.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest3.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest3.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest3.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest4.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest4.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest4.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest4.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest5.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest5.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest5.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTest5.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTestBug267850.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTestBug267850.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTestBug267850.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTestBug267850.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTestBug285935.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTestBug285935.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTestBug285935.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/ReaderTestBug285935.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/RelativePathTest.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/RelativePathTest.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/RelativePathTest.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/RelativePathTest.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/RemovingABundle.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/RemovingABundle.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/RemovingABundle.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/RemovingABundle.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/RemovingAllBundles.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/RemovingAllBundles.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/RemovingAllBundles.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/RemovingAllBundles.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/RenamingLauncherIni.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/RenamingLauncherIni.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/RenamingLauncherIni.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/RenamingLauncherIni.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/SharedConfigurationTest.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/SharedConfigurationTest.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/SharedConfigurationTest.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/SharedConfigurationTest.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2013 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/SimpleConfiguratorComingAndGoing.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/SimpleConfiguratorComingAndGoing.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/SimpleConfiguratorComingAndGoing.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/SimpleConfiguratorComingAndGoing.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/SimpleConfiguratorTest.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/SimpleConfiguratorTest.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/SimpleConfiguratorTest.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/SimpleConfiguratorTest.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/TestEclipseDataArea.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/TestEclipseDataArea.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/TestEclipseDataArea.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/TestEclipseDataArea.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: IBM Corporation - initial API and implementation ******************************************************************************/ diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/TestRunningInstance.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/TestRunningInstance.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/TestRunningInstance.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/TestRunningInstance.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/TestVMArg.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/TestVMArg.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/TestVMArg.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/TestVMArg.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/UtilsTest.java 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/UtilsTest.java --- 4.8-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/UtilsTest.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.frameworkadmin.test/src/org/eclipse/equinox/frameworkadmin/tests/UtilsTest.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2005, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/about.html 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/about.html --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/about.html 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/about.html 2018-08-29 14:43:08.000000000 +0000 @@ -2,27 +2,35 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + About -

About This Content

- -

June 2, 2006

-

License

+

About This Content

-

The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise -indicated below, the Content is provided to you under the terms and conditions of the -Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available -at http://www.eclipse.org/legal/epl-v10.html. -For purposes of the EPL, "Program" will mean the Content.

+

November 30, 2017

+

License

-

If you did not receive this Content directly from the Eclipse Foundation, the Content is -being redistributed by another party ("Redistributor") and different terms and conditions may -apply to your use of any object code in the Content. Check the Redistributor's license that was -provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise -indicated below, the terms and conditions of the EPL still apply to any source code in the Content -and such source code may be obtained at http://www.eclipse.org.

+

+ The Eclipse Foundation makes available all content in this plug-in + ("Content"). Unless otherwise indicated below, the Content + is provided to you under the terms and conditions of the Eclipse + Public License Version 2.0 ("EPL"). A copy of the EPL is + available at http://www.eclipse.org/legal/epl-2.0. + For purposes of the EPL, "Program" will mean the Content. +

+ +

+ If you did not receive this Content directly from the Eclipse + Foundation, the Content is being redistributed by another party + ("Redistributor") and different terms and conditions may + apply to your use of any object code in the Content. Check the + Redistributor's license that was provided with the Content. If no such + license exists, contact the Redistributor. Unless otherwise indicated + below, the terms and conditions of the EPL still apply to any source + code in the Content and such source code may be obtained at http://www.eclipse.org. +

\ No newline at end of file diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/build.properties 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/build.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/build.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/build.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2005, 2010 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/.classpath 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/.classpath --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/.classpath 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/.classpath 2018-08-29 14:43:08.000000000 +0000 @@ -1,6 +1,6 @@ - + diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/META-INF/MANIFEST.MF 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/META-INF/MANIFEST.MF --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/META-INF/MANIFEST.MF 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/META-INF/MANIFEST.MF 2018-08-29 14:43:08.000000000 +0000 @@ -2,20 +2,18 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-SymbolicName: org.eclipse.equinox.p2.artifact.optimizers;singleton:=true -Bundle-Version: 1.0.0.qualifier +Bundle-Version: 1.1.0.qualifier Bundle-Activator: org.eclipse.equinox.internal.p2.artifact.optimizers.Activator Bundle-Vendor: %providerName Bundle-Localization: plugin Export-Package: org.eclipse.equinox.internal.p2.artifact.optimizers;x-friends:="org.eclipse.equinox.p2.artifact.processors", org.eclipse.equinox.internal.p2.artifact.optimizers.jardelta;x-internal:=true, - org.eclipse.equinox.internal.p2.artifact.optimizers.jbdiff;x-internal:=true, org.eclipse.equinox.internal.p2.artifact.optimizers.pack200;x-internal:=true Require-Bundle: org.eclipse.equinox.common, org.eclipse.equinox.p2.artifact.repository -Bundle-RequiredExecutionEnvironment: J2SE-1.5 +Bundle-RequiredExecutionEnvironment: JavaSE-1.8 Bundle-ActivationPolicy: lazy -Import-Package: ie.wombat.jbdiff, - org.eclipse.equinox.app;version="1.0.0", +Import-Package: org.eclipse.equinox.app;version="1.0.0", org.eclipse.equinox.internal.p2.core.helpers, org.eclipse.equinox.internal.p2.metadata, org.eclipse.equinox.internal.p2.sar, diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/plugin.properties 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/plugin.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/plugin.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/plugin.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2007, 2009 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/plugin.xml 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/plugin.xml --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/plugin.xml 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/plugin.xml 2018-08-29 14:43:08.000000000 +0000 @@ -13,12 +13,6 @@ - - - - - - @@ -27,12 +21,4 @@ - - - - - - - - diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/pom.xml 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/pom.xml --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/pom.xml 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/pom.xml 2018-08-29 14:43:08.000000000 +0000 @@ -2,13 +2,13 @@ 4.0.0 - org.eclipse.equinox.p2-parent - org.eclipse - 4.8.0-SNAPSHOT - ../../org.eclipse.equinox.p2.releng/org.eclipse.equinox.p2-parent + org.eclipse.equinox.p2 + rt.equinox.p2 + 4.9.0-SNAPSHOT + ../.. org.eclipse.equinox org.eclipse.equinox.p2.artifact.optimizers - 1.0.0-SNAPSHOT + 1.1.0-SNAPSHOT eclipse-plugin diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/.settings/org.eclipse.jdt.core.prefs 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/.settings/org.eclipse.jdt.core.prefs --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/.settings/org.eclipse.jdt.core.prefs 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/.settings/org.eclipse.jdt.core.prefs 2018-08-29 14:43:08.000000000 +0000 @@ -10,18 +10,22 @@ org.eclipse.jdt.core.classpath.multipleO 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.8 org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.5 +org.eclipse.jdt.core.compiler.compliance=1.8 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 @@ -33,7 +37,7 @@ org.eclipse.jdt.core.compiler.problem.de org.eclipse.jdt.core.compiler.problem.discouragedReference=error org.eclipse.jdt.core.compiler.problem.emptyStatement=warning org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=ignore +org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=warning org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled org.eclipse.jdt.core.compiler.problem.fieldHiding=warning @@ -53,7 +57,7 @@ org.eclipse.jdt.core.compiler.problem.in 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 @@ -64,7 +68,7 @@ org.eclipse.jdt.core.compiler.problem.mi org.eclipse.jdt.core.compiler.problem.missingJavadocTagsMethodTypeParameters=disabled 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 @@ -72,20 +76,22 @@ org.eclipse.jdt.core.compiler.problem.no 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.redundantSuperinterface=ignore +org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning +org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled @@ -94,12 +100,16 @@ org.eclipse.jdt.core.compiler.problem.su 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=enabled 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 @@ -107,6 +117,7 @@ org.eclipse.jdt.core.compiler.problem.un 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 @@ -119,9 +130,11 @@ org.eclipse.jdt.core.compiler.problem.un 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.8 +org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647 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_annotation=0 org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 @@ -130,17 +143,25 @@ org.eclipse.jdt.core.formatter.alignment org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16 org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80 -org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0 +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=16 org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0 +org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_module_statements=16 org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 +org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80 org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16 org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0 +org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0 +org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16 org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 org.eclipse.jdt.core.formatter.blank_lines_after_package=1 org.eclipse.jdt.core.formatter.blank_lines_before_field=0 @@ -160,26 +181,36 @@ org.eclipse.jdt.core.formatter.brace_pos org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.comment.align_tags_descriptions_grouped=true +org.eclipse.jdt.core.formatter.comment.align_tags_names_descriptions=false org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false -org.eclipse.jdt.core.formatter.comment.format_block_comments=false +org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=true +org.eclipse.jdt.core.formatter.comment.format_block_comments=true org.eclipse.jdt.core.formatter.comment.format_header=false org.eclipse.jdt.core.formatter.comment.format_html=true -org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=false -org.eclipse.jdt.core.formatter.comment.format_line_comments=false +org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true +org.eclipse.jdt.core.formatter.comment.format_line_comments=true org.eclipse.jdt.core.formatter.comment.format_source_code=true org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false org.eclipse.jdt.core.formatter.comment.indent_root_tags=false org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert org.eclipse.jdt.core.formatter.comment.line_length=80 +org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true +org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true +org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false org.eclipse.jdt.core.formatter.compact_else_if=true org.eclipse.jdt.core.formatter.continuation_indentation=2 org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2 +org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off +org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false +org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=false org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true @@ -189,9 +220,18 @@ org.eclipse.jdt.core.formatter.indent_em org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true -org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false org.eclipse.jdt.core.formatter.indentation.size=4 +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert @@ -199,7 +239,7 @@ org.eclipse.jdt.core.formatter.insert_ne org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert -org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert @@ -210,7 +250,7 @@ org.eclipse.jdt.core.formatter.insert_sp org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert -org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=do not insert org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert @@ -239,10 +279,11 @@ org.eclipse.jdt.core.formatter.insert_sp org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert +org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert @@ -257,12 +298,14 @@ org.eclipse.jdt.core.formatter.insert_sp org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert @@ -271,7 +314,7 @@ org.eclipse.jdt.core.formatter.insert_sp org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert @@ -286,11 +329,12 @@ org.eclipse.jdt.core.formatter.insert_sp org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert -org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert -org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert @@ -313,6 +357,7 @@ org.eclipse.jdt.core.formatter.insert_sp org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert @@ -341,6 +386,7 @@ org.eclipse.jdt.core.formatter.insert_sp org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert @@ -350,6 +396,7 @@ org.eclipse.jdt.core.formatter.insert_sp org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert @@ -359,19 +406,37 @@ org.eclipse.jdt.core.formatter.insert_sp org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.join_lines_in_comments=true +org.eclipse.jdt.core.formatter.join_wrapped_lines=true org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false -org.eclipse.jdt.core.formatter.lineSplit=800 +org.eclipse.jdt.core.formatter.lineSplit=120 org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 -org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false +org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true org.eclipse.jdt.core.formatter.tabulation.char=tab org.eclipse.jdt.core.formatter.tabulation.size=4 +org.eclipse.jdt.core.formatter.use_on_off_tags=false org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false +org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true +org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true +org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true +org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true org.eclipse.jdt.core.incompatibleJDKLevel=ignore org.eclipse.jdt.core.incompleteClasspath=error +org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/.settings/org.eclipse.jdt.ui.prefs 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/.settings/org.eclipse.jdt.ui.prefs --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/.settings/org.eclipse.jdt.ui.prefs 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/.settings/org.eclipse.jdt.ui.prefs 2018-08-29 14:43:08.000000000 +0000 @@ -1,8 +1,7 @@ -#Mon Nov 05 16:53:31 EST 2007 eclipse.preferences.version=1 editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true -formatter_profile=_core -formatter_settings_version=11 +formatter_profile=org.eclipse.jdt.ui.default.eclipse_profile +formatter_settings_version=14 org.eclipse.jdt.ui.ignorelowercasenames=true org.eclipse.jdt.ui.importorder=; org.eclipse.jdt.ui.ondemandthreshold=3 @@ -15,22 +14,26 @@ sp_cleanup.add_missing_deprecated_annota sp_cleanup.add_missing_methods=false sp_cleanup.add_missing_nls_tags=false sp_cleanup.add_missing_override_annotations=true +sp_cleanup.add_missing_override_annotations_interface_methods=true sp_cleanup.add_serial_version_id=false sp_cleanup.always_use_blocks=true sp_cleanup.always_use_parentheses_in_expressions=false sp_cleanup.always_use_this_for_non_static_field_access=false sp_cleanup.always_use_this_for_non_static_method_access=false -sp_cleanup.convert_to_enhanced_for_loop=false +sp_cleanup.convert_functional_interfaces=true +sp_cleanup.convert_to_enhanced_for_loop=true sp_cleanup.correct_indentation=false sp_cleanup.format_source_code=true sp_cleanup.format_source_code_changes_only=false +sp_cleanup.insert_inferred_type_arguments=false sp_cleanup.make_local_variable_final=false sp_cleanup.make_parameters_final=false sp_cleanup.make_private_fields_final=true +sp_cleanup.make_type_abstract_if_missing_method=false sp_cleanup.make_variable_declarations_final=true sp_cleanup.never_use_blocks=false sp_cleanup.never_use_parentheses_in_expressions=true -sp_cleanup.on_save_use_additional_actions=false +sp_cleanup.on_save_use_additional_actions=true sp_cleanup.organize_imports=true sp_cleanup.qualify_static_field_accesses_with_declaring_class=false sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true @@ -38,12 +41,14 @@ sp_cleanup.qualify_static_member_accesse sp_cleanup.qualify_static_member_accesses_with_declaring_class=false sp_cleanup.qualify_static_method_accesses_with_declaring_class=false sp_cleanup.remove_private_constructors=true -sp_cleanup.remove_trailing_whitespaces=false +sp_cleanup.remove_redundant_modifiers=true +sp_cleanup.remove_redundant_type_arguments=true +sp_cleanup.remove_trailing_whitespaces=true sp_cleanup.remove_trailing_whitespaces_all=true sp_cleanup.remove_trailing_whitespaces_ignore_empty=false sp_cleanup.remove_unnecessary_casts=true -sp_cleanup.remove_unnecessary_nls_tags=false -sp_cleanup.remove_unused_imports=false +sp_cleanup.remove_unnecessary_nls_tags=true +sp_cleanup.remove_unused_imports=true sp_cleanup.remove_unused_local_variables=false sp_cleanup.remove_unused_private_fields=true sp_cleanup.remove_unused_private_members=false @@ -51,8 +56,10 @@ sp_cleanup.remove_unused_private_methods sp_cleanup.remove_unused_private_types=true sp_cleanup.sort_members=false sp_cleanup.sort_members_all=false +sp_cleanup.use_anonymous_class_creation=false sp_cleanup.use_blocks=false sp_cleanup.use_blocks_only_for_return_and_throw=false +sp_cleanup.use_lambda=true sp_cleanup.use_parentheses_in_expressions=false sp_cleanup.use_this_for_non_static_field_access=false sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/AbstractDeltaStep.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/AbstractDeltaStep.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/AbstractDeltaStep.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/AbstractDeltaStep.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* - * Copyright (c) 2007, 2010 compeople AG and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * Copyright (c) 2007, 2018 compeople AG and others. + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * compeople AG (Stefan Liebig) - initial API and implementation @@ -24,8 +27,9 @@ import org.eclipse.equinox.p2.repository /** * The AbstractDeltaDiffStep is an abstract processing step that * retrieves a local artifact repository containing the serialized/encoded - * artifact key. It assumes that the artifact key is stored within the data property - * of the processing step descriptor and that is encoded with the ArtifactKeySerializer. + * artifact key. It assumes that the artifact key is stored within the data + * property of the processing step descriptor and that is encoded with the + * ArtifactKeySerializer. */ public abstract class AbstractDeltaStep extends AbstractBufferingStep { @@ -41,7 +45,9 @@ public abstract class AbstractDeltaStep this.repository = repository; } - public void initialize(IProvisioningAgent agent, IProcessingStepDescriptor descriptor, IArtifactDescriptor context) { + @Override + public void initialize(IProvisioningAgent agent, IProcessingStepDescriptor descriptor, + IArtifactDescriptor context) { super.initialize(agent, descriptor, context); readArtifactKey(descriptor); } @@ -50,7 +56,10 @@ public abstract class AbstractDeltaStep try { key = ArtifactKey.parse(descriptor.getData()); } catch (IllegalArgumentException e) { - setStatus(new Status(IStatus.ERROR, Activator.ID, "Predecessor artifact key for delta could not be deserialized. Serialized key is " + descriptor.getData(), e)); + setStatus(new Status(IStatus.ERROR, Activator.ID, + "Predecessor artifact key for delta could not be deserialized. Serialized key is " + + descriptor.getData(), + e)); } } @@ -58,16 +67,11 @@ public abstract class AbstractDeltaStep if (repository instanceof IFileArtifactRepository) return ((IFileArtifactRepository) repository).getArtifactFile(descriptor); File result = null; - OutputStream resultStream = null; try { - try { - result = File.createTempFile(PREDECESSOR_ROOT, JAR_SUFFIX); - resultStream = new BufferedOutputStream(new FileOutputStream(result)); + result = File.createTempFile(PREDECESSOR_ROOT, JAR_SUFFIX); + try (OutputStream resultStream = new BufferedOutputStream(new FileOutputStream(result));) { setStatus(repository.getArtifact(descriptor, resultStream, getProgressMonitor())); return result; - } finally { - if (resultStream != null) - resultStream.close(); } } catch (IOException e) { } diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/Activator.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/Activator.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/Activator.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/Activator.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,10 +1,16 @@ /******************************************************************************* - * Copyright (c) 2007 IBM Corporation and others. All rights reserved. This + * Copyright (c) 2007, 2018 IBM Corporation and others. + * + * + * 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 http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: * IBM Corporation - initial API and implementation ******************************************************************************/ @@ -21,11 +27,13 @@ public class Activator implements Bundle return context; } - public void start(BundleContext context) throws Exception { - Activator.context = context; + @Override + public void start(BundleContext newcontext) throws Exception { + Activator.context = newcontext; } - public void stop(BundleContext context) throws Exception { + @Override + public void stop(BundleContext newcontext) throws Exception { } } diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jardelta/Application.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jardelta/Application.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jardelta/Application.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jardelta/Application.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,10 +1,15 @@ /******************************************************************************* - * Copyright (c) 2007, 2010 IBM Corporation and others. All rights reserved. This + * Copyright (c) 2007, 2018 IBM Corporation and others. + * + * 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 http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: * IBM Corporation - initial API and implementation ******************************************************************************/ package org.eclipse.equinox.internal.p2.artifact.optimizers.jardelta; @@ -18,7 +23,7 @@ import org.eclipse.equinox.p2.repository import org.eclipse.equinox.p2.repository.artifact.IArtifactRepositoryManager; /** - * The optimizer Application for JBDiff based optimizations. + * The optimizer Application for JBDiff based optimizations. */ public class Application extends OptimizerApplication { @@ -26,6 +31,7 @@ public class Application extends Optimiz private int width = 1; private int depth = 1; + @Override public Object start(IApplicationContext context) throws Exception { Map args = context.getArguments(); initializeFromArguments((String[]) args.get("application.args")); //$NON-NLS-1$ @@ -47,11 +53,11 @@ public class Application extends Optimiz return; for (int i = 0; i < args.length; i++) { // check for args without parameters (i.e., a flag arg) - // if (args[i].equals("-pack")) - // pack = true; + // if (args[i].equals("-pack")) + // pack = true; - // check for args with parameters. If we are at the last argument or - // if the next one has a '-' as the first character, then we can't have + // check for args with parameters. If we are at the last argument or + // if the next one has a '-' as the first character, then we can't have // an arg with a param so continue. if (i == args.length - 1 || args[i + 1].startsWith("-")) //$NON-NLS-1$ continue; diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jardelta/DeltaComputer.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jardelta/DeltaComputer.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jardelta/DeltaComputer.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jardelta/DeltaComputer.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* - * Copyright (c) 2007, 2010 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 + * Copyright (c) 2007, 2018 IBM Corporation and others. + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation @@ -15,9 +18,9 @@ import java.util.*; import java.util.zip.*; public class DeltaComputer { - private File target; - private File base; - private File destination; + private final File target; + private final File base; + private final File destination; private ZipFile baseJar; private ZipFile targetJar; private Set baseEntries; @@ -43,15 +46,14 @@ public class DeltaComputer { } private void writeDelta() { - ZipOutputStream result = null; try { - try { - result = new ZipOutputStream(new FileOutputStream(destination)); + try (ZipOutputStream result = new ZipOutputStream(new FileOutputStream(destination))) { + // if the delta includes the manifest, be sure to write it first if (manifestJar != null) writeEntry(result, manifestJar.getEntry("META-INF/MANIFEST.MF"), manifestJar, true); - // write out the removals. These are all the entries left in the baseEntries - // since they were not seen in the targetJar. Here just write out an empty + // write out the removals. These are all the entries left in the baseEntries + // since they were not seen in the targetJar. Here just write out an empty // entry with a name that signals the delta processor to delete. for (String baseEntry : baseEntries) writeEntry(result, new ZipEntry(baseEntry + ".delete"), null, false); @@ -61,9 +63,6 @@ public class DeltaComputer { // write out the changes. for (ZipEntry entry : changes) writeEntry(result, entry, targetJar, false); - } finally { - if (result != null) - result.close(); } } catch (IOException e) { e.printStackTrace(); @@ -71,7 +70,8 @@ public class DeltaComputer { } } - private void writeEntry(ZipOutputStream result, ZipEntry entry, ZipFile sourceJar, boolean manifest) throws IOException { + private void writeEntry(ZipOutputStream result, ZipEntry entry, ZipFile sourceJar, boolean manifest) + throws IOException { if (!manifest && entry.getName().equalsIgnoreCase("META-INF/MANIFEST.MF")) return; // add the entry @@ -79,11 +79,9 @@ public class DeltaComputer { try { // if there is a sourceJar copy over the content for the entry into the result if (sourceJar != null) { - InputStream contents = sourceJar.getInputStream(entry); - try { + + try (InputStream contents = sourceJar.getInputStream(entry)) { transferStreams(contents, result); - } finally { - contents.close(); } } } finally { @@ -92,9 +90,9 @@ public class DeltaComputer { } /** - * Transfers all available bytes from the given input stream to the given - * output stream. Does not close either stream. - * + * Transfers all available bytes from the given input stream to the given output + * stream. Does not close either stream. + * * @param source * @param destination * @throws IOException @@ -116,8 +114,8 @@ public class DeltaComputer { } private void computeDelta() throws IOException { - changes = new ArrayList(); - additions = new ArrayList(); + changes = new ArrayList<>(); + additions = new ArrayList<>(); // start out assuming that all the base entries are being removed baseEntries = getEntries(baseJar); for (Enumeration e = targetJar.entries(); e.hasMoreElements();) @@ -151,30 +149,33 @@ public class DeltaComputer { } } - /** - * Compare the given entry against the base JAR to see if/how it differs. Update the appropriate set - * based on the discovered difference. + /** + * Compare the given entry against the base JAR to see if/how it differs. Update + * the appropriate set based on the discovered difference. + * * @param entry the entry to test - * @throws IOException + * @throws IOException */ private void check(ZipEntry entry, ZipFile file) throws IOException { ZipEntry baseEntry = baseJar.getEntry(entry.getName()); // remember the manifest if we see it checkForManifest(entry, file); - // if there is no entry then this is an addition. remember the addition and return; + // if there is no entry then this is an addition. remember the addition and + // return; if (baseEntry == null) { additions.add(entry); return; } - // now we know each JAR has an entry for the name, compare and see how/if they differ + // now we know each JAR has an entry for the name, compare and see how/if they + // differ boolean changed = !equals(entry, baseEntry); if (changed) changes.add(entry); baseEntries.remove(baseEntry.getName()); } - // compare the two entries. We already know that they have the same name. + // compare the two entries. We already know that they have the same name. private boolean equals(ZipEntry entry, ZipEntry baseEntry) { if (entry.getSize() != baseEntry.getSize()) return false; @@ -189,7 +190,7 @@ public class DeltaComputer { } private Set getEntries(ZipFile jar) { - HashSet result = new HashSet(jar.size()); + HashSet result = new HashSet<>(jar.size()); for (Enumeration e = jar.entries(); e.hasMoreElements();) { ZipEntry entry = e.nextElement(); checkForManifest(entry, jar); @@ -199,8 +200,9 @@ public class DeltaComputer { } /** - * Check to see if the given entry is the manifest. If so, remember it for use when writing - * the resultant JAR. + * Check to see if the given entry is the manifest. If so, remember it for use + * when writing the resultant JAR. + * * @param entry * @param jar */ diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jardelta/JarDeltaOptimizerStep.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jardelta/JarDeltaOptimizerStep.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jardelta/JarDeltaOptimizerStep.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jardelta/JarDeltaOptimizerStep.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* - * Copyright (c) 2007, 2010 compeople AG and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * Copyright (c) 2007, 2018 compeople AG and others. + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * compeople AG (Stefan Liebig) - initial API and implementation @@ -21,7 +24,7 @@ import org.eclipse.equinox.p2.repository import org.eclipse.equinox.p2.repository.artifact.spi.ArtifactDescriptor; /** - * The JAR delta expects an input containing normal ".jar" data. + * The JAR delta expects an input containing normal ".jar" data. */ public class JarDeltaOptimizerStep extends AbstractDeltaStep { @@ -31,17 +34,20 @@ public class JarDeltaOptimizerStep exten super(repository); } + @Override protected OutputStream createIncomingStream() throws IOException { incoming = File.createTempFile(INCOMING_ROOT, JAR_SUFFIX); return new BufferedOutputStream(new FileOutputStream(incoming)); } + @Override protected void cleanupTempFiles() { super.cleanupTempFiles(); if (incoming != null) incoming.delete(); } + @Override protected void performProcessing() throws IOException { File resultFile = null; try { diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jardelta/Optimizer.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jardelta/Optimizer.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jardelta/Optimizer.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jardelta/Optimizer.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* - * Copyright (c) 2007, 2010 compeople AG and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * Copyright (c) 2007, 2018 compeople AG and others. + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * compeople AG (Stefan Liebig) - initial API and implementation @@ -29,9 +32,9 @@ import org.eclipse.equinox.p2.repository public class Optimizer { - private IArtifactRepository repository; - private int width; - private int depth; + private final IArtifactRepository repository; + private final int width; + private final int depth; private static final String JAR_DELTA_FORMAT = "jarDelta"; //$NON-NLS-1$ private static final String JAR_DELTA_PATCH_STEP = "org.eclipse.equinox.p2.processing.JarDeltaPatchStep"; //$NON-NLS-1$ @@ -40,16 +43,18 @@ public class Optimizer { private static final Comparator ARTIFACT_KEY_VERSION_COMPARATOR = new ArtifactKeyVersionComparator(); /** - * This optimizer performs delta generation based on (currently) jbdiff. - * The optimization can be controlled with the ´width´ and the ´depth´ parameter. - * ´width´ defines for how many ´related´ artifact keys a delta should be generated, - * starting from the most up-to-date. - * ´depth´ defines to how many predecessor a delta should be generated. - * - * With AK(c-v) : AK - artifact key, c - artifact id, v - artifact version - * the ´repository content´ can be viewed a two dimensional array, where the - * artifact keys for the same component are in order of their version: - *

+	 * This optimizer performs delta generation based on (currently) jbdiff. The
+	 * optimization can be controlled with the ´width´ and the ´depth´ parameter.
+	 * ´width´ defines for how many ´related´ artifact keys a delta should be
+	 * generated, starting from the most up-to-date. ´depth´ defines to how many
+	 * predecessor a delta should be generated.
+	 *
+	 * With AK(c-v) : AK - artifact key, c - artifact id, v - artifact version the
+	 * ´repository content´ can be viewed a two dimensional array, where the
+	 * artifact keys for the same component are in order of their version:
+	 *
+	 * 
+	 * 
 	 *     w=1       w=2
 	 *      |        |
 	 *      | +------.------------+ d=2
@@ -60,10 +65,12 @@ public class Optimizer {
 	 * [ AK(y,2.0) AK(y,1.9) ]
 	 * [ AK(z,2.0) AK(z,1.5) AK(z,1.3) AK(z,1.0) ]
 	 * ]
-	 * 
- * E.g: with a ´width´ of one and a ´depth´ of two the optimizer would - * create two deltas for component ´x´ from 1.5 to 2.0 and from 1.1 to 2.0. - * + *
+ *
+ * + * E.g: with a ´width´ of one and a ´depth´ of two the optimizer would create + * two deltas for component ´x´ from 1.5 to 2.0 and from 1.1 to 2.0. + * * @param repository * @param width * @param depth @@ -78,14 +85,14 @@ public class Optimizer { System.out.println("Starting delta (jardelta) optimizations (width=" + width + ", depth=" + depth + ")"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ IQueryResult queryResult = repository.query(ArtifactKeyQuery.ALL_KEYS, null); IArtifactKey[][] keys = getSortedRelatedArtifactKeys(queryResult); - for (int i = 0; i < keys.length; i++) { - if (keys[i].length < 2) + for (IArtifactKey[] key2 : keys) { + if (key2.length < 2) // Nothing to diff here! continue; - int minWidth = Math.min(width, keys[i].length); + int minWidth = Math.min(width, key2.length); for (int j = 0; j < minWidth; j++) { - IArtifactKey key = keys[i][j]; - optimize(keys[i], key); + IArtifactKey key = key2[j]; + optimize(key2, key); } } System.out.println("Done."); //$NON-NLS-1$ @@ -95,8 +102,7 @@ public class Optimizer { private void optimize(IArtifactKey[] keys, IArtifactKey key) { IArtifactDescriptor[] descriptors = repository.getArtifactDescriptors(key); IArtifactDescriptor canonical = null; - for (int k = 0; k < descriptors.length; k++) { - IArtifactDescriptor descriptor = descriptors[k]; + for (IArtifactDescriptor descriptor : descriptors) { boolean optimized = false; if (isCanonical(descriptor)) canonical = descriptor; @@ -112,30 +118,34 @@ public class Optimizer { } /** - * This method retrieves a list of list of IArtifactKeys. The artifact keys in the - * list of artifact keys are all ´strongly related´ to each other such that are - * equal but not considering the versions. This list is sorted such that the - * newer versions are first in the list.

- * With AK(c-v) : AK - artifact key, c - artifact id, v - artifact version - * the result is than, e.g. - *


+	 * This method retrieves a list of list of IArtifactKeys. The artifact keys in
+	 * the list of artifact keys are all ´strongly related´ to each other such that
+	 * are equal but not considering the versions. This list is sorted such that the
+	 * newer versions are first in the list.
+	 * 

+ * With AK(c-v) : AK - artifact key, c - artifact id, v - artifact version the + * result is than, e.g. + * + *

+	 * 
 	 * [
 	 * [ AK(x,2.0) AK(x,1.5) AK(x,1.1) ]
 	 * [ AK(y,2.0) AK(y,1.9) ]
 	 * [ AK(z,2.0) AK(z,1.5) AK(z,1.3) AK(z,1.0) ]
 	 * ]
-	 * 
+ *
+ *
+ * * @param artifactKeys * @return the sorted artifact keys */ private IArtifactKey[][] getSortedRelatedArtifactKeys(IQueryResult artifactKeys) { - Map> map = new HashMap>(); - for (Iterator iter = artifactKeys.iterator(); iter.hasNext();) { - IArtifactKey nxt = iter.next(); + Map> map = new HashMap<>(); + for (IArtifactKey nxt : artifactKeys) { IArtifactKey freeKey = getVersionlessKey(nxt); List values = map.get(freeKey); if (values == null) { - values = new ArrayList(); + values = new ArrayList<>(); map.put(freeKey, values); } values.add(nxt); @@ -148,12 +158,12 @@ public class Optimizer { lists[i++] = relatedArtifactKeys; } int candidates = 0; - for (int ii = 0; ii < lists.length; ii++) { - for (int jj = 0; jj < lists[ii].length; jj++) { - System.out.println(lists[ii][jj] + ", "); //$NON-NLS-1$ + for (IArtifactKey[] list : lists) { + for (IArtifactKey element : list) { + System.out.println(element + ", "); //$NON-NLS-1$ } System.out.println(""); //$NON-NLS-1$ - if (lists[ii].length > 1) + if (list.length > 1) candidates++; } System.out.println("Candidates found: " + candidates); //$NON-NLS-1$ @@ -163,73 +173,71 @@ public class Optimizer { private void optimize(IArtifactDescriptor canonical, IArtifactKey[] relatedArtifactKeys) { System.out.println("Optimizing " + canonical); //$NON-NLS-1$ - IArtifactDescriptor[] descriptors = getSortedCompletePredecessors(canonical.getArtifactKey(), relatedArtifactKeys); + IArtifactDescriptor[] descriptors = getSortedCompletePredecessors(canonical.getArtifactKey(), + relatedArtifactKeys); int minDepth = Math.min(depth, descriptors.length); for (int i = 0; i < minDepth; i++) { System.out.println("\t with jar delta against " + descriptors[i].getArtifactKey()); //$NON-NLS-1$ String predecessorData = descriptors[i].getArtifactKey().toExternalForm(); ArtifactDescriptor newDescriptor = new ArtifactDescriptor(canonical); - IProcessingStepDescriptor patchStep = new ProcessingStepDescriptor(JAR_DELTA_PATCH_STEP, predecessorData, true); - IProcessingStepDescriptor[] steps = new IProcessingStepDescriptor[] {patchStep}; + IProcessingStepDescriptor patchStep = new ProcessingStepDescriptor(JAR_DELTA_PATCH_STEP, predecessorData, + true); + IProcessingStepDescriptor[] steps = new IProcessingStepDescriptor[] { patchStep }; newDescriptor.setProcessingSteps(steps); newDescriptor.setProperty(IArtifactDescriptor.FORMAT, JAR_DELTA_FORMAT); - OutputStream repositoryStream = null; - try { - repositoryStream = repository.getOutputStream(newDescriptor); - + try (OutputStream repositoryStream = repository.getOutputStream(newDescriptor)) { // Add in all the processing steps needed to optimize (e.g., pack200, ...) ProcessingStep optimizerStep = new JarDeltaOptimizerStep(repository); optimizerStep.initialize(repository.getProvisioningAgent(), patchStep, newDescriptor); ProcessingStepHandler handler = new ProcessingStepHandler(); - OutputStream destination = handler.link(new ProcessingStep[] {optimizerStep}, repositoryStream, null); + OutputStream destination = handler.link(new ProcessingStep[] { optimizerStep }, repositoryStream, null); - // Do the actual work by asking the repo to get the artifact and put it in the destination. + // Do the actual work by asking the repo to get the artifact and put it in the + // destination. IStatus status = repository.getArtifact(canonical, destination, new NullProgressMonitor()); if (!status.isOK()) { System.out.println("Getting the artifact is not ok."); //$NON-NLS-1$ System.out.println(status); } + repositoryStream.close(); + status = ProcessingStepHandler.checkStatus(repositoryStream); + if (!status.isOK()) { + System.out.println("Skipping optimization of: " + descriptors[i].getArtifactKey()); //$NON-NLS-1$ + System.out.println(status.toString()); + } } catch (ProvisionException e) { System.out.println("Skipping optimization of: " + descriptors[i].getArtifactKey()); //$NON-NLS-1$ System.out.println(e.getMessage()); e.printStackTrace(); - } finally { - if (repositoryStream != null) - try { - repositoryStream.close(); - IStatus status = ProcessingStepHandler.checkStatus(repositoryStream); - if (!status.isOK()) { - System.out.println("Skipping optimization of: " + descriptors[i].getArtifactKey()); //$NON-NLS-1$ - System.out.println(status.toString()); - } - } catch (IOException e) { - System.out.println("Skipping optimization of: " + descriptors[i].getArtifactKey()); //$NON-NLS-1$ - System.out.println(e.getMessage()); - e.printStackTrace(); - } + } catch (IOException e) { + System.out.println("Skipping optimization of: " + descriptors[i].getArtifactKey()); //$NON-NLS-1$ + System.out.println(e.getMessage()); + e.printStackTrace(); } } } - private IArtifactDescriptor[] getSortedCompletePredecessors(IArtifactKey artifactKey, IArtifactKey[] relatedArtifactKeys) { + private IArtifactDescriptor[] getSortedCompletePredecessors(IArtifactKey artifactKey, + IArtifactKey[] relatedArtifactKeys) { // get all artifact keys - List completeDescriptors = new ArrayList(relatedArtifactKeys.length); - for (int i = 0; i < relatedArtifactKeys.length; i++) { + List completeDescriptors = new ArrayList<>(relatedArtifactKeys.length); + for (IArtifactKey relatedArtifactKey : relatedArtifactKeys) { // if we find ´our self´ skip - if (relatedArtifactKeys[i].equals(artifactKey)) + if (relatedArtifactKey.equals(artifactKey)) continue; - // look for a complete artifact descriptor of the current key - IArtifactDescriptor[] descriptors = repository.getArtifactDescriptors(relatedArtifactKeys[i]); - for (int j = 0; j < descriptors.length; j++) { - if (isCanonical(descriptors[j])) { - completeDescriptors.add(descriptors[j]); + // look for a complete artifact descriptor of the current key + IArtifactDescriptor[] descriptors = repository.getArtifactDescriptors(relatedArtifactKey); + for (IArtifactDescriptor descriptor : descriptors) { + if (isCanonical(descriptor)) { + completeDescriptors.add(descriptor); break; } } } - IArtifactDescriptor[] completeSortedDescriptors = completeDescriptors.toArray(new IArtifactDescriptor[completeDescriptors.size()]); + IArtifactDescriptor[] completeSortedDescriptors = completeDescriptors + .toArray(new IArtifactDescriptor[completeDescriptors.size()]); // Sort, so to allow a depth lookup! Arrays.sort(completeSortedDescriptors, ARTIFACT_DESCRIPTOR_VERSION_COMPARATOR); return completeSortedDescriptors; @@ -242,17 +250,20 @@ public class Optimizer { } private boolean isCanonical(IArtifactDescriptor descriptor) { - // TODO length != 0 is not necessarily an indicator for not being canonical! + // TODO length != 0 is not necessarily an indicator for not being canonical! return descriptor.getProcessingSteps().length == 0; } static final class ArtifactDescriptorVersionComparator implements Comparator { + @Override public int compare(IArtifactDescriptor artifactDescriptor0, IArtifactDescriptor artifactDescriptor1) { - return -1 * artifactDescriptor0.getArtifactKey().getVersion().compareTo(artifactDescriptor1.getArtifactKey().getVersion()); + return -1 * artifactDescriptor0.getArtifactKey().getVersion() + .compareTo(artifactDescriptor1.getArtifactKey().getVersion()); } } static final class ArtifactKeyVersionComparator implements Comparator { + @Override public int compare(IArtifactKey artifactKey0, IArtifactKey artifactKey1) { return -1 * artifactKey0.getVersion().compareTo(artifactKey1.getVersion()); } diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jbdiff/Application.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jbdiff/Application.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jbdiff/Application.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jbdiff/Application.java 1970-01-01 00:00:00.000000000 +0000 @@ -1,75 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2007, 2010 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 http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ******************************************************************************/ -package org.eclipse.equinox.internal.p2.artifact.optimizers.jbdiff; - -import java.net.URI; -import java.util.Map; -import org.eclipse.equinox.app.IApplicationContext; -import org.eclipse.equinox.internal.p2.artifact.optimizers.OptimizerApplication; -import org.eclipse.equinox.p2.core.ProvisionException; -import org.eclipse.equinox.p2.repository.artifact.IArtifactRepository; -import org.eclipse.equinox.p2.repository.artifact.IArtifactRepositoryManager; - -/** - * The optimizer Application for JBDiff based optimizations. - */ -public class Application extends OptimizerApplication { - - private URI artifactRepositoryLocation; - private int width = 1; - private int depth = 1; - private boolean nosar; - - public Object start(IApplicationContext context) throws Exception { - Map args = context.getArguments(); - initializeFromArguments((String[]) args.get("application.args")); //$NON-NLS-1$ - IArtifactRepository repository = setupRepository(artifactRepositoryLocation); - new Optimizer(repository, width, depth, nosar).run(); - return null; - } - - private IArtifactRepository setupRepository(URI location) throws ProvisionException { - IArtifactRepositoryManager manager = getArtifactRepositoryManager(); - if (manager == null) - // TODO log here - return null; - return manager.loadRepository(location, null); - } - - public void initializeFromArguments(String[] args) throws Exception { - if (args == null) - return; - for (int i = 0; i < args.length; i++) { - // check for args without parameters (i.e., a flag arg) - // if (args[i].equals("-pack")) - // pack = true; - - if (args[i].equals("-nosar")) //$NON-NLS-1$ - nosar = true; - - // check for args with parameters. If we are at the last argument or - // if the next one has a '-' as the first character, then we can't have - // an arg with a param so continue. - if (i == args.length - 1 || args[i + 1].startsWith("-")) //$NON-NLS-1$ - continue; - String arg = args[++i]; - - if (args[i - 1].equalsIgnoreCase("-artifactRepository") || args[i - 1].equalsIgnoreCase("-ar")) //$NON-NLS-1$ //$NON-NLS-2$ - artifactRepositoryLocation = new URI(arg); - - if (args[i - 1].equalsIgnoreCase("-depth")) //$NON-NLS-1$ - depth = Integer.parseInt(arg); - - if (args[i - 1].equalsIgnoreCase("-width")) //$NON-NLS-1$ - width = Integer.parseInt(arg); - - } - } -} diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jbdiff/JBDiffStep.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jbdiff/JBDiffStep.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jbdiff/JBDiffStep.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jbdiff/JBDiffStep.java 1970-01-01 00:00:00.000000000 +0000 @@ -1,61 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2007, 2010 compeople AG 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 - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * compeople AG (Stefan Liebig) - initial API and implementation - * IBM Corporation - ongoing development - *******************************************************************************/ -package org.eclipse.equinox.internal.p2.artifact.optimizers.jbdiff; - -import ie.wombat.jbdiff.JBDiff; -import java.io.*; -import org.eclipse.equinox.internal.p2.artifact.optimizers.AbstractDeltaStep; -import org.eclipse.equinox.internal.p2.core.helpers.FileUtils; -import org.eclipse.equinox.internal.p2.sar.DirectByteArrayOutputStream; -import org.eclipse.equinox.p2.repository.artifact.IArtifactRepository; -import org.eclipse.equinox.p2.repository.artifact.spi.ArtifactDescriptor; - -/** - * - */ -public class JBDiffStep extends AbstractDeltaStep { - - public JBDiffStep() { - super(); - } - - // TODO We need a different way of injecting the base artifacts. This approach forces - // the target and base to live in the same repo. Typical but not really required. - protected JBDiffStep(IArtifactRepository repository) { - super(repository); - } - - protected OutputStream createIncomingStream() throws IOException { - return new DirectByteArrayOutputStream(); - } - - protected void performProcessing() throws IOException { - DirectByteArrayOutputStream predecessor = fetchPredecessorBytes(new ArtifactDescriptor(key)); - DirectByteArrayOutputStream current = (DirectByteArrayOutputStream) incomingStream; - byte[] diff = JBDiff.bsdiff(predecessor.getBuffer(), predecessor.getBufferLength(), current.getBuffer(), current.getBufferLength()); - // free up the memory as soon as possible. - predecessor = null; - current = null; - incomingStream = null; - - // copy the result of the optimization to the destination. - FileUtils.copyStream(new ByteArrayInputStream(diff), true, getDestination(), false); - } - - private DirectByteArrayOutputStream fetchPredecessorBytes(ArtifactDescriptor artifactDescriptor) throws IOException { - DirectByteArrayOutputStream result = new DirectByteArrayOutputStream(); - setStatus(repository.getArtifact(artifactDescriptor, result, getProgressMonitor())); - if (!getStatus().isOK()) - throw (IOException) new IOException(getStatus().getMessage()).initCause(getStatus().getException()); - return result; - } -} diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jbdiff/JBDiffZipStep.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jbdiff/JBDiffZipStep.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jbdiff/JBDiffZipStep.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jbdiff/JBDiffZipStep.java 1970-01-01 00:00:00.000000000 +0000 @@ -1,62 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2007, 2010 compeople AG 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 - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * compeople AG (Stefan Liebig) - initial API and implementation - * IBM Corporation - ongoing development - *******************************************************************************/ -package org.eclipse.equinox.internal.p2.artifact.optimizers.jbdiff; - -import ie.wombat.jbdiff.JBDiff; -import java.io.ByteArrayInputStream; -import java.io.IOException; -import org.eclipse.equinox.internal.p2.core.helpers.FileUtils; -import org.eclipse.equinox.internal.p2.sar.DirectByteArrayOutputStream; -import org.eclipse.equinox.internal.p2.sar.SarUtil; -import org.eclipse.equinox.p2.repository.artifact.IArtifactRepository; -import org.eclipse.equinox.p2.repository.artifact.spi.ArtifactDescriptor; - -public class JBDiffZipStep extends JBDiffStep { - - public JBDiffZipStep() { - super(); - } - - // TODO We need a different way of injecting the base artifacts. This approach forces - // the target and base to live in the same repo. Typical but not really required. - protected JBDiffZipStep(IArtifactRepository repository) { - super(repository); - } - - protected void performProcessing() throws IOException { - DirectByteArrayOutputStream sarredCurrent = new DirectByteArrayOutputStream(); - SarUtil.zipToSar(((DirectByteArrayOutputStream) incomingStream).getInputStream(), sarredCurrent); - incomingStream = null; - DirectByteArrayOutputStream predecessor = fetchPredecessorBytes(new ArtifactDescriptor(key)); - byte[] diff = JBDiff.bsdiff(predecessor.getBuffer(), predecessor.getBufferLength(), sarredCurrent.getBuffer(), sarredCurrent.getBufferLength()); - // free up the memory as soon as possible. - predecessor = null; - incomingStream = null; - sarredCurrent = null; - - // copy the result of the optimization to the destination. - FileUtils.copyStream(new ByteArrayInputStream(diff), true, getDestination(), false); - } - - private DirectByteArrayOutputStream fetchPredecessorBytes(ArtifactDescriptor artifactDescriptor) throws IOException { - DirectByteArrayOutputStream zippedPredecessor = new DirectByteArrayOutputStream(); - - setStatus(repository.getArtifact(artifactDescriptor, zippedPredecessor, getProgressMonitor())); - if (!getStatus().isOK()) - throw (IOException) new IOException(getStatus().getMessage()).initCause(getStatus().getException()); - - DirectByteArrayOutputStream result = new DirectByteArrayOutputStream(); - SarUtil.zipToSar(zippedPredecessor.getInputStream(), result); - return result; - } - -} diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jbdiff/Optimizer.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jbdiff/Optimizer.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jbdiff/Optimizer.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/jbdiff/Optimizer.java 1970-01-01 00:00:00.000000000 +0000 @@ -1,280 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2007, 2010 compeople AG 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 - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * compeople AG (Stefan Liebig) - initial API and implementation - * IBM Corporation - ongoing development - *******************************************************************************/ -package org.eclipse.equinox.internal.p2.artifact.optimizers.jbdiff; - -import java.io.IOException; -import java.io.OutputStream; -import java.util.*; -import org.eclipse.core.runtime.IStatus; -import org.eclipse.core.runtime.NullProgressMonitor; -import org.eclipse.equinox.internal.p2.artifact.optimizers.VersionlessArtifactKey; -import org.eclipse.equinox.internal.provisional.p2.artifact.repository.processing.ProcessingStep; -import org.eclipse.equinox.internal.provisional.p2.artifact.repository.processing.ProcessingStepHandler; -import org.eclipse.equinox.p2.core.ProvisionException; -import org.eclipse.equinox.p2.metadata.IArtifactKey; -import org.eclipse.equinox.p2.query.IQueryResult; -import org.eclipse.equinox.p2.repository.artifact.*; -import org.eclipse.equinox.p2.repository.artifact.spi.ArtifactDescriptor; -import org.eclipse.equinox.p2.repository.artifact.spi.ProcessingStepDescriptor; - -public class Optimizer { - - private IArtifactRepository repository; - private int width; - private int depth; - private boolean nosar; - - private static final String JBPATCH_STEP_ID = "org.eclipse.equinox.p2.repository.JBPatchStep"; //$NON-NLS-1$ - private static final String JBPATCH_STEP_ZIP_ID = "org.eclipse.equinox.p2.repository.JBPatchZipStep"; //$NON-NLS-1$ - - private static final Comparator ARTIFACT_DESCRIPTOR_VERSION_COMPARATOR = new ArtifactDescriptorVersionComparator(); - private static final Comparator ARTIFACT_KEY_VERSION_COMPARATOR = new ArtifactKeyVersionComparator(); - - /** - * This optimizer performs delta generation based on (currently) jbdiff. - * The optimization can be controlled with the ´width´ and the ´depth´ parameter. - * ´width´ defines for how many ´related´ artifact keys a delta should be generated, - * starting from the most up-to-date. - * ´depth´ defines to how many predecessor a delta should be generated. - * - * With AK(c-v) : AK - artifact key, c - artifact id, v - artifact version - * the ´repository content´ can be viewed a two dimensional array, where the - * artifact keys for the same component are in order of their version: - *

-	 *     w=1       w=2
-	 *      |        |
-	 *      | +------.------------+ d=2
-	 *      | | +----.---+ d=1    |
-	 *      | | |    |   |        v
-	 * [    v | |    v   v        v
-	 * [ AK(x,2.0) AK(x,1.5) AK(x,1.1) ]
-	 * [ AK(y,2.0) AK(y,1.9) ]
-	 * [ AK(z,2.0) AK(z,1.5) AK(z,1.3) AK(z,1.0) ]
-	 * ]
-	 * 
- * E.g: with a ´width´ of one and a ´depth´ of two the optimizer would - * create two deltas for component ´x´ from 1.5 to 2.0 and from 1.1 to 2.0. - * - * @param repository - * @param width - * @param depth - * @param nosar - */ - public Optimizer(IArtifactRepository repository, int width, int depth, boolean nosar) { - this.repository = repository; - this.width = width; - this.depth = depth; - this.nosar = nosar; - } - - public void run() { - System.out.println("Starting delta (jbdiff) optimizations (width=" + width + ", depth=" + depth + ", nosar=" + nosar + ")"); - IQueryResult queryResult = repository.query(ArtifactKeyQuery.ALL_KEYS, null); - IArtifactKey[][] keys = getSortedRelatedArtifactKeys(queryResult); - for (int i = 0; i < keys.length; i++) { - if (keys[i].length < 2) - // Nothing to diff here! - continue; - int minWidth = Math.min(width, keys[i].length); - for (int j = 0; j < minWidth; j++) { - IArtifactKey key = keys[i][j]; - boolean isArchive = key.getClassifier().equals("plugin"); //$NON-NLS-1$ - String proposedStrategy = isArchive && !nosar ? JBPATCH_STEP_ZIP_ID : JBPATCH_STEP_ID; - optimize(keys[i], key, proposedStrategy); - } - } - System.out.println("Done."); - - } - - private void optimize(IArtifactKey[] keys, IArtifactKey key, String proposedStrategy) throws OutOfMemoryError { - boolean retry; - do { - retry = false; - try { - IArtifactDescriptor[] descriptors = repository.getArtifactDescriptors(key); - IArtifactDescriptor complete = null; - for (int k = 0; k < descriptors.length; k++) { - IArtifactDescriptor descriptor = descriptors[k]; - if (isCanonical(descriptor)) - complete = descriptor; - else if (isOptimized(descriptor, proposedStrategy)) { - proposedStrategy = null; - break; - } - } - if (proposedStrategy != null && complete != null) - optimize(complete, proposedStrategy, keys); - } catch (OutOfMemoryError e) { - if (JBPATCH_STEP_ID.equals(proposedStrategy)) - throw e; - proposedStrategy = JBPATCH_STEP_ID; - System.out.println("Retry with " + proposedStrategy); - retry = true; - } - } while (retry); - } - - /** - * This method retrieves a list of list of IArtifactKeys. The artifact keys in the - * list of artifact keys are all ´strongly related´ to each other such that are - * equal but not considering the versions. This list is sorted such that the - * newer versions are first in the list.

- * With AK(c-v) : AK - artifact key, c - artifact id, v - artifact version - * the result is than, e.g. - *


-	 * [
-	 * [ AK(x,2.0) AK(x,1.5) AK(x,1.1) ]
-	 * [ AK(y,2.0) AK(y,1.9) ]
-	 * [ AK(z,2.0) AK(z,1.5) AK(z,1.3) AK(z,1.0) ]
-	 * ]
-	 * 
- * @param artifactKeys - * @return the sorted artifact keys - */ - private IArtifactKey[][] getSortedRelatedArtifactKeys(IQueryResult artifactKeys) { - Map> map = new HashMap>(); - for (Iterator iter = artifactKeys.iterator(); iter.hasNext();) { - IArtifactKey nxt = iter.next(); - IArtifactKey freeKey = new VersionlessArtifactKey(nxt); - List values = map.get(freeKey); - if (values == null) { - values = new ArrayList(); - map.put(freeKey, values); - } - values.add(nxt); - } - IArtifactKey[][] lists = new IArtifactKey[map.size()][]; - int i = 0; - for (List artifactKeyList : map.values()) { - IArtifactKey[] relatedArtifactKeys = artifactKeyList.toArray(new IArtifactKey[artifactKeyList.size()]); - Arrays.sort(relatedArtifactKeys, ARTIFACT_KEY_VERSION_COMPARATOR); - lists[i++] = relatedArtifactKeys; - } - int candidates = 0; - for (int ii = 0; ii < lists.length; ii++) { - for (int jj = 0; jj < lists[ii].length; jj++) { - System.out.println(lists[ii][jj] + ", "); - } - System.out.println(""); - if (lists[ii].length > 1) - candidates++; - } - System.out.println("Candidates found: " + candidates); - return lists; - } - - private void optimize(IArtifactDescriptor complete, String strategy, IArtifactKey[] relatedArtifactKeys) { - System.out.println("Optimizing " + complete); - - IArtifactDescriptor[] descriptors = getSortedCompletePredecessors(complete.getArtifactKey(), relatedArtifactKeys); - - int minDepth = Math.min(depth, descriptors.length); - for (int i = 0; i < minDepth; i++) { - - System.out.println("\t with " + strategy + " against " + descriptors[i].getArtifactKey()); - String predecessorData = descriptors[i].getArtifactKey().toExternalForm(); - ArtifactDescriptor newDescriptor = new ArtifactDescriptor(complete); - IProcessingStepDescriptor patchStep = new ProcessingStepDescriptor(strategy, predecessorData, true); - IProcessingStepDescriptor[] steps = new IProcessingStepDescriptor[] {patchStep}; - newDescriptor.setProcessingSteps(steps); - newDescriptor.setProperty(IArtifactDescriptor.FORMAT, strategy); - OutputStream repositoryStream = null; - try { - repositoryStream = repository.getOutputStream(newDescriptor); - - // Add in all the processing steps needed to optimize (e.g., pack200, ...) - ProcessingStep diffStep = getProcessingStep(strategy); - diffStep.initialize(repository.getProvisioningAgent(), patchStep, newDescriptor); - ProcessingStepHandler handler = new ProcessingStepHandler(); - OutputStream destination = handler.link(new ProcessingStep[] {diffStep}, repositoryStream, null); - - // Do the actual work by asking the repo to get the artifact and put it in the destination. - IStatus status = repository.getArtifact(complete, destination, new NullProgressMonitor()); - if (!status.isOK()) { - System.out.println("Getting the artifact is not ok."); //$NON-NLS-1$ - System.out.println(status); - } - } catch (ProvisionException e) { - System.out.println("Skipping optimization of: " + descriptors[i].getArtifactKey()); //$NON-NLS-1$ - System.out.println(e.getMessage()); - e.printStackTrace(); - } finally { - if (repositoryStream != null) - try { - repositoryStream.close(); - IStatus status = ProcessingStepHandler.checkStatus(repositoryStream); - if (!status.isOK()) { - System.out.println("Skipping optimization of: " + descriptors[i].getArtifactKey()); //$NON-NLS-1$ - System.out.println(status.toString()); - } - } catch (IOException e) { - System.out.println("Skipping optimization of: " + descriptors[i].getArtifactKey()); //$NON-NLS-1$ - System.out.println(e.getMessage()); - e.printStackTrace(); - } - } - } - } - - private ProcessingStep getProcessingStep(String strategy) { - if (strategy.equals(JBPATCH_STEP_ID)) - return new JBDiffStep(repository); - return new JBDiffZipStep(repository); - } - - private IArtifactDescriptor[] getSortedCompletePredecessors(IArtifactKey artifactKey, IArtifactKey[] relatedArtifactKeys) { - // get all artifact keys - List completeDescriptors = new ArrayList(relatedArtifactKeys.length); - for (int i = 0; i < relatedArtifactKeys.length; i++) { - // if we find ´our self´ skip - if (relatedArtifactKeys[i].equals(artifactKey)) - continue; - // look for a complete artifact descriptor of the current key - IArtifactDescriptor[] descriptors = repository.getArtifactDescriptors(relatedArtifactKeys[i]); - for (int j = 0; j < descriptors.length; j++) { - if (isCanonical(descriptors[j])) { - completeDescriptors.add(descriptors[j]); - break; - } - } - } - - IArtifactDescriptor[] completeSortedDescriptors = completeDescriptors.toArray(new IArtifactDescriptor[completeDescriptors.size()]); - // Sort, so to allow a depth lookup! - Arrays.sort(completeSortedDescriptors, ARTIFACT_DESCRIPTOR_VERSION_COMPARATOR); - return completeSortedDescriptors; - } - - private boolean isOptimized(IArtifactDescriptor descriptor, String stepId) { - if (descriptor.getProcessingSteps().length != 1) - return false; - return stepId.equals(descriptor.getProcessingSteps()[0].getProcessorId()); - } - - private boolean isCanonical(IArtifactDescriptor descriptor) { - // TODO length != 0 is not necessarily an indicator for not being complete! - return descriptor.getProcessingSteps().length == 0; - } - - static final class ArtifactDescriptorVersionComparator implements Comparator { - public int compare(IArtifactDescriptor artifactDescriptor0, IArtifactDescriptor artifactDescriptor1) { - return -1 * artifactDescriptor0.getArtifactKey().getVersion().compareTo(artifactDescriptor1.getArtifactKey().getVersion()); - } - } - - static final class ArtifactKeyVersionComparator implements Comparator { - public int compare(IArtifactKey artifactKey0, IArtifactKey artifactKey1) { - return -1 * artifactKey0.getVersion().compareTo(artifactKey1.getVersion()); - } - } -} diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/OptimizerApplication.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/OptimizerApplication.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/OptimizerApplication.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/OptimizerApplication.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* - * Copyright (c) 2011, 2015 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 + * Copyright (c) 2011, 2018 IBM Corporation and others. + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Cloudsmith - initial API and implementation @@ -26,6 +29,7 @@ public abstract class OptimizerApplicati return (IArtifactRepositoryManager) getAgent().getService(IArtifactRepositoryManager.SERVICE_NAME); } + @Override public void stop() { // Nothing to do } diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/Application.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/Application.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/Application.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/Application.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,10 +1,15 @@ /******************************************************************************* - * Copyright (c) 2007, 2016 IBM Corporation and others. All rights reserved. This + * Copyright (c) 2007, 2018 IBM Corporation and others. + * + * 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 http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: * IBM Corporation - initial API and implementation ******************************************************************************/ package org.eclipse.equinox.internal.p2.artifact.optimizers.pack200; @@ -18,15 +23,16 @@ import org.eclipse.equinox.p2.repository import org.eclipse.equinox.p2.repository.artifact.IArtifactRepositoryManager; public class Application extends OptimizerApplication { - //Application return code + // Application return code private static final Integer NON_WRITTABLE_REPOSITORY = -1; - //Application arguments + // Application arguments private static final String ARTIFACT_REPOSITORY_ARG = "-artifactRepository"; //$NON-NLS-1$ private static final String ARTIFACT_REPOSITORY_SHORT_ARG = "-ar"; //$NON-NLS-1$ private URI artifactRepositoryLocation; + @Override public Object start(IApplicationContext context) throws Exception { Map args = context.getArguments(); initializeFromArguments((String[]) args.get("application.args")); //$NON-NLS-1$ @@ -49,14 +55,15 @@ public class Application extends Optimiz if (args == null) return; for (int i = 0; i < args.length; i++) { - // check for args with parameters. If we are at the last argument or - // if the next one has a '-' as the first character, then we can't have + // check for args with parameters. If we are at the last argument or + // if the next one has a '-' as the first character, then we can't have // an arg with a param so continue. if (i == args.length - 1 || args[i + 1].startsWith("-")) //$NON-NLS-1$ continue; String arg = args[++i]; - if (args[i - 1].equalsIgnoreCase(ARTIFACT_REPOSITORY_ARG) || args[i - 1].equalsIgnoreCase(ARTIFACT_REPOSITORY_SHORT_ARG)) + if (args[i - 1].equalsIgnoreCase(ARTIFACT_REPOSITORY_ARG) + || args[i - 1].equalsIgnoreCase(ARTIFACT_REPOSITORY_SHORT_ARG)) artifactRepositoryLocation = new URI(arg); } } diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/Messages.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/Messages.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/Messages.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/Messages.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,8 +1,13 @@ /******************************************************************************* - * Copyright (c) 2008 IBM Corporation and others. All rights reserved. This + * Copyright (c) 2008 IBM Corporation and others. + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: IBM Corporation - initial API and implementation ******************************************************************************/ diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/messages.properties 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/messages.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/messages.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/messages.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2008 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/Optimizer.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/Optimizer.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/Optimizer.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/Optimizer.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* - * Copyright (c) 2007, 2010 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 + * Copyright (c) 2007, 2018 IBM Corporation and others. + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation @@ -12,7 +15,6 @@ package org.eclipse.equinox.internal.p2. import java.io.IOException; import java.io.OutputStream; -import java.util.Iterator; import org.eclipse.core.runtime.IStatus; import org.eclipse.core.runtime.NullProgressMonitor; import org.eclipse.equinox.internal.provisional.p2.artifact.repository.processing.ProcessingStep; @@ -26,7 +28,7 @@ import org.eclipse.equinox.p2.repository import org.eclipse.osgi.util.NLS; public class Optimizer { - private IArtifactRepository repository; + private final IArtifactRepository repository; public Optimizer(IArtifactRepository repository) { this.repository = repository; @@ -34,15 +36,13 @@ public class Optimizer { public void run() { IQueryResult keys = repository.query(ArtifactKeyQuery.ALL_KEYS, null); - for (Iterator iterator = keys.iterator(); iterator.hasNext();) { - IArtifactKey key = iterator.next(); + for (IArtifactKey key : keys) { if (!key.getClassifier().equals("plugin")) //$NON-NLS-1$ continue; IArtifactDescriptor[] descriptors = repository.getArtifactDescriptors(key); IArtifactDescriptor canonical = null; boolean optimized = false; - for (int j = 0; j < descriptors.length; j++) { - IArtifactDescriptor descriptor = descriptors[j]; + for (IArtifactDescriptor descriptor : descriptors) { if (isCanonical(descriptor)) canonical = descriptor; optimized |= isOptimized(descriptor); @@ -62,41 +62,38 @@ public class Optimizer { private void optimize(IArtifactDescriptor descriptor) { ArtifactDescriptor newDescriptor = new ArtifactDescriptor(descriptor); - IProcessingStepDescriptor[] steps = new IProcessingStepDescriptor[] {new ProcessingStepDescriptor("org.eclipse.equinox.p2.processing.Pack200Unpacker", null, true)}; //$NON-NLS-1$ + IProcessingStepDescriptor[] steps = new IProcessingStepDescriptor[] { + new ProcessingStepDescriptor("org.eclipse.equinox.p2.processing.Pack200Unpacker", null, true) }; //$NON-NLS-1$ newDescriptor.setProcessingSteps(steps); newDescriptor.setProperty(IArtifactDescriptor.FORMAT, IArtifactDescriptor.FORMAT_PACKED); - OutputStream repositoryStream = null; - try { - repositoryStream = repository.getOutputStream(newDescriptor); + try (OutputStream repositoryStream = repository.getOutputStream(newDescriptor)) { // Add in all the processing steps needed to optimize (e.g., pack200, ...) ProcessingStepHandler handler = new ProcessingStepHandler(); - OutputStream destination = handler.link(new ProcessingStep[] {new Pack200OptimizerStep()}, repositoryStream, null); + OutputStream destination = handler.link(new ProcessingStep[] { new Pack200OptimizerStep() }, + repositoryStream, null); - // Do the actual work by asking the repo to get the artifact and put it in the destination. + // Do the actual work by asking the repo to get the artifact and put it in the + // destination. IStatus status = repository.getArtifact(descriptor, destination, new NullProgressMonitor()); if (!status.isOK()) { System.out.println(NLS.bind(Messages.failed_getting_artifact, descriptor.getArtifactKey())); System.out.println(status); } + repositoryStream.close(); + status = ProcessingStepHandler.checkStatus(repositoryStream); + if (!status.isOK()) { + System.out.println(NLS.bind(Messages.skip_optimization, descriptor.getArtifactKey())); + System.out.println(status.toString()); + } } catch (ProvisionException e) { System.out.println(NLS.bind(Messages.skip_optimization, descriptor.getArtifactKey())); System.out.println(e.getMessage()); e.printStackTrace(); - } finally { - if (repositoryStream != null) - try { - repositoryStream.close(); - IStatus status = ProcessingStepHandler.checkStatus(repositoryStream); - if (!status.isOK()) { - System.out.println(NLS.bind(Messages.skip_optimization, descriptor.getArtifactKey())); - System.out.println(status.toString()); - } - } catch (IOException e) { - System.out.println(NLS.bind(Messages.skip_optimization, descriptor.getArtifactKey())); - System.out.println(e.getMessage()); - e.printStackTrace(); - } + } catch (IOException e) { + System.out.println(NLS.bind(Messages.skip_optimization, descriptor.getArtifactKey())); + System.out.println(e.getMessage()); + e.printStackTrace(); } } diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/Pack200OptimizerStep.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/Pack200OptimizerStep.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/Pack200OptimizerStep.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/pack200/Pack200OptimizerStep.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* - * Copyright (c) 2007, 2008 compeople AG and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * Copyright (c) 2007, 2018 compeople AG and others. + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * compeople AG (Stefan Liebig) - initial API and implementation @@ -22,7 +25,7 @@ import org.eclipse.internal.provisional. import org.eclipse.internal.provisional.equinox.p2.jarprocessor.JarProcessorExecutor.Options; /** - * The Pack200Packer expects an input containing normal ".jar" data. + * The Pack200Packer expects an input containing normal ".jar" data. */ public class Pack200OptimizerStep extends AbstractBufferingStep { private static final String PACKED_SUFFIX = ".pack.gz"; //$NON-NLS-1$ @@ -31,8 +34,8 @@ public class Pack200OptimizerStep extend static { try { - // TODO This is not very elegant. But there is currently no other way to - // find it out. PackStep.canPack() is not visible due to restrictions. + // TODO This is not very elegant. But there is currently no other way to + // find it out. PackStep.canPack() is not visible due to restrictions. JarProcessor.getPackProcessor(null); pack200Available = true; } catch (UnsupportedOperationException e) { @@ -40,17 +43,20 @@ public class Pack200OptimizerStep extend } } + @Override protected OutputStream createIncomingStream() throws IOException { incoming = File.createTempFile(INCOMING_ROOT, JAR_SUFFIX); return new BufferedOutputStream(new FileOutputStream(incoming)); } + @Override protected void cleanupTempFiles() { super.cleanupTempFiles(); if (incoming != null) incoming.delete(); } + @Override protected void performProcessing() throws IOException { File resultFile = null; try { @@ -75,7 +81,8 @@ public class Pack200OptimizerStep extend // unpack Options options = new Options(); options.pack = true; - // TODO use false here assuming that all content is conditioned. Need to revise this + // TODO use false here assuming that all content is conditioned. Need to revise + // this options.processAll = false; options.input = incoming; options.outputDir = getWorkDir().getPath(); diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/VersionlessArtifactKey.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/VersionlessArtifactKey.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/VersionlessArtifactKey.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.optimizers/src/org/eclipse/equinox/internal/p2/artifact/optimizers/VersionlessArtifactKey.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* - * Copyright (c) 2007, 2010 compeople AG and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * Copyright (c) 2007, 2018 compeople AG and others. + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * compeople AG (Stefan Liebig) - initial API and implementation @@ -11,10 +14,9 @@ *******************************************************************************/ package org.eclipse.equinox.internal.p2.artifact.optimizers; -import org.eclipse.equinox.p2.metadata.Version; - import org.eclipse.equinox.internal.p2.metadata.ArtifactKey; import org.eclipse.equinox.p2.metadata.IArtifactKey; +import org.eclipse.equinox.p2.metadata.Version; public class VersionlessArtifactKey extends ArtifactKey { @@ -26,12 +28,14 @@ public class VersionlessArtifactKey exte super(base.getClassifier(), base.getId(), Version.emptyVersion); } + @Override public int hashCode() { int hash = getId().hashCode(); hash = 17 * hash + getClassifier().hashCode(); return hash; } + @Override public boolean equals(Object obj) { if (!(obj instanceof IArtifactKey)) return false; diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/about.html 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/about.html --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/about.html 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/about.html 2018-08-29 14:43:08.000000000 +0000 @@ -2,27 +2,35 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + About -

About This Content

- -

June 2, 2006

-

License

+

About This Content

-

The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise -indicated below, the Content is provided to you under the terms and conditions of the -Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available -at http://www.eclipse.org/legal/epl-v10.html. -For purposes of the EPL, "Program" will mean the Content.

+

November 30, 2017

+

License

-

If you did not receive this Content directly from the Eclipse Foundation, the Content is -being redistributed by another party ("Redistributor") and different terms and conditions may -apply to your use of any object code in the Content. Check the Redistributor's license that was -provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise -indicated below, the terms and conditions of the EPL still apply to any source code in the Content -and such source code may be obtained at http://www.eclipse.org.

+

+ The Eclipse Foundation makes available all content in this plug-in + ("Content"). Unless otherwise indicated below, the Content + is provided to you under the terms and conditions of the Eclipse + Public License Version 2.0 ("EPL"). A copy of the EPL is + available at http://www.eclipse.org/legal/epl-2.0. + For purposes of the EPL, "Program" will mean the Content. +

+ +

+ If you did not receive this Content directly from the Eclipse + Foundation, the Content is being redistributed by another party + ("Redistributor") and different terms and conditions may + apply to your use of any object code in the Content. Check the + Redistributor's license that was provided with the Content. If no such + license exists, contact the Redistributor. Unless otherwise indicated + below, the terms and conditions of the EPL still apply to any source + code in the Content and such source code may be obtained at http://www.eclipse.org. +

\ No newline at end of file diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/build.properties 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/build.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/build.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/build.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2005, 2007 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation @@ -11,4 +14,6 @@ source.. = src/ output.. = bin/ bin.includes = META-INF/,\ - . + .,\ + plugin.properties,\ + plugin.xml diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/.classpath 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/.classpath --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/.classpath 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/.classpath 2018-08-29 14:43:08.000000000 +0000 @@ -1,6 +1,6 @@ - + diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/META-INF/MANIFEST.MF 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/META-INF/MANIFEST.MF --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/META-INF/MANIFEST.MF 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/META-INF/MANIFEST.MF 2018-08-29 14:43:08.000000000 +0000 @@ -2,19 +2,17 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-SymbolicName: org.eclipse.equinox.p2.artifact.processors;singleton:=true -Bundle-Version: 1.0.100.qualifier +Bundle-Version: 1.1.0.qualifier Bundle-Activator: org.eclipse.equinox.internal.p2.artifact.processors.Activator Bundle-Vendor: %providerName Bundle-Localization: plugin Export-Package: org.eclipse.equinox.internal.p2.artifact.processors;x-internal:=true, - org.eclipse.equinox.internal.p2.artifact.processors.jardelta;x-internal:=true, - org.eclipse.equinox.internal.p2.artifact.processors.jbdiff;x-internal:=true + org.eclipse.equinox.internal.p2.artifact.processors.jardelta;x-internal:=true Require-Bundle: org.eclipse.equinox.common, org.eclipse.equinox.p2.artifact.repository -Bundle-RequiredExecutionEnvironment: J2SE-1.5 +Bundle-RequiredExecutionEnvironment: JavaSE-1.8 Bundle-ActivationPolicy: lazy -Import-Package: ie.wombat.jbdiff, - org.eclipse.equinox.internal.p2.artifact.optimizers, +Import-Package: org.eclipse.equinox.internal.p2.artifact.optimizers, org.eclipse.equinox.internal.p2.core.helpers, org.eclipse.equinox.internal.p2.sar, org.eclipse.equinox.p2.core;version="[2.0.0,3.0.0)", diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/plugin.properties 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/plugin.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/plugin.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/plugin.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2007, 2009 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/plugin.xml 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/plugin.xml --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/plugin.xml 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/plugin.xml 2018-08-29 14:43:08.000000000 +0000 @@ -6,14 +6,4 @@ id="org.eclipse.equinox.p2.processing.JarDeltaPatchStep"> - - - - - - diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/pom.xml 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/pom.xml --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/pom.xml 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/pom.xml 2018-08-29 14:43:08.000000000 +0000 @@ -2,13 +2,13 @@ 4.0.0 - org.eclipse.equinox.p2-parent - org.eclipse - 4.8.0-SNAPSHOT - ../../org.eclipse.equinox.p2.releng/org.eclipse.equinox.p2-parent + org.eclipse.equinox.p2 + rt.equinox.p2 + 4.9.0-SNAPSHOT + ../.. org.eclipse.equinox org.eclipse.equinox.p2.artifact.processors - 1.0.100-SNAPSHOT + 1.1.0-SNAPSHOT eclipse-plugin diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/.settings/org.eclipse.jdt.core.prefs 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/.settings/org.eclipse.jdt.core.prefs --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/.settings/org.eclipse.jdt.core.prefs 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/.settings/org.eclipse.jdt.core.prefs 2018-08-29 14:43:08.000000000 +0000 @@ -10,18 +10,23 @@ org.eclipse.jdt.core.classpath.multipleO 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.methodParameters=do not generate +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.5 +org.eclipse.jdt.core.compiler.compliance=1.8 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 @@ -50,7 +55,7 @@ org.eclipse.jdt.core.compiler.problem.in 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 @@ -59,7 +64,7 @@ org.eclipse.jdt.core.compiler.problem.mi 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 @@ -67,20 +72,22 @@ org.eclipse.jdt.core.compiler.problem.no 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.redundantSuperinterface=ignore +org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning +org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled @@ -89,12 +96,16 @@ org.eclipse.jdt.core.compiler.problem.su 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=enabled +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 +113,7 @@ org.eclipse.jdt.core.compiler.problem.un 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,9 +126,12 @@ org.eclipse.jdt.core.compiler.problem.un 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.release=disabled +org.eclipse.jdt.core.compiler.source=1.8 +org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647 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_annotation=0 org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 @@ -125,17 +140,25 @@ org.eclipse.jdt.core.formatter.alignment org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16 org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80 -org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0 +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=16 org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0 +org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_module_statements=16 org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 +org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80 org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16 org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0 +org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0 +org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16 org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 org.eclipse.jdt.core.formatter.blank_lines_after_package=1 org.eclipse.jdt.core.formatter.blank_lines_before_field=0 @@ -155,26 +178,36 @@ org.eclipse.jdt.core.formatter.brace_pos org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.comment.align_tags_descriptions_grouped=true +org.eclipse.jdt.core.formatter.comment.align_tags_names_descriptions=false org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false -org.eclipse.jdt.core.formatter.comment.format_block_comments=false +org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=true +org.eclipse.jdt.core.formatter.comment.format_block_comments=true org.eclipse.jdt.core.formatter.comment.format_header=false org.eclipse.jdt.core.formatter.comment.format_html=true -org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=false -org.eclipse.jdt.core.formatter.comment.format_line_comments=false +org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true +org.eclipse.jdt.core.formatter.comment.format_line_comments=true org.eclipse.jdt.core.formatter.comment.format_source_code=true org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false org.eclipse.jdt.core.formatter.comment.indent_root_tags=false org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert org.eclipse.jdt.core.formatter.comment.line_length=80 +org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true +org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true +org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false org.eclipse.jdt.core.formatter.compact_else_if=true org.eclipse.jdt.core.formatter.continuation_indentation=2 org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2 +org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off +org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false +org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=false org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true @@ -184,15 +217,18 @@ org.eclipse.jdt.core.formatter.indent_em org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true -org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false org.eclipse.jdt.core.formatter.indentation.size=4 +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert -org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert @@ -200,7 +236,7 @@ org.eclipse.jdt.core.formatter.insert_ne org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert -org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert @@ -211,7 +247,7 @@ org.eclipse.jdt.core.formatter.insert_sp org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert -org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=do not insert org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert @@ -240,10 +276,11 @@ org.eclipse.jdt.core.formatter.insert_sp org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert +org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert @@ -258,12 +295,14 @@ org.eclipse.jdt.core.formatter.insert_sp org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert @@ -272,7 +311,7 @@ org.eclipse.jdt.core.formatter.insert_sp org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert @@ -287,11 +326,12 @@ org.eclipse.jdt.core.formatter.insert_sp org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert -org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert -org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert @@ -314,6 +354,7 @@ org.eclipse.jdt.core.formatter.insert_sp org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert @@ -342,6 +383,7 @@ org.eclipse.jdt.core.formatter.insert_sp org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert @@ -351,6 +393,7 @@ org.eclipse.jdt.core.formatter.insert_sp org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert @@ -360,19 +403,37 @@ org.eclipse.jdt.core.formatter.insert_sp org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.join_lines_in_comments=true +org.eclipse.jdt.core.formatter.join_wrapped_lines=true org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false -org.eclipse.jdt.core.formatter.lineSplit=800 +org.eclipse.jdt.core.formatter.lineSplit=120 org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 -org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false +org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines +org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true org.eclipse.jdt.core.formatter.tabulation.char=tab org.eclipse.jdt.core.formatter.tabulation.size=4 +org.eclipse.jdt.core.formatter.use_on_off_tags=false org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false +org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true +org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true +org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true +org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true org.eclipse.jdt.core.incompatibleJDKLevel=ignore org.eclipse.jdt.core.incompleteClasspath=error +org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/.settings/org.eclipse.jdt.ui.prefs 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/.settings/org.eclipse.jdt.ui.prefs --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/.settings/org.eclipse.jdt.ui.prefs 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/.settings/org.eclipse.jdt.ui.prefs 2018-08-29 14:43:08.000000000 +0000 @@ -1,8 +1,7 @@ -#Mon Nov 05 21:23:42 EST 2007 eclipse.preferences.version=1 editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true -formatter_profile=_core -formatter_settings_version=11 +formatter_profile=org.eclipse.jdt.ui.default.eclipse_profile +formatter_settings_version=14 org.eclipse.jdt.ui.ignorelowercasenames=true org.eclipse.jdt.ui.importorder=; org.eclipse.jdt.ui.ondemandthreshold=3 @@ -12,22 +11,29 @@ sp_cleanup.add_default_serial_version_id sp_cleanup.add_generated_serial_version_id=false sp_cleanup.add_missing_annotations=true sp_cleanup.add_missing_deprecated_annotations=true +sp_cleanup.add_missing_methods=false sp_cleanup.add_missing_nls_tags=false sp_cleanup.add_missing_override_annotations=true +sp_cleanup.add_missing_override_annotations_interface_methods=true sp_cleanup.add_serial_version_id=false sp_cleanup.always_use_blocks=true sp_cleanup.always_use_parentheses_in_expressions=false sp_cleanup.always_use_this_for_non_static_field_access=false sp_cleanup.always_use_this_for_non_static_method_access=false -sp_cleanup.convert_to_enhanced_for_loop=false +sp_cleanup.convert_functional_interfaces=true +sp_cleanup.convert_to_enhanced_for_loop=true +sp_cleanup.correct_indentation=false sp_cleanup.format_source_code=true +sp_cleanup.format_source_code_changes_only=false +sp_cleanup.insert_inferred_type_arguments=false sp_cleanup.make_local_variable_final=false sp_cleanup.make_parameters_final=false sp_cleanup.make_private_fields_final=true +sp_cleanup.make_type_abstract_if_missing_method=false sp_cleanup.make_variable_declarations_final=true sp_cleanup.never_use_blocks=false sp_cleanup.never_use_parentheses_in_expressions=true -sp_cleanup.on_save_use_additional_actions=false +sp_cleanup.on_save_use_additional_actions=true sp_cleanup.organize_imports=true sp_cleanup.qualify_static_field_accesses_with_declaring_class=false sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true @@ -35,12 +41,14 @@ sp_cleanup.qualify_static_member_accesse sp_cleanup.qualify_static_member_accesses_with_declaring_class=false sp_cleanup.qualify_static_method_accesses_with_declaring_class=false sp_cleanup.remove_private_constructors=true -sp_cleanup.remove_trailing_whitespaces=false +sp_cleanup.remove_redundant_modifiers=true +sp_cleanup.remove_redundant_type_arguments=true +sp_cleanup.remove_trailing_whitespaces=true sp_cleanup.remove_trailing_whitespaces_all=true sp_cleanup.remove_trailing_whitespaces_ignore_empty=false sp_cleanup.remove_unnecessary_casts=true -sp_cleanup.remove_unnecessary_nls_tags=false -sp_cleanup.remove_unused_imports=false +sp_cleanup.remove_unnecessary_nls_tags=true +sp_cleanup.remove_unused_imports=true sp_cleanup.remove_unused_local_variables=false sp_cleanup.remove_unused_private_fields=true sp_cleanup.remove_unused_private_members=false @@ -48,8 +56,10 @@ sp_cleanup.remove_unused_private_methods sp_cleanup.remove_unused_private_types=true sp_cleanup.sort_members=false sp_cleanup.sort_members_all=false +sp_cleanup.use_anonymous_class_creation=false sp_cleanup.use_blocks=false sp_cleanup.use_blocks_only_for_return_and_throw=false +sp_cleanup.use_lambda=true sp_cleanup.use_parentheses_in_expressions=false sp_cleanup.use_this_for_non_static_field_access=false sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/AbstractDeltaProcessorStep.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/AbstractDeltaProcessorStep.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/AbstractDeltaProcessorStep.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/AbstractDeltaProcessorStep.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* - * Copyright (c) 2007, 2010 compeople AG and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * Copyright (c) 2007, 2018 compeople AG and others. + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * compeople AG (Stefan Liebig) - initial API and implementation @@ -23,12 +26,15 @@ import org.eclipse.equinox.p2.repository /** * The AbstractDeltaPatchStep is an abstract processing step that * retrieves a local artifact repository containing the serialized/encoded - * artifact key. It assumes that the artifact key is stored within the data property - * of the processing step descriptor encoding the artifact key of the base artifact. + * artifact key. It assumes that the artifact key is stored within the data + * property of the processing step descriptor encoding the artifact key of the + * base artifact. */ public abstract class AbstractDeltaProcessorStep extends AbstractDeltaStep { - public void initialize(IProvisioningAgent agent, IProcessingStepDescriptor descriptor, IArtifactDescriptor context) { + @Override + public void initialize(IProvisioningAgent agent, IProcessingStepDescriptor descriptor, + IArtifactDescriptor context) { super.initialize(agent, descriptor, context); if (!getStatus().isOK()) return; @@ -41,22 +47,23 @@ public abstract class AbstractDeltaProce private void fetchLocalArtifactRepository(IProvisioningAgent agent) { if (repository != null) return; - IArtifactRepositoryManager repoMgr = (IArtifactRepositoryManager) agent.getService(IArtifactRepositoryManager.SERVICE_NAME); + IArtifactRepositoryManager repoMgr = (IArtifactRepositoryManager) agent + .getService(IArtifactRepositoryManager.SERVICE_NAME); if (repoMgr == null) { setStatus(new Status(IStatus.ERROR, Activator.ID, "Could not get artifact repository manager.")); return; } URI[] repositories = repoMgr.getKnownRepositories(IRepositoryManager.REPOSITORIES_LOCAL); - for (int i = 0; i < repositories.length; i++) { + for (URI repositorie : repositories) { try { - IArtifactRepository currentRepo = repoMgr.loadRepository(repositories[i], null); + IArtifactRepository currentRepo = repoMgr.loadRepository(repositorie, null); if (currentRepo.contains(key)) { repository = currentRepo; return; } } catch (ProvisionException e) { - //just skip unreadable repositories + // just skip unreadable repositories } } setStatus(new Status(IStatus.ERROR, Activator.ID, "No repository available containing key " + key)); diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/Activator.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/Activator.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/Activator.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/Activator.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* - * Copyright (c) 2007, 2008 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 + * Copyright (c) 2007, 2018 IBM Corporation and others. + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation @@ -17,17 +20,20 @@ import org.osgi.framework.BundleContext; public class Activator implements BundleActivator { public static final String ID = "org.eclipse.equinox.p2.artifact.processors"; //$NON-NLS-1$ - private static BundleContext context = null; + private static BundleContext _context = null; public static BundleContext getContext() { - return context; + return _context; } + @Override public void start(BundleContext context) throws Exception { - Activator.context = context; + Activator._context = context; } + @Override public void stop(BundleContext context) throws Exception { + // nothing to do } } diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/jardelta/DeltaApplier.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/jardelta/DeltaApplier.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/jardelta/DeltaApplier.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/jardelta/DeltaApplier.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* - * Copyright (c) 2007 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 + * Copyright (c) 2007, 2018 IBM Corporation and others. + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation @@ -17,9 +20,9 @@ import java.util.zip.*; public class DeltaApplier { private static final String DELETE_SUFFIX = ".delete"; //$NON-NLS-1$ private static final String MANIFEST_ENTRY_NAME = "META-INF/MANIFEST.MF"; //$NON-NLS-1$ - private File delta; - private File base; - private File destination; + private final File delta; + private final File base; + private final File destination; private ZipFile baseJar; private ZipFile deltaJar; private Set baseEntries; @@ -43,7 +46,7 @@ public class DeltaApplier { } private void applyDelta() { - // start out assuming that all the base entries will be moved over. + // start out assuming that all the base entries will be moved over. baseEntries = getEntries(baseJar); // remove from the base all the entries that appear in the delta for (Enumeration e = deltaJar.entries(); e.hasMoreElements();) { @@ -69,8 +72,8 @@ public class DeltaApplier { if (manifestJar != null) writeEntry(result, manifestJar.getEntry(MANIFEST_ENTRY_NAME), manifestJar, true); // write out the things we know are staying from the base JAR - for (Iterator i = baseEntries.iterator(); i.hasNext();) { - ZipEntry entry = baseJar.getEntry(i.next()); + for (String string : baseEntries) { + ZipEntry entry = baseJar.getEntry(string); writeEntry(result, entry, baseJar, false); } // write out the changes/additions from the delta. @@ -89,7 +92,8 @@ public class DeltaApplier { } } - private void writeEntry(ZipOutputStream result, ZipEntry entry, ZipFile sourceJar, boolean manifest) throws IOException { + private void writeEntry(ZipOutputStream result, ZipEntry entry, ZipFile sourceJar, boolean manifest) + throws IOException { if (!manifest && entry.getName().equalsIgnoreCase(MANIFEST_ENTRY_NAME)) return; // add the entry @@ -110,9 +114,9 @@ public class DeltaApplier { } /** - * Transfers all available bytes from the given input stream to the given - * output stream. Does not close either stream. - * + * Transfers all available bytes from the given input stream to the given output + * stream. Does not close either stream. + * * @param source * @param destination * @throws IOException @@ -161,7 +165,7 @@ public class DeltaApplier { } private Set getEntries(ZipFile jar) { - HashSet result = new HashSet(jar.size()); + HashSet result = new HashSet<>(jar.size()); for (Enumeration e = jar.entries(); e.hasMoreElements();) { ZipEntry entry = e.nextElement(); checkForManifest(entry, jar); @@ -171,8 +175,9 @@ public class DeltaApplier { } /** - * Check to see if the given entry is the manifest. If so, remember it for use when writing - * the resultant JAR. + * Check to see if the given entry is the manifest. If so, remember it for use + * when writing the resultant JAR. + * * @param entry * @param jar */ diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/jardelta/JarDeltaProcessorStep.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/jardelta/JarDeltaProcessorStep.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/jardelta/JarDeltaProcessorStep.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/jardelta/JarDeltaProcessorStep.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* - * Copyright (c) 2007, 2010 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 + * Copyright (c) 2007, 2018 IBM Corporation and others. + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation @@ -29,17 +32,20 @@ public class JarDeltaProcessorStep exten super(); } + @Override protected OutputStream createIncomingStream() throws IOException { incoming = File.createTempFile(INCOMING_ROOT, JAR_SUFFIX); return new BufferedOutputStream(new FileOutputStream(incoming)); } + @Override protected void cleanupTempFiles() { super.cleanupTempFiles(); if (incoming != null) incoming.delete(); } + @Override protected void performProcessing() throws IOException { File resultFile = null; try { diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/jbdiff/JBPatchStep.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/jbdiff/JBPatchStep.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/jbdiff/JBPatchStep.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/jbdiff/JBPatchStep.java 1970-01-01 00:00:00.000000000 +0000 @@ -1,54 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2007, 2010 compeople AG 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 - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * compeople AG (Stefan Liebig) - initial API and implementation - * IBM Corporation - ongoing development - *******************************************************************************/ -package org.eclipse.equinox.internal.p2.artifact.processors.jbdiff; - -import ie.wombat.jbdiff.JBPatch; -import java.io.*; -import org.eclipse.equinox.internal.p2.artifact.processors.AbstractDeltaProcessorStep; -import org.eclipse.equinox.internal.p2.core.helpers.FileUtils; -import org.eclipse.equinox.internal.p2.sar.DirectByteArrayOutputStream; -import org.eclipse.equinox.p2.repository.artifact.spi.ArtifactDescriptor; - -/** - * The JBPatchStep patches a JBDiff based data. - */ -public class JBPatchStep extends AbstractDeltaProcessorStep { - - public JBPatchStep() { - super(); - } - - protected OutputStream createIncomingStream() throws IOException { - return new DirectByteArrayOutputStream(); - } - - protected void performProcessing() throws IOException { - DirectByteArrayOutputStream predecessor = fetchPredecessorBytes(new ArtifactDescriptor(key)); - DirectByteArrayOutputStream current = (DirectByteArrayOutputStream) incomingStream; - byte[] result = JBPatch.bspatch(predecessor.getBuffer(), predecessor.getBufferLength(), current.getBuffer(), current.getBufferLength()); - // free up the memory as soon as possible. - predecessor = null; - current = null; - incomingStream = null; - - // copy the result of the optimization to the destination. - FileUtils.copyStream(new ByteArrayInputStream(result), true, getDestination(), false); - } - - private DirectByteArrayOutputStream fetchPredecessorBytes(ArtifactDescriptor artifactDescriptor) throws IOException { - DirectByteArrayOutputStream result = new DirectByteArrayOutputStream(); - setStatus(repository.getArtifact(artifactDescriptor, result, getProgressMonitor())); - if (!getStatus().isOK()) - throw (IOException) new IOException(getStatus().getMessage()).initCause(getStatus().getException()); - return result; - } -} \ No newline at end of file diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/jbdiff/JBPatchZipStep.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/jbdiff/JBPatchZipStep.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/jbdiff/JBPatchZipStep.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.processors/src/org/eclipse/equinox/internal/p2/artifact/processors/jbdiff/JBPatchZipStep.java 1970-01-01 00:00:00.000000000 +0000 @@ -1,54 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2007, 2010 compeople AG 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 - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * compeople AG (Stefan Liebig) - initial API and implementation - * IBM Corporation - ongoing development - *******************************************************************************/ -package org.eclipse.equinox.internal.p2.artifact.processors.jbdiff; - -import ie.wombat.jbdiff.JBPatch; -import java.io.ByteArrayInputStream; -import java.io.IOException; -import org.eclipse.equinox.internal.p2.sar.DirectByteArrayOutputStream; -import org.eclipse.equinox.internal.p2.sar.SarUtil; -import org.eclipse.equinox.p2.repository.artifact.spi.ArtifactDescriptor; - -/** - * The JBPatchZipStep patches a JBDiff based diff of zips/jars. - */ -public class JBPatchZipStep extends JBPatchStep { - - public JBPatchZipStep() { - super(); - } - - protected void performProcessing() throws IOException { - DirectByteArrayOutputStream predecessor = fetchPredecessorBytes(new ArtifactDescriptor(key)); - DirectByteArrayOutputStream current = (DirectByteArrayOutputStream) incomingStream; - byte[] result = JBPatch.bspatch(predecessor.getBuffer(), predecessor.getBufferLength(), current.getBuffer(), current.getBufferLength()); - // free up the memory as soon as possible. - predecessor = null; - current = null; - incomingStream = null; - - // copy the result of the optimization to the destination. - SarUtil.sarToZip(new ByteArrayInputStream(result), true, getDestination(), false); - } - - private DirectByteArrayOutputStream fetchPredecessorBytes(ArtifactDescriptor artifactDescriptor) throws IOException { - DirectByteArrayOutputStream zippedPredecessor = new DirectByteArrayOutputStream(); - setStatus(repository.getArtifact(artifactDescriptor, zippedPredecessor, getProgressMonitor())); - if (!getStatus().isOK()) - throw (IOException) new IOException(getStatus().getMessage()).initCause(getStatus().getException()); - - DirectByteArrayOutputStream result = new DirectByteArrayOutputStream(); - SarUtil.zipToSar(zippedPredecessor.getInputStream(), result); - return result; - } - -} \ No newline at end of file diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/about.html 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/about.html --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/about.html 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/about.html 2018-08-29 14:43:08.000000000 +0000 @@ -2,27 +2,35 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + About -

About This Content

- -

June 2, 2006

-

License

+

About This Content

-

The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise -indicated below, the Content is provided to you under the terms and conditions of the -Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available -at http://www.eclipse.org/legal/epl-v10.html. -For purposes of the EPL, "Program" will mean the Content.

+

November 30, 2017

+

License

-

If you did not receive this Content directly from the Eclipse Foundation, the Content is -being redistributed by another party ("Redistributor") and different terms and conditions may -apply to your use of any object code in the Content. Check the Redistributor's license that was -provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise -indicated below, the terms and conditions of the EPL still apply to any source code in the Content -and such source code may be obtained at http://www.eclipse.org.

+

+ The Eclipse Foundation makes available all content in this plug-in + ("Content"). Unless otherwise indicated below, the Content + is provided to you under the terms and conditions of the Eclipse + Public License Version 2.0 ("EPL"). A copy of the EPL is + available at http://www.eclipse.org/legal/epl-2.0. + For purposes of the EPL, "Program" will mean the Content. +

+ +

+ If you did not receive this Content directly from the Eclipse + Foundation, the Content is being redistributed by another party + ("Redistributor") and different terms and conditions may + apply to your use of any object code in the Content. Check the + Redistributor's license that was provided with the Content. If no such + license exists, contact the Redistributor. Unless otherwise indicated + below, the terms and conditions of the EPL still apply to any source + code in the Content and such source code may be obtained at http://www.eclipse.org. +

\ No newline at end of file diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/build.properties 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/build.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/build.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/build.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2011 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/META-INF/MANIFEST.MF 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/META-INF/MANIFEST.MF --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/META-INF/MANIFEST.MF 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/META-INF/MANIFEST.MF 2018-08-29 14:43:08.000000000 +0000 @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-SymbolicName: org.eclipse.equinox.p2.artifact.repository;singleton:=true -Bundle-Version: 1.2.0.qualifier +Bundle-Version: 1.2.100.qualifier Bundle-Activator: org.eclipse.equinox.internal.p2.artifact.repository.Activator Bundle-Vendor: %providerName Bundle-Localization: plugin diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/plugin.properties 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/plugin.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/plugin.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/plugin.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2007, 2009 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/pom.xml 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/pom.xml --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/pom.xml 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/pom.xml 2018-08-29 14:43:08.000000000 +0000 @@ -2,13 +2,13 @@ 4.0.0 - org.eclipse.equinox.p2-parent - org.eclipse - 4.8.0-SNAPSHOT - ../../org.eclipse.equinox.p2.releng/org.eclipse.equinox.p2-parent + org.eclipse.equinox.p2 + rt.equinox.p2 + 4.9.0-SNAPSHOT + ../.. org.eclipse.equinox org.eclipse.equinox.p2.artifact.repository - 1.2.0-SNAPSHOT + 1.2.100-SNAPSHOT eclipse-plugin diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/schema/artifactChecksums.exsd 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/schema/artifactChecksums.exsd --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/schema/artifactChecksums.exsd 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/schema/artifactChecksums.exsd 2018-08-29 14:43:08.000000000 +0000 @@ -129,10 +129,12 @@ public class Activator implements Bundle Copyright (c) 2015, 2018 Mykola Nikishov. -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 -http://www.eclipse.org/legal/epl-v10.html +This program and the accompanying materials are made +available under the terms of the Eclipse Public License 2.0 which +accompanies this distribution, and is available at +<a href="https://www.eclipse.org/legal/epl-2.0">https://www.eclipse.org/legal/epl-v20.html</a>/ + +SPDX-License-Identifier: EPL-2.0 diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/schema/artifactRepositories.exsd 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/schema/artifactRepositories.exsd --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/schema/artifactRepositories.exsd 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/schema/artifactRepositories.exsd 2018-08-29 14:43:08.000000000 +0000 @@ -118,10 +118,13 @@ Copyright (c) 2007, 2008 IBM Corporation and others.<br> -All rights reserved. This program and the accompanying materials are made -available under the terms of the Eclipse Public License v1.0 which + +This program and the accompanying materials are made +available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at <a -href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a> +href="https://www.eclipse.org/legal/epl-2.0">https://www.eclipse.org/legal/epl-v20.html</a>/ + +SPDX-License-Identifier: EPL-2.0 diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/schema/processingSteps.exsd 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/schema/processingSteps.exsd --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/schema/processingSteps.exsd 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/schema/processingSteps.exsd 2018-08-29 14:43:08.000000000 +0000 @@ -105,10 +105,13 @@ implementor of <tt>org.eclipse.equ Copyright (c) 2007, 2008 compeople AG and others.<br> -All rights reserved. This program and the accompanying materials are made -available under the terms of the Eclipse Public License v1.0 which + +This program and the accompanying materials are made +available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at <a -href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a> +href="https://www.eclipse.org/legal/epl-2.0">https://www.eclipse.org/legal/epl-v20.html</a>/ + +SPDX-License-Identifier: EPL-2.0 diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processing/AbstractBufferingStep.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processing/AbstractBufferingStep.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processing/AbstractBufferingStep.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processing/AbstractBufferingStep.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 compeople AG and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * compeople AG (Stefan Liebig) - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processing/Messages.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processing/Messages.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processing/Messages.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processing/Messages.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,8 +1,13 @@ /******************************************************************************* - * Copyright (c) 2008 IBM Corporation and others. All rights reserved. This + * Copyright (c) 2008 IBM Corporation and others. + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: IBM Corporation - initial API and implementation ******************************************************************************/ diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processing/messages.properties 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processing/messages.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processing/messages.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processing/messages.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2005, 2010 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/ChecksumUtilities.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/ChecksumUtilities.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/ChecksumUtilities.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/ChecksumUtilities.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2015, 2018 Mykola Nikishov. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Mykola Nikishov - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/ChecksumVerifier.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/ChecksumVerifier.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/ChecksumVerifier.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/ChecksumVerifier.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2015, 2018 Mykola Nikishov. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Mykola Nikishov - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/MessageDigestProcessingStep.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/MessageDigestProcessingStep.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/MessageDigestProcessingStep.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/MessageDigestProcessingStep.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2018, 2018 Mykola Nikishov. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Mykola Nikishov - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/Messages.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/Messages.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/Messages.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/Messages.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2015, 2018 Mykola Nikishov. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Mykola Nikishov - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/messages.properties 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/messages.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/messages.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/checksum/messages.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2015, 2018 Mykola Nikishov. -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Eclipse Public License v1.0 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # Mykola Nikishov - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/md5/MD5Verifier.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/md5/MD5Verifier.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/md5/MD5Verifier.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/md5/MD5Verifier.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2018 compeople AG and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * compeople AG (Stefan Liebig) - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/md5/Messages.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/md5/Messages.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/md5/Messages.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/md5/Messages.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/md5/messages.properties 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/md5/messages.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/md5/messages.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/md5/messages.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2008, 2010 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/pack200/Pack200ProcessorStep.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/pack200/Pack200ProcessorStep.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/pack200/Pack200ProcessorStep.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/processors/pack200/Pack200ProcessorStep.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 compeople AG and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * compeople AG (Stefan Liebig) - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/Activator.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/Activator.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/Activator.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/Activator.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/ArtifactRepositoryComponent.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/ArtifactRepositoryComponent.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/ArtifactRepositoryComponent.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/ArtifactRepositoryComponent.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/ArtifactRepositoryManager.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/ArtifactRepositoryManager.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/ArtifactRepositoryManager.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/ArtifactRepositoryManager.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/ArtifactRequest.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/ArtifactRequest.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/ArtifactRequest.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/ArtifactRequest.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/CompositeArtifactRepositoryFactory.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/CompositeArtifactRepositoryFactory.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/CompositeArtifactRepositoryFactory.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/CompositeArtifactRepositoryFactory.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/CompositeArtifactRepository.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/CompositeArtifactRepository.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/CompositeArtifactRepository.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/CompositeArtifactRepository.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/Messages.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/Messages.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/Messages.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/Messages.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/messages.properties 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/messages.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/messages.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/messages.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2007, 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/MirrorEvent.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/MirrorEvent.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/MirrorEvent.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/MirrorEvent.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2012 Wind River and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Wind River - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/MirrorRequest.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/MirrorRequest.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/MirrorRequest.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/MirrorRequest.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/MirrorSelector.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/MirrorSelector.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/MirrorSelector.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/MirrorSelector.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation @@ -18,18 +21,18 @@ import static java.lang.Math.min; import static java.lang.Math.sqrt; import java.io.FileNotFoundException; +import java.io.IOException; import java.net.URI; import java.net.URISyntaxException; import java.util.*; -import javax.xml.parsers.DocumentBuilder; -import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.parsers.*; import org.eclipse.core.runtime.*; import org.eclipse.equinox.internal.p2.core.helpers.*; -import org.eclipse.equinox.internal.p2.repository.DownloadStatus; -import org.eclipse.equinox.internal.p2.repository.Transport; +import org.eclipse.equinox.internal.p2.repository.*; import org.eclipse.equinox.p2.repository.IRepository; import org.w3c.dom.*; import org.xml.sax.InputSource; +import org.xml.sax.SAXException; /** * Mirror support class for repositories. This class implements @@ -252,40 +255,11 @@ public class MirrorSelector { */ private MirrorInfo[] computeMirrors(String mirrorsURL, IProgressMonitor monitor) { try { - String countryCode = Activator.getContext().getProperty("eclipse.p2.countryCode"); //$NON-NLS-1$ - if (countryCode == null || countryCode.trim().length() == 0) - countryCode = Locale.getDefault().getCountry().toLowerCase(); - String timeZone = Activator.getContext().getProperty("eclipse.p2.timeZone"); //$NON-NLS-1$ - if (timeZone == null || timeZone.trim().length() == 0) - timeZone = Integer.toString(new GregorianCalendar().get(Calendar.ZONE_OFFSET) / (60 * 60 * 1000)); - - if (mirrorsURL.indexOf('?') != -1) { - mirrorsURL = mirrorsURL + '&'; - } else { - mirrorsURL = mirrorsURL + '?'; - } - mirrorsURL = mirrorsURL + "countryCode=" + countryCode + "&timeZone=" + timeZone + "&format=xml"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ - - DocumentBuilderFactory domFactory = SecureXMLUtil.newSecureDocumentBuilderFactory(); - DocumentBuilder builder = domFactory.newDocumentBuilder(); - Document document = null; - // Use Transport to read the mirrors list (to benefit from proxy support, authentication, etc) - InputSource input = new InputSource(mirrorsURL); - input.setByteStream(transport.stream(URIUtil.fromString(mirrorsURL), monitor)); - document = builder.parse(input); + mirrorsURL = enrichWithClientLocation(mirrorsURL); + Document document = getMirrorsDocument(mirrorsURL, monitor); if (document == null) return null; - NodeList mirrorNodes = document.getElementsByTagName("mirror"); //$NON-NLS-1$ - int mirrorCount = mirrorNodes.getLength(); - MirrorInfo[] infos = new MirrorInfo[mirrorCount + 1]; - for (int i = 0; i < mirrorCount; i++) { - Element mirrorNode = (Element) mirrorNodes.item(i); - String infoURL = mirrorNode.getAttribute("url"); //$NON-NLS-1$ - infos[i] = new MirrorInfo(infoURL, i); - } - //p2: add the base site as the last resort mirror so we can track download speed and failure rate - infos[mirrorCount] = new MirrorInfo(baseURI.toString(), mirrorCount); - return infos; + return buildMirrorInfos(document); } catch (Exception e) { // log if absolute url if (mirrorsURL != null && (mirrorsURL.startsWith("http://") //$NON-NLS-1$ @@ -298,6 +272,45 @@ public class MirrorSelector { } } + private MirrorInfo[] buildMirrorInfos(Document document) { + NodeList mirrorNodes = document.getElementsByTagName("mirror"); //$NON-NLS-1$ + int mirrorCount = mirrorNodes.getLength(); + MirrorInfo[] infos = new MirrorInfo[mirrorCount + 1]; + for (int i = 0; i < mirrorCount; i++) { + Element mirrorNode = (Element) mirrorNodes.item(i); + String infoURL = mirrorNode.getAttribute("url"); //$NON-NLS-1$ + infos[i] = new MirrorInfo(infoURL, i); + } + //p2: add the base site as the last resort mirror so we can track download speed and failure rate + infos[mirrorCount] = new MirrorInfo(baseURI.toString(), mirrorCount); + return infos; + } + + private Document getMirrorsDocument(String mirrorsURL, IProgressMonitor monitor) throws ParserConfigurationException, FileNotFoundException, CoreException, AuthenticationFailedException, URISyntaxException, SAXException, IOException { + DocumentBuilderFactory domFactory = SecureXMLUtil.newSecureDocumentBuilderFactory(); + DocumentBuilder builder = domFactory.newDocumentBuilder(); + // Use Transport to read the mirrors list (to benefit from proxy support, authentication, etc) + InputSource input = new InputSource(mirrorsURL); + input.setByteStream(transport.stream(URIUtil.fromString(mirrorsURL), monitor)); + return builder.parse(input); + } + + private String enrichWithClientLocation(String baseURL) { + String countryCode = Activator.getContext().getProperty("eclipse.p2.countryCode"); //$NON-NLS-1$ + if (countryCode == null || countryCode.trim().length() == 0) + countryCode = Locale.getDefault().getCountry().toLowerCase(); + String timeZone = Activator.getContext().getProperty("eclipse.p2.timeZone"); //$NON-NLS-1$ + if (timeZone == null || timeZone.trim().length() == 0) + timeZone = Integer.toString(new GregorianCalendar().get(Calendar.ZONE_OFFSET) / (60 * 60 * 1000)); + + if (baseURL.indexOf('?') != -1) { + baseURL = baseURL + '&'; + } else { + baseURL = baseURL + '?'; + } + return baseURL + "countryCode=" + countryCode + "&timeZone=" + timeZone + "&format=xml"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + } + /** * Returns an equivalent location for the given artifact location in the base * repository. Always falls back to the given input location in case of failure @@ -325,16 +338,15 @@ public class MirrorSelector { } /** - * Returns the mirror locations for this repository, or null if + * Initialize {@link #mirrors} for {@link #repository}, or null if * they could not be computed. */ - private MirrorInfo[] initMirrors(IProgressMonitor monitor) { + private void initMirrors(IProgressMonitor monitor) { if (mirrors != null) - return mirrors; + return; String mirrorsURL = repository.getProperties().get(IRepository.PROP_MIRRORS_URL); if (mirrorsURL != null) mirrors = computeMirrors(mirrorsURL, monitor); - return mirrors; } private MirrorInfoComparator getComparator() { diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/RawMirrorRequest.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/RawMirrorRequest.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/RawMirrorRequest.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/RawMirrorRequest.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/SignatureVerifier.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/SignatureVerifier.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/SignatureVerifier.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/SignatureVerifier.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 compeople AG and others. -* All rights reserved. This program and the accompanying materials -* are made available under the terms of the Eclipse Public License v1.0 +* +* This program and the accompanying materials +* are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at -* http://www.eclipse.org/legal/epl-v10.html +* https://www.eclipse.org/legal/epl-2.0/ +* +* SPDX-License-Identifier: EPL-2.0 * * Contributors: * compeople AG (Stefan Liebig) - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/BlobStore.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/BlobStore.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/BlobStore.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/BlobStore.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2000, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/DownloadJob.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/DownloadJob.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/DownloadJob.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/DownloadJob.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,8 +1,13 @@ /******************************************************************************* - * Copyright (c) 2008, 2017 Genuitec, LLC and others. All rights reserved. This + * Copyright (c) 2008, 2017 Genuitec, LLC and others. + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: Genuitec, LLC - initial API and implementation * IBM Corporation - ongoing maintenance diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/KeyIndex.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/KeyIndex.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/KeyIndex.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/KeyIndex.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2010, 2018 Cloudsmith Inc. and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Cloudsmith Inc. - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/Mapper.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/Mapper.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/Mapper.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/Mapper.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/SimpleArtifactDescriptor.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/SimpleArtifactDescriptor.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/SimpleArtifactDescriptor.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/SimpleArtifactDescriptor.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/SimpleArtifactRepositoryFactory.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/SimpleArtifactRepositoryFactory.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/SimpleArtifactRepositoryFactory.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/SimpleArtifactRepositoryFactory.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/SimpleArtifactRepositoryIO.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/SimpleArtifactRepositoryIO.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/SimpleArtifactRepositoryIO.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/SimpleArtifactRepositoryIO.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/SimpleArtifactRepository.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/SimpleArtifactRepository.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/SimpleArtifactRepository.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/SimpleArtifactRepository.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/UniversalUniqueIdentifier.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/UniversalUniqueIdentifier.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/UniversalUniqueIdentifier.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/UniversalUniqueIdentifier.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2000, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/XZedSimpleArtifactRepositoryFactory.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/XZedSimpleArtifactRepositoryFactory.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/XZedSimpleArtifactRepositoryFactory.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/simple/XZedSimpleArtifactRepositoryFactory.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2015, 2017 Rapicorp, Inc and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Rapicorp, Inc - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/Messages.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/Messages.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/Messages.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/Messages.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,8 +1,13 @@ /******************************************************************************* - * Copyright (c) 2008, 2009 IBM Corporation and others. All rights reserved. This + * Copyright (c) 2008, 2009 IBM Corporation and others. + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: IBM Corporation - initial API and implementation ******************************************************************************/ diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/messages.properties 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/messages.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/messages.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/messages.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,10 +1,13 @@ cannot_instantiate_step=Could not instantiate step: ############################################################################### # Copyright (c) 2007, 2009 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/ProcessingStepHandler.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/ProcessingStepHandler.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/ProcessingStepHandler.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/ProcessingStepHandler.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 compeople AG and others. -* All rights reserved. This program and the accompanying materials -* are made available under the terms of the Eclipse Public License v1.0 +* +* This program and the accompanying materials +* are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at -* http://www.eclipse.org/legal/epl-v10.html +* https://www.eclipse.org/legal/epl-2.0/ +* +* SPDX-License-Identifier: EPL-2.0 * * Contributors: * compeople AG (Stefan Liebig) - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/ProcessingStep.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/ProcessingStep.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/ProcessingStep.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/ProcessingStep.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 compeople AG and others. -* All rights reserved. This program and the accompanying materials -* are made available under the terms of the Eclipse Public License v1.0 +* +* This program and the accompanying materials +* are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at -* http://www.eclipse.org/legal/epl-v10.html +* https://www.eclipse.org/legal/epl-2.0/ +* +* SPDX-License-Identifier: EPL-2.0 * * Contributors: * compeople AG (Stefan Liebig) - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/ZipVerifierStep.java 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/ZipVerifierStep.java --- 4.8-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/ZipVerifierStep.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/p2/artifact/repository/processing/ZipVerifierStep.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,8 +1,13 @@ /******************************************************************************* - * Copyright (c) 2008, 2017 IBM Corporation and others. All rights reserved. This + * Copyright (c) 2008, 2017 IBM Corporation and others. + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: IBM Corporation - initial API and implementation ******************************************************************************/ diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.console/about.html 4.9-1/bundles/org.eclipse.equinox.p2.console/about.html --- 4.8-1/bundles/org.eclipse.equinox.p2.console/about.html 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.console/about.html 2018-08-29 14:43:08.000000000 +0000 @@ -2,27 +2,35 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + About -

About This Content

- -

June 2, 2006

-

License

+

About This Content

-

The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise -indicated below, the Content is provided to you under the terms and conditions of the -Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available -at http://www.eclipse.org/legal/epl-v10.html. -For purposes of the EPL, "Program" will mean the Content.

+

November 30, 2017

+

License

-

If you did not receive this Content directly from the Eclipse Foundation, the Content is -being redistributed by another party ("Redistributor") and different terms and conditions may -apply to your use of any object code in the Content. Check the Redistributor's license that was -provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise -indicated below, the terms and conditions of the EPL still apply to any source code in the Content -and such source code may be obtained at http://www.eclipse.org.

+

+ The Eclipse Foundation makes available all content in this plug-in + ("Content"). Unless otherwise indicated below, the Content + is provided to you under the terms and conditions of the Eclipse + Public License Version 2.0 ("EPL"). A copy of the EPL is + available at http://www.eclipse.org/legal/epl-2.0. + For purposes of the EPL, "Program" will mean the Content. +

+ +

+ If you did not receive this Content directly from the Eclipse + Foundation, the Content is being redistributed by another party + ("Redistributor") and different terms and conditions may + apply to your use of any object code in the Content. Check the + Redistributor's license that was provided with the Content. If no such + license exists, contact the Redistributor. Unless otherwise indicated + below, the terms and conditions of the EPL still apply to any source + code in the Content and such source code may be obtained at http://www.eclipse.org. +

\ No newline at end of file diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.console/build.properties 4.9-1/bundles/org.eclipse.equinox.p2.console/build.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.console/build.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.console/build.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2007, 2010 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.console/META-INF/MANIFEST.MF 4.9-1/bundles/org.eclipse.equinox.p2.console/META-INF/MANIFEST.MF --- 4.8-1/bundles/org.eclipse.equinox.p2.console/META-INF/MANIFEST.MF 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.console/META-INF/MANIFEST.MF 2018-08-29 14:43:08.000000000 +0000 @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-SymbolicName: org.eclipse.equinox.p2.console;singleton:=true -Bundle-Version: 1.1.0.qualifier +Bundle-Version: 1.1.100.qualifier Bundle-Activator: org.eclipse.equinox.internal.p2.console.Activator Bundle-Vendor: %providerName Bundle-Localization: plugin diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.console/plugin.properties 4.9-1/bundles/org.eclipse.equinox.p2.console/plugin.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.console/plugin.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.console/plugin.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2007, 2009 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.console/pom.xml 4.9-1/bundles/org.eclipse.equinox.p2.console/pom.xml --- 4.8-1/bundles/org.eclipse.equinox.p2.console/pom.xml 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.console/pom.xml 2018-08-29 14:43:08.000000000 +0000 @@ -2,13 +2,13 @@ 4.0.0 - org.eclipse.equinox.p2-parent - org.eclipse - 4.8.0-SNAPSHOT - ../../org.eclipse.equinox.p2.releng/org.eclipse.equinox.p2-parent + org.eclipse.equinox.p2 + rt.equinox.p2 + 4.9.0-SNAPSHOT + ../.. org.eclipse.equinox org.eclipse.equinox.p2.console - 1.1.0-SNAPSHOT + 1.1.100-SNAPSHOT eclipse-plugin diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/Activator.java 4.9-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/Activator.java --- 4.8-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/Activator.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/Activator.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* - * Copyright (c) 2007, 2017 IBM Corporation and others. All rights reserved. This - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * Copyright (c) 2007, 2017 IBM Corporation and others. + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/Messages.java 4.9-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/Messages.java --- 4.8-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/Messages.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/Messages.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 20011 SAP AG. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * SAP AG - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/messages.properties 4.9-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/messages.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/messages.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/messages.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2011 SAP AG and others. -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Eclipse Public License v1.0 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # SAP AG - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/ProvCommandProvider.java 4.9-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/ProvCommandProvider.java --- 4.8-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/ProvCommandProvider.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/ProvCommandProvider.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,8 +1,13 @@ /******************************************************************************* - * Copyright (c) 2007, 2018 IBM Corporation and others. All rights reserved. This + * Copyright (c) 2007, 2018 IBM Corporation and others. + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/ProvisioningHelper.java 4.9-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/ProvisioningHelper.java --- 4.8-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/ProvisioningHelper.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.console/src/org/eclipse/equinox/internal/p2/console/ProvisioningHelper.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/about.html 4.9-1/bundles/org.eclipse.equinox.p2.core/about.html --- 4.8-1/bundles/org.eclipse.equinox.p2.core/about.html 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/about.html 2018-08-29 14:43:08.000000000 +0000 @@ -2,27 +2,35 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + About -

About This Content

- -

June 2, 2006

-

License

+

About This Content

-

The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise -indicated below, the Content is provided to you under the terms and conditions of the -Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available -at http://www.eclipse.org/legal/epl-v10.html. -For purposes of the EPL, "Program" will mean the Content.

+

November 30, 2017

+

License

-

If you did not receive this Content directly from the Eclipse Foundation, the Content is -being redistributed by another party ("Redistributor") and different terms and conditions may -apply to your use of any object code in the Content. Check the Redistributor's license that was -provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise -indicated below, the terms and conditions of the EPL still apply to any source code in the Content -and such source code may be obtained at http://www.eclipse.org.

+

+ The Eclipse Foundation makes available all content in this plug-in + ("Content"). Unless otherwise indicated below, the Content + is provided to you under the terms and conditions of the Eclipse + Public License Version 2.0 ("EPL"). A copy of the EPL is + available at http://www.eclipse.org/legal/epl-2.0. + For purposes of the EPL, "Program" will mean the Content. +

+ +

+ If you did not receive this Content directly from the Eclipse + Foundation, the Content is being redistributed by another party + ("Redistributor") and different terms and conditions may + apply to your use of any object code in the Content. Check the + Redistributor's license that was provided with the Content. If no such + license exists, contact the Redistributor. Unless otherwise indicated + below, the terms and conditions of the EPL still apply to any source + code in the Content and such source code may be obtained at http://www.eclipse.org. +

\ No newline at end of file diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/build.properties 4.9-1/bundles/org.eclipse.equinox.p2.core/build.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.core/build.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/build.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2009, 2010 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation @@ -13,6 +16,7 @@ bin.includes = META-INF/,\ .,\ about.html,\ plugin.properties,\ - OSGI-INF/ + OSGI-INF/,\ + .options src.includes = about.html source.. = src/ diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/META-INF/MANIFEST.MF 4.9-1/bundles/org.eclipse.equinox.p2.core/META-INF/MANIFEST.MF --- 4.8-1/bundles/org.eclipse.equinox.p2.core/META-INF/MANIFEST.MF 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/META-INF/MANIFEST.MF 2018-08-29 14:43:08.000000000 +0000 @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-SymbolicName: org.eclipse.equinox.p2.core;singleton:=true -Bundle-Version: 2.5.0.qualifier +Bundle-Version: 2.5.100.qualifier Bundle-ClassPath: . Bundle-Activator: org.eclipse.equinox.internal.p2.core.Activator Bundle-Vendor: %providerName diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/plugin.properties 4.9-1/bundles/org.eclipse.equinox.p2.core/plugin.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.core/plugin.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/plugin.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2007, 2009 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/pom.xml 4.9-1/bundles/org.eclipse.equinox.p2.core/pom.xml --- 4.8-1/bundles/org.eclipse.equinox.p2.core/pom.xml 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/pom.xml 2018-08-29 14:43:08.000000000 +0000 @@ -2,13 +2,13 @@ 4.0.0 - org.eclipse.equinox.p2-parent - org.eclipse - 4.8.0-SNAPSHOT - ../../org.eclipse.equinox.p2.releng/org.eclipse.equinox.p2-parent + org.eclipse.equinox.p2 + rt.equinox.p2 + 4.9.0-SNAPSHOT + ../.. org.eclipse.equinox org.eclipse.equinox.p2.core - 2.5.0-SNAPSHOT + 2.5.100-SNAPSHOT eclipse-plugin diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/Activator.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/Activator.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/Activator.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/Activator.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/AgentLocation.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/AgentLocation.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/AgentLocation.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/AgentLocation.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2004, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/DefaultAgentProvider.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/DefaultAgentProvider.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/DefaultAgentProvider.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/DefaultAgentProvider.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/EventBusComponent.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/EventBusComponent.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/EventBusComponent.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/EventBusComponent.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/CollectionUtils.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/CollectionUtils.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/CollectionUtils.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/CollectionUtils.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2018 Cloudsmith Inc. and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Cloudsmith Inc. - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/FileUtils.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/FileUtils.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/FileUtils.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/FileUtils.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation @@ -25,7 +28,7 @@ public class FileUtils { for (Enumeration e = tarFile.entries(); e.hasMoreElements();) { TarEntry entry = e.nextElement(); try (InputStream input = tarFile.getInputStream(entry)) { - File outFile = new File(outputDir, entry.getName()); + File outFile = createSubPathFile(outputDir, entry.getName()); outFile = outFile.getCanonicalFile(); //bug 266844 untarredFiles.add(outFile); if (entry.getFileType() == TarEntry.DIRECTORY) { @@ -103,7 +106,7 @@ public class FileUtils { throw new IOException(Messages.Util_Invalid_Zip_File_Format); } do { - File outFile = new File(outputDir, ze.getName()); + File outFile = createSubPathFile(outputDir, ze.getName()); unzippedFiles.add(outFile); if (ze.isDirectory()) { outFile.mkdirs(); @@ -128,6 +131,16 @@ public class FileUtils { return unzippedFiles.toArray(new File[unzippedFiles.size()]); } + private static File createSubPathFile(File root, String subPath) throws IOException { + File result = new File(root, subPath); + String resultCanonical = result.getCanonicalPath(); + String rootCanonical = root.getCanonicalPath(); + if (!resultCanonical.startsWith(rootCanonical + File.separator) && !resultCanonical.equals(rootCanonical)) { + throw new IOException("Invalid path: " + subPath); //$NON-NLS-1$ + } + return result; + } + // Delete empty directories under dir, including dir itself. public static void deleteEmptyDirs(File dir) throws IOException { File[] files = dir.listFiles(); diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/LogHelper.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/LogHelper.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/LogHelper.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/LogHelper.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/Messages.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/Messages.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/Messages.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/Messages.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2009 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/messages.properties 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/messages.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/messages.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/messages.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2007, 2009 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/OrderedProperties.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/OrderedProperties.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/OrderedProperties.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/OrderedProperties.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/SecureXMLUtil.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/SecureXMLUtil.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/SecureXMLUtil.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/SecureXMLUtil.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2017 Manumitting Technologies Inc and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Manumitting Technologies Inc - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/ServiceHelper.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/ServiceHelper.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/ServiceHelper.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/ServiceHelper.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,8 +1,13 @@ /******************************************************************************* - * Copyright (c) 2007, 2010 IBM Corporation and others. All rights reserved. This + * Copyright (c) 2007, 2010 IBM Corporation and others. + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: IBM Corporation - initial API and implementation ******************************************************************************/ diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/StringHelper.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/StringHelper.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/StringHelper.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/StringHelper.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/TarEntry.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/TarEntry.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/TarEntry.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/TarEntry.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/TarException.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/TarException.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/TarException.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/TarException.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/TarFile.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/TarFile.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/TarFile.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/TarFile.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/TarInputStream.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/TarInputStream.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/TarInputStream.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/TarInputStream.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/Tracing.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/Tracing.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/Tracing.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/Tracing.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2015 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/URLUtil.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/URLUtil.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/URLUtil.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/helpers/URLUtil.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2009 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/ProvisioningAgent.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/ProvisioningAgent.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/ProvisioningAgent.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/ProvisioningAgent.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/ProvisioningEventBus.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/ProvisioningEventBus.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/ProvisioningEventBus.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/p2/core/ProvisioningEventBus.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/provisional/p2/core/eventbus/IProvisioningEventBus.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/provisional/p2/core/eventbus/IProvisioningEventBus.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/provisional/p2/core/eventbus/IProvisioningEventBus.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/provisional/p2/core/eventbus/IProvisioningEventBus.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/provisional/p2/core/eventbus/ProvisioningListener.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/provisional/p2/core/eventbus/ProvisioningListener.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/provisional/p2/core/eventbus/ProvisioningListener.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/provisional/p2/core/eventbus/ProvisioningListener.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2008 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/provisional/p2/core/eventbus/SynchronousProvisioningListener.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/provisional/p2/core/eventbus/SynchronousProvisioningListener.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/provisional/p2/core/eventbus/SynchronousProvisioningListener.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/internal/provisional/p2/core/eventbus/SynchronousProvisioningListener.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2008 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/IAgentLocation.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/IAgentLocation.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/IAgentLocation.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/IAgentLocation.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/IPool.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/IPool.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/IPool.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/IPool.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2011 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/IProvisioningAgent.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/IProvisioningAgent.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/IProvisioningAgent.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/IProvisioningAgent.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2012 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/IProvisioningAgentProvider.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/IProvisioningAgentProvider.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/IProvisioningAgentProvider.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/IProvisioningAgentProvider.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/ProvisionException.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/ProvisionException.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/ProvisionException.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/ProvisionException.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2011 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/spi/Constants.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/spi/Constants.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/spi/Constants.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/spi/Constants.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c)2012 Pascal Rapicault and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Pascal Rapicault - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/spi/IAgentServiceFactory.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/spi/IAgentServiceFactory.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/spi/IAgentServiceFactory.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/spi/IAgentServiceFactory.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/spi/IAgentService.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/spi/IAgentService.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/spi/IAgentService.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/spi/IAgentService.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/StrongPool.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/StrongPool.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/StrongPool.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/StrongPool.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2011, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/UIServices.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/UIServices.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/UIServices.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/UIServices.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2015 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/WeakPool.java 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/WeakPool.java --- 4.8-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/WeakPool.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.core/src/org/eclipse/equinox/p2/core/WeakPool.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2011, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/about.html 4.9-1/bundles/org.eclipse.equinox.p2.director/about.html --- 4.8-1/bundles/org.eclipse.equinox.p2.director/about.html 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/about.html 2018-08-29 14:43:08.000000000 +0000 @@ -2,27 +2,35 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + About -

About This Content

- -

June 2, 2006

-

License

+

About This Content

-

The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise -indicated below, the Content is provided to you under the terms and conditions of the -Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available -at http://www.eclipse.org/legal/epl-v10.html. -For purposes of the EPL, "Program" will mean the Content.

+

November 30, 2017

+

License

-

If you did not receive this Content directly from the Eclipse Foundation, the Content is -being redistributed by another party ("Redistributor") and different terms and conditions may -apply to your use of any object code in the Content. Check the Redistributor's license that was -provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise -indicated below, the terms and conditions of the EPL still apply to any source code in the Content -and such source code may be obtained at http://www.eclipse.org.

+

+ The Eclipse Foundation makes available all content in this plug-in + ("Content"). Unless otherwise indicated below, the Content + is provided to you under the terms and conditions of the Eclipse + Public License Version 2.0 ("EPL"). A copy of the EPL is + available at http://www.eclipse.org/legal/epl-2.0. + For purposes of the EPL, "Program" will mean the Content. +

+ +

+ If you did not receive this Content directly from the Eclipse + Foundation, the Content is being redistributed by another party + ("Redistributor") and different terms and conditions may + apply to your use of any object code in the Content. Check the + Redistributor's license that was provided with the Content. If no such + license exists, contact the Redistributor. Unless otherwise indicated + below, the terms and conditions of the EPL still apply to any source + code in the Content and such source code may be obtained at http://www.eclipse.org. +

\ No newline at end of file diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/build.properties 4.9-1/bundles/org.eclipse.equinox.p2.director/build.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.director/build.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/build.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2007, 2010 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/META-INF/MANIFEST.MF 4.9-1/bundles/org.eclipse.equinox.p2.director/META-INF/MANIFEST.MF --- 4.8-1/bundles/org.eclipse.equinox.p2.director/META-INF/MANIFEST.MF 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/META-INF/MANIFEST.MF 2018-08-29 14:43:08.000000000 +0000 @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-SymbolicName: org.eclipse.equinox.p2.director;singleton:=true -Bundle-Version: 2.4.0.qualifier +Bundle-Version: 2.4.100.qualifier Bundle-ClassPath: . Bundle-Activator: org.eclipse.equinox.internal.p2.director.DirectorActivator Bundle-Vendor: %providerName diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/plugin.properties 4.9-1/bundles/org.eclipse.equinox.p2.director/plugin.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.director/plugin.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/plugin.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2007, 2009 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/pom.xml 4.9-1/bundles/org.eclipse.equinox.p2.director/pom.xml --- 4.8-1/bundles/org.eclipse.equinox.p2.director/pom.xml 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/pom.xml 2018-08-29 14:43:08.000000000 +0000 @@ -2,13 +2,13 @@ 4.0.0 - org.eclipse.equinox.p2-parent - org.eclipse - 4.8.0-SNAPSHOT - ../../org.eclipse.equinox.p2.releng/org.eclipse.equinox.p2-parent + org.eclipse.equinox.p2 + rt.equinox.p2 + 4.9.0-SNAPSHOT + ../.. org.eclipse.equinox org.eclipse.equinox.p2.director - 2.4.0-SNAPSHOT + 2.4.100-SNAPSHOT eclipse-plugin diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/ApplicablePatchQuery.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/ApplicablePatchQuery.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/ApplicablePatchQuery.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/ApplicablePatchQuery.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/AttachmentHelper.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/AttachmentHelper.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/AttachmentHelper.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/AttachmentHelper.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/DirectorActivator.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/DirectorActivator.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/DirectorActivator.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/DirectorActivator.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/DirectorComponent.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/DirectorComponent.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/DirectorComponent.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/DirectorComponent.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/Explanation.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/Explanation.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/Explanation.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/Explanation.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,8 +1,13 @@ /******************************************************************************* - * Copyright (c) 2009, 2017 Daniel Le Berre and others. All rights reserved. This + * Copyright (c) 2009, 2018 Daniel Le Berre and others. + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Daniel Le Berre - initial API and implementation @@ -269,8 +274,8 @@ public abstract class Explanation implem @Override public IStatus toStatus() { MultiStatus result = new MultiStatus(DirectorActivator.PI_DIRECTOR, 1, NLS.bind(Messages.Explanation_singleton, ""), null); //$NON-NLS-1$ - for (int i = 0; i < ius.length; i++) - result.add(new Status(IStatus.ERROR, DirectorActivator.PI_DIRECTOR, getUserReadableName(ius[i]))); + for (IInstallableUnit iu : ius) + result.add(new Status(IStatus.ERROR, DirectorActivator.PI_DIRECTOR, getUserReadableName(iu))); return result; } @@ -331,7 +336,7 @@ public abstract class Explanation implem return new Status(IStatus.ERROR, DirectorActivator.PI_DIRECTOR, toString()); } - protected String getUserReadableName(IInstallableUnit iu) { + protected static String getUserReadableName(IInstallableUnit iu) { if (iu == null) return ""; //$NON-NLS-1$ String result = getLocalized(iu); @@ -340,7 +345,7 @@ public abstract class Explanation implem return result + ' ' + iu.getVersion() + " (" + iu.toString() + ')'; //$NON-NLS-1$ } - private String getLocalized(IInstallableUnit iu) { + private static String getLocalized(IInstallableUnit iu) { String value = iu.getProperty(IInstallableUnit.PROP_NAME); if (value == null || value.length() <= 1 || value.charAt(0) != '%') return value; diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/InfiniteProgress.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/InfiniteProgress.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/InfiniteProgress.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/InfiniteProgress.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2006, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/Messages.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/Messages.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/Messages.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/Messages.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation @@ -29,6 +32,9 @@ public class Messages extends NLS { public static String Director_Task_Updating; public static String Director_Task_Resolving_Dependencies; public static String Director_Unsatisfied_Dependencies; + public static String Director_Satisfied_Dependencies; + public static String Director_Satisfied_Change; + public static String Director_Unsatisfied_Change; public static String Director_error_applying_configuration; public static String Director_For_Target; public static String Director_For_Target_Unselect_Required; diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/messages.properties 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/messages.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/messages.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/messages.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2007, 2010 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation @@ -13,11 +16,13 @@ Director_Task_installer_plan=Computing p Director_Task_Installing=Installing into {0} Director_Task_Updating=Updating Director_Task_Resolving_Dependencies=Calculating requirements and dependencies. -Director_Unsatisfied_Dependencies=\ -Cannot complete the install because some dependencies are not satisfiable +Director_Unsatisfied_Dependencies=Cannot complete the install because some dependencies are not satisfiable +Director_Satisfied_Dependencies=Overall install request is satisfiable +Director_Satisfied_Change={0} request for {1} is satisfiable +Director_Unsatisfied_Change={0} request for {1} is NOT satisfiable Director_error_applying_configuration=Unexpected failure applying configuration after for the installer plan execution. -Director_For_Target = The following software cannot be installed because it is intended for use only in Plug-in Development Environment (PDE) target platforms. Please deselect these items and retry the operation. -Director_For_Target_Unselect_Required = If provisioning a target platform then try disabling the option 'Include required software' +Director_For_Target=The following software cannot be installed because it is intended for use only in Plug-in Development Environment (PDE) target platforms. Please deselect these items and retry the operation. +Director_For_Target_Unselect_Required=If provisioning a target platform then try disabling the option 'Include required software' Explanation_alreadyInstalled=Software currently installed: {0} Explanation_from=From: {0} diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/OperationGenerator.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/OperationGenerator.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/OperationGenerator.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/OperationGenerator.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/OptimizationFunction.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/OptimizationFunction.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/OptimizationFunction.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/OptimizationFunction.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,13 @@ /******************************************************************************* * Copyright (c) 2013, 2018 Rapicorp Inc. and others. - * All rights reserved. This + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Rapicorp, Inc. - initial API and implementation @@ -111,8 +115,7 @@ public class OptimizationFunction { if (req.getMin() > 0 || !req.isGreedy()) continue; IQueryResult matches = picker.query(QueryUtil.createMatchQuery(req.getMatches()), null); - for (Iterator iterator = matches.iterator(); iterator.hasNext();) { - IInstallableUnit match = iterator.next(); + for (IInstallableUnit match : matches) { if (match instanceof IInstallableUnitPatch) { requestedPatches.add(match); countOptional = countOptional + 1; diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/PermissiveSlicer.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/PermissiveSlicer.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/PermissiveSlicer.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/PermissiveSlicer.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,8 +1,13 @@ /******************************************************************************* - * Copyright (c) 2009, 2017 IBM Corporation and others. All rights reserved. This + * Copyright (c) 2009, 2017 IBM Corporation and others. + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: IBM Corporation - initial API and implementation ******************************************************************************/ diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/PlannerComponent.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/PlannerComponent.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/PlannerComponent.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/PlannerComponent.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/ProfileChangeRequest.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/ProfileChangeRequest.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/ProfileChangeRequest.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/ProfileChangeRequest.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation @@ -87,8 +90,8 @@ public class ProfileChangeRequest implem } public void addInstallableUnits(IInstallableUnit... toInstall) { - for (int i = 0; i < toInstall.length; i++) - add(toInstall[i]); + for (IInstallableUnit element : toInstall) + add(element); } @Override @@ -99,8 +102,8 @@ public class ProfileChangeRequest implem } public void removeInstallableUnits(IInstallableUnit[] toUninstall) { - for (int i = 0; i < toUninstall.length; i++) - remove(toUninstall[i]); + for (IInstallableUnit element : toUninstall) + remove(element); } @Override diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/Projector.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/Projector.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/Projector.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/Projector.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,13 @@ /******************************************************************************* * Copyright (c) 2007, 2018 IBM Corporation and others. - * All rights reserved. This + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation @@ -411,9 +415,7 @@ public class Projector { } } else { List newConstraint = new ArrayList<>(matches.size()); - IInstallableUnit current; - for (Iterator it = matches.iterator(); it.hasNext();) { - current = it.next(); + for (IInstallableUnit current : matches) { newConstraint.add(getNonGreedyVariable(current)); } createImplication(new Object[] {iu}, newConstraint, new Explanation.HardRequirement(iu, req)); // FIXME @@ -421,13 +423,11 @@ public class Projector { } } else { if (!matches.isEmpty()) { - IInstallableUnit current; AbstractVariable abs; if (req.isGreedy()) { abs = getAbstractVariable(req); createImplication(new Object[] {abs, iu}, matches, Explanation.OPTIONAL_REQUIREMENT); - for (Iterator it = matches.iterator(); it.hasNext();) { - current = it.next(); + for (IInstallableUnit current : matches) { if (nonGreedyIUs.contains(current)) { addNonGreedyProvider(getNonGreedyVariable(current), abs); } @@ -436,8 +436,7 @@ public class Projector { } else { abs = getAbstractVariable(req, false); List newConstraint = new ArrayList<>(); - for (Iterator it = matches.iterator(); it.hasNext();) { - current = it.next(); + for (IInstallableUnit current : matches) { newConstraint.add(getNonGreedyVariable(current)); } createImplication(new Object[] {abs, iu}, newConstraint, Explanation.OPTIONAL_REQUIREMENT); @@ -556,7 +555,6 @@ public class Projector { if (matches.isEmpty()) { missingRequirement(patch, req); } else { - IInstallableUnit current; if (req.isGreedy()) { IInstallableUnit reqIu = matches.get(0); Explanation explanation; @@ -570,16 +568,14 @@ public class Projector { explanation = new Explanation.PatchedHardRequirement(iu, req, patch); } createImplication(new Object[] {patch, iu}, matches, explanation); - for (Iterator it = matches.iterator(); it.hasNext();) { - current = it.next(); + for (IInstallableUnit current : matches) { if (nonGreedyIUs.contains(current)) { addNonGreedyProvider(getNonGreedyVariable(current), iu); } } } else { List newConstraint = new ArrayList<>(); - for (Iterator it = matches.iterator(); it.hasNext();) { - current = it.next(); + for (IInstallableUnit current : matches) { newConstraint.add(getNonGreedyVariable(current)); } createImplication(new Object[] {iu}, newConstraint, new Explanation.HardRequirement(iu, req)); // FIXME @@ -587,13 +583,11 @@ public class Projector { } } else { if (!matches.isEmpty()) { - IInstallableUnit current; AbstractVariable abs; if (req.isGreedy()) { abs = getAbstractVariable(req); createImplication(new Object[] {patch, abs, iu}, matches, Explanation.OPTIONAL_REQUIREMENT); - for (Iterator it = matches.iterator(); it.hasNext();) { - current = it.next(); + for (IInstallableUnit current : matches) { if (nonGreedyIUs.contains(current)) { addNonGreedyProvider(getNonGreedyVariable(current), abs); } @@ -602,8 +596,7 @@ public class Projector { } else { abs = getAbstractVariable(req, false); List newConstraint = new ArrayList<>(matches.size()); - for (Iterator it = matches.iterator(); it.hasNext();) { - current = it.next(); + for (IInstallableUnit current : matches) { newConstraint.add(getNonGreedyVariable(current)); } createImplication(new Object[] {patch, abs, iu}, newConstraint, Explanation.OPTIONAL_REQUIREMENT); @@ -634,10 +627,8 @@ public class Projector { pending.matches = matches; } else { // manage non greedy IUs - IInstallableUnit current; List nonGreedys = new ArrayList<>(); - for (Iterator it = matches.iterator(); it.hasNext();) { - current = it.next(); + for (IInstallableUnit current : matches) { if (nonGreedyIUs.contains(current)) { nonGreedys.add(getNonGreedyVariable(current)); } @@ -659,16 +650,14 @@ public class Projector { // Fix: make sure we collect all patches that will impact this IU-req, not just one pending.explanation = explanation; pending.matches = matches; - for (Iterator it = matches.iterator(); it.hasNext();) { - current = it.next(); + for (IInstallableUnit current : matches) { if (nonGreedyIUs.contains(current)) { addNonGreedyProvider(getNonGreedyVariable(current), iu); } } } else { List newConstraint = new ArrayList<>(matches.size()); - for (Iterator it = matches.iterator(); it.hasNext();) { - current = it.next(); + for (IInstallableUnit current : matches) { newConstraint.add(getNonGreedyVariable(current)); } pending.explanation = new Explanation.HardRequirement(iu, req); @@ -679,7 +668,6 @@ public class Projector { } } else { if (!matches.isEmpty()) { - IInstallableUnit current; AbstractVariable abs; matches.add(patch); pending = new Pending(); @@ -690,8 +678,7 @@ public class Projector { // Fix: make sure we collect all patches that will impact this IU-req, not just one pending.left = new Object[] {abs, iu}; pending.matches = matches; - for (Iterator it = matches.iterator(); it.hasNext();) { - current = it.next(); + for (IInstallableUnit current : matches) { if (nonGreedyIUs.contains(current)) { addNonGreedyProvider(getNonGreedyVariable(current), abs); } @@ -699,8 +686,7 @@ public class Projector { } else { abs = getAbstractVariable(req, false); List newConstraint = new ArrayList<>(matches.size()); - for (Iterator it = matches.iterator(); it.hasNext();) { - current = it.next(); + for (IInstallableUnit current : matches) { newConstraint.add(getNonGreedyVariable(current)); } newConstraint.add(patch); @@ -741,10 +727,8 @@ public class Projector { } } else { // manage non greedy IUs - IInstallableUnit current; List nonGreedys = new ArrayList<>(matches.size()); - for (Iterator it = matches.iterator(); it.hasNext();) { - current = it.next(); + for (IInstallableUnit current : matches) { if (nonGreedyIUs.contains(current)) { nonGreedys.add(getNonGreedyVariable(current)); } @@ -764,16 +748,14 @@ public class Projector { explanation = new Explanation.HardRequirement(iu, req); } createImplication(iu, matches, explanation); - for (Iterator it = matches.iterator(); it.hasNext();) { - current = it.next(); + for (IInstallableUnit current : matches) { if (nonGreedyIUs.contains(current)) { addNonGreedyProvider(getNonGreedyVariable(current), iu); } } } else { List newConstraint = new ArrayList<>(matches.size()); - for (Iterator it = matches.iterator(); it.hasNext();) { - current = it.next(); + for (IInstallableUnit current : matches) { newConstraint.add(getNonGreedyVariable(current)); } createImplication(new Object[] {iu}, newConstraint, new Explanation.HardRequirement(iu, req)); // FIXME @@ -781,15 +763,13 @@ public class Projector { } } else { if (!matches.isEmpty()) { - IInstallableUnit current; if (!requiredPatches.isEmpty()) matches.addAll(requiredPatches); AbstractVariable abs; if (req.isGreedy()) { abs = getAbstractVariable(req); createImplication(new Object[] {abs, iu}, matches, Explanation.OPTIONAL_REQUIREMENT); - for (Iterator it = matches.iterator(); it.hasNext();) { - current = it.next(); + for (IInstallableUnit current : matches) { if (nonGreedyIUs.contains(current)) { addNonGreedyProvider(getNonGreedyVariable(current), iu); } @@ -797,8 +777,7 @@ public class Projector { } else { abs = getAbstractVariable(req, false); List newConstraint = new ArrayList<>(matches.size()); - for (Iterator it = matches.iterator(); it.hasNext();) { - current = it.next(); + for (IInstallableUnit current : matches) { newConstraint.add(getNonGreedyVariable(current)); } createImplication(new Object[] {abs, iu}, newConstraint, new Explanation.HardRequirement(iu, req)); // FIXME @@ -831,8 +810,7 @@ public class Projector { private List getApplicableMatches(IRequirement req) { List target = new ArrayList<>(); IQueryResult matches = picker.query(QueryUtil.createMatchQuery(req.getMatches()), null); - for (Iterator iterator = matches.iterator(); iterator.hasNext();) { - IInstallableUnit match = iterator.next(); + for (IInstallableUnit match : matches) { if (isApplicable(match)) { target.add(match); } @@ -868,9 +846,9 @@ public class Projector { rrr.add(new IRequirement[] {null, change.newValue()}); } //Add all the unmodified requirements to the result - for (int i = 0; i < originalRequirements.length; i++) { - if (originalRequirements[i] != null) - rrr.add(new IRequirement[] {originalRequirements[i], originalRequirements[i]}); + for (IRequirement originalRequirement : originalRequirements) { + if (originalRequirement != null) + rrr.add(new IRequirement[] {originalRequirement, originalRequirement}); } return rrr.toArray(new IRequirement[rrr.size()][]); } @@ -953,8 +931,8 @@ public class Projector { private void createAtMostOne(IInstallableUnit[] ius) throws ContradictionException { if (DEBUG) { StringBuffer b = new StringBuffer(); - for (int i = 0; i < ius.length; i++) { - b.append(ius[i].toString()); + for (IInstallableUnit iu : ius) { + b.append(iu.toString()); } Tracing.debug("At most 1 of " + b); //$NON-NLS-1$ } diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/QueryableArray.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/QueryableArray.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/QueryableArray.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/QueryableArray.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/SimpleDirector.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/SimpleDirector.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/SimpleDirector.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/SimpleDirector.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,8 +1,13 @@ /******************************************************************************* - * Copyright (c) 2007, 2017 IBM Corporation and others. All rights reserved. This + * Copyright (c) 2007, 2017 IBM Corporation and others. + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/SimplePlanner.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/SimplePlanner.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/SimplePlanner.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/SimplePlanner.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,8 +1,13 @@ /******************************************************************************* - * Copyright (c) 2007, 2017 IBM Corporation and others. All rights reserved. This + * Copyright (c) 2007, 2017 IBM Corporation and others. + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation @@ -12,13 +17,39 @@ ******************************************************************************/ package org.eclipse.equinox.internal.p2.director; +import static org.eclipse.core.runtime.IStatus.CANCEL; +import static org.eclipse.core.runtime.IStatus.ERROR; +import static org.eclipse.core.runtime.IStatus.INFO; +import static org.eclipse.core.runtime.IStatus.OK; +import static org.eclipse.equinox.internal.p2.director.DirectorActivator.PI_DIRECTOR; +import static org.eclipse.equinox.internal.provisional.p2.director.RequestStatus.ADDED; +import static org.eclipse.equinox.internal.provisional.p2.director.RequestStatus.REMOVED; + import java.lang.reflect.Method; import java.net.URI; -import java.util.*; -import org.eclipse.core.runtime.*; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.StringTokenizer; +import java.util.stream.Stream; +import org.eclipse.core.runtime.Assert; +import org.eclipse.core.runtime.IProgressMonitor; +import org.eclipse.core.runtime.IStatus; +import org.eclipse.core.runtime.MultiStatus; +import org.eclipse.core.runtime.NullProgressMonitor; +import org.eclipse.core.runtime.OperationCanceledException; +import org.eclipse.core.runtime.Status; +import org.eclipse.core.runtime.SubMonitor; import org.eclipse.equinox.internal.p2.core.helpers.LogHelper; import org.eclipse.equinox.internal.p2.core.helpers.Tracing; import org.eclipse.equinox.internal.p2.director.Explanation.MissingIU; +import org.eclipse.equinox.internal.p2.director.Explanation.Singleton; import org.eclipse.equinox.internal.p2.metadata.IRequiredCapability; import org.eclipse.equinox.internal.p2.metadata.query.UpdateQuery; import org.eclipse.equinox.internal.p2.rollback.FormerState; @@ -26,12 +57,28 @@ import org.eclipse.equinox.internal.prov import org.eclipse.equinox.internal.provisional.p2.director.RequestStatus; import org.eclipse.equinox.p2.core.IAgentLocation; import org.eclipse.equinox.p2.core.IProvisioningAgent; -import org.eclipse.equinox.p2.engine.*; +import org.eclipse.equinox.p2.engine.IEngine; +import org.eclipse.equinox.p2.engine.IProfile; +import org.eclipse.equinox.p2.engine.IProfileRegistry; +import org.eclipse.equinox.p2.engine.IProvisioningPlan; +import org.eclipse.equinox.p2.engine.ProvisioningContext; import org.eclipse.equinox.p2.engine.query.IUProfilePropertyQuery; -import org.eclipse.equinox.p2.metadata.*; +import org.eclipse.equinox.p2.metadata.IInstallableUnit; +import org.eclipse.equinox.p2.metadata.IProvidedCapability; +import org.eclipse.equinox.p2.metadata.IRequirement; +import org.eclipse.equinox.p2.metadata.MetadataFactory; import org.eclipse.equinox.p2.metadata.MetadataFactory.InstallableUnitDescription; -import org.eclipse.equinox.p2.planner.*; -import org.eclipse.equinox.p2.query.*; +import org.eclipse.equinox.p2.metadata.Version; +import org.eclipse.equinox.p2.metadata.VersionRange; +import org.eclipse.equinox.p2.planner.IPlanner; +import org.eclipse.equinox.p2.planner.IProfileChangeRequest; +import org.eclipse.equinox.p2.planner.ProfileInclusionRules; +import org.eclipse.equinox.p2.query.CollectionResult; +import org.eclipse.equinox.p2.query.CompoundQueryable; +import org.eclipse.equinox.p2.query.IQuery; +import org.eclipse.equinox.p2.query.IQueryResult; +import org.eclipse.equinox.p2.query.IQueryable; +import org.eclipse.equinox.p2.query.QueryUtil; import org.eclipse.osgi.util.NLS; public class SimplePlanner implements IPlanner { @@ -69,11 +116,12 @@ public class SimplePlanner implements IP } } - Map[] changes = computeActualChangeRequest(toState, changeRequest); + Map[] changes = buildDetailedSuccess(toState, changeRequest); Map requestChanges = (changes == null) ? null : changes[0]; Map requestSideEffects = (changes == null) ? null : changes[1]; + IStatus status = convertChangesToStatus(requestChanges, requestSideEffects); QueryableArray plannedState = new QueryableArray(toState.toArray(new IInstallableUnit[toState.size()])); - PlannerStatus plannerStatus = new PlannerStatus(Status.OK_STATUS, null, requestChanges, requestSideEffects, plannedState); + PlannerStatus plannerStatus = new PlannerStatus(status, null, requestChanges, requestSideEffects, plannedState); plan.setStatus(plannerStatus); plan.setInstallerPlan(installerPlan); return plan; @@ -82,36 +130,33 @@ public class SimplePlanner implements IP private Map[] buildDetailedErrors(ProfileChangeRequest changeRequest) { Collection requestedAdditions = changeRequest.getAdditions(); Collection requestedRemovals = changeRequest.getRemovals(); - Map requestStatus = new HashMap<>(requestedAdditions.size() + requestedAdditions.size()); + Map requestStatus = new HashMap<>(requestedAdditions.size() + requestedRemovals.size()); for (IInstallableUnit added : requestedAdditions) { - requestStatus.put(added, new RequestStatus(added, RequestStatus.ADDED, IStatus.ERROR, null)); + requestStatus.put(added, new RequestStatus(added, ADDED, ERROR, null)); } for (IInstallableUnit removed : requestedRemovals) { - requestStatus.put(removed, new RequestStatus(removed, RequestStatus.REMOVED, IStatus.ERROR, null)); + requestStatus.put(removed, new RequestStatus(removed, REMOVED, ERROR, null)); } @SuppressWarnings("unchecked") Map[] maps = new Map[] {requestStatus, null}; return maps; } - private Map[] computeActualChangeRequest(Collection toState, ProfileChangeRequest changeRequest) { + private Map[] buildDetailedSuccess(Collection toState, ProfileChangeRequest changeRequest) { Collection requestedAdditions = changeRequest.getAdditions(); Collection requestedRemovals = new ArrayList<>(changeRequest.getRemovals()); requestedRemovals.removeAll(requestedAdditions); Map requestStatus = new HashMap<>(requestedAdditions.size() + requestedRemovals.size()); + for (IInstallableUnit added : requestedAdditions) { - if (toState.contains(added)) - requestStatus.put(added, new RequestStatus(added, RequestStatus.ADDED, IStatus.OK, null)); - else - requestStatus.put(added, new RequestStatus(added, RequestStatus.ADDED, IStatus.ERROR, null)); + int status = toState.contains(added) ? OK : ERROR; + requestStatus.put(added, new RequestStatus(added, ADDED, status, null)); } for (IInstallableUnit removed : requestedRemovals) { - if (!toState.contains(removed)) - requestStatus.put(removed, new RequestStatus(removed, RequestStatus.REMOVED, IStatus.OK, null)); - else - requestStatus.put(removed, new RequestStatus(removed, RequestStatus.REMOVED, IStatus.ERROR, null)); + int status = !toState.contains(removed) ? OK : ERROR; + requestStatus.put(removed, new RequestStatus(removed, REMOVED, status, null)); } //Compute the side effect changes (e.g. things installed optionally going away) @@ -120,7 +165,7 @@ public class SimplePlanner implements IP while (includedIUs.hasNext()) { IInstallableUnit removal = includedIUs.next(); if (!toState.contains(removal) && !requestStatus.containsKey(removal)) { - sideEffectStatus.put(removal, new RequestStatus(removal, RequestStatus.REMOVED, IStatus.INFO, null)); + sideEffectStatus.put(removal, new RequestStatus(removal, REMOVED, INFO, null)); } } @SuppressWarnings("unchecked") @@ -129,50 +174,111 @@ public class SimplePlanner implements IP } /** - * Converts a set containing a list of resolver explanations into a human-readable status object. + * Converts a list of {@link Projector#getExplanation() resolver explanations} to a human-readable status object + * + * @param explanations List of resolver explanations ordered by logical causality. + * I.e. read from start to end should forms logical chain of statements as to why resolution failed. + * @return the {@link IStatus} */ - private IStatus convertExplanationToStatus(Set explanations) { - if (explanations == null) - return new Status(IStatus.ERROR, DirectorActivator.PI_DIRECTOR, Messages.Director_Unsatisfied_Dependencies); - - // hack to create a useful message when a user installs something intended for a target platform into the IDE - ArrayList forTargets = new ArrayList<>(0); + private static IStatus convertExplanationToStatus(Set explanations) { + // Hack to create a useful message when a user installs something intended only for the PDE target platform into a general purpose profile. + List forTargets = new ArrayList<>(0); for (Explanation next : explanations) { - if (next instanceof Explanation.MissingIU) { - Explanation.MissingIU missingIU = (MissingIU) next; - if (missingIU.req instanceof IRequiredCapability && missingIU.req.getMatches().getParameters().length == 3 && "A.PDE.Target.Platform".equals(((IRequiredCapability) missingIU.req).getNamespace())) //$NON-NLS-1$ - forTargets.add(new Status(IStatus.ERROR, DirectorActivator.PI_DIRECTOR, missingIU.getUserReadableName(missingIU.iu))); - } - } - if (forTargets.size() > 0) { - // add a blurb about disabling 'include required software'. The following line could be removed if bug 309863 is fixed - forTargets.add(new Status(IStatus.ERROR, DirectorActivator.PI_DIRECTOR, Messages.Director_For_Target_Unselect_Required)); - // return a multi status with all the IUs that require A.PDE.Target.Platform - return new MultiStatus(DirectorActivator.PI_DIRECTOR, 1, forTargets.toArray(new IStatus[forTargets.size()]), Messages.Director_For_Target, null); - } - MultiStatus root = new MultiStatus(DirectorActivator.PI_DIRECTOR, 1, Messages.Director_Unsatisfied_Dependencies, null); - //try to find a more specific root message if possible - String specificMessage = null; - int errorCode = 0; + if (next instanceof MissingIU) { + MissingIU missingIU = (MissingIU) next; + if (missingIU.req instanceof IRequiredCapability && + missingIU.req.getMatches().getParameters().length == 3 && + "A.PDE.Target.Platform".equals(((IRequiredCapability) missingIU.req).getNamespace())) {//$NON-NLS-1$ + // This IU requires the PDE target platform IU and it is missing. + // I.e. this IU is intended only for the PDE target platform. + forTargets.add(new Status(ERROR, PI_DIRECTOR, Explanation.getUserReadableName(missingIU.iu))); + } + } + } + if (!forTargets.isEmpty()) { + // The following line could be removed if Bug 309863 is fixed + forTargets.add(new Status(ERROR, PI_DIRECTOR, Messages.Director_For_Target_Unselect_Required)); + // Return a multi status with all the IUs that require A.PDE.Target.Platform + return new MultiStatus(PI_DIRECTOR, 1, forTargets.stream().toArray(IStatus[]::new), Messages.Director_For_Target, null); + } + + // Use the most specific message for the root of the MultiStatus + // Missing IU takes precedence over singleton conflicts + String message = Messages.Director_Unsatisfied_Dependencies; + int errorCode = 1; for (Explanation next : explanations) { - root.add(next.toStatus()); - if (specificMessage == null && next instanceof Explanation.MissingIU) { - specificMessage = Messages.Explanation_rootMissing; + if (next instanceof MissingIU) { + message = Messages.Explanation_rootMissing; errorCode = 10053; - } else if (specificMessage == null && next instanceof Explanation.Singleton) { - specificMessage = Messages.Explanation_rootSingleton; + break; + } + + if (next instanceof Singleton) { + message = Messages.Explanation_rootSingleton; errorCode = 10054; + break; } } - //use a more specific root message if available - if (specificMessage != null) { - MultiStatus newRoot = new MultiStatus(DirectorActivator.PI_DIRECTOR, errorCode, specificMessage, null); - newRoot.merge(root); - root = newRoot; - } + + // The children follow the order of logical causality as produced by the Projector + MultiStatus root = new MultiStatus(PI_DIRECTOR, errorCode, message, null); + explanations.stream().map(Explanation::toStatus).forEach(root::add); return root; } + /** + * TODO Find a way to emit INFO status. The issue is that all {@link IStatus#isOK()} calls will fail. + * + * @param requestChanges + * @param requestSideEffects + * @return the {@link IStatus} + */ + private static IStatus convertChangesToStatus(Map requestChanges, Map requestSideEffects) { + MultiStatus root = new MultiStatus(PI_DIRECTOR, OK, Messages.Director_Satisfied_Dependencies, null); + + Stream.concat(requestChanges.values().stream(), requestSideEffects.values().stream()) + .map(SimplePlanner::buildChangeStatus) + .forEach(root::add); + + return root; + } + + private static IStatus buildChangeStatus(RequestStatus rs) { + final String change; + switch (rs.getInitialRequestType()) { + case ADDED : + change = "Add"; //$NON-NLS-1$ + break; + case REMOVED : + change = "Remove"; //$NON-NLS-1$ + break; + default : + change = "UNKNOWN change type " + rs.getInitialRequestType(); //$NON-NLS-1$ + break; + } + + final IStatus status; + if (!rs.isOK()) { + String message = NLS.bind(Messages.Director_Unsatisfied_Change, change, Explanation.getUserReadableName(rs.getIu())); + + if (rs.getExplanations().isEmpty()) { + status = new Status(OK, PI_DIRECTOR, message, rs.getException()); + } else { + status = new MultiStatus( + PI_DIRECTOR, + OK, + rs.getExplanations().stream().map(Explanation::toStatus).toArray(IStatus[]::new), + message, + rs.getException()); + } + } else { + String message = NLS.bind(Messages.Director_Satisfied_Change, change, Explanation.getUserReadableName(rs.getIu())); + status = new Status(OK, PI_DIRECTOR, message, rs.getException()); + } + + return status; + } + private void planPropertyOperations(IProvisioningPlan plan, ProfileChangeRequest profileChangeRequest, Collection toState) { // First deal with profile properties to remove. @@ -306,8 +412,16 @@ public class SimplePlanner implements IP return satisfyMetaRequirements(p.getProperties()); } - // Return the set of IUs representing the complete future state of the profile to satisfy the request or return a - // ProvisioningPlan when the request can not be satisfied + /** + * Performs a provisioning request resolution + * + * @param profileChangeRequest The requested change. + * @param context The context for the resolution pass + * @param monitor + * + * @return Return a {@link Projector} that captures the complete future state of the profile that satisfies the request. + * If the request can't be satisfied return an {@link IProvisioningPlan} where the error is captured in {@link IProvisioningPlan#getStatus()} + */ private Object getSolutionFor(ProfileChangeRequest profileChangeRequest, ProvisioningContext context, IProgressMonitor monitor) { SubMonitor sub = SubMonitor.convert(monitor, ExpandWork); sub.setTaskName(Messages.Director_Task_Resolving_Dependencies); @@ -322,12 +436,12 @@ public class SimplePlanner implements IP extraIUs.addAll(profileChangeRequest.getRemovals()); if (context == null || context.getProperty(INCLUDE_PROFILE_IUS) == null || context.getProperty(INCLUDE_PROFILE_IUS).equalsIgnoreCase(Boolean.TRUE.toString())) { Iterator itor = profile.available(QueryUtil.createIUAnyQuery(), null).iterator(); - while (itor.hasNext()) + while (itor.hasNext()) { extraIUs.add(itor.next()); + } } - IInstallableUnit[] availableIUs = gatherAvailableInstallableUnits(extraIUs.toArray(new IInstallableUnit[extraIUs.size()]), context, sub.newChild(ExpandWork / 4)); - + IInstallableUnit[] availableIUs = gatherAvailableInstallableUnits(extraIUs.stream().toArray(IInstallableUnit[]::new), context, sub.newChild(ExpandWork / 4)); Slicer slicer = new Slicer(new QueryableArray(availableIUs), newSelectionContext, satisfyMetaRequirements(profileChangeRequest.getProfileProperties())); IQueryable slice = slicer.slice(new IInstallableUnit[] {(IInstallableUnit) updatedPlan[0]}, sub.newChild(ExpandWork / 4)); if (slice == null) { @@ -335,45 +449,59 @@ public class SimplePlanner implements IP plan.setStatus(slicer.getStatus()); return plan; } + @SuppressWarnings("unchecked") - final IQueryable[] queryables = new IQueryable[] {slice, new QueryableArray(profileChangeRequest.getAdditions().toArray(new IInstallableUnit[profileChangeRequest.getAdditions().size()]))}; + IQueryable[] queryables = new IQueryable[] {slice, new QueryableArray(profileChangeRequest.getAdditions().stream().toArray(IInstallableUnit[]::new))}; slice = new CompoundQueryable<>(queryables); + Projector projector = new Projector(slice, newSelectionContext, slicer.getNonGreedyIUs(), satisfyMetaRequirements(profileChangeRequest.getProfileProperties())); - projector.setUserDefined(profileChangeRequest.getPropertiesToAdd().containsKey("_internal_user_defined_")); + projector.setUserDefined(profileChangeRequest.getPropertiesToAdd().containsKey("_internal_user_defined_")); //$NON-NLS-1$ projector.encode((IInstallableUnit) updatedPlan[0], (IInstallableUnit[]) updatedPlan[1], profile, profileChangeRequest.getAdditions(), sub.newChild(ExpandWork / 4)); + IStatus s = projector.invokeSolver(sub.newChild(ExpandWork / 4)); - if (s.getSeverity() == IStatus.CANCEL) { - IProvisioningPlan plan = engine.createPlan(profile, context); - plan.setStatus(s); - return plan; - } - if (s.getSeverity() == IStatus.ERROR) { - sub.setTaskName(Messages.Planner_NoSolution); - if (s.getCode() != UNSATISFIABLE || (context != null && !(context.getProperty(EXPLANATION) == null || Boolean.TRUE.toString().equalsIgnoreCase(context.getProperty(EXPLANATION))))) { + switch (s.getSeverity()) { + case CANCEL : { IProvisioningPlan plan = engine.createPlan(profile, context); plan.setStatus(s); return plan; } - //Extract the explanation - Set explanation = projector.getExplanation(sub.newChild(ExpandWork / 4)); - IStatus explanationStatus = convertExplanationToStatus(explanation); - - Map[] changes = buildDetailedErrors(profileChangeRequest); - Map requestChanges = (changes == null) ? null : changes[0]; - Map requestSideEffects = (changes == null) ? null : changes[1]; - PlannerStatus plannerStatus = new PlannerStatus(explanationStatus, new RequestStatus(null, RequestStatus.REMOVED, IStatus.ERROR, explanation), requestChanges, requestSideEffects, null); + // Convert the projector explanation chain into an IStatus + case ERROR : { + sub.setTaskName(Messages.Planner_NoSolution); + if (s.getCode() != UNSATISFIABLE || (context != null && !(context.getProperty(EXPLANATION) == null || Boolean.parseBoolean(context.getProperty(EXPLANATION))))) { + IProvisioningPlan plan = engine.createPlan(profile, context); + plan.setStatus(s); + return plan; + } + + //Extract the explanation + Set explanation = projector.getExplanation(sub.newChild(ExpandWork / 4)); + IStatus explanationStatus = convertExplanationToStatus(explanation); + + Map[] changes = buildDetailedErrors(profileChangeRequest); + Map requestChanges = (changes == null) ? null : changes[0]; + Map requestSideEffects = (changes == null) ? null : changes[1]; + PlannerStatus plannerStatus = new PlannerStatus(explanationStatus, new RequestStatus(null, REMOVED, ERROR, explanation), requestChanges, requestSideEffects, null); + + IProvisioningPlan plan = engine.createPlan(profile, context); + plan.setStatus(plannerStatus); + return plan; + } + + //The resolution succeeded. We can forget about the warnings since there is a solution. + case OK : { + return projector; + } - IProvisioningPlan plan = engine.createPlan(profile, context); - plan.setStatus(plannerStatus); - return plan; + // Log the unexpected status type, but continue + default : { + if (Tracing.DEBUG) { + LogHelper.log(s); + } + return projector; + } } - //The resolution succeeded. We can forget about the warnings since there is a solution. - if (Tracing.DEBUG && s.getSeverity() != IStatus.OK) - LogHelper.log(s); - s = Status.OK_STATUS; - - return projector; } finally { sub.done(); } @@ -388,8 +516,9 @@ public class SimplePlanner implements IP //Get the solution for the initial request Object resolutionResult = getSolutionFor(pcr, context, sub.newChild(ExpandWork / 2)); // a return value of a plan indicates failure when resolving so return. - if (resolutionResult instanceof IProvisioningPlan) + if (resolutionResult instanceof IProvisioningPlan) { return (IProvisioningPlan) resolutionResult; + } Collection newState = ((Projector) resolutionResult).extractSolution(); Collection fullState = new ArrayList<>(); @@ -471,7 +600,7 @@ public class SimplePlanner implements IP sub.setTaskName(Messages.Director_Task_installer_plan); if (profileRegistry == null) { IProvisioningPlan plan = engine.createPlan(initialRequest.getProfile(), initialContext); - plan.setStatus(new Status(IStatus.ERROR, DirectorActivator.PI_DIRECTOR, Messages.Planner_no_profile_registry)); + plan.setStatus(new Status(ERROR, PI_DIRECTOR, Messages.Planner_no_profile_registry)); return plan; } @@ -490,7 +619,7 @@ public class SimplePlanner implements IP if (profile.getProfileId().equals(installerProfile.getProfileId())) { if (profile.getTimestamp() != installerProfile.getTimestamp()) { IProvisioningPlan plan = engine.createPlan(initialRequest.getProfile(), initialContext); - plan.setStatus(new Status(IStatus.ERROR, DirectorActivator.PI_DIRECTOR, NLS.bind(Messages.Planner_profile_out_of_sync, profile.getProfileId()))); + plan.setStatus(new Status(ERROR, PI_DIRECTOR, NLS.bind(Messages.Planner_profile_out_of_sync, profile.getProfileId()))); return plan; } return createInstallerPlanForCohostedCase(profile, initialRequest, initialPlan, unattachedState, expectedState, initialContext, sub); @@ -543,8 +672,8 @@ public class SimplePlanner implements IP if (previousActionsIU != null) agentRequest.remove(previousActionsIU); Object externalInstallerPlan = getSolutionFor(agentRequest, initialContext, sub.newChild(10)); - if (externalInstallerPlan instanceof IProvisioningPlan && ((IProvisioningPlan) externalInstallerPlan).getStatus().getSeverity() == IStatus.ERROR) { - MultiStatus externalInstallerStatus = new MultiStatus(DirectorActivator.PI_DIRECTOR, 0, Messages.Planner_can_not_install_preq, null); + if (externalInstallerPlan instanceof IProvisioningPlan && ((IProvisioningPlan) externalInstallerPlan).getStatus().getSeverity() == ERROR) { + MultiStatus externalInstallerStatus = new MultiStatus(PI_DIRECTOR, 0, Messages.Planner_can_not_install_preq, null); externalInstallerStatus.add(((IProvisioningPlan) externalInstallerPlan).getStatus()); IProvisioningPlan plan = engine.createPlan(initialRequest.getProfile(), initialContext); plan.setStatus(externalInstallerStatus); @@ -594,8 +723,8 @@ public class SimplePlanner implements IP ArrayList extraIUs = new ArrayList<>(unattachedState); agentCtx.setExtraInstallableUnits(extraIUs); Object agentSolution = getSolutionFor(agentRequest, agentCtx, monitor.newChild(3)); - if (agentSolution instanceof IProvisioningPlan && ((IProvisioningPlan) agentSolution).getStatus().getSeverity() == IStatus.ERROR) { - MultiStatus agentStatus = new MultiStatus(DirectorActivator.PI_DIRECTOR, 0, Messages.Planner_actions_and_software_incompatible, null); + if (agentSolution instanceof IProvisioningPlan && ((IProvisioningPlan) agentSolution).getStatus().getSeverity() == ERROR) { + MultiStatus agentStatus = new MultiStatus(PI_DIRECTOR, 0, Messages.Planner_actions_and_software_incompatible, null); agentStatus.add(((IProvisioningPlan) agentSolution).getStatus()); IProvisioningPlan plan = engine.createPlan(initialRequest.getProfile(), initialContext); plan.setStatus(agentStatus); @@ -614,7 +743,7 @@ public class SimplePlanner implements IP //...This computes the attachment of what is currently in the profile Object initialSolution = getSolutionFor(new ProfileChangeRequest(new EverythingOptionalProfile(initialRequest.getProfile())), noRepoContext, new NullProgressMonitor()); if (initialSolution instanceof IProvisioningPlan) { - LogHelper.log(new Status(IStatus.ERROR, DirectorActivator.PI_DIRECTOR, "The resolution of the previous state contained in profile " + initialRequest.getProfile().getProfileId() + " version " + initialRequest.getProfile().getTimestamp() + " failed.")); //$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$ + LogHelper.log(new Status(ERROR, PI_DIRECTOR, "The resolution of the previous state contained in profile " + initialRequest.getProfile().getProfileId() + " version " + initialRequest.getProfile().getTimestamp() + " failed.")); //$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$ return (IProvisioningPlan) initialSolution; } Iterator profileState = initialRequest.getProfile().query(QueryUtil.createIUAnyQuery(), null).iterator(); @@ -638,7 +767,7 @@ public class SimplePlanner implements IP //Compute the attachment of the previous state Object initialSolution = getSolutionFor(new ProfileChangeRequest(new EverythingOptionalProfile(request.getProfile())), noRepoContext, new NullProgressMonitor()); if (initialSolution instanceof IProvisioningPlan) { - LogHelper.log(new Status(IStatus.ERROR, DirectorActivator.PI_DIRECTOR, "The resolution of the previous state contained in profile " + request.getProfile().getProfileId() + " version " + request.getProfile().getTimestamp() + " failed.")); //$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$ + LogHelper.log(new Status(ERROR, PI_DIRECTOR, "The resolution of the previous state contained in profile " + request.getProfile().getProfileId() + " version " + request.getProfile().getTimestamp() + " failed.")); //$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$ return (IProvisioningPlan) initialSolution; } Iterator profileState = request.getProfile().query(QueryUtil.createIUAnyQuery(), null).iterator(); diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/Slicer.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/Slicer.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/Slicer.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/Slicer.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/UserDefinedOptimizationFunction.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/UserDefinedOptimizationFunction.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/UserDefinedOptimizationFunction.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/director/UserDefinedOptimizationFunction.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,8 +1,13 @@ /******************************************************************************* - * Copyright (c) 2009, 2017 Daniel Le Berre and others. All rights reserved. This + * Copyright (c) 2009, 2017 Daniel Le Berre and others. + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Daniel Le Berre - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/rollback/FormerState.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/rollback/FormerState.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/rollback/FormerState.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/p2/rollback/FormerState.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/provisional/p2/director/IDirector.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/provisional/p2/director/IDirector.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/provisional/p2/director/IDirector.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/provisional/p2/director/IDirector.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/provisional/p2/director/PlanExecutionHelper.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/provisional/p2/director/PlanExecutionHelper.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/provisional/p2/director/PlanExecutionHelper.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/provisional/p2/director/PlanExecutionHelper.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2015 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/provisional/p2/director/PlannerStatus.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/provisional/p2/director/PlannerStatus.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/provisional/p2/director/PlannerStatus.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/provisional/p2/director/PlannerStatus.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2011, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/provisional/p2/director/RequestStatus.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/provisional/p2/director/RequestStatus.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/provisional/p2/director/RequestStatus.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/internal/provisional/p2/director/RequestStatus.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,20 +1,29 @@ /******************************************************************************* * Copyright (c) 2008, 2017 IBM Corporation and others. - * All rights reserved. This + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation ******************************************************************************/ package org.eclipse.equinox.internal.provisional.p2.director; -import java.util.*; +import java.util.Collections; +import java.util.HashSet; +import java.util.Iterator; +import java.util.Set; import org.eclipse.core.runtime.Status; -import org.eclipse.equinox.internal.p2.director.*; +import org.eclipse.equinox.internal.p2.director.DirectorActivator; +import org.eclipse.equinox.internal.p2.director.Explanation; import org.eclipse.equinox.internal.p2.director.Explanation.IUInstalled; import org.eclipse.equinox.internal.p2.director.Explanation.IUToInstall; +import org.eclipse.equinox.internal.p2.director.Messages; import org.eclipse.equinox.p2.metadata.IInstallableUnit; import org.eclipse.osgi.util.NLS; @@ -33,10 +42,11 @@ public class RequestStatus extends Statu super(severity, DirectorActivator.PI_DIRECTOR, NLS.bind(Messages.RequestStatus_message, iu)); this.iu = iu; this.initialRequestType = initialRequesType; - this.explanation = explanation; conflictingRootIUs = new HashSet<>(); conflictingInstalledIUs = new HashSet<>(); if (explanation != null) { + this.explanation = explanation; + Iterator iterator = explanation.iterator(); Explanation o = null; while (iterator.hasNext() && ((o = iterator.next()) instanceof Explanation.IUToInstall)) { @@ -49,6 +59,8 @@ public class RequestStatus extends Statu } } detailedExplanation = o; + } else { + this.explanation = Collections.emptySet(); } } diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/p2/planner/IPlanner.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/p2/planner/IPlanner.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/p2/planner/IPlanner.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/p2/planner/IPlanner.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/p2/planner/IProfileChangeRequest.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/p2/planner/IProfileChangeRequest.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/p2/planner/IProfileChangeRequest.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/p2/planner/IProfileChangeRequest.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2010, 2013 Sonatype, Inc and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Sonatype, Inc. - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/p2/planner/ProfileInclusionRules.java 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/p2/planner/ProfileInclusionRules.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/p2/planner/ProfileInclusionRules.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director/src/org/eclipse/equinox/p2/planner/ProfileInclusionRules.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2010 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director.app/about.html 4.9-1/bundles/org.eclipse.equinox.p2.director.app/about.html --- 4.8-1/bundles/org.eclipse.equinox.p2.director.app/about.html 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director.app/about.html 2018-08-29 14:43:08.000000000 +0000 @@ -2,27 +2,35 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + About -

About This Content

- -

June 2, 2006

-

License

+

About This Content

-

The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise -indicated below, the Content is provided to you under the terms and conditions of the -Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available -at http://www.eclipse.org/legal/epl-v10.html. -For purposes of the EPL, "Program" will mean the Content.

+

November 30, 2017

+

License

-

If you did not receive this Content directly from the Eclipse Foundation, the Content is -being redistributed by another party ("Redistributor") and different terms and conditions may -apply to your use of any object code in the Content. Check the Redistributor's license that was -provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise -indicated below, the terms and conditions of the EPL still apply to any source code in the Content -and such source code may be obtained at http://www.eclipse.org.

+

+ The Eclipse Foundation makes available all content in this plug-in + ("Content"). Unless otherwise indicated below, the Content + is provided to you under the terms and conditions of the Eclipse + Public License Version 2.0 ("EPL"). A copy of the EPL is + available at http://www.eclipse.org/legal/epl-2.0. + For purposes of the EPL, "Program" will mean the Content. +

+ +

+ If you did not receive this Content directly from the Eclipse + Foundation, the Content is being redistributed by another party + ("Redistributor") and different terms and conditions may + apply to your use of any object code in the Content. Check the + Redistributor's license that was provided with the Content. If no such + license exists, contact the Redistributor. Unless otherwise indicated + below, the terms and conditions of the EPL still apply to any source + code in the Content and such source code may be obtained at http://www.eclipse.org. +

\ No newline at end of file diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director.app/build.properties 4.9-1/bundles/org.eclipse.equinox.p2.director.app/build.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.director.app/build.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director.app/build.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2007, 2010 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director.app/META-INF/MANIFEST.MF 4.9-1/bundles/org.eclipse.equinox.p2.director.app/META-INF/MANIFEST.MF --- 4.8-1/bundles/org.eclipse.equinox.p2.director.app/META-INF/MANIFEST.MF 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director.app/META-INF/MANIFEST.MF 2018-08-29 14:43:08.000000000 +0000 @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-SymbolicName: org.eclipse.equinox.p2.director.app;singleton:=true -Bundle-Version: 1.1.0.qualifier +Bundle-Version: 1.1.200.qualifier Bundle-Activator: org.eclipse.equinox.internal.p2.director.app.Activator Bundle-Vendor: %providerName Bundle-Localization: plugin diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director.app/plugin.properties 4.9-1/bundles/org.eclipse.equinox.p2.director.app/plugin.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.director.app/plugin.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director.app/plugin.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2007, 2009 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director.app/pom.xml 4.9-1/bundles/org.eclipse.equinox.p2.director.app/pom.xml --- 4.8-1/bundles/org.eclipse.equinox.p2.director.app/pom.xml 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director.app/pom.xml 2018-08-29 14:43:08.000000000 +0000 @@ -2,13 +2,13 @@ 4.0.0 - org.eclipse.equinox.p2-parent - org.eclipse - 4.8.0-SNAPSHOT - ../../org.eclipse.equinox.p2.releng/org.eclipse.equinox.p2-parent + org.eclipse.equinox.p2 + rt.equinox.p2 + 4.9.0-SNAPSHOT + ../.. org.eclipse.equinox org.eclipse.equinox.p2.director.app - 1.1.0-SNAPSHOT + 1.1.200-SNAPSHOT eclipse-plugin diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/Activator.java 4.9-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/Activator.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/Activator.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/Activator.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,8 +1,13 @@ /******************************************************************************* - * Copyright (c) 2007, 2017 IBM Corporation and others. All rights reserved. This + * Copyright (c) 2007, 2017 IBM Corporation and others. + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: IBM Corporation - initial API and implementation ******************************************************************************/ diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/DefaultLog.java 4.9-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/DefaultLog.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/DefaultLog.java 1970-01-01 00:00:00.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/DefaultLog.java 2018-08-29 14:43:08.000000000 +0000 @@ -0,0 +1,59 @@ +package org.eclipse.equinox.internal.p2.director.app; + +import java.io.Closeable; +import org.eclipse.core.runtime.IStatus; +import org.eclipse.equinox.internal.p2.core.helpers.LogHelper; +import org.eclipse.equinox.internal.p2.core.helpers.ServiceHelper; +import org.eclipse.osgi.framework.log.FrameworkLog; + +/** + * Default implementation used for command line director invocations + */ +public class DefaultLog implements ILog, Closeable { + private boolean failed = false; + + /** + * Sends logs to the {@link LogHelper standard p2 log} + */ + @Override + public void log(IStatus status) { + LogHelper.log(status); + + if (status.getSeverity() == IStatus.ERROR) { + failed = true; + } + } + + /** + * Sends messages to {@link System#out} + */ + @Override + public void printOut(String message) { + System.out.println(message); + } + + /** + * Sends messages to {@link System#err} + */ + @Override + public void printErr(String message) { + System.err.println(message); + } + + /** + * If failures were detected print a final message with the location of the log file + */ + @Override + public void close() { + if (!failed) { + return; + } + + FrameworkLog fwLog = ServiceHelper.getService(Activator.getContext(), FrameworkLog.class); + if (fwLog == null) { + return; + } + + printErr("There were errors. See log file: " + fwLog.getFile()); //$NON-NLS-1$ + } +} diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/DirectorApplication.java 4.9-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/DirectorApplication.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/DirectorApplication.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/DirectorApplication.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation @@ -13,19 +16,53 @@ * Pascal Rapicault - Support for bundled macosx 431116 * Red Hat, Inc. - support repositories passed via fragments (see bug 378329).Bug 460967 * SAP AG - list formatting (bug 423538) + * Todor Boev - Software AG *******************************************************************************/ package org.eclipse.equinox.internal.p2.director.app; -import java.io.*; +import static org.eclipse.core.runtime.IStatus.ERROR; +import static org.eclipse.core.runtime.IStatus.INFO; +import static org.eclipse.core.runtime.IStatus.OK; +import static org.eclipse.core.runtime.IStatus.WARNING; +import static org.eclipse.equinox.internal.p2.director.app.Activator.ID; + +import java.io.BufferedInputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.PrintStream; import java.net.URI; import java.net.URISyntaxException; import java.security.cert.Certificate; -import java.util.*; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Collections; +import java.util.EventObject; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Iterator; +import java.util.List; +import java.util.Map; import java.util.Map.Entry; -import org.eclipse.core.runtime.*; +import java.util.Properties; +import java.util.Set; +import java.util.TreeSet; +import java.util.stream.Collectors; +import java.util.stream.IntStream; +import org.eclipse.core.runtime.Assert; +import org.eclipse.core.runtime.CoreException; +import org.eclipse.core.runtime.IProgressMonitor; +import org.eclipse.core.runtime.IStatus; +import org.eclipse.core.runtime.MultiStatus; +import org.eclipse.core.runtime.NullProgressMonitor; +import org.eclipse.core.runtime.Path; +import org.eclipse.core.runtime.Status; +import org.eclipse.core.runtime.URIUtil; import org.eclipse.equinox.app.IApplication; import org.eclipse.equinox.app.IApplicationContext; -import org.eclipse.equinox.internal.p2.core.helpers.*; +import org.eclipse.equinox.internal.p2.core.helpers.ServiceHelper; +import org.eclipse.equinox.internal.p2.core.helpers.StringHelper; import org.eclipse.equinox.internal.p2.director.ProfileChangeRequest; import org.eclipse.equinox.internal.p2.engine.EngineActivator; import org.eclipse.equinox.internal.provisional.p2.core.eventbus.IProvisioningEventBus; @@ -33,22 +70,37 @@ import org.eclipse.equinox.internal.prov import org.eclipse.equinox.internal.provisional.p2.director.IDirector; import org.eclipse.equinox.internal.provisional.p2.director.PlanExecutionHelper; import org.eclipse.equinox.internal.provisional.p2.repository.RepositoryEvent; -import org.eclipse.equinox.p2.core.*; -import org.eclipse.equinox.p2.engine.*; +import org.eclipse.equinox.p2.core.IProvisioningAgent; +import org.eclipse.equinox.p2.core.IProvisioningAgentProvider; +import org.eclipse.equinox.p2.core.ProvisionException; +import org.eclipse.equinox.p2.core.UIServices; +import org.eclipse.equinox.p2.engine.IEngine; +import org.eclipse.equinox.p2.engine.IProfile; +import org.eclipse.equinox.p2.engine.IProfileRegistry; +import org.eclipse.equinox.p2.engine.IProvisioningPlan; +import org.eclipse.equinox.p2.engine.PhaseSetFactory; +import org.eclipse.equinox.p2.engine.ProvisioningContext; import org.eclipse.equinox.p2.engine.query.UserVisibleRootQuery; -import org.eclipse.equinox.p2.metadata.*; +import org.eclipse.equinox.p2.metadata.IInstallableUnit; +import org.eclipse.equinox.p2.metadata.IVersionedId; import org.eclipse.equinox.p2.metadata.Version; import org.eclipse.equinox.p2.metadata.VersionRange; +import org.eclipse.equinox.p2.metadata.VersionedId; import org.eclipse.equinox.p2.planner.IPlanner; import org.eclipse.equinox.p2.planner.IProfileChangeRequest; -import org.eclipse.equinox.p2.query.*; +import org.eclipse.equinox.p2.query.Collector; +import org.eclipse.equinox.p2.query.IQuery; +import org.eclipse.equinox.p2.query.IQueryResult; +import org.eclipse.equinox.p2.query.IQueryable; +import org.eclipse.equinox.p2.query.QueryUtil; import org.eclipse.equinox.p2.repository.IRepository; import org.eclipse.equinox.p2.repository.artifact.IArtifactRepositoryManager; import org.eclipse.equinox.p2.repository.metadata.IMetadataRepositoryManager; -import org.eclipse.osgi.framework.log.FrameworkLog; import org.eclipse.osgi.service.environment.EnvironmentInfo; import org.eclipse.osgi.util.NLS; -import org.osgi.framework.*; +import org.osgi.framework.BundleContext; +import org.osgi.framework.InvalidSyntaxException; +import org.osgi.framework.ServiceReference; public class DirectorApplication implements IApplication, ProvisioningListener { public static class AvoidTrustPromptService extends UIServices { @@ -261,7 +313,6 @@ public class DirectorApplication impleme private boolean verifyOnly = false; private boolean roamingProfile = false; private boolean purgeRegistry = false; - private boolean stackTrace = false; private boolean followReferences = false; private boolean downloadOnly = false; private String profileId; @@ -276,7 +327,7 @@ public class DirectorApplication impleme private IEngine engine; private boolean noProfileId = false; private IPlanner planner; - private ILog log = null; + private ILog log = new DefaultLog(); private IProvisioningAgent targetAgent; private boolean targetAgentIsSelfAndUp = false; @@ -296,14 +347,14 @@ public class DirectorApplication impleme private Properties loadProperties(File file) { if (!file.exists()) { // log a warning and return - logStatus(new Status(IStatus.WARNING, Activator.ID, NLS.bind(Messages.File_does_not_exist, file.getAbsolutePath()))); + log.log(new Status(WARNING, ID, NLS.bind(Messages.File_does_not_exist, file.getAbsolutePath()))); return null; } Properties properties = new Properties(); try (InputStream input = new BufferedInputStream(new FileInputStream(file))) { properties.load(input); } catch (IOException e) { - logFailure(new Status(IStatus.ERROR, Activator.ID, NLS.bind(Messages.Problem_loading_file, file.getAbsolutePath()), e)); + log.log(new Status(ERROR, ID, NLS.bind(Messages.Problem_loading_file, file.getAbsolutePath()), e)); return null; } return properties; @@ -343,10 +394,10 @@ public class DirectorApplication impleme // skip over the keyword id = line.substring(0, index); } catch (NumberFormatException e) { - logStatus(new Status(IStatus.WARNING, Activator.ID, NLS.bind(Messages.Bad_format, line, iuProfileProperties), e)); + log.log(new Status(WARNING, ID, NLS.bind(Messages.Bad_format, line, iuProfileProperties), e)); continue; } catch (IndexOutOfBoundsException e) { - logStatus(new Status(IStatus.WARNING, Activator.ID, NLS.bind(Messages.Bad_format, line, iuProfileProperties), e)); + log.log(new Status(WARNING, ID, NLS.bind(Messages.Bad_format, line, iuProfileProperties), e)); continue; } @@ -368,7 +419,7 @@ public class DirectorApplication impleme if (key == null || value == null) { String message = NLS.bind(Messages.Unmatched_iu_profile_property_key_value, key + '/' + value); - logStatus(new Status(IStatus.WARNING, Activator.ID, message)); + log.log(new Status(WARNING, ID, message)); continue; } @@ -380,7 +431,7 @@ public class DirectorApplication impleme IQueryResult qr = getInstallableUnits(null, query, null); if (qr.isEmpty()) { String msg = NLS.bind(Messages.Cannot_set_iu_profile_property_iu_does_not_exist, id + '/' + version); - logStatus(new Status(IStatus.WARNING, Activator.ID, msg)); + log.log(new Status(WARNING, ID, msg)); continue; } IInstallableUnit iu = qr.iterator().next(); @@ -427,7 +478,7 @@ public class DirectorApplication impleme Iterator itor = roots.iterator(); if (!itor.hasNext()) - throw new CoreException(new Status(IStatus.ERROR, org.eclipse.equinox.internal.p2.director.app.Activator.ID, NLS.bind(Messages.Missing_IU, rootQuery))); + throw new CoreException(new Status(ERROR, ID, NLS.bind(Messages.Missing_IU, rootQuery))); do { allRoots.add(itor.next()); } while (itor.hasNext()); @@ -508,7 +559,7 @@ public class DirectorApplication impleme anyValid = true; } catch (ProvisionException e) { //one of the repositories did not load - logStatus(e.getStatus()); + log.log(e.getStatus()); } } if (!anyValid) @@ -535,7 +586,7 @@ public class DirectorApplication impleme anyValid = true; } catch (ProvisionException e) { //one of the repositories did not load - logStatus(e.getStatus()); + log.log(e.getStatus()); } } if (!anyValid) @@ -681,30 +732,6 @@ public class DirectorApplication impleme } } - private void logStatus(IStatus status) { - if (log != null) - log.log(status); - else - LogHelper.log(status); - } - - private void printMessage(String message) { - if (log != null) - log.log(message); - else - System.out.println(message); - } - - private void logFailure(IStatus status) { - if (log == null) { - FrameworkLog frameworkLog = ServiceHelper.getService(Activator.getContext(), FrameworkLog.class); - if (frameworkLog != null) - System.err.println("Application failed, log file location: " + frameworkLog.getFile()); //$NON-NLS-1$ - } - - logStatus(status); - } - private void markRoots(IProfileChangeRequest request, Collection roots) { for (IInstallableUnit root : roots) { request.setInstallableUnitProfileProperty(root, IProfile.PROP_PROFILE_ROOT_IU, Boolean.TRUE.toString()); @@ -747,26 +774,35 @@ public class DirectorApplication impleme boolean wasRoaming = Boolean.parseBoolean(profile.getProperty(IProfile.PROP_ROAMING)); try { updateRoamingProperties(profile); + ProvisioningContext context = new ProvisioningContext(targetAgent); - context.setMetadataRepositories(metadataRepositoryLocations.toArray(new URI[metadataRepositoryLocations.size()])); - context.setArtifactRepositories(artifactRepositoryLocations.toArray(new URI[artifactRepositoryLocations.size()])); + context.setMetadataRepositories(metadataRepositoryLocations.stream().toArray(URI[]::new)); + context.setArtifactRepositories(artifactRepositoryLocations.stream().toArray(URI[]::new)); context.setProperty(ProvisioningContext.FOLLOW_REPOSITORY_REFERENCES, String.valueOf(followReferences)); context.setProperty(FOLLOW_ARTIFACT_REPOSITORY_REFERENCES, String.valueOf(followReferences)); + ProfileChangeRequest request = buildProvisioningRequest(profile, installs, uninstalls); printRequest(request); + planAndExecute(profile, context, request); } finally { // if we were originally were set to be roaming and we changed it, change it back before we return - if (wasRoaming && !Boolean.parseBoolean(profile.getProperty(IProfile.PROP_ROAMING))) + if (wasRoaming && !Boolean.parseBoolean(profile.getProperty(IProfile.PROP_ROAMING))) { setRoaming(profile); + } } } private void planAndExecute(IProfile profile, ProvisioningContext context, ProfileChangeRequest request) throws CoreException { IProvisioningPlan result = planner.getProvisioningPlan(request, context, new NullProgressMonitor()); + IStatus operationStatus = result.getStatus(); - if (!operationStatus.isOK()) + if (!operationStatus.isOK()) { throw new CoreException(operationStatus); + } + + log.log(operationStatus); + executePlan(context, result); } @@ -782,16 +818,17 @@ public class DirectorApplication impleme operationStatus = PlanExecutionHelper.executePlan(result, engine, PhaseSetFactory.createPhaseSetIncluding(new String[] {PhaseSetFactory.PHASE_COLLECT, PhaseSetFactory.PHASE_CHECK_TRUST}), context, new NullProgressMonitor()); switch (operationStatus.getSeverity()) { - case IStatus.OK : + case OK : break; - case IStatus.INFO : - case IStatus.WARNING : - logStatus(operationStatus); + case INFO : + case WARNING : + log.log(operationStatus); break; - //. All other status codes correspond to IStatus.isOk() == false + // All other status codes correspond to IStatus.isOk() == false default : - if (noArtifactRepositorySpecified && hasNoRepositoryFound(operationStatus)) + if (noArtifactRepositorySpecified && hasNoRepositoryFound(operationStatus)) { throw new ProvisionException(Messages.Application_NoRepositories); + } throw new CoreException(operationStatus); } @@ -816,17 +853,6 @@ public class DirectorApplication impleme return false; } - private void printRequest(ProfileChangeRequest request) { - Collection toAdd = request.getAdditions(); - for (IInstallableUnit added : toAdd) { - printMessage(NLS.bind(Messages.Installing, added.getId(), added.getVersion())); - } - Collection toRemove = request.getRemovals(); - for (IInstallableUnit removed : toRemove) { - printMessage(NLS.bind(Messages.Uninstalling, removed.getId(), removed.getVersion())); - } - } - public void processArguments(String[] args) throws CoreException { if (args == null) { printHelpInfo = true; @@ -1024,7 +1050,7 @@ public class DirectorApplication impleme } else if (!printHelpInfo && !printIUList && !printRootIUList && !printTags && !purgeRegistry && rootsToInstall.isEmpty() && rootsToUninstall.isEmpty() && revertToPreviousState == NOTHING_TO_REVERT_TO) { - printMessage(Messages.Help_Missing_argument); + log.printOut(Messages.Help_Missing_argument); printHelpInfo = true; } @@ -1073,7 +1099,7 @@ public class DirectorApplication impleme initializeServices(); if (!(printIUList || printRootIUList || printTags)) { if (!canInstallInDestination()) { - printMessage(NLS.bind(Messages.Cant_write_in_destination, destination.getAbsolutePath())); + log.printOut(NLS.bind(Messages.Cant_write_in_destination, destination.getAbsolutePath())); return EXIT_ERROR; } } @@ -1091,17 +1117,22 @@ public class DirectorApplication impleme performPrintTags(); if (purgeRegistry) purgeRegistry(); - printMessage(NLS.bind(Messages.Operation_complete, Long.valueOf(System.currentTimeMillis() - time))); + log.printOut(NLS.bind(Messages.Operation_complete, Long.valueOf(System.currentTimeMillis() - time))); } return IApplication.EXIT_OK; } catch (CoreException e) { - printMessage(Messages.Operation_failed); - deeplyPrint(e.getStatus(), System.err, 0); - logFailure(e.getStatus()); + IStatus error = e.getStatus(); + + log.printOut(Messages.Operation_failed); + printError(error, 0); + + log.log(error); + //set empty exit data to suppress error dialog from launcher setSystemProperty("eclipse.exitdata", ""); //$NON-NLS-1$ //$NON-NLS-2$ return EXIT_ERROR; } finally { + log.close(); cleanupRepositories(); cleanupServices(); } @@ -1131,7 +1162,7 @@ public class DirectorApplication impleme } if (targetProfile == null) - throw new CoreException(new Status(IStatus.ERROR, Activator.ID, Messages.Missing_profile)); + throw new CoreException(new Status(ERROR, ID, Messages.Missing_profile)); IProvisioningPlan plan = planner.getDiffPlan(profile, targetProfile, new NullProgressMonitor()); ProvisioningContext context = new ProvisioningContext(targetAgent); @@ -1177,11 +1208,6 @@ public class DirectorApplication impleme } } - private static void appendLevelPrefix(PrintStream strm, int level) { - for (int idx = 0; idx < level; ++idx) - strm.print(' '); - } - IQueryResult getInstallableUnits(URI location, IQuery query, IProgressMonitor monitor) { IQueryable queryable = null; if (location == null) { @@ -1198,49 +1224,6 @@ public class DirectorApplication impleme return Collector.emptyCollector(); } - private void deeplyPrint(CoreException ce, PrintStream strm, int level) { - appendLevelPrefix(strm, level); - if (stackTrace) - ce.printStackTrace(strm); - deeplyPrint(ce.getStatus(), strm, level); - } - - private void deeplyPrint(IStatus status, PrintStream strm, int level) { - appendLevelPrefix(strm, level); - String msg = status.getMessage(); - strm.println(msg); - Throwable cause = status.getException(); - if (cause != null) { - strm.print("Caused by: "); //$NON-NLS-1$ - if (stackTrace || !(msg.equals(cause.getMessage()) || msg.equals(cause.toString()))) - deeplyPrint(cause, strm, level); - } - - if (status.isMultiStatus()) { - IStatus[] children = status.getChildren(); - for (int i = 0; i < children.length; i++) - deeplyPrint(children[i], strm, level + 1); - } - } - - private void deeplyPrint(Throwable t, PrintStream strm, int level) { - if (t instanceof CoreException) - deeplyPrint((CoreException) t, strm, level); - else { - appendLevelPrefix(strm, level); - if (stackTrace) - t.printStackTrace(strm); - else { - strm.println(t.toString()); - Throwable cause = t.getCause(); - if (cause != null) { - strm.print("Caused by: "); //$NON-NLS-1$ - deeplyPrint(cause, strm, level); - } - } - } - } - private void performHelpInfo() { CommandLineOption[] allOptions = new CommandLineOption[] {OPTION_HELP, OPTION_LIST, OPTION_LIST_INSTALLED, OPTION_LIST_FORMAT, OPTION_INSTALL_IU, OPTION_UNINSTALL_IU, OPTION_REVERT, OPTION_DESTINATION, OPTION_DOWNLOAD_ONLY, OPTION_METADATAREPOS, OPTION_ARTIFACTREPOS, OPTION_REPOSITORIES, OPTION_VERIFY_ONLY, OPTION_TAG, OPTION_LIST_TAGS, OPTION_PROFILE, OPTION_FLAVOR, OPTION_SHARED, OPTION_BUNDLEPOOL, OPTION_PROFILE_PROPS, OPTION_IU_PROFILE_PROPS, OPTION_ROAMING, OPTION_P2_OS, OPTION_P2_WS, OPTION_P2_ARCH, OPTION_P2_NL, OPTION_PURGEHISTORY, OPTION_FOLLOW_REFERENCES}; for (int i = 0; i < allOptions.length; ++i) { @@ -1319,16 +1302,19 @@ public class DirectorApplication impleme IProvisioningPlan result = planner.getProvisioningPlan(request, context, new NullProgressMonitor()); IStatus status = PlanExecutionHelper.executePlan(result, engine, context, new NullProgressMonitor()); if (!status.isOK()) - throw new CoreException(new MultiStatus(org.eclipse.equinox.internal.p2.director.app.Activator.ID, IStatus.ERROR, new IStatus[] {status}, NLS.bind(Messages.Cant_change_roaming, profile.getProfileId()), null)); + throw new CoreException(new MultiStatus(ID, ERROR, new IStatus[] {status}, NLS.bind(Messages.Cant_change_roaming, profile.getProfileId()), null)); } @Override public void stop() { IProvisioningEventBus eventBus = (IProvisioningEventBus) targetAgent.getService(IProvisioningEventBus.SERVICE_NAME); - if (eventBus != null) + if (eventBus != null) { eventBus.removeListener(this); - if (log != null) + } + + if (log != null) { log.close(); + } } public void setLog(ILog log) { @@ -1355,6 +1341,60 @@ public class DirectorApplication impleme } } + private void printRequest(IProfileChangeRequest request) { + Collection toAdd = request.getAdditions(); + for (IInstallableUnit added : toAdd) { + log.printOut(NLS.bind(Messages.Installing, added.getId(), added.getVersion())); + } + + Collection toRemove = request.getRemovals(); + for (IInstallableUnit removed : toRemove) { + log.printOut(NLS.bind(Messages.Uninstalling, removed.getId(), removed.getVersion())); + } + } + + private void printError(IStatus status, int level) { + String prefix = emptyString(level); + + String msg = status.getMessage(); + log.printErr(prefix + msg); + + Throwable cause = status.getException(); + if (cause != null) { + // TODO This is very unreliable. It assumes that if the IStatus message is the same as the IStatus cause + // message the cause exception has no more data to offer. Better to just print it. + boolean isCauseMsg = msg.equals(cause.getMessage()) || msg.equals(cause.toString()); + if (!isCauseMsg) { + log.printErr(prefix + "Caused by: "); //$NON-NLS-1$ + printError(cause, level); + } + } + + for (IStatus child : status.getChildren()) { + printError(child, level + 1); + } + } + + private void printError(Throwable trace, int level) { + if (trace instanceof CoreException) { + printError(((CoreException) trace).getStatus(), level); + } else { + String prefix = emptyString(level); + + log.printErr(prefix + trace.toString()); + + Throwable cause = trace.getCause(); + if (cause != null) { + log.printErr(prefix + "Caused by: "); //$NON-NLS-1$ + printError(cause, level); + } + } + } + + private static String emptyString(int size) { + return IntStream.range(0, size).mapToObj(i -> "\t").collect(Collectors.joining()); //$NON-NLS-1$ + } + private boolean canInstallInDestination() { //When we are provisioning what we are running. We can always install. if (targetAgentIsSelfAndUp) diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/ILog.java 4.9-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/ILog.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/ILog.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/ILog.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,24 +1,68 @@ -/******************************************************************************* - * Copyright (c) 2011 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 - * http://www.eclipse.org/legal/epl-v10.html +/******************************************************************************* + * Copyright (c) 2011 IBM Corporation and others. * - * Contributors: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.equinox.internal.p2.director.app; - -import org.eclipse.core.runtime.IStatus; - -public interface ILog { - - // Log a status - public void log(IStatus status); - - public void log(String message); - - // Notify that logging is completed & cleanup resources - public void close(); -} + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * IBM Corporation - initial API and implementation + *******************************************************************************/ +package org.eclipse.equinox.internal.p2.director.app; + +import org.eclipse.core.runtime.IStatus; + +/** + * Manages all outputs of the director application: logs to a file as well as the standard streams + *

+ * This indirection is needed in order to manage the outputs when the director is called from ant, where + * the standard streams are handled differently. + */ +public interface ILog { + /** + * Send status to the standard log + * + * @param status + */ + void log(IStatus status); + + /** + * + * @param message + * @deprecated Use {@link ILog#printOut()} or {@link ILog#printErr()} + */ + @Deprecated + default void log(String message) { + printOut(message); + } + + /** + * Notify that logging is completed & cleanup resources + */ + void close(); + + /** + * Print status on stdout or stderr. + * + * By default calls {@link #log} + * + * @param status + */ + default void printOut(String line) { + System.out.println(line); + } + + /** + * Send line to stdout + * + * By default does nothing + * + * @param message line + */ + default void printErr(String line) { + System.err.println(line); + } +} diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/IUListFormatter.java 4.9-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/IUListFormatter.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/IUListFormatter.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/IUListFormatter.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2014, 2017 SAP AG and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * SAP AG - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/Messages.java 4.9-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/Messages.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/Messages.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/Messages.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,8 +1,13 @@ /******************************************************************************* - * Copyright (c) 2007, 2011 IBM Corporation and others. All rights reserved. This + * Copyright (c) 2007, 2011 IBM Corporation and others. + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/messages.properties 4.9-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/messages.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/messages.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/messages.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2005, 2011 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/PrettyQuery.java 4.9-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/PrettyQuery.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/PrettyQuery.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director.app/src/org/eclipse/equinox/internal/p2/director/app/PrettyQuery.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2011, 2017 Sonatype, Inc. and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Sonatype, Inc. - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.director.app/src_ant/org/eclipse/equinox/p2/director/app/ant/DirectorTask.java 4.9-1/bundles/org.eclipse.equinox.p2.director.app/src_ant/org/eclipse/equinox/p2/director/app/ant/DirectorTask.java --- 4.8-1/bundles/org.eclipse.equinox.p2.director.app/src_ant/org/eclipse/equinox/p2/director/app/ant/DirectorTask.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.director.app/src_ant/org/eclipse/equinox/p2/director/app/ant/DirectorTask.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,24 +1,36 @@ /******************************************************************************* * Copyright (c) 2007, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation *******************************************************************************/ package org.eclipse.equinox.p2.director.app.ant; -import java.io.*; +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; import java.net.URI; import java.net.URISyntaxException; -import java.util.*; -import org.apache.tools.ant.*; +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; +import java.util.StringTokenizer; +import org.apache.tools.ant.BuildException; +import org.apache.tools.ant.Project; +import org.apache.tools.ant.Task; import org.eclipse.core.runtime.IStatus; import org.eclipse.core.runtime.URIUtil; import org.eclipse.equinox.app.IApplication; -import org.eclipse.equinox.internal.p2.director.app.*; +import org.eclipse.equinox.internal.p2.director.app.DirectorApplication; +import org.eclipse.equinox.internal.p2.director.app.ILog; +import org.eclipse.equinox.internal.p2.director.app.Messages; import org.eclipse.equinox.p2.metadata.VersionedId; import org.eclipse.osgi.util.NLS; @@ -247,6 +259,7 @@ public class DirectorTask extends Task i } @Override + @SuppressWarnings("deprecation") public void log(String msg) { if (outputBuffer != null) { outputBuffer.append(msg); diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/about.html 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/about.html --- 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/about.html 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/about.html 2018-08-29 14:43:08.000000000 +0000 @@ -2,37 +2,51 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + About -

About This Content

- -

June 2, 2006

-

License

+

About This Content

-

The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise -indicated below, the Content is provided to you under the terms and conditions of the -Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available -at http://www.eclipse.org/legal/epl-v10.html. -For purposes of the EPL, "Program" will mean the Content.

+

November 30, 2017

+

License

-

If you did not receive this Content directly from the Eclipse Foundation, the Content is -being redistributed by another party ("Redistributor") and different terms and conditions may -apply to your use of any object code in the Content. Check the Redistributor's license that was -provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise -indicated below, the terms and conditions of the EPL still apply to any source code in the Content -and such source code may be obtained at http://www.eclipse.org.

+

+ The Eclipse Foundation makes available all content in this plug-in + ("Content"). Unless otherwise indicated below, the Content + is provided to you under the terms and conditions of the Eclipse + Public License Version 2.0 ("EPL"). A copy of the EPL is + available at http://www.eclipse.org/legal/epl-2.0. + For purposes of the EPL, "Program" will mean the Content. +

-

Third Party Content

-

The Content includes items that have been sourced from third parties as set out below. If you +

+ If you did not receive this Content directly from the Eclipse + Foundation, the Content is being redistributed by another party + ("Redistributor") and different terms and conditions may + apply to your use of any object code in the Content. Check the + Redistributor's license that was provided with the Content. If no such + license exists, contact the Redistributor. Unless otherwise indicated + below, the terms and conditions of the EPL still apply to any source + code in the Content and such source code may be obtained at http://www.eclipse.org. +

+ +

Third Party Content

+ +

+ The Content includes items that have been sourced from third parties as set out below. If you did not receive this Content directly from the Eclipse Foundation, the following is provided for informational purposes only, and you should look to the Redistributor's license for - terms and conditions of use.

+ terms and conditions of use. +

-

FileInstall 1.0

-

The bundle includes derivative works of software originally developed by Peter Kriens (aQute). - That original work was licensed under the EPL v1.0 and this derivative work is similarly licensed.

+

FileInstall 1.0

+ +

+ The bundle includes derivative works of software originally developed by Peter Kriens (aQute). + That original work was licensed under the EPL v1.0 and this derivative work is similarly licensed. +

\ No newline at end of file diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/build.properties 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/build.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/build.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/build.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2005, 2010 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/META-INF/MANIFEST.MF 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/META-INF/MANIFEST.MF --- 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/META-INF/MANIFEST.MF 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/META-INF/MANIFEST.MF 2018-08-29 14:43:08.000000000 +0000 @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-SymbolicName: org.eclipse.equinox.p2.directorywatcher;singleton:=true -Bundle-Version: 1.2.0.qualifier +Bundle-Version: 1.2.100.qualifier Bundle-Activator: org.eclipse.equinox.internal.provisional.p2.directorywatcher.Activator Bundle-Vendor: %providerName Bundle-Localization: plugin diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/plugin.properties 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/plugin.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/plugin.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/plugin.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2007, 2009 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/pom.xml 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/pom.xml --- 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/pom.xml 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/pom.xml 2018-08-29 14:43:08.000000000 +0000 @@ -2,13 +2,13 @@ 4.0.0 - org.eclipse.equinox.p2-parent - org.eclipse - 4.8.0-SNAPSHOT - ../../org.eclipse.equinox.p2.releng/org.eclipse.equinox.p2-parent + org.eclipse.equinox.p2 + rt.equinox.p2 + 4.9.0-SNAPSHOT + ../.. org.eclipse.equinox org.eclipse.equinox.p2.directorywatcher - 1.2.0-SNAPSHOT + 1.2.100-SNAPSHOT eclipse-plugin diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/Activator.java 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/Activator.java --- 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/Activator.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/Activator.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008, 2017 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/CachingArtifactRepository.java 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/CachingArtifactRepository.java --- 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/CachingArtifactRepository.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/CachingArtifactRepository.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,8 +1,13 @@ /******************************************************************************* - * Copyright (c) 2008, 2017 Code 9 and others. All rights reserved. This + * Copyright (c) 2008, 2017 Code 9 and others. + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Code 9 - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/DirectoryChangeListener.java 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/DirectoryChangeListener.java --- 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/DirectoryChangeListener.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/DirectoryChangeListener.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2008 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial implementation and ideas diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/DirectoryWatcher.java 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/DirectoryWatcher.java --- 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/DirectoryWatcher.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/DirectoryWatcher.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 2017 aQute and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * aQute - initial implementation and ideas diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/EntryAdvice.java 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/EntryAdvice.java --- 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/EntryAdvice.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/EntryAdvice.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,13 @@ /******************************************************************************* * Copyright (c) 2008, 2017 Code 9 and others. - * All rights reserved. This + * + * 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 http://www.eclipse.org/legal/epl-v10.html + * the Eclipse Public License 2.0 which accompanies this distribution, and is + * available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Code 9 - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/Messages.java 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/Messages.java --- 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/Messages.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/Messages.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2008 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/messages.properties 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/messages.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/messages.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/messages.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2008 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 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # IBM Corporation - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/RepositoryListener.java 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/RepositoryListener.java --- 4.8-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/RepositoryListener.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.directorywatcher/src/org/eclipse/equinox/internal/provisional/p2/directorywatcher/RepositoryListener.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2007, 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 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial implementation and ideas diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/about.html 4.9-1/bundles/org.eclipse.equinox.p2.discovery/about.html --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/about.html 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/about.html 2018-08-29 14:43:08.000000000 +0000 @@ -1,28 +1,36 @@ - - + + + About - -

About This Content

- -

July 3, 2008

-

License

+

About This Content

-

The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise -indicated below, the Content is provided to you under the terms and conditions of the -Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available -at http://www.eclipse.org/legal/epl-v10.html. -For purposes of the EPL, "Program" will mean the Content.

+

November 30, 2017

+

License

-

If you did not receive this Content directly from the Eclipse Foundation, the Content is -being redistributed by another party ("Redistributor") and different terms and conditions may -apply to your use of any object code in the Content. Check the Redistributor's license that was -provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise -indicated below, the terms and conditions of the EPL still apply to any source code in the Content -and such source code may be obtained at http://www.eclipse.org.

+

+ The Eclipse Foundation makes available all content in this plug-in + ("Content"). Unless otherwise indicated below, the Content + is provided to you under the terms and conditions of the Eclipse + Public License Version 2.0 ("EPL"). A copy of the EPL is + available at http://www.eclipse.org/legal/epl-2.0. + For purposes of the EPL, "Program" will mean the Content. +

+

+ If you did not receive this Content directly from the Eclipse + Foundation, the Content is being redistributed by another party + ("Redistributor") and different terms and conditions may + apply to your use of any object code in the Content. Check the + Redistributor's license that was provided with the Content. If no such + license exists, contact the Redistributor. Unless otherwise indicated + below, the terms and conditions of the EPL still apply to any source + code in the Content and such source code may be obtained at http://www.eclipse.org. +

- + \ No newline at end of file diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/build.properties 4.9-1/bundles/org.eclipse.equinox.p2.discovery/build.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/build.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/build.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2009, 2010 Tasktop Technologies and others. -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Eclipse Public License v1.0 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/META-INF/MANIFEST.MF 4.9-1/bundles/org.eclipse.equinox.p2.discovery/META-INF/MANIFEST.MF --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/META-INF/MANIFEST.MF 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/META-INF/MANIFEST.MF 2018-08-29 14:43:08.000000000 +0000 @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Bundle-SymbolicName: org.eclipse.equinox.p2.discovery;singleton:=true -Bundle-Version: 1.1.0.qualifier +Bundle-Version: 1.1.100.qualifier Bundle-Vendor: %Bundle-Vendor Bundle-RequiredExecutionEnvironment: JavaSE-1.8 Require-Bundle: org.eclipse.core.runtime;bundle-version="3.3.0", diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/plugin.properties 4.9-1/bundles/org.eclipse.equinox.p2.discovery/plugin.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/plugin.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/plugin.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2009, 2010 Tasktop Technologies and others. -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Eclipse Public License v1.0 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/pom.xml 4.9-1/bundles/org.eclipse.equinox.p2.discovery/pom.xml --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/pom.xml 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/pom.xml 2018-08-29 14:43:08.000000000 +0000 @@ -2,13 +2,13 @@ 4.0.0 - org.eclipse.equinox.p2-parent - org.eclipse - 4.8.0-SNAPSHOT - ../../org.eclipse.equinox.p2.releng/org.eclipse.equinox.p2-parent + org.eclipse.equinox.p2 + rt.equinox.p2 + 4.9.0-SNAPSHOT + ../.. org.eclipse.equinox org.eclipse.equinox.p2.discovery - 1.1.0-SNAPSHOT + 1.1.100-SNAPSHOT eclipse-plugin diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/AbstractCatalogSource.java 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/AbstractCatalogSource.java --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/AbstractCatalogSource.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/AbstractCatalogSource.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2010 Tasktop Technologies and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/AbstractDiscoveryStrategy.java 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/AbstractDiscoveryStrategy.java --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/AbstractDiscoveryStrategy.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/AbstractDiscoveryStrategy.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2010 Tasktop Technologies and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/Catalog.java 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/Catalog.java --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/Catalog.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/Catalog.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2017 Tasktop Technologies and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/DiscoveryCore.java 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/DiscoveryCore.java --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/DiscoveryCore.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/DiscoveryCore.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2017 Tasktop Technologies and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/Messages.java 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/Messages.java --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/Messages.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/Messages.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2010 Tasktop Technologies and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/messages.properties 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/messages.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/messages.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/messages.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2009, 2010 Tasktop Technologies and others. -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Eclipse Public License v1.0 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/AbstractCatalogItem.java 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/AbstractCatalogItem.java --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/AbstractCatalogItem.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/AbstractCatalogItem.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2010 Tasktop Technologies and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/CatalogCategory.java 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/CatalogCategory.java --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/CatalogCategory.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/CatalogCategory.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2017 Tasktop Technologies and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/CatalogItem.java 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/CatalogItem.java --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/CatalogItem.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/CatalogItem.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2017 Tasktop Technologies and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Certification.java 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Certification.java --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Certification.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Certification.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2010 Tasktop Technologies and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/FeatureFilter.java 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/FeatureFilter.java --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/FeatureFilter.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/FeatureFilter.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2010 Tasktop Technologies and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Group.java 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Group.java --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Group.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Group.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2010 Task top Technologies and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Icon.java 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Icon.java --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Icon.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Icon.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2010 Tasktop Technologies and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Messages.java 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Messages.java --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Messages.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Messages.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2010 Tasktop Technologies and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/messages.properties 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/messages.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/messages.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/messages.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2009, 2010 Tasktop Technologies and others. -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Eclipse Public License v1.0 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Overview.java 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Overview.java --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Overview.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Overview.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2010 Tasktop Technologies and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Tag.java 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Tag.java --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Tag.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/Tag.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2010 Tasktop Technologies and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/ValidationException.java 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/ValidationException.java --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/ValidationException.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/model/ValidationException.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2010 Tasktop Technologies and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/Policy.java 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/Policy.java --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/Policy.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/Policy.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2010 Tasktop Technologies and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/util/CatalogCategoryComparator.java 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/util/CatalogCategoryComparator.java --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/util/CatalogCategoryComparator.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/util/CatalogCategoryComparator.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2017 Tasktop Technologies and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/util/CatalogItemComparator.java 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/util/CatalogItemComparator.java --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/util/CatalogItemComparator.java 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery/src/org/eclipse/equinox/internal/p2/discovery/util/CatalogItemComparator.java 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ /******************************************************************************* * Copyright (c) 2009, 2017 Tasktop Technologies and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 * * Contributors: * Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/about.html 4.9-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/about.html --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/about.html 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/about.html 2018-08-29 14:43:08.000000000 +0000 @@ -1,28 +1,36 @@ - - + + + About - -

About This Content

- -

July 3, 2008

-

License

+

About This Content

-

The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise -indicated below, the Content is provided to you under the terms and conditions of the -Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available -at http://www.eclipse.org/legal/epl-v10.html. -For purposes of the EPL, "Program" will mean the Content.

+

November 30, 2017

+

License

-

If you did not receive this Content directly from the Eclipse Foundation, the Content is -being redistributed by another party ("Redistributor") and different terms and conditions may -apply to your use of any object code in the Content. Check the Redistributor's license that was -provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise -indicated below, the terms and conditions of the EPL still apply to any source code in the Content -and such source code may be obtained at http://www.eclipse.org.

+

+ The Eclipse Foundation makes available all content in this plug-in + ("Content"). Unless otherwise indicated below, the Content + is provided to you under the terms and conditions of the Eclipse + Public License Version 2.0 ("EPL"). A copy of the EPL is + available at http://www.eclipse.org/legal/epl-2.0. + For purposes of the EPL, "Program" will mean the Content. +

+

+ If you did not receive this Content directly from the Eclipse + Foundation, the Content is being redistributed by another party + ("Redistributor") and different terms and conditions may + apply to your use of any object code in the Content. Check the + Redistributor's license that was provided with the Content. If no such + license exists, contact the Redistributor. Unless otherwise indicated + below, the terms and conditions of the EPL still apply to any source + code in the Content and such source code may be obtained at http://www.eclipse.org. +

- + \ No newline at end of file diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/build.properties 4.9-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/build.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/build.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/build.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2009, 2010 Tasktop Technologies and others. -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Eclipse Public License v1.0 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/META-INF/MANIFEST.MF 4.9-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/META-INF/MANIFEST.MF --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/META-INF/MANIFEST.MF 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/META-INF/MANIFEST.MF 2018-08-29 14:43:08.000000000 +0000 @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Bundle-SymbolicName: org.eclipse.equinox.p2.discovery.compatibility;singleton:=true -Bundle-Version: 1.1.0.qualifier +Bundle-Version: 1.1.100.qualifier Bundle-Vendor: %Bundle-Vendor Bundle-RequiredExecutionEnvironment: JavaSE-1.8 Require-Bundle: org.eclipse.core.runtime;bundle-version="3.3.0", diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/plugin.properties 4.9-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/plugin.properties --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/plugin.properties 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/plugin.properties 2018-08-29 14:43:08.000000000 +0000 @@ -1,9 +1,12 @@ ############################################################################### # Copyright (c) 2009, 2010 Tasktop Technologies and others. -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Eclipse Public License v1.0 +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 # which accompanies this distribution, and is available at -# http://www.eclipse.org/legal/epl-v10.html +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 # # Contributors: # Tasktop Technologies - initial API and implementation diff -pruN 4.8-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/plugin.xml 4.9-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/plugin.xml --- 4.8-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/plugin.xml 2018-05-15 13:48:02.000000000 +0000 +++ 4.9-1/bundles/org.eclipse.equinox.p2.discovery.compatibility/plugin.xml 2018-08-29 14:43:08.000000000 +0000 @@ -1,10 +1,13 @@