Skip to content

Commit

Permalink
Include patched org.eclipse.core.resources for Eclipse Bug 519776
Browse files Browse the repository at this point in the history
Bring in patched versions of org.eclipse.core.resources to check
if https://git.eclipse.org/c/101379 fixes bug 519776 and fixes our
test errors.
  • Loading branch information
briandealwis committed Aug 11, 2017
1 parent 1fc1fad commit 10fb0aa
Show file tree
Hide file tree
Showing 935 changed files with 219,781 additions and 0 deletions.
10 changes: 10 additions & 0 deletions .mvn/extensions.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<extensions>
<extension>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-pomless</artifactId>
<version>1.0.0</version>
<!-- <version>${tycho.version}</version> -->
</extension>
</extensions>

3 changes: 3 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -398,6 +398,7 @@
<!-- build against a known target platform -->
<modules>
<module>eclipse/mars</module>
<module>third_party/patches/mars</module>
</modules>
<build>
<plugins>
Expand Down Expand Up @@ -471,6 +472,7 @@
<!-- build against a known target platform -->
<modules>
<module>eclipse/neon</module>
<module>third_party/patches/neon</module>
</modules>
<build>
<plugins>
Expand Down Expand Up @@ -505,6 +507,7 @@
<!-- build against a known target platform -->
<modules>
<module>eclipse/oxygen</module>
<module>third_party/patches/oxygen</module>
</modules>
<build>
<plugins>
Expand Down
2 changes: 2 additions & 0 deletions third_party/patches/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
This directory contains patched bundles from Eclipse Mars, Neon, and Oxygen.
These fixes are only for testing.
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="output" path="target/classes"/>
</classpath>
17 changes: 17 additions & 0 deletions third_party/patches/mars/org.eclipse.core.resources/.project
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>org.eclipse.core.resources</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
Manifest-Version: 1.0
Comment: Bundle-Version: 3.10.1.v20150725-2910
Bundle-Version: 3.10.1.v20150725-1910
Bundle-Localization: plugin
Bundle-SymbolicName: org.eclipse.core.resources; singleton:=true
Require-Bundle: org.eclipse.ant.core;bundle-version="[3.1.0,4.0.0)";resolution:=optional,org.eclipse.core.expressions;bundle-version="[3.2.0,4.0.0)",
org.eclipse.core.filesystem;bundle-version="[1.3.0,2.0.0)",
org.eclipse.core.runtime;bundle-version="[3.7.0,4.0.0)"
Bundle-ManifestVersion: 2
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-Vendor: %providerName
Export-Package: org.eclipse.core.internal.dtree;x-internal:=true,
org.eclipse.core.internal.events;x-internal:=true,
org.eclipse.core.internal.localstore;x-internal:=true,
org.eclipse.core.internal.properties;x-internal:=true,
org.eclipse.core.internal.propertytester;x-internal:=true,
org.eclipse.core.internal.refresh;x-internal:=true,
org.eclipse.core.internal.resources;x-internal:=true,
org.eclipse.core.internal.resources.mapping;x-internal:=true,
org.eclipse.core.internal.resources.projectvariables;x-internal:=true,
org.eclipse.core.internal.resources.refresh.win32;x-internal:=true,
org.eclipse.core.internal.utils;x-internal:=true,
org.eclipse.core.internal.watson;x-internal:=true,
org.eclipse.core.resources,
org.eclipse.core.resources.filtermatchers,
org.eclipse.core.resources.mapping,
org.eclipse.core.resources.refresh,
org.eclipse.core.resources.team,
org.eclipse.core.resources.variableresolvers
Bundle-Name: %pluginName
Bundle-Activator: org.eclipse.core.resources.ResourcesPlugin

Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#Source Bundle Localization
#Wed Aug 05 10:46:08 EDT 2015
bundleVendor=Eclipse.org
bundleName=Core Resource Management Source
28 changes: 28 additions & 0 deletions third_party/patches/mars/org.eclipse.core.resources/about.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
<title>About</title>
</head>
<body lang="EN-US">
<h2>About This Content</h2>

<p>June 2, 2006</p>
<h3>License</h3>

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

<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
being redistributed by another party (&quot;Redistributor&quot;) 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 <a href="http://www.eclipse.org">http://www.eclipse.org</a>.</p>

</body>
</html>
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
jarprocessor.exclude.sign=true
jarprocessor.exclude.pack=true
Original file line number Diff line number Diff line change
@@ -0,0 +1,176 @@
/*******************************************************************************
* Copyright (c) 2000, 2014 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.core.resources.ant;

import java.io.File;
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Task;
import org.apache.tools.ant.types.Path;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.Platform;

/**
* An Ant task which allows to switch from a file system path to a resource path,
* and vice versa, and store the result in a user property whose name is set by the user. If the
* resource does not exist, the property is set to <code>false</code>.
* <p>
* The attribute "property" must be specified, as well as only one of "fileSystemPath" or "resourcePath".
* <p><p>
* Example:<p>
* &lt;eclipse.convertPath fileSystemPath="D:\MyWork\MyProject" property="myProject.resourcePath"/&gt;
*/
public class ConvertPath extends Task {

/**
* The file system path.
*/
private IPath fileSystemPath = null;

/**
* The resource path.
*/
private IPath resourcePath = null;

/**
* The name of the property where the result may be stored.
*/
private String property = null;

/**
* The id of the new Path object that may be created.
*/
private String pathID = null;

/**
* Constructs a new <code>ConvertPath</code> instance.
*/
public ConvertPath() {
super();
}

/**
* Performs the path conversion operation.
*
* @exception BuildException thrown if a problem occurs during execution.
*/
@Override
public void execute() throws BuildException {
validateAttributes();
if (fileSystemPath == null)
// here, resourcePath is not null
convertResourcePathToFileSystemPath(resourcePath);
else
convertFileSystemPathToResourcePath(fileSystemPath);
}

protected void convertFileSystemPathToResourcePath(IPath path) {
IResource resource;
if (Platform.getLocation().equals(path)) {
resource = ResourcesPlugin.getWorkspace().getRoot();
} else {
resource = ResourcesPlugin.getWorkspace().getRoot().getContainerForLocation(path);
if (resource == null)
throw new BuildException(Policy.bind("exception.noProjectMatchThePath", fileSystemPath.toOSString())); //$NON-NLS-1$
}
if (property != null)
getProject().setUserProperty(property, resource.getFullPath().toString());
if (pathID != null) {
Path newPath = new Path(getProject(), resource.getFullPath().toString());
getProject().addReference(pathID, newPath);
}
}

protected void convertResourcePathToFileSystemPath(IPath path) {
IResource resource = null;
switch (path.segmentCount()) {
case 0 :
resource = ResourcesPlugin.getWorkspace().getRoot();
break;
case 1 :
resource = ResourcesPlugin.getWorkspace().getRoot().getProject(path.lastSegment());
break;
default :
resource = ResourcesPlugin.getWorkspace().getRoot().getFile(path);
}

if (resource.getLocation() == null)
// can occur if the first segment is not a project
throw new BuildException(Policy.bind("exception.pathNotValid", path.toString())); //$NON-NLS-1$

if (property != null)
getProject().setUserProperty(property, resource.getLocation().toOSString());
if (pathID != null) {
Path newPath = new Path(getProject(), resource.getLocation().toOSString());
getProject().addReference(pathID, newPath);
}
}

/**
* Sets the file system path.
*
* @param value the file corresponding to the path supplied by the user
*/
public void setFileSystemPath(File value) {
if (resourcePath != null)
throw new BuildException(Policy.bind("exception.cantUseBoth")); //$NON-NLS-1$
fileSystemPath = new org.eclipse.core.runtime.Path(value.toString());
}

/**
* Sets the resource path.
*
* @param value the path
*/
public void setResourcePath(String value) {
if (fileSystemPath != null)
throw new BuildException(Policy.bind("exception.cantUseBoth")); //$NON-NLS-1$
resourcePath = new org.eclipse.core.runtime.Path(value);
}

/**
* Sets the name of the property where the result may stored.
*
* @param value the name of the property
*/
public void setProperty(String value) {
property = value;

}

/**
* Sets the id for the path where the result may be stored
*
* @param value the id of the path
*/
public void setPathId(String value) {
pathID = value;
}

/**
* Performs a validation of the receiver.
*
* @exception BuildException thrown if a problem occurs during validation.
*/
protected void validateAttributes() throws BuildException {
if (property == null && pathID == null)
throw new BuildException(Policy.bind("exception.propertyAndPathIdNotSpecified")); //$NON-NLS-1$

if (resourcePath != null && (!resourcePath.isValidPath(resourcePath.toString()) || resourcePath.isEmpty()))
throw new BuildException(Policy.bind("exception.invalidPath", resourcePath.toOSString())); //$NON-NLS-1$
else if (fileSystemPath != null && !fileSystemPath.isValidPath(fileSystemPath.toOSString()))
throw new BuildException(Policy.bind("exception.invalidPath", fileSystemPath.toOSString())); //$NON-NLS-1$

if (resourcePath == null && fileSystemPath == null)
throw new BuildException(Policy.bind("exception.mustHaveOneAttribute")); //$NON-NLS-1$
}
}
Loading

0 comments on commit 10fb0aa

Please sign in to comment.