Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.team.core')
-rw-r--r--bundles/org.eclipse.team.core/.classpath9
-rw-r--r--bundles/org.eclipse.team.core/.cvsignore1
-rw-r--r--bundles/org.eclipse.team.core/.project21
-rw-r--r--bundles/org.eclipse.team.core/README13
-rw-r--r--bundles/org.eclipse.team.core/about.html42
-rw-r--r--bundles/org.eclipse.team.core/build.properties3
-rw-r--r--bundles/org.eclipse.team.core/buildnotes_team.html497
-rw-r--r--bundles/org.eclipse.team.core/doc/hglegal.htm14
-rw-r--r--bundles/org.eclipse.team.core/doc/ngibmcpy.gifbin814 -> 0 bytes
-rw-r--r--bundles/org.eclipse.team.core/doc/org_eclipse_team_core.html26
-rw-r--r--bundles/org.eclipse.team.core/doc/org_eclipse_team_core_fileTypes.html45
-rw-r--r--bundles/org.eclipse.team.core/doc/org_eclipse_team_core_ignore.html43
-rw-r--r--bundles/org.eclipse.team.core/doc/org_eclipse_team_core_projectSets.html45
-rw-r--r--bundles/org.eclipse.team.core/plugin.properties4
-rw-r--r--bundles/org.eclipse.team.core/plugin.xml43
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/core/IFileTypeInfo.java39
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/core/IIgnoreInfo.java40
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/core/IProjectSetSerializer.java61
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/core/RepositoryProvider.java266
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/core/Team.java556
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/core/TeamException.java70
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/core/TeamPlugin.java93
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/ILocalSyncElement.java206
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/IRemoteResource.java49
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/IRemoteSyncElement.java37
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/LocalSyncElement.java104
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/RemoteSyncElement.java395
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/Assert.java100
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/DefaultFileModificationValidator.java61
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/DefaultMoveDeleteHook.java95
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/FileModificationValidatorManager.java102
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/MoveDeleteManager.java110
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/Policy.java91
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/StringMatcher.java389
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/messages.properties37
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/simpleAccess/SimpleAccessOperations.java269
36 files changed, 0 insertions, 3976 deletions
diff --git a/bundles/org.eclipse.team.core/.classpath b/bundles/org.eclipse.team.core/.classpath
deleted file mode 100644
index 4432f278d..000000000
--- a/bundles/org.eclipse.team.core/.classpath
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src/"/>
- <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" sourcepath="JRE_SRC"/>
- <classpathentry kind="src" path="/org.apache.xerces"/>
- <classpathentry kind="src" path="/org.eclipse.core.resources"/>
- <classpathentry kind="src" path="/org.eclipse.core.runtime"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/bundles/org.eclipse.team.core/.cvsignore b/bundles/org.eclipse.team.core/.cvsignore
deleted file mode 100644
index c5e82d745..000000000
--- a/bundles/org.eclipse.team.core/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin \ No newline at end of file
diff --git a/bundles/org.eclipse.team.core/.project b/bundles/org.eclipse.team.core/.project
deleted file mode 100644
index d81dc3af3..000000000
--- a/bundles/org.eclipse.team.core/.project
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.team.core</name>
- <comment></comment>
- <projects>
- <project>org.apache.xerces</project>
- <project>org.eclipse.core.resources</project>
- <project>org.eclipse.core.runtime</project>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.team.cvs.core.cvsnature</nature>
- </natures>
-</projectDescription>
diff --git a/bundles/org.eclipse.team.core/README b/bundles/org.eclipse.team.core/README
deleted file mode 100644
index 6a358f07a..000000000
--- a/bundles/org.eclipse.team.core/README
+++ /dev/null
@@ -1,13 +0,0 @@
-Note to users of this plug-in
-
-The classes and interfaces in this plug-in are part of an API that is
-still under development and expected to change significantly before
-reaching stability. It is being made available at this early stage to
-solicit feedback from pioneering adopters on the understanding
-that any code that uses this API will almost certainly be broken
-(repeatedly) as the API evolves.
-
-For up-to-date information on these APIs and other related news see
-our component page:
-
-http://dev.eclipse.org/viewcvs/index.cgi/~checkout~/platform-vcm-home/main.html \ No newline at end of file
diff --git a/bundles/org.eclipse.team.core/about.html b/bundles/org.eclipse.team.core/about.html
deleted file mode 100644
index 441774f92..000000000
--- a/bundles/org.eclipse.team.core/about.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<html>
-<head>
-<title>About</title>
-<style type="text/css">
-p, table, td, th { font-family: arial, helvetica, geneva; font-size: 10pt}
-pre { font-family: "Courier New", Courier, mono; font-size: 10pt}
-h2 { font-family: arial, helvetica, geneva; font-size: 18pt; font-weight: bold ; line-height: 14px}
-code { font-family: "Courier New", Courier, mono; font-size: 10pt}
-sup { font-family: arial,helvetica,geneva; font-size: 10px}
-h3 { font-family: arial, helvetica, geneva; font-size: 14pt; font-weight: bold}
-li { font-family: arial, helvetica, geneva; font-size: 10pt}
-h1 { font-family: arial, helvetica, geneva; font-size: 28px; font-weight: bold}
-body { font-family: arial, helvetica, geneva; font-size: 10pt; clip: rect( ); margin-top: 5mm; margin-left: 3mm}
-</style>
-</head>
-<body lang="EN-US" link="blue" vlink="purple">
-<table border="0" cellspacing="5" cellpadding="2" width="100%" >
- <tr>
- <td align="LEFT" valign="TOP" colspan="2" bgcolor="#0080C0"><b><font color="#FFFFFF">About This Content</font></b></td>
- </tr>
- <tr>
- <td>
-<p>11th December, 2001</p>
-<h3>License</h3>
-<p>Eclipse.org 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
-<a href="http://www.eclipse.org/legal/cpl-v05.html">Common Public License Version 0.5</a> &quot;CPL&quot;. For purposes of the CPL, &quot;Program&quot; will mean the Content.</p>
-
-<h3>Contributions</h3>
-
-<p>If this Content is licensed to you under the terms and conditions of the CPL, any Contributions, as defined in the CPL, uploaded, submitted, or otherwise
-made available to Eclipse.org, members of Eclipse.org and/or the host of Eclipse.org web site, by you that relate to such
-Content are provided under the terms and conditions of the CPL and can be made available to others under the terms of the CPL.</p>
-
-<p>If this Content is licensed to you under license terms and conditions other than the CPL &quot;Other License&quot;, any modifications, enhancements and/or
-other code and/or documentation &quot;Modifications&quot; uploaded, submitted, or otherwise made available to Eclipse.org, members of Eclipse.org and/or the
-host of Eclipse.org, by you that relate to such Content are provided under terms and conditions of the Other License and can be made available
-to others under the terms of the Other License. In addition, with regard to Modifications for which you are the copyright holder, you are also
-providing the Modifications under the terms and conditions of the CPL and such Modifications can be made available to others under the terms of
-the CPL.</p>
-</td></tr></table>
-</body>
-</html> \ No newline at end of file
diff --git a/bundles/org.eclipse.team.core/build.properties b/bundles/org.eclipse.team.core/build.properties
deleted file mode 100644
index 038bbbca4..000000000
--- a/bundles/org.eclipse.team.core/build.properties
+++ /dev/null
@@ -1,3 +0,0 @@
-# Eclipse build contribution
-bin.includes = about.html,plugin.xml,plugin.properties,*.jar
-source.team.jar=src/
diff --git a/bundles/org.eclipse.team.core/buildnotes_team.html b/bundles/org.eclipse.team.core/buildnotes_team.html
deleted file mode 100644
index 7f19e8b67..000000000
--- a/bundles/org.eclipse.team.core/buildnotes_team.html
+++ /dev/null
@@ -1,497 +0,0 @@
-<!DOCTYPE doctype PUBLIC "-//w3c//dtd html 4.0 transitional//en">
-<html xmlns:v="urn:schemas-microsoft-com:vml"
- xmlns:o="urn:schemas-microsoft-com:office:office"
- xmlns:w="urn:schemas-microsoft-com:office:word"
- xmlns="http://www.w3.org/TR/REC-html40">
-<head>
-
- <meta http-equiv="Content-Type"
- content="text/html; charset=iso-8859-1">
-
- <meta name="ProgId" content="Word.Document">
-
- <meta name="Generator" content="Microsoft Word 9">
-
- <meta name="Originator" content="Microsoft Word 9">
-
- <link rel="File-List" href="filelist">
- <title>Eclipse Platform Release Notes - VCM</title>
-
- <style>
-<!--
- /* Style Definitions */
-p.MsoNormal, li.MsoNormal, div.MsoNormal
- {mso-style-parent:"";
- margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:12.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
-h1
- {margin-right:0in;
- mso-margin-top-alt:auto;
- mso-margin-bottom-alt:auto;
- margin-left:0in;
- mso-pagination:widow-orphan;
- mso-outline-level:1;
- font-size:24.0pt;
- font-family:"Times New Roman";
- mso-font-kerning:18.0pt;
- font-weight:bold;}
-h2
- {margin-right:0in;
- mso-margin-top-alt:auto;
- mso-margin-bottom-alt:auto;
- margin-left:0in;
- mso-pagination:widow-orphan;
- mso-outline-level:2;
- font-size:18.0pt;
- font-family:"Times New Roman";
- font-weight:bold;}
-h3
- {margin-right:0in;
- mso-margin-top-alt:auto;
- mso-margin-bottom-alt:auto;
- margin-left:0in;
- mso-pagination:widow-orphan;
- mso-outline-level:3;
- font-size:13.5pt;
- font-family:"Times New Roman";
- font-weight:bold;}
-a:link, span.MsoHyperlink
- {color:blue;
- text-decoration:underline;
- text-underline:single;}
-a:visited, span.MsoHyperlinkFollowed
- {color:purple;
- text-decoration:underline;
- text-underline:single;}
-p
- {margin-right:0in;
- mso-margin-top-alt:auto;
- mso-margin-bottom-alt:auto;
- margin-left:0in;
- mso-pagination:widow-orphan;
- font-size:12.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
-@page Section1
- {size:8.5in 11.0in;
- margin:1.0in 1.25in 1.0in 1.25in;
- mso-header-margin:.5in;
- mso-footer-margin:.5in;
- mso-paper-source:0;}
-div.Section1
- {page:Section1;}
- /* List Definitions */
-@list l0
- {mso-list-id:180434102;
- mso-list-type:hybrid;
- mso-list-template-ids:-764372184 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
-ol
- {margin-bottom:0in;}
-ul
- {margin-bottom:0in;}
--->
- </style>
- <!--[if gte mso 9]><xml>
- <u1:DocumentProperties>
- <u1:Author>johnart</u1:Author>
- <u1:LastAuthor>johnart</u1:LastAuthor>
- <u1:Revision>2</u1:Revision>
- <u1:TotalTime>14</u1:TotalTime>
- <u1:Created>2001-05-14T20:34:00Z</u1:Created>
- <u1:LastSaved>2001-05-14T20:58:00Z</u1:LastSaved>
- <u1:Pages>9</u1:Pages>
- <u1:Words>3732</u1:Words>
- <u1:Characters>21276</u1:Characters>
- <u1:Lines>177</u1:Lines>
- <u1:Paragraphs>42</u1:Paragraphs>
- <u1:CharactersWithSpaces>26128</u1:CharactersWithSpaces>
- <u1:Version>9.3821</u1:Version>
- </u1:DocumentProperties>
-</xml><![endif]-->
-</head>
- <body lang="EN-US" link="blue" vlink="purple" style="">
-
-<h1 style=""> </h1>
-
-<h1 style=""> </h1>
-
-<h1 style=""> </h1>
-
-<h1 style=""> </h1>
-
-<h1 style=""> </h1>
-
-<h1 style="">
-<h1 style="">Eclipse Platform Build Notes &#8211; Team Support</h1>
- </h1>
-<p class="MsoNormal">Team build I20020430 &#8211; April 30 2002</p>
-
-<p class="MsoNormal">Build submission for Integration Build 20020430</p>
-
-<h2>What's new in this build</h2>
-
-<p class="MsoNormal">No major changes</p>
-
-<h1 style=""> </h1>
-
-<h1 style=""> </h1>
-
-<h1 style=""> </h1>
-
-<h1 style=""> </h1>
-
-<h1 style=""> </h1>
-
-<h1 style="">Eclipse Platform Build Notes &#8211; Team Support</h1>
-
-<p class="MsoNormal">Team build I20020423 &#8211; April 23 2002</p>
-
-<p class="MsoNormal">Build submission for Integration Build 20020423</p>
-
-<h2>What's new in this build</h2>
-
-<p class="MsoNormal">Initial release of team project set support. There is
-now an import and export wizard that allows one to create a file containing
-a list (and location) of team shared projects. This file may be imported into
-another workspace, re-creating the entire set of projects.</p>
-
-<h1 style=""> </h1>
-
-<h1 style=""> </h1>
-
-<h1 style=""> </h1>
-
-<h1 style=""> </h1>
-
-<h1 style=""> </h1>
-
-<h1 style="">Eclipse Platform Build Notes &#8211; Team Support</h1>
-
-<p class="MsoNormal">Team build I20020418 &#8211; April 18 2002</p>
-
-<p class="MsoNormal">Build submission for Integration Build 20020418</p>
-
-<h2>What's new in this build</h2>
-
-<p class="MsoNormal">No significant changes to the core Team support in this
- build.</p>
-
-<h1 style="">Eclipse Platform Build Notes &#8211; Team Support</h1>
-
-<p class="MsoNormal">Team build I20020409 &#8211; April 9 2002</p>
-
-<p class="MsoNormal">Build submission for Integration Build 20020409</p>
-
-<h2>What's new in this build</h2>
-
-<p class="MsoNormal">No significant changes to the core Team support in this
- build.</p>
- <br>
-
-<h1 style="">Eclipse Platform Build Notes &#8211; Team Support</h1>
-
-<p class="MsoNormal">Team build I20020402 &#8211; April 2 2002</p>
-
-<p class="MsoNormal">Build submission for Integration Build 20020402</p>
-
-<h2>What's new in this build</h2>
-
-<p class="MsoNormal">Team plug-ins are now turned <b>on</b> by default. The
- old VCM plug-ins are still included in the build but are turned off.<br>
- The global ignore and text/binary APIs have changed substantially. The
- facilities are now provided as static methods on the class org.eclipse.team.core.Team.
- See that class's Javadoc for more details.<br>
- <br>
- </p>
-
-<p class="MsoNormal"><br>
- </p>
-
-<div class="Section1">
-<h1 style="">Eclipse Platform Build Notes &#8211; Team Support</h1>
-
-<p class="MsoNormal">Team build I20020312 &#8211; March 12 2002</p>
-
-<p class="MsoNormal">Build submission for Integration Build 20020312</p>
-
-<h2>What's new in this build</h2>
-
-<p class="MsoNormal"></p>
-
-<p class="MsoNormal">Team plug-ins are now turned <b>on</b> by default. The
- old VCM plug-ins are still included in the build but are turned off.</p>
-
-<p class="MsoNormal"><br>
- The Decorations extension point has been removed from org.eclipse.team.ui.
- Please use the generic workbench decoration facility in the future.<br>
- </p>
-
-<h1 style="">Eclipse Platform Build Notes &#8211; Team Support</h1>
-
-<p class="MsoNormal">Team build I20020305 &#8211; March 5 2002</p>
-
-<p class="MsoNormal">Build submission for Integration Build 20020305</p>
-
-<h2>What's new in this drop</h2>
-
-<p class="MsoNormal">No changes to the core team support in this drop.</p>
-
-<p class="MsoNormal"><br>
- All Team plug-ins are turned off by default. If you wish to use Team
- support,</p>
-
-<ol style="margin-top: 0in;" start="1" type="1">
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.ui/plugin.xml.off
- to plugins/org.eclipse.team.ui/plugin.xml&nbsp;</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.cvs.ui/plugin.xml.off
- to plugins/org.eclipse.team.cvs.ui/plugin.xml&nbsp;</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.core/plugin.xml.off
- to plugins/org.eclipse.team.core/plugin.xml&nbsp;</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.cvs.core/plugin.xml.off
- to plugins/org.eclipse.team.cvs.core/plugin.xml&nbsp;</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.cvs.ssh/plugin.xml.off
- to plugins/org.eclipse.team.cvs.ssh/plugin.xml&nbsp;</li>
-
-</ol>
-
-<h1 style="">Eclipse Platform Build Notes &#8211; Team Support</h1>
-
-<p class="MsoNormal">Team build I20020226 &#8211; February 26, 2002</p>
-
-<p class="MsoNormal">Build submission for Integration Build 20020226</p>
-
-<h2>What's new in this drop</h2>
-
-<p class="MsoNormal"></p>
-
-<p class="MsoNormal"></p>
-
-<p class="MsoNormal"><!--[if !supportEmptyParas]--><!--[endif]--></p>
-
-<p class="MsoNormal">No changes in this drop.</p>
-
-<p class="MsoNormal"><br>
- All Team plug-ins are turned off by default. If you wish to use Team
- support,</p>
-
-<ol style="margin-top: 0in;" start="1" type="1">
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.ui/plugin.xml.off
- to plugins/org.eclipse.team.ui/plugin.xml&nbsp;</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.cvs.ui/plugin.xml.off
- to plugins/org.eclipse.team.cvs.ui/plugin.xml&nbsp;</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.core/plugin.xml.off
- to plugins/org.eclipse.team.core/plugin.xml&nbsp;</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.cvs.core/plugin.xml.off
- to plugins/org.eclipse.team.cvs.core/plugin.xml&nbsp;</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.cvs.ssh/plugin.xml.off
- to plugins/org.eclipse.team.cvs.ssh/plugin.xml&nbsp;</li>
-
-</ol>
-
-<h1 style="">Eclipse Platform Build Notes &#8211; Team Support</h1>
-
-<p class="MsoNormal">Team build I20020214 &#8211; February 14, 2002<o:p></o:p></p>
-
-<p class="MsoNormal">Build submission for Integration Build 20020214<o:p></o:p></p>
-
-<h2>What's new in this drop<o:p></o:p></h2>
-
-<p class="MsoNormal">Bug fixes:<o:p></o:p></p>
-
-<p class="MsoNormal">Change in semantics to validateEdit (9802)<o:p></o:p></p>
-
-<p class="MsoNormal"><!--[if !supportEmptyParas]-->&nbsp;<!--[endif]--><o:p></o:p></p>
-
-<p class="MsoNormal">All Team plug-ins are turned off by default. If you wish
-to use Team support,<o:p></o:p></p>
-
-<ol style="margin-top: 0in;" start="1" type="1">
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.ui/plugin.xml.off
- to plugins/org.eclipse.team.ui/plugin.xml <o:p></o:p></li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.cvs.ui/plugin.xml.off
- to plugins/org.eclipse.team.cvs.ui/plugin.xml <o:p></o:p></li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.core/plugin.xml.off
- to plugins/org.eclipse.team.core/plugin.xml <o:p></o:p></li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.cvs.core/plugin.xml.off
- to plugins/org.eclipse.team.cvs.core/plugin.xml <o:p></o:p></li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.cvs.ssh/plugin.xml.off
- to plugins/org.eclipse.team.cvs.ssh/plugin.xml <o:p></o:p></li>
-
-</ol>
-
-<h1 style="">Eclipse Platform Build Notes &#8211; Team Support</h1>
-
-<p class="MsoNormal">Team build V2_0_6 &#8211; February 12, 2002</p>
-
-<p class="MsoNormal">Build submission for Integration Build 20020212</p>
-
-<h2>What's new in this drop</h2>
-
-<p class="MsoNormal">48 bugs fixed.</p>
-
-<p class="MsoNormal">Global ignore facility added to the core team support.</p>
-
-<p class="MsoNormal"><!--[if !supportEmptyParas]-->&nbsp;<!--[endif]--><o:p></o:p></p>
-
-<p class="MsoNormal">All Team plug-ins are turned off by default. If you wish
-to use Team support,</p>
-
-<ol style="margin-top: 0in;" start="6" type="1">
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.ui/plugin.xml.off
- to plugins/org.eclipse.team.ui/plugin.xml</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.cvs.ui/plugin.xml.off
- to plugins/org.eclipse.team.cvs.ui/plugin.xml</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.core/plugin.xml.off
- to plugins/org.eclipse.team.core/plugin.xml</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.cvs.core/plugin.xml.off
- to plugins/org.eclipse.team.cvs.core/plugin.xml</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.cvs.ssh/plugin.xml.off
- to plugins/org.eclipse.team.cvs.ssh/plugin.xml</li>
-
-</ol>
-
-<p class="MsoNormal" style="margin-left: 0.25in;"><!--[if !supportEmptyParas]-->
- &nbsp;<!--[endif]--><o:p></o:p></p>
-
-<p class="MsoNormal">Please report any problems to the VCM team, and use the
-VCM component for bug tracking.</p>
-
-<h1 style="">Eclipse Platform Build Notes &#8211; Team Support</h1>
-
-<p class="MsoNormal">Team build V2_0_5 &#8211; February 5, 2002</p>
-
-<p class="MsoNormal">Build submission for Integration Build 20020205</p>
-
-<h2>What's new in this drop</h2>
-
-<p class="MsoNormal">41 bugs fixed.</p>
-
-<p class="MsoNormal">CVS operations move from the CVS submenu to the Team
- submenu.</p>
-
-<p class="MsoNormal">Proper plugin.xml files will be included with this build.</p>
-
-<p class="MsoNormal"><!--[if !supportEmptyParas]-->&nbsp;<!--[endif]--><o:p></o:p></p>
-
-<p class="MsoNormal">All Team plug-ins are turned off by default. If you wish
-to use Team support,</p>
-
-<ol style="margin-top: 0in;" start="11" type="1">
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.ui/plugin.xml.off
- to plugins/org.eclipse.team.ui/plugin.xml</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.cvs.ui/plugin.xml.off
- to plugins/org.eclipse.team.cvs.ui/plugin.xml</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.core/plugin.xml.off
- to plugins/org.eclipse.team.core/plugin.xml</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.cvs.core/plugin.xml.off
- to plugins/org.eclipse.team.cvs.core/plugin.xml</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.cvs.ssh/plugin.xml.off
- to plugins/org.eclipse.team.cvs.ssh/plugin.xml</li>
-
-</ol>
-
-<p class="MsoNormal" style="margin-left: 0.25in;"><!--[if !supportEmptyParas]-->
- &nbsp;<!--[endif]--><o:p></o:p></p>
-
-<p class="MsoNormal">Please report any problems to the VCM team, and use the
-VCM component for bug tracking.</p>
-
-<p class="MsoNormal"><!--[if !supportEmptyParas]-->&nbsp;<!--[endif]--><o:p></o:p></p>
-
-<p class="MsoNormal">Run <a
- href="http://dev.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&amp;resolution=FIXED&amp;email1=&amp;emailtype1=substring&amp;emailassigned_to1=1&amp;email2=&amp;emailtype2=substring&amp;emailreporter2=1&amp;bugidtype=include&amp;bug_id=&amp;changedin=&amp;votes=&amp;chfield=bug_status&amp;chfieldfr%20">
- this</a> query to determine which bugs have been fixed since January
- 29<sup> th</sup>. If you wish to narrow the search, edit the query and
- change the dates.</p>
-
-<h1 style="">Eclipse Platform Build Notes &#8211; Team Support</h1>
-
-<p class="MsoNormal">Team build V2_0_4 &#8211; January 29, 2002</p>
-
-<p class="MsoNormal">Build submission for Integration Build 20020129</p>
-
-<h2>What's new in this drop</h2>
-
-<p class="MsoNormal">Merge support has been added</p>
-
-<p class="MsoNormal">Numerous bug fixes</p>
-
-<p class="MsoNormal"><!--[if !supportEmptyParas]-->&nbsp;<!--[endif]--><o:p></o:p></p>
-
-<p class="MsoNormal">All Team plug-ins are turned off by default. If you wish
-to use Team support,</p>
-
-<ol style="margin-top: 0in;" start="16" type="1">
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.ui/plugin.xml.off
- to plugins/org.eclipse.team.ui/plugin.xml</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.cvs.ui/plugin.xml.off
- to plugins/org.eclipse.team.cvs.ui/plugin.xml</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.core/plugin.xml.off
- to plugins/org.eclipse.team.core/plugin.xml</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.cvs.core/plugin.xml.off
- to plugins/org.eclipse.team.cvs.core/plugin.xml</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.cvs.ssh/plugin.xml.off
- to plugins/org.eclipse.team.cvs.ssh/plugin.xml</li>
-
-</ol>
-
-<p class="MsoNormal" style="margin-left: 0.25in;"><!--[if !supportEmptyParas]-->
- &nbsp;<!--[endif]--><o:p></o:p></p>
-
-<p class="MsoNormal">Please report any problems to the VCM team, and use the
-VCM component for bug tracking.</p>
-
-<p class="MsoNormal"><!--[if !supportEmptyParas]-->&nbsp;<!--[endif]--><o:p></o:p></p>
-
-<p class="MsoNormal">Run <a
- href="http://dev.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&amp;resolution=FIXED&amp;priority=P1&amp;priority=P2&amp;priority=P3&amp;priority=P4&amp;email1=&amp;emailtype1=substring&amp;emailassigned_to1=1&amp;email2=&amp;emailtype2=substring&amp;emailreporter2=1&amp;bugidtype=include&amp;bug_id%20">
- this</a> query to determine which bugs have been fixed since January
- 15<sup> th</sup>. If you wish to narrow the search, edit the query and
- change the dates.</p>
-
-<h1 style="">Eclipse Platform Build Notes &#8211; Team Support</h1>
-
-<p class="MsoNormal">Team build V2_0_2 &#8211; January 15, 2002</p>
-
-<p class="MsoNormal">Build submission for Integration Build 20020115</p>
-
-<h2>What's new in this drop</h2>
-
-<p class="MsoNormal">This is the initial release for the Team support plug-ins.
- Team support is intended to be an eventual replacement for the VCM codebase.</p>
-
-<p class="MsoNormal"><!--[if !supportEmptyParas]-->&nbsp;<!--[endif]--><o:p></o:p></p>
-
-<p class="MsoNormal">The plug-ins are turned off by default. If you wish to
-use Team support,</p>
-
-<ol style="margin-top: 0in;" start="21" type="1">
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.ui/plugin.xml.off
- to plugins/org.eclipse.team.ui/plugin.xml</li>
- <li class="MsoNormal" style=""> Rename plugins/org.eclipse.team.cvs.ui/plugin.xml.off
- to plugins/org.eclipse.team.cvs.ui/plugin.xml</li>
-
-</ol>
-
-<p class="MsoNormal"><!--[if !supportEmptyParas]-->&nbsp;<!--[endif]--><o:p></o:p></p>
-
-<p class="MsoNormal">Please report any problems to the VCM team, and use the
-VCM component for bug tracking.</p>
-
-<p class="MsoNormal"><!--[if !supportEmptyParas]-->&nbsp;<!--[endif]--><o:p></o:p></p>
-
-<p class="MsoNormal">Run <a
- href="http://dev.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&amp;bug_status=VERIFIED&amp;resolution=FIXED&amp;priority=P1&amp;priority=P2&amp;priority=P3&amp;priority=P4&amp;email1=&amp;emailtype1=substring&amp;emailassigned_to1=1&amp;email2=&amp;emailtype2=substring&amp;emailreporter2=1&amp;bugi%20">
- this</a> query to determine which bugs have been fixed since January
- 7<sup> th</sup>. If you wish to narrow the search, edit the query and
-change the dates.</p>
-
-<h1 style=""><!--[if !supportEmptyParas]--> &nbsp;<!--[endif]--><o:p></o:p></h1>
- </div>
-
-</body>
-</html>
diff --git a/bundles/org.eclipse.team.core/doc/hglegal.htm b/bundles/org.eclipse.team.core/doc/hglegal.htm
deleted file mode 100644
index c59811321..000000000
--- a/bundles/org.eclipse.team.core/doc/hglegal.htm
+++ /dev/null
@@ -1,14 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
- <meta name="GENERATOR" content="Mozilla/4.73 [en] (Win98; U) [Netscape]">
- <title>Legal Notices</title>
-</head>
-<body>
-
-<h3>
-<a NAME="Notices"></a>Notices</h3>
-(c) Copyright IBM Corp. 2000, 2001. All Rights Reserved.
-</body>
-</html>
diff --git a/bundles/org.eclipse.team.core/doc/ngibmcpy.gif b/bundles/org.eclipse.team.core/doc/ngibmcpy.gif
deleted file mode 100644
index 360f8e998..000000000
--- a/bundles/org.eclipse.team.core/doc/ngibmcpy.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.team.core/doc/org_eclipse_team_core.html b/bundles/org.eclipse.team.core/doc/org_eclipse_team_core.html
deleted file mode 100644
index a001ac9a1..000000000
--- a/bundles/org.eclipse.team.core/doc/org_eclipse_team_core.html
+++ /dev/null
@@ -1,26 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Team Core Extension Points</title>
-</head>
-<body link="#0000FF" vlink="#800080">
-
-<center>
-<h1>Team Core Plug-in</h1></center>
-This document lists all of the extension points that the Team Core plug-in makes available to repository provider developers.
-<p>
-<hr WIDTH="100%">
-<h1>General Extension Points</h1>
-The following extension points can be used to extend various aspects of the team functionality:
-<ul>
-<li>
-<a href="org_eclipse_team_core_fileTypes.html">org.eclipse.team.core.fileTypes</a></li>
-<li>
-<a href="org_eclipse_team_core_ignore.html">org.eclipse.team.core.ignore</a></li>
-<li>
-<a href="org_eclipse_team_core_projectSets.html">org.eclipse.team.core.projectSets</a></li>
-</ul>
-<a href="hglegal.htm"><img SRC="ngibmcpy.gif" ALT="Copyright IBM Corp. 2000, 2001. All Rights Reserved." BORDER=0 height=12 width=195></a>
-</body>
-</html>
diff --git a/bundles/org.eclipse.team.core/doc/org_eclipse_team_core_fileTypes.html b/bundles/org.eclipse.team.core/doc/org_eclipse_team_core_fileTypes.html
deleted file mode 100644
index 5b9a6f636..000000000
--- a/bundles/org.eclipse.team.core/doc/org_eclipse_team_core_fileTypes.html
+++ /dev/null
@@ -1,45 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0//en">
-<html>
-<head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
- <title>Eclipse Team Core Extension Point: File Types</title>
-</head>
-<body link="#0000FF" vlink="#800080">
-
-<center>
-<h1>
-File Types</h1></center>
-<b><i>Identifier: </i></b>org.eclipse.team.core.fileTypes
-<p><b><i>Description: </i></b>This extension point is used to register
-information about whether particular file types should be considered
-to contain text or binary data. This information is important to some
-repository providers as it affects how the data is stored, compared and
-transmitted.
-<p>Providers may provide an extension for this extension point. No code
-beyond the XML extension declaration is required.
-<p><b><i>Configuration Markup:</i></b>
-<p><tt>&nbsp;&nbsp; &lt;!ELEMENT fileTypes EMPTY></tt>
-<br><tt>&nbsp;&nbsp; &lt;!ATTLIST fileTypes</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; extension&nbsp;&nbsp;
-CDATA #REQUIRED</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; type&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-CDATA #REQUIRED</tt>
-<br><tt>&nbsp;&nbsp; ></tt>
-
-<ul>
-<li><b>extension -</b> the file extension being identified by this contribution.</li>
-<li><b>type -</b> one of either "text" or "binary", identifying the contents of files matching the value of extension.</li>
-</ul>
-
-<b><i>Examples:</i></b>
-<p>Following is an example of a fileTypes extension:
-<p><tt>&nbsp;&nbsp; &lt;extension point="org.eclipse.team.core.fileTypes"></tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;fileTypes</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; extension="txt"</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; type="text"</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/fileTypes></tt>
-<br><tt>&nbsp;&nbsp; &lt;/extension></tt>
-
-<p><a href="hglegal.htm"><img SRC="ngibmcpy.gif" ALT="Copyright IBM Corp. 2000, 2001. All Rights Reserved." BORDER=0 height=12 width=195></a>
-</body>
-</html>
diff --git a/bundles/org.eclipse.team.core/doc/org_eclipse_team_core_ignore.html b/bundles/org.eclipse.team.core/doc/org_eclipse_team_core_ignore.html
deleted file mode 100644
index cdab6827f..000000000
--- a/bundles/org.eclipse.team.core/doc/org_eclipse_team_core_ignore.html
+++ /dev/null
@@ -1,43 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0//en">
-<html>
-<head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
- <title>Eclipse Team Core Extension Point: Ignore</title>
-</head>
-<body link="#0000FF" vlink="#800080">
-
-<center>
-<h1>
-Ignore</h1></center>
-<b><i>Identifier: </i></b>org.eclipse.team.core.ignore
-<p><b><i>Description: </i></b>This extension point is used to register
-information about whether particular resources should be ignored; that
-is, excluded from version configuration management operations.
-<p>Providers may provide an extension for this extension point. No code
-beyond the XML extension declaration is required.
-<p><b><i>Configuration Markup:</i></b>
-<p><tt>&nbsp;&nbsp; &lt;!ELEMENT ignore EMPTY></tt>
-<br><tt>&nbsp;&nbsp; &lt;!ATTLIST ignore</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pattern&nbsp;&nbsp;
-CDATA #REQUIRED</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enabled&nbsp;&nbsp;
-CDATA #REQUIRED</tt>
-<br><tt>&nbsp;&nbsp; ></tt>
-
-<ul>
-<li><b>pattern -</b> the pattern against which resources will be compared.</li>
-<li><b>enabled -</b> one of "true" or "false", determines whether this ignore pattern is enabled.</li>
-</ul>
-
-<b><i>Examples:</i></b>
-<p>Following is an example of an ignore extension:
-<p><tt>&nbsp;&nbsp; &lt;extension point="org.eclipse.team.core.ignore"></tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;ignore</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pattern="*.class"</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enabled="true"</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/ignore></tt>
-<br><tt>&nbsp;&nbsp; &lt;/extension></tt>
-
-<p><a href="hglegal.htm"><img SRC="ngibmcpy.gif" ALT="Copyright IBM Corp. 2000, 2001. All Rights Reserved." BORDER=0 height=12 width=195></a>
-</body>
-</html>
diff --git a/bundles/org.eclipse.team.core/doc/org_eclipse_team_core_projectSets.html b/bundles/org.eclipse.team.core/doc/org_eclipse_team_core_projectSets.html
deleted file mode 100644
index ae3dbe470..000000000
--- a/bundles/org.eclipse.team.core/doc/org_eclipse_team_core_projectSets.html
+++ /dev/null
@@ -1,45 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0//en">
-<html>
-<head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
- <title>Eclipse Team Core Extension Point: Project Sets</title>
-</head>
-<body link="#0000FF" vlink="#800080">
-
-<center>
-<h1>
-Project Sets</h1></center>
-<b><i>Identifier: </i></b>org.eclipse.team.core.projectSets
-<p><b><i>Description: </i></b>This extension point is used to register
-a handler for creating and reading project sets. Project sets are a lightweight,
-portable method of sharing a particular lineup of team-shared projects in a
-workspace. A project set file may be used to provide team members with a simple
-way of creating a workspace with a particular lineup of projects from one or
-more team providers.
-<p>Providers may provide an extension for this extension point.
-<p><b><i>Configuration Markup:</i></b>
-<p><tt>&nbsp;&nbsp; &lt;!ELEMENT projectSets EMPTY></tt>
-<br><tt>&nbsp;&nbsp; &lt;!ATTLIST projectSets</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; id&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-CDATA #REQUIRED</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; class&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-CDATA #REQUIRED</tt>
-<br><tt>&nbsp;&nbsp; ></tt>
-
-<ul>
-<li><b>id -</b> the nature id of the provider for which this handler creates and reads project sets.</li>
-<li><b>type -</b> the fully-qualified name of a class implementing <code>org.eclipse.team.core.IProjectSetSerializer</code>.</li>
-</ul>
-
-<b><i>Examples:</i></b>
-<p>Following is an example of a projectSets extension:
-<p><tt>&nbsp;&nbsp; &lt;extension point="org.eclipse.team.core.projectSets"></tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;projectSets</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; id="org.eclipse.team.cvs.core.cvsnature"</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; class="org.eclipse.team.cvs.core.CVSProjectSetSerializer"</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/projectSets></tt>
-<br><tt>&nbsp;&nbsp; &lt;/extension></tt>
-
-<p><a href="hglegal.htm"><img SRC="ngibmcpy.gif" ALT="Copyright IBM Corp. 2000, 2001. All Rights Reserved." BORDER=0 height=12 width=195></a>
-</body>
-</html>
diff --git a/bundles/org.eclipse.team.core/plugin.properties b/bundles/org.eclipse.team.core/plugin.properties
deleted file mode 100644
index b6888863d..000000000
--- a/bundles/org.eclipse.team.core/plugin.properties
+++ /dev/null
@@ -1,4 +0,0 @@
-pluginName = Team Support Core
-FileTypesRegistry=File Types Registry
-GlobalIgnoreRegistry=Global Ignore Registry
-TeamProjectSets=Team Project Sets \ No newline at end of file
diff --git a/bundles/org.eclipse.team.core/plugin.xml b/bundles/org.eclipse.team.core/plugin.xml
deleted file mode 100644
index cf1475485..000000000
--- a/bundles/org.eclipse.team.core/plugin.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- File written by PDE 1.0 -->
-<plugin
- id="org.eclipse.team.core"
- name="%pluginName"
- version="1.9.0"
- provider-name="Object Technology International, Inc."
- class="org.eclipse.team.core.TeamPlugin">
-<requires>
- <import plugin="org.eclipse.core.resources"/>
- <import plugin="org.eclipse.core.runtime"/>
-</requires>
-
-<runtime>
- <library name="team.jar">
- <export name="*"/>
- </library>
-</runtime>
-
-<extension-point id="fileTypes" name="%FileTypesRegistry"/>
-<extension-point id="ignore" name="%GlobalIgnoreRegistry"/>
-<extension-point id="projectSets" name="%TeamProjectSets"/>
-
-<!-- Define some example text extensions. This will be done
- by other plugins later. -->
-
-<extension point="org.eclipse.team.core.fileTypes">
- <fileTypes extension="txt" type="text"/>
- <fileTypes extension="java" type="text"/>
- <fileTypes extension="properties" type="text"/>
- <fileTypes extension="xml" type="text"/>
- <fileTypes extension="html" type="text"/>
-</extension>
-
-<extension point="org.eclipse.core.resources.fileModificationValidator" id="FileValidator">
- <fileModificationValidator class="org.eclipse.team.internal.core.FileModificationValidatorManager"/>
-</extension>
-
-<extension point="org.eclipse.core.resources.moveDeleteHook" id="MoveDeleteHook">
- <moveDeleteHook class="org.eclipse.team.internal.core.MoveDeleteManager"/>
-</extension>
-
-</plugin>
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/IFileTypeInfo.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/core/IFileTypeInfo.java
deleted file mode 100644
index e78cbbabf..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/IFileTypeInfo.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v0.5
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v05.html
- *
- * Contributors:
- * IBM - Initial API and implementation
- ******************************************************************************/
-package org.eclipse.team.core;
-
-/**
- * A file type info specifies both the file extension and the
- * corresponding file type.
- *
- * @since 2.0
- */
-public interface IFileTypeInfo {
- /**
- * Returns the string specifying the file extension
- *
- * @return the file extension
- */
- public String getExtension();
-
- /**
- * Returns the file type for files ending with the corresponding
- * extension.
- *
- * Valid values are:
- * Team.UNKNOWN
- * Team.TEXT
- * Team.BINARY
- *
- * @return the file type
- */
- public int getType();
-}
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/IIgnoreInfo.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/core/IIgnoreInfo.java
deleted file mode 100644
index 9c5c8260f..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/IIgnoreInfo.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v0.5
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v05.html
- *
- * Contributors:
- * IBM - Initial API and implementation
- ******************************************************************************/
-package org.eclipse.team.core;
-
-/**
- * An ignore info specifies both the pattern and the enabled state
- * of a globally ignored pattern.
- *
- * @since 2.0
- */
-public interface IIgnoreInfo {
- /**
- * Return the string specifying the pattern of this ignore. The string
- * may include the wildcard characters '*' and '?'. If you wish to
- * include either of these characters verbatim (i.e. you do not wish
- * them to expand to wildcards), you must escape them with a backslash '\'.
- * <p>
- * If you are using string literals in Java to represent the patterns, don't
- * forget escape characters are represented by "\\".
- *
- * @return the pattern represented by this ignore info
- */
- public String getPattern();
- /**
- * Return whether or not this ignore info is enabled. A disabled ignore
- * info remains in the global ignore list, but no attempt is made to match
- * against it to determine resource ignore state.
- *
- * @return whether the ignore info is enabled
- */
- public boolean getEnabled();
-}
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/IProjectSetSerializer.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/core/IProjectSetSerializer.java
deleted file mode 100644
index bf1dbf358..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/IProjectSetSerializer.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v0.5
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v05.html
- *
- * Contributors:
- * IBM - Initial API and implementation
- ******************************************************************************/
-package org.eclipse.team.core;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IProgressMonitor;
-
-/**
- * IProjectSetSerializer manages the serializing and deserializing
- * of references to projects. Given a project, it can produce a
- * UTF-8 encoded String which can be stored in a file.
- * Given this String, it can create in the workspace an IProject.
- */
-
-public interface IProjectSetSerializer {
-
- /**
- * For every IProject in providerProjects, return an opaque
- * UTF-8 encoded String to act as a reference to that project.
- * The format of the String is specific to the provider.
- * The format of the String must be such that
- * IProjectSetSerializer.addToWorskpace() will be able to
- * consume it and recreate a corresponding project.
- * @see IProjectSetSerializer.addToWorkspace()
- *
- * @param providerProjects an array of projects that the serializer should create
- * text references for
- * @param context a UI context object. This object will either be a
- * com.ibm.swt.widgets.Shell or it will be null.
- * @param monitor a progress monitor
- * @return an array of serialized reference strings uniquely identifying the projects
- */
- public String[] asReference(IProject[] providerProjects, Object context, IProgressMonitor monitor) throws TeamException;
-
- /**
- * For every String in referenceStrings, create in the workspace a
- * corresponding IProject. Return an Array of the resulting IProjects.
- * Result is unspecified in the case where an IProject of that name
- * already exists. In the case of failure, a TeamException must be thrown.
- * The opaque strings in referenceStrings are guaranteed to have been previously
- * produced by IProjectSetSerializer.asReference().
- * @see IProjectSetSerializer.asReference()
- *
- * @param referenceStrings an array of referene strings uniquely identifying the projects
- * @param filename the name of the file that the references were read from. This is included
- * in case the provider needs to deduce relative paths
- * @param context a UI context object. This object will either be a
- * com.ibm.swt.widgets.Shell or it will be null.
- * @param monitor a progress monitor
- * @return an array of projects that were created
- */
- public IProject[] addToWorkspace(String[] referenceStrings, String filename, Object context, IProgressMonitor monitor) throws TeamException;
-}
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/RepositoryProvider.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/core/RepositoryProvider.java
deleted file mode 100644
index a18b3c432..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/RepositoryProvider.java
+++ /dev/null
@@ -1,266 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v0.5
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v05.html
- *
- * Contributors:
- * IBM - Initial API and implementation
- ******************************************************************************/
-package org.eclipse.team.core;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IFileModificationValidator;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
-import org.eclipse.core.resources.IProjectNature;
-import org.eclipse.core.resources.IProjectNatureDescriptor;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.resources.team.IMoveDeleteHook;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.team.internal.core.Policy;
-import org.eclipse.team.internal.core.simpleAccess.SimpleAccessOperations;
-
-/**
- * A concrete subclass of <code>RepositoryProvider</code> is created for each
- * project that is associated with a repository provider. The lifecycle of these
- * instances is managed by the platform's 'nature' mechanism.
- * <p>
- * To create a repository provider and have it registered with the platform a client
- * must minimally:
- * <ol>
- * <li>extend <code>RepositoryProvider<code>
- * <li>define a nature extension in <code>plugin.xml</code> that is
- * part of the "org.eclipse.team.repository-provider" set. Having the repository nature
- * assigned to the team set allows cardinality restrictions to be inforced by the platform
- * (e.g. one repository provider can assigned to a project at a time). Here is an
- * example extension point definition:
- * <code>
- * <extension point="org.eclipse.core.resources.natures" id="myprovidernature" name="MyRepositoryType">
- * <runtime>
- * <run class="org.eclipse.myprovider.MyRepositoryProvider"/>
- * </runtime>
- * <one-of-nature id="org.eclipse.team.repository-provider"/>
- * </extension>
- * </p>
- * </code>
- * </ol></p>
- * <p>
- * Once a repository provider is registered as a nature and is in the team set, then you
- * can associate a repository provider with a project by assigning to the project the
- * nature id of the repository provider.
- * </p>
- * @see IProjectNature
- * @see RepositoryProviderType
- *
- * @since 2.0
- */
-public abstract class RepositoryProvider implements IProjectNature {
-
- private final static String TEAM_SETID = "org.eclipse.team.repository-provider"; //$NON-NLS-1$
-
- // the project instance that this nature is assigned to
- private IProject project;
-
- /**
- * Default constructor required for the resources plugin to instantiate this class from
- * the nature extension definition.
- */
- public RepositoryProvider() {
- }
-
- /**
- * Configures the nature for the given project. This method is called after <code>setProject</code>
- * and before the nature is added to the project. If an exception is generated during configuration
- * of the project, the nature will not be assigned to the project.
- *
- * @throws CoreException if the configuration fails.
- */
- abstract public void configureProject() throws CoreException;
-
- /**
- * Configures the nature for the given project. This is called by the platform when a nature is assigned
- * to a project. It is not intended to be called by clients.
- *
- * @throws CoreException if this method fails. If the configuration fails the nature will not be added
- * to the project.
- *
- * @see IProjectNature#configure
- */
- final public void configure() throws CoreException {
- try {
- configureProject();
- } catch(CoreException e) {
- try {
- Team.removeNatureFromProject(getProject(), getID(), null);
- } catch(TeamException e2) {
- throw new CoreException(new Status(IStatus.ERROR, TeamPlugin.ID, 0, Policy.bind("RepositoryProvider_Error_removing_nature_from_project___1") + getID(), e2)); //$NON-NLS-1$
- }
- throw e;
- }
- }
-
- /**
- * Answer the id of this provider instance. The id should be the repository provider's
- * nature id.
- *
- * @return the nature id of this provider
- */
- abstract public String getID();
-
- /**
- * Returns an <code>IFileModificationValidator</code> for pre-checking operations
- * that modify the contents of files.
- * Returns <code>null</code> if the provider does not wish to participate in
- * file modification validation.
- *
- * @see org.eclipse.core.resources.IFileModificationValidator
- */
-
- public IFileModificationValidator getFileModificationValidator() {
- return null;
- }
-
- /**
- * Returns an <code>IMoveDeleteHook</code> for handling moves and deletes
- * that occur withing projects managed by the provider. This allows providers
- * to control how moves and deletes occur and includes the ability to prevent them.
- * <p>
- * Returning <code>null</code> signals that the default move and delete behavior is desired.
- *
- * @see org.eclipse.core.resources.IMoveDeleteHook
- */
- public IMoveDeleteHook getMoveDeleteHook() {
- return null;
- }
-
- /**
- * Returns a brief description of this provider. The exact details of the
- * representation are unspecified and subject to change, but the following
- * may be regarded as typical:
- *
- * "SampleProject:org.eclipse.team.cvs.provider"
- *
- * @return a string description of this provider
- */
- public String toString() {
- return getProject().getName() + ":" + getID(); //$NON-NLS-1$
- }
-
- /**
- * Returns all known (registered) RepositoryProvider ids.
- *
- * @return an array of registered repository provider ids.
- */
- final public static String[] getAllProviderTypeIds() {
- IProjectNatureDescriptor[] desc = ResourcesPlugin.getWorkspace().getNatureDescriptors();
- List teamSet = new ArrayList();
- for (int i = 0; i < desc.length; i++) {
- String[] setIds = desc[i].getNatureSetIds();
- for (int j = 0; j < setIds.length; j++) {
- if(setIds[j].equals(TEAM_SETID)) {
- teamSet.add(desc[i].getNatureId());
- }
- }
- }
- return (String[]) teamSet.toArray(new String[teamSet.size()]);
- }
-
- /**
- * Returns the provider for a given IProject or <code>null</code> if a provider is not associated with
- * the project or if the project is closed or does not exist. This method should be called if the caller
- * is looking for <b>any</b> repository provider. Otherwise call <code>getProvider(project, id)</code>
- * yo look for a specific repository provider type.
- * </p>
- * @param project the project to query for a provider
- * @return the repository provider associated with the project
- */
- final public static RepositoryProvider getProvider(IProject project) {
- try {
- if(project.isAccessible()) {
- IProjectDescription projectDesc = project.getDescription();
- String[] natureIds = projectDesc.getNatureIds();
- IWorkspace workspace = ResourcesPlugin.getWorkspace();
- // for every nature id on this project, find it's natures sets and check if it is
- // in the team set.
- for (int i = 0; i < natureIds.length; i++) {
- IProjectNatureDescriptor desc = workspace.getNatureDescriptor(natureIds[i]);
- // The descriptor can be null if the nature doesn't exist
- if (desc != null) {
- String[] setIds = desc.getNatureSetIds();
- for (int j = 0; j < setIds.length; j++) {
- if(setIds[j].equals(TEAM_SETID)) {
- return getProvider(project, natureIds[i]);
- }
- }
- }
- }
- }
- } catch(CoreException e) {
- TeamPlugin.log(new Status(IStatus.ERROR, TeamPlugin.ID, 0, Policy.bind(""), e)); //$NON-NLS-1$
- }
- return null;
- }
-
- /**
- * Returns a provider of type with the given id if associated with the given project
- * or <code>null</code> if the project is not associated with a provider of that type
- * or the nature id is that of a non-team repository provider nature.
- *
- * @param project the project to query for a provider
- * @param id the repository provider id
- * @return the repository provider
- */
- final public static RepositoryProvider getProvider(IProject project, String id) {
- try {
- if(project.isAccessible()) {
- // if the nature id given is not in the team set then return
- // null.
- IProjectNatureDescriptor desc = ResourcesPlugin.getWorkspace().getNatureDescriptor(id);
- String[] setIds = desc.getNatureSetIds();
- for (int i = 0; i < setIds.length; i++) {
- if(setIds[i].equals(TEAM_SETID)) {
- return (RepositoryProvider)project.getNature(id);
- }
- }
- }
- } catch(CoreException ex) {
- // would happen if provider nature id is not registered with the resources plugin
- TeamPlugin.log(new Status(IStatus.WARNING, TeamPlugin.ID, 0, Policy.bind("RepositoryProviderTypeRepositoryProvider_not_registered_as_a_nature_id___3") + id, ex)); //$NON-NLS-1$
- }
- return null;
- }
-
- /*
- * Provisional.
- * Returns an object which implements a set of provider neutral operations for this
- * provider. Answers <code>null</code> if the provider does not wish to support these
- * operations.
- *
- * @return the repository operations or <code>null</code> if the provider does not
- * support provider neutral operations.
- */
- public SimpleAccessOperations getSimpleAccess() {
- return null;
- }
-
- /*
- * @see IProjectNature#getProject()
- */
- public IProject getProject() {
- return project;
- }
-
- /*
- * @see IProjectNature#setProject(IProject)
- */
- public void setProject(IProject project) {
- this.project = project;
- }
-}
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/Team.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/core/Team.java
deleted file mode 100644
index 17c21ebb8..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/Team.java
+++ /dev/null
@@ -1,556 +0,0 @@
-package org.eclipse.team.core;
-
-/*******************************************************************************
- * Copyright (c) 2002 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v0.5
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v05.html
- *
- * Contributors:
- * IBM - Initial API and implementation
- ******************************************************************************/
-
-import java.io.DataInputStream;
-import java.io.DataOutputStream;
-import java.io.EOFException;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.team.internal.core.Policy;
-import org.eclipse.team.internal.core.StringMatcher;
-import org.omg.CORBA.UNKNOWN;
-
-/**
- * The Team class provides a global point of reference for the global ignore set
- * and the text/binary registry.
- */
-public final class Team {
- // File type constants
- public static final int UNKNOWN = 0;
- public static final int TEXT = 1;
- public static final int BINARY = 2;
-
- // File name of the persisted file type information
- private static final String STATE_FILE = ".fileTypes"; //$NON-NLS-1$
-
- // File name of the persisted global ignore patterns
- private final static String GLOBALIGNORE_FILE = ".globalIgnores"; //$NON-NLS-1$
-
- // Keys: file extensions. Values: Integers
- private static Hashtable table;
-
- // The ignore list that is read at startup from the persisted file
- private static Map globalIgnore = new HashMap(11);
-
- private static class FileTypeInfo implements IFileTypeInfo {
- private String extension;
- private int type;
-
- public FileTypeInfo(String extension, int type) {
- this.extension = extension;
- this.type = type;
- }
- public String getExtension() {
- return extension;
- }
- public int getType() {
- return type;
- }
- }
-
- private static class IgnoreInfo implements IIgnoreInfo {
- private String pattern;
- private boolean enabled;
-
- public IgnoreInfo(String pattern, boolean enabled) {
- this.pattern = pattern;
- this.enabled = enabled;
- }
- public String getPattern() {
- return pattern;
- }
- public boolean getEnabled() {
- return enabled;
- }
- };
-
- /**
- * Return the type of the given file.
- *
- * Valid return values are:
- * Team.TEXT
- * Team.BINARY
- * Team.UNKNOWN
- *
- * @param file the file
- * @return whether files with the given extension are TEXT, BINARY, or UNKNOWN
- */
- public static int getType(IFile file) {
- String extension = file.getFileExtension();
- if (extension == null) return UNKNOWN;
- Integer integer = (Integer)table.get(extension);
- if (integer == null) return UNKNOWN;
- return integer.intValue();
- }
-
- /**
- * Returns whether the given file should be ignored.
- *
- * This method answers true if the file matches one of the global ignore
- * patterns, or if the file is marked as derived.
- *
- * @param file the file
- * @return whether the file should be ignored
- */
- public static boolean isIgnoredHint(IFile file) {
- if (file.isDerived()) return true;
- IIgnoreInfo[] ignorePatterns = getAllIgnores();
- StringMatcher matcher;
- for (int i = 0; i < ignorePatterns.length; i++) {
- IIgnoreInfo info = ignorePatterns[i];
- if (info.getEnabled()) {
- matcher = new StringMatcher(info.getPattern(), true, false);
- if (matcher.match(file.getName())) return true;
- }
- }
- return false;
- }
-
- /**
- * Returns whether the given file should be ignored.
- * @deprecated use isIgnoredHint instead
- */
- public static boolean isIgnored(IFile file) {
- IIgnoreInfo[] ignorePatterns = getAllIgnores();
- StringMatcher matcher;
- for (int i = 0; i < ignorePatterns.length; i++) {
- IIgnoreInfo info = ignorePatterns[i];
- if (info.getEnabled()) {
- matcher = new StringMatcher(info.getPattern(), true, false);
- if (matcher.match(file.getName())) return true;
- }
- }
- return false;
- }
-
- /**
- * Return all known file types.
- *
- * @return all known file types
- */
- public static IFileTypeInfo[] getAllTypes() {
- List result = new ArrayList();
- Enumeration e = table.keys();
- while (e.hasMoreElements()) {
- String string = (String)e.nextElement();
- int type = ((Integer)table.get(string)).intValue();
- result.add(new FileTypeInfo(string, type));
- }
- return (IFileTypeInfo[])result.toArray(new IFileTypeInfo[result.size()]);
- }
-
- /**
- * Returns the list of global ignores.
- */
- public static IIgnoreInfo[] getAllIgnores() {
- IIgnoreInfo[] result = new IIgnoreInfo[globalIgnore.size()];
- Iterator e = globalIgnore.keySet().iterator();
- int i = 0;
- while (e.hasNext() ) {
- final String pattern = (String)e.next();
- final boolean enabled = ((Boolean)globalIgnore.get(pattern)).booleanValue();
- result[i++] = new IIgnoreInfo() {
- private String p = pattern;
- private boolean e = enabled;
- public String getPattern() {
- return p;
- }
- public boolean getEnabled() {
- return e;
- }
- };
- }
- return result;
- }
-
- /**
- * Set the file type for the give extension to the given type.
- *
- * Valid types are:
- * Team.TEXT
- * Team.BINARY
- * Team.UNKNOWN
- *
- * @param extension the file extension
- * @param type the file type
- */
- public static void setAllTypes(String[] extensions, int[] types) {
- table = new Hashtable(11);
- for (int i = 0; i < extensions.length; i++) {
- table.put(extensions[i], new Integer(types[i]));
- }
- }
-
- /**
- * Add patterns to the list of global ignores.
- */
- public static void setAllIgnores(String[] patterns, boolean[] enabled) {
- globalIgnore = new Hashtable(11);
- for (int i = 0; i < patterns.length; i++) {
- globalIgnore.put(patterns[i], new Boolean(enabled[i]));
- }
- }
-
- /**
- * Utility method for removing a project nature from a project.
- *
- * @param proj the project to remove the nature from
- * @param natureId the nature id to remove
- * @param monitor a progress monitor to indicate the duration of the operation, or
- * <code>null</code> if progress reporting is not required.
- */
- public static void removeNatureFromProject(IProject proj, String natureId, IProgressMonitor monitor) throws TeamException {
- try {
- IProjectDescription description = proj.getDescription();
- String[] prevNatures= description.getNatureIds();
- List newNatures = new ArrayList(Arrays.asList(prevNatures));
- newNatures.remove(natureId);
- description.setNatureIds((String[])newNatures.toArray(new String[newNatures.size()]));
- proj.setDescription(description, monitor);
- } catch(CoreException e) {
- throw wrapException(Policy.bind("manager.errorRemovingNature", proj.getName(), natureId), e); //$NON-NLS-1$
- }
- }
-
- /**
- * Utility method for adding a nature to a project.
- *
- * @param proj the project to add the nature
- * @param natureId the id of the nature to assign to the project
- * @param monitor a progress monitor to indicate the duration of the operation, or
- * <code>null</code> if progress reporting is not required.
- *
- * @exception TeamException if a problem occured setting the nature
- */
- public static void addNatureToProject(IProject proj, String natureId, IProgressMonitor monitor) throws TeamException {
- try {
- IProjectDescription description = proj.getDescription();
- String[] prevNatures= description.getNatureIds();
- String[] newNatures= new String[prevNatures.length + 1];
- System.arraycopy(prevNatures, 0, newNatures, 0, prevNatures.length);
- newNatures[prevNatures.length]= natureId;
- description.setNatureIds(newNatures);
- proj.setDescription(description, monitor);
- } catch(CoreException e) {
- throw wrapException(Policy.bind("manager.errorSettingNature", proj.getName(), natureId), e); //$NON-NLS-1$
- }
- }
-
- /*
- * TEXT
- *
- * Reads the text patterns currently defined by extensions.
- */
- private static void initializePluginPatterns() {
- TeamPlugin plugin = TeamPlugin.getPlugin();
- if (plugin != null) {
- IExtensionPoint extension = plugin.getDescriptor().getExtensionPoint(TeamPlugin.FILE_TYPES_EXTENSION);
- if (extension != null) {
- IExtension[] extensions = extension.getExtensions();
- for (int i = 0; i < extensions.length; i++) {
- IConfigurationElement[] configElements = extensions[i].getConfigurationElements();
- for (int j = 0; j < configElements.length; j++) {
- String ext = configElements[j].getAttribute("extension"); //$NON-NLS-1$
- if (ext != null) {
- String type = configElements[j].getAttribute("type"); //$NON-NLS-1$
- // If the extension doesn't already exist, add it.
- if (!table.containsKey(ext)) {
- if (type.equals("text")) { //$NON-NLS-1$
- table.put(ext, new Integer(TEXT));
- } else if (type.equals("binary")) { //$NON-NLS-1$
- table.put(ext, new Integer(BINARY));
- }
- }
- }
- }
- }
- }
- }
- }
-
- /*
- * TEXT
- *
- * Read the saved file type state from the given input stream.
- *
- * @param dis the input stream to read the saved state from
- * @throws IOException if an I/O problem occurs
- */
- private static void readTextState(DataInputStream dis) throws IOException {
- table = new Hashtable(11);
- int extensionCount = 0;
- try {
- extensionCount = dis.readInt();
- } catch (EOFException e) {
- // Ignore the exception, it will occur if there are no
- // patterns stored in the state file.
- return;
- }
- for (int i = 0; i < extensionCount; i++) {
- String extension = dis.readUTF();
- int type = dis.readInt();
- table.put(extension, new Integer(type));
- }
- }
-
- /*
- * TEXT
- *
- * Write the current state to the given output stream.
- *
- * @param dos the output stream to write the saved state to
- * @throws IOException if an I/O problem occurs
- */
- private static void writeTextState(DataOutputStream dos) throws IOException {
- dos.writeInt(table.size());
- Iterator it = table.keySet().iterator();
- while (it.hasNext()) {
- String extension = (String)it.next();
- dos.writeUTF(extension);
- Integer integer = (Integer)table.get(extension);
- dos.writeInt(integer.intValue());
- }
- }
-
- /*
- * TEXT
- *
- * Load the file type registry saved state. This loads the previously saved
- * contents, as well as discovering any values contributed by plug-ins.
- */
- private static void loadTextState() {
- IPath pluginStateLocation = TeamPlugin.getPlugin().getStateLocation().append(STATE_FILE);
- File f = pluginStateLocation.toFile();
- if (f.exists()) {
- try {
- DataInputStream dis = new DataInputStream(new FileInputStream(f));
- readTextState(dis);
- dis.close();
- } catch (IOException ex) {
- // Throw an exception here
- }
- }
- // Read values contributed by plugins
- initializePluginPatterns();
- }
-
- /*
- * TEXT
- *
- * Save the file type registry state.
- */
- private static void saveTextState() {
- IPath pluginStateLocation = TeamPlugin.getPlugin().getStateLocation();
- File tempFile = pluginStateLocation.append(STATE_FILE + ".tmp").toFile(); //$NON-NLS-1$
- File stateFile = pluginStateLocation.append(STATE_FILE).toFile();
- try {
- DataOutputStream dos = new DataOutputStream(new FileOutputStream(tempFile));
- writeTextState(dos);
- dos.close();
- if (stateFile.exists() && !stateFile.delete()) {
- // Throw an exception here
- }
- boolean renamed = tempFile.renameTo(stateFile);
- if (!renamed) {
- // Throw an exception here
- }
- } catch (Exception e) {
- // Throw an exception here
- }
- }
-
- /*
- * IGNORE
- *
- * Reads the ignores currently defined by extensions.
- */
- private static void initializePluginIgnores() {
- TeamPlugin plugin = TeamPlugin.getPlugin();
- if (plugin != null) {
- IExtensionPoint extension = plugin.getDescriptor().getExtensionPoint(TeamPlugin.IGNORE_EXTENSION);
- if (extension != null) {
- IExtension[] extensions = extension.getExtensions();
- for (int i = 0; i < extensions.length; i++) {
- IConfigurationElement [] configElements = extensions[i].getConfigurationElements();
- for (int j = 0; j < configElements.length; j++) {
- String pattern = configElements[j].getAttribute("pattern"); //$NON-NLS-1$
- if (pattern != null) {
- String selected = configElements[j].getAttribute("selected"); //$NON-NLS-1$
- boolean enabled = selected != null && selected.equalsIgnoreCase("true"); //$NON-NLS-1$
- // if this ignore doesn't already exist, add it to the global list
- if (!globalIgnore.containsKey(pattern)) {
- globalIgnore.put(pattern, new Boolean(enabled));
- }
- }
- }
- }
- }
- }
- }
-
- /*
- * IGNORE
- *
- * Save global ignore file
- */
- private static void saveIgnoreState() throws TeamException {
- // save global ignore list to disk
- IPath pluginStateLocation = TeamPlugin.getPlugin().getStateLocation();
- File tempFile = pluginStateLocation.append(GLOBALIGNORE_FILE + ".tmp").toFile(); //$NON-NLS-1$
- File stateFile = pluginStateLocation.append(GLOBALIGNORE_FILE).toFile();
- try {
- DataOutputStream dos = new DataOutputStream(new FileOutputStream(tempFile));
- writeIgnoreState(dos);
- dos.close();
- if (stateFile.exists())
- stateFile.delete();
- boolean renamed = tempFile.renameTo(stateFile);
- if (!renamed)
- throw new TeamException(new Status(IStatus.ERROR, TeamPlugin.ID, 0, Policy.bind("TeamPlugin_renaming_21"), null)); //$NON-NLS-1$
- } catch (IOException ex) {
- throw new TeamException(new Status(IStatus.ERROR, TeamPlugin.ID, 0, Policy.bind("TeamPlugin_closing_stream_22"), ex)); //$NON-NLS-1$
- }
- }
-
- /*
- * IGNORE
- *
- * Write the global ignores to the stream
- */
- private static void writeIgnoreState(DataOutputStream dos) throws IOException {
- // write the global ignore list
- int ignoreLength = globalIgnore.size();
- dos.writeInt(ignoreLength);
- Iterator e = globalIgnore.keySet().iterator();
- while (e.hasNext()) {
- String pattern = (String)e.next();
- boolean enabled = ((Boolean)globalIgnore.get(pattern)).booleanValue();
- dos.writeUTF(pattern);
- dos.writeBoolean(enabled);
- }
- }
-
- /*
- * IGNORE
- *
- * Reads the global ignore file
- */
- private static void readIgnoreState() throws TeamException {
- // read saved repositories list and ignore list from disk, only if the file exists
- IPath pluginStateLocation = TeamPlugin.getPlugin().getStateLocation().append(GLOBALIGNORE_FILE);
- File f = pluginStateLocation.toFile();
- if(f.exists()) {
- try {
- DataInputStream dis = new DataInputStream(new FileInputStream(f));
- globalIgnore = new Hashtable(11);
- int ignoreCount = 0;
- try {
- ignoreCount = dis.readInt();
- } catch (EOFException e) {
- // Ignore the exception, it will occur if there are no ignore
- // patterns stored in the provider state file.
- return;
- }
- for (int i = 0; i < ignoreCount; i++) {
- String pattern = dis.readUTF();
- boolean enabled = dis.readBoolean();
- globalIgnore.put(pattern, new Boolean(enabled));
- }
- } catch (FileNotFoundException e) {
- // not a fatal error, there just happens not to be any state to read
- } catch (IOException ex) {
- throw new TeamException(new Status(IStatus.ERROR, TeamPlugin.ID, 0, Policy.bind("TeamPlugin_closing_stream_23"), ex)); //$NON-NLS-1$
- }
- }
- }
-
- /*
- * Initialize the registry, restoring its state
- */
- static void startup() throws CoreException {
- try {
- table = new Hashtable(11);
- loadTextState();
- readIgnoreState();
- initializePluginIgnores();
- } catch (TeamException e) {
- throw new CoreException(e.getStatus());
- }
- }
-
- /*
- * Shut down the registry, persisting its state
- */
- static void shutdown() {
- saveTextState();
- try {
- // make sure that we update our state on disk
- saveIgnoreState();
- } catch (TeamException ex) {
- TeamPlugin.log(IStatus.WARNING, Policy.bind("TeamPlugin_setting_global_ignore_7"), ex); //$NON-NLS-1$
- }
- }
- public static IProjectSetSerializer getProjectSetSerializer(String id) {
- TeamPlugin plugin = TeamPlugin.getPlugin();
- if (plugin != null) {
- IExtensionPoint extension = plugin.getDescriptor().getExtensionPoint(TeamPlugin.PROJECT_SET_EXTENSION);
- if (extension != null) {
- IExtension[] extensions = extension.getExtensions();
- for (int i = 0; i < extensions.length; i++) {
- IConfigurationElement [] configElements = extensions[i].getConfigurationElements();
- for (int j = 0; j < configElements.length; j++) {
- String extensionId = configElements[j].getAttribute("id"); //$NON-NLS-1$
- if (extensionId != null && extensionId.equals(id)) {
- try {
- return (IProjectSetSerializer)configElements[j].createExecutableExtension("class"); //$NON-NLS-1$
- } catch (CoreException e) {
- TeamPlugin.log(e.getStatus());
- return null;
- }
- }
- }
- }
- }
- }
- return null;
- }
- private static TeamException wrapException(String message, CoreException e) {
- MultiStatus status = new MultiStatus(TeamPlugin.ID, 0, message, e);
- status.merge(e.getStatus());
- return new TeamException(status);
- }
-}
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/TeamException.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/core/TeamException.java
deleted file mode 100644
index 59427f2cd..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/TeamException.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v0.5
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v05.html
- *
- * Contributors:
- * IBM - Initial API and implementation
- ******************************************************************************/
-package org.eclipse.team.core;
-
-import org.eclipse.core.runtime.IStatus;
-
-/**
- * This exception is thrown by the team provider API. It represents a failure in an API call.
- * Since some API calls take multiple arguments, the exception is capable of returning multiple
- * statuses. The API definition determinies if the exception represents a single or multiple status
- * response; this can also be tested on the exception instance itself.
- * <p>
- * To determine the exact cause of the failure the caller should look at each status in detail.</p>
- *
- * @since 2.0
- */
-public class TeamException extends Exception {
-
- protected IStatus status = null;
-
- // The operation completed successfully.
- public static final int OK = 0;
-
- // The operation failed because the resource is not checked-in.
- public static final int NOT_CHECKED_IN = -1;
-
- // The operation failed because the resource is not checked-out.
- public static final int NOT_CHECKED_OUT = -2;
-
- // The corresponding remote resource no longer exists or was never created.
- public static final int NO_REMOTE_RESOURCE = -3;
-
- // The provider suffered an IO failure, the operation may be retried.
- public static final int IO_FAILED = -4;
-
- // The user is not authorized to execute the attempted operation.
- public static final int NOT_AUTHORIZED = -5;
-
- // The provider was unable to complete the operation for an unspecified reason.
- public static final int UNABLE = -6;
-
- // The operation cannot be performed due to a conflict with other work.
- public static final int CONFLICT = -7;
-
- /**
- * Single status constructor for a <code>TeamProviderException</code>.
- */
- public TeamException(IStatus status) {
- super(status.getMessage());
- this.status = status;
- }
-
- /**
- * Answer the single status resulting from the attempted API call.
- *
- * @return the single status of the result, or <code>null</code> if this is a multi-status
- * response.
- */
- public IStatus getStatus() {
- return status;
- }
-}
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/TeamPlugin.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/core/TeamPlugin.java
deleted file mode 100644
index 7032f2bd2..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/TeamPlugin.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v0.5
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v05.html
- *
- * Contributors:
- * IBM - Initial API and implementation
- ******************************************************************************/
-package org.eclipse.team.core;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPluginDescriptor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Plugin;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.team.internal.core.Policy;
-
-/**
- * <code>TeamPlugin</code> is the plug-in runtime class for the Team
- * resource management plugin.
- * <p>
- *
- * @see Team
- * @see RepositoryProvider
- *
- * @since 2.0
- */
-final public class TeamPlugin extends Plugin {
-
- // The id of the core team plug-in
- public static final String ID = "org.eclipse.team.core"; //$NON-NLS-1$
-
- // The id of the providers extension point
- public static final String PROVIDER_EXTENSION = "repository-provider-type"; //$NON-NLS-1$
-
- // The id of the file types extension point
- public static final String FILE_TYPES_EXTENSION = "fileTypes"; //$NON-NLS-1$
-
- // The id of the global ignore extension point
- public static final String IGNORE_EXTENSION = "ignore"; //$NON-NLS-1$
- // The id of the project set extension point
- public static final String PROJECT_SET_EXTENSION = "projectSets"; //$NON-NLS-1$
- // The one and only plug-in instance
- private static TeamPlugin plugin;
-
- /**
- * Constructs a plug-in runtime class for the given plug-in descriptor.
- */
- public TeamPlugin(IPluginDescriptor pluginDescriptor) {
- super(pluginDescriptor);
- plugin = this;
- }
-
- /**
- * @see Plugin#startup()
- */
- public void startup() throws CoreException {
- Policy.localize("org.eclipse.team.internal.core.messages"); //$NON-NLS-1$
- Team.startup();
- }
-
- /**
- * @see Plugin#shutdown()
- */
- public void shutdown() {
- Team.shutdown();
- }
-
- /**
- * Returns the Team plug-in.
- *
- * @return the single instance of this plug-in runtime class
- */
- public static TeamPlugin getPlugin() {
- return plugin;
- }
-
- /**
- * Returns the plug-in's log
- */
- public static void log(int severity, String message, Throwable e) {
- plugin.getLog().log(new Status(severity, ID, 0, message, e));
- }
-
- /**
- * Returns the plug-in's log
- */
- public static void log(IStatus status) {
- plugin.getLog().log(status);
- }
-} \ No newline at end of file
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/ILocalSyncElement.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/ILocalSyncElement.java
deleted file mode 100644
index f3855f862..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/ILocalSyncElement.java
+++ /dev/null
@@ -1,206 +0,0 @@
-package org.eclipse.team.core.sync;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.team.core.TeamException;
-
-/**
- * A <code>ILocalSyncElement</code> describes the relative synchronization of a <b>local</b>
- * resource using a <b>base</b> resource for comparison.
- * <p>
- * Differences between the base and local resources are classified as <b>outgoing changes</b>;
- * if there is a difference, the local resource is considered the <b>outgoing resource</b>. </p>
- *
- * @see IRemoteSyncElement
- */
-public interface ILocalSyncElement {
-
- /*====================================================================
- * Constants defining synchronization types:
- *====================================================================*/
-
- /**
- * Sync constant (value 0) indicating element is in sync.
- */
- public static final int IN_SYNC = 0;
-
- /**
- * Sync constant (value 1) indicating that one side was added.
- */
- public static final int ADDITION = 1;
-
- /**
- * Sync constant (value 2) indicating that one side was deleted.
- */
- public static final int DELETION = 2;
-
- /**
- * Sync constant (value 3) indicating that one side was changed.
- */
- public static final int CHANGE = 3;
-
- /**
- * Bit mask for extracting the change type.
- */
- public static final int CHANGE_MASK = CHANGE;
-
- /*====================================================================
- * Constants defining synchronization direction:
- *====================================================================*/
-
- /**
- * Sync constant (value 4) indicating a change to the local resource.
- */
- public static final int OUTGOING = 4;
-
- /**
- * Sync constant (value 8) indicating a change to the remote resource.
- */
- public static final int INCOMING = 8;
-
- /**
- * Sync constant (value 12) indicating a change to both the remote and local resources.
- */
- public static final int CONFLICTING = 12;
-
- /**
- * Bit mask for extracting the synchronization direction.
- */
- public static final int DIRECTION_MASK = CONFLICTING;
-
- /*====================================================================
- * Constants defining synchronization conflict types:
- *====================================================================*/
-
- /**
- * Sync constant (value 16) indication that both the local and remote resources have changed
- * relative to the base but their contents are the same.
- */
- public static final int PSEUDO_CONFLICT = 16;
-
- /**
- * Sync constant (value 32) indicating that both the local and remote resources have changed
- * relative to the base but their content changes do not conflict (e.g. source file changes on different
- * lines). These conflicts could be merged automatically.
- */
- public static final int AUTOMERGE_CONFLICT = 32;
-
- /**
- * Sync constant (value 64) indicating that both the local and remote resources have changed relative
- * to the base and their content changes conflict (e.g. local and remote resource have changes on
- * same lines). These conflicts can only be correctly resolved by the user.
- */
- public static final int MANUAL_CONFLICT = 64;
-
- /*====================================================================
- * Constants defining synchronization granularity:
- *====================================================================*/
-
- /**
- * Constant (value 1) to only consider timestamp comparisons (e.g. isDirty) when
- * calculating the synchronization kind. This is the faster sync compare option but it can result in false
- * conflicts.
- */
- public static final int GRANULARITY_TIMESTAMP = 1;
-
- /**
- * Constant (value 2) indicating to consider file contents when calculating the synchronization kind. This
- * synchronization mode will perform a content comparison only after timestamp operations (isDirty)
- * indicate a change. This mode allows conflicts types to be correctly identified.
- */
- public static final int GRANULARITY_CONTENTS = 2;
-
- /**
- * Answer a string that describes the simple name of the sync node, which is suitable
- * for display to a user. The name will be used in UI operations, so it is expected that
- * implementations will cache this value.
- *
- * @return the simple name that identifies the resource within its parent container.
- */
- public String getName();
-
- /**
- * Answer if the sync node is a container and may have children.
- *
- * @return <code>true</code> if the remote resource is a container, and <code>
- * false</code> if it is not.
- */
- public boolean isContainer();
-
- /**
- * Answers the local sync element of this node. Returns a non-existing local
- * resource handle if the local resource does not exist in the workspace.
- *
- * @return the local resource handle in this node. There should always be a local
- * resource available, however the resource may not exist.
- */
- public IResource getLocal();
-
- /**
- * Answers the base sync element of this node. Returns <code>null</code>
- * if there is no base (e.g. conflicting add).
- *
- * @return the base resource in this node, or <code>null</code> is there
- * is none.
- */
- public IRemoteResource getBase();
-
- /**
- * Answers if the remote resource state is checked-out. If the resource has never been checked in this
- * method will return <code>true</code>.
- * <p>
- * It is undefined whether this method tests for a resource being checked out to this workspace
- * or any workspace.</p>
- *
- * @param resource the local resource to test.
- * @return <code>true</code> if the resource is checked-out and <code>false</code> if it is not.
- * @see checkout(IResource[], int, IProgressMonitor)
- * @see refreshState(IResource[], int, IProgressMonitor)
- */
- public boolean isCheckedOut();
-
- /**
- * Answers whether the resource has a corresponding remote resource.
- * <p>
- * Before a resource is checked-in, the resource will occur locally but not remotely, and calls to this
- * method will return <code>false</code>. Once a local resource is checked in (and assuming the local
- * local resource is not moved or the remote resource deleted) there will be a corresponding remote
- * resource and this method returns <code>true</code>.</p>
- *
- * @param resource the local resource to test.
- * @return <code>true</code> if the local resource has a corresponding remote resource,
- * and <code>false</code> otherwise.
- */
- public boolean hasRemote();
-
- /**
- * Answers and array of <code>ILocalSyncElement</code> elements that are immediate
- * children of this sync element, in no particular order. The returned sync nodes are
- * a combination of the nodes represented by the sync element (e.g. local, base, remote).
- *
- * @param progress a progress monitor to indicate the duration of the operation, or
- * <code>null</code> if progress reporting is not required.
- *
- * @return array of immediate children of this sync node.
- */
- public ILocalSyncElement[] members(IProgressMonitor monitor) throws TeamException;
-
- /**
- * Performs a synchronization calculation on the given element based on the local and base
- * resources. Returns an integer describing the synchronization state of this element.
- *
- * @param granularity the granularity at which the elements of this sync element
- * should be compared. On of <code>GRANULARITY_TIMESTAMP</code>, or
- * <code>GRANULARITY_CONTENTS</code>.
- * @param progress a progress monitor to indicate the duration of the operation, or
- * <code>null</code> if progress reporting is not required.
- *
- * @return an integer describing the synchronization state of this element.
- */
- public int getSyncKind(int granularity, IProgressMonitor progress);
-} \ No newline at end of file
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/IRemoteResource.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/IRemoteResource.java
deleted file mode 100644
index a09588861..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/IRemoteResource.java
+++ /dev/null
@@ -1,49 +0,0 @@
-package org.eclipse.team.core.sync;
-
-import java.io.InputStream;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.team.core.TeamException;
-
-/**
- * Interface for resources that are not local.
- */
-public interface IRemoteResource extends IAdaptable {
-
- /**
- * Answers a string that describes the name of the remote resource. The name may be
- * displayed to the user.
- *
- * @return name of the remote resource.
- */
- public String getName();
-
- /**
- * Answers and array of <code>IRemoteResource</code> elements that are immediate
- * children of this remote resource, in no particular order.
- *
- * @param progress a progress monitor to indicate the duration of the operation, or
- * <code>null</code> if progress reporting is not required.
- *
- * @return array of immediate children of this remote resource.
- */
- public IRemoteResource[] members(IProgressMonitor progress) throws TeamException;
-
- /**
- * Returns a stream over the contents of this remote element.
- *
- * @param progress a progress monitor to indicate the duration of the operation, or
- * <code>null</code> if progress reporting is not required.
- */
- public InputStream getContents(IProgressMonitor progress) throws TeamException;
-
- /**
- * Answers if the remote element may have children.
- *
- * @return <code>true</code> if the remote element may have children and
- * <code>false</code> otherwise.
- */
- public boolean isContainer();
-}
-
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/IRemoteSyncElement.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/IRemoteSyncElement.java
deleted file mode 100644
index 3089f8d18..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/IRemoteSyncElement.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package org.eclipse.team.core.sync;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.team.core.TeamException;
-
-/**
- * A <code>ILocalSyncElement</code> describes the relative synchronization of a <b>local</b>
- * and <b>remote</b> resource using a <b>base</b> resource for comparison.
- * <p>
- * Differences between the base and remote resources are classified as <b>incoming changes</b>;
- * if there is a difference, the remote resource is considered the <b>incoming resource</b>. </p>
- *
- * @see ILocalSyncElement
- * @see ISyncProvider
- */
-public interface IRemoteSyncElement extends ILocalSyncElement {
-
- /**
- * Answer the remote sync element of this node. Returns <code>null</code>
- * if there is no remote.
- *
- * @return the remote resource in this sync element, or <code>null</code> is there
- * is none.
- */
- public IRemoteResource getRemote();
-
- /**
- * Answers <code>true</code> if the base tree is not to be considered during sync
- * comparisons and <code>false</code> if it should. If the base tree is ignored the
- * sync comparison can be based on isOutOfDate and isDirty methods only.
- */
- public boolean isThreeWay();
-} \ No newline at end of file
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/LocalSyncElement.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/LocalSyncElement.java
deleted file mode 100644
index 7df9ea35e..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/LocalSyncElement.java
+++ /dev/null
@@ -1,104 +0,0 @@
-package org.eclipse.team.core.sync;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import java.io.IOException;
-import java.io.InputStream;
-
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.team.core.TeamException;
-
-/**
- * A standard abstract class that provides implementations for <code>ILocalSyncElement</code>
- * methods.
- */
-public abstract class LocalSyncElement implements ILocalSyncElement {
-
- /**
- * Creates a client specific sync element from a <b>local</b> and <b>base</b>
- * resources. The <b>base</b> resource may be <code>null</code> and should be
- * intialized by the client if available.
- *
- * @param local the local resource in the workbench. Will never be <code>null</code>.
- * @param base the base resource, may me <code>null</code>.
- * @param data client specific data.
- *
- * @return a client specific sync element.
- */
- public abstract ILocalSyncElement create(IResource local, IRemoteResource base, Object data);
-
- /**
- * Client data that is passed to every <code>create()</code> call.
- *
- * @return client specific data that will be passed to create.
- */
- protected abstract Object getData();
-
- /**
- * Client can decide is a specific element should be ignored from this sync element's
- * children.
- *
- * @param resource the resource to be queried.
- *
- * @return <code>true</code> if this element should be ignored and not considered an
- * immediate child of this element, and <code>false</code> otherwise.
- */
- protected abstract boolean isIgnored(IResource resource);
-
- /*
- * @see ILocalSyncElement#getSyncKind(int, IProgressMonitor)
- */
- public int getSyncKind(int granularity, IProgressMonitor progress) {
-
- // XXX not sure how local sync will be used?
- int sync = IN_SYNC;
- return sync;
- }
-
- /*
- * @see ILocalSyncElement#getName()
- */
- public String getName() {
- return getLocal().getName();
- }
-
- /*
- * @see ILocalSyncElement#isContainer()
- */
- public boolean isContainer() {
- return getLocal().getType() != IResource.FILE;
- }
-
- /*
- * @see ILocalSyncElement#members(IProgressMonitor)
- */
- public ILocalSyncElement[] members(IProgressMonitor monitor) throws TeamException {
- try {
- if(getLocal().getType() != IResource.FILE) {
- IResource[] members = ((IContainer)getLocal()).members();
- List syncElements = new ArrayList(5);
- for (int i = 0; i < members.length; i++) {
- IResource iResource = members[i];
- // the base is initialy set to null, however the concrete subclass should
- // initialize the base if one is available.
- if(!isIgnored(iResource)) {
- syncElements.add(create(iResource, null, getData()));
- }
- }
- return (ILocalSyncElement[]) syncElements.toArray(new ILocalSyncElement[syncElements.size()]);
- } else {
- return new ILocalSyncElement[0];
- }
- } catch(CoreException e) {
- throw new TeamException(e.getStatus());
- }
- }
-} \ No newline at end of file
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/RemoteSyncElement.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/RemoteSyncElement.java
deleted file mode 100644
index 8a9ff152b..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/sync/RemoteSyncElement.java
+++ /dev/null
@@ -1,395 +0,0 @@
-package org.eclipse.team.core.sync;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2002.
- * All Rights Reserved.
- */
-
-import java.io.BufferedInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.ArrayList;
-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 org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IStorage;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.team.core.TeamException;
-import org.eclipse.team.internal.core.Assert;
-import org.eclipse.team.internal.core.Policy;
-
-/**
- * A standard abstract class that provides implementations for interesting
- * <code>IRemoteSyncElement</code> methods. The <code>members</code> method
- * provided will create a unified tree based on the local, base, and remote
- * children. The <code>getSyncKind</code> method will calculate the relative
- * sync kind of the remote node.
- */
-public abstract class RemoteSyncElement extends LocalSyncElement implements IRemoteSyncElement {
-
- /**
- * Creates a client specific sync element from a <b>local</b>, <b>base</b>, and
- * <b>remote</b> resources. The <b>base</b> and <b>remote</b> resource may be
- * <code>null</code>.
- *
- * @param local the local resource in the workbench. Will never be <code>null</code>.
- * @param base the base resource, may me <code>null</code>.
- * @param remote the remote resource, may be <code>null</code>.
- * @param data client specific data.
- *
- * @return a client specific sync element.
- */
- public abstract IRemoteSyncElement create(boolean isThreeWay, IResource local, IRemoteResource base, IRemoteResource remote, Object data);
-
- /*
- * @see ILocalSyncElement#members()
- */
- public ILocalSyncElement[] members(IProgressMonitor progress) throws TeamException {
- // create union of the local, base, and remote trees
- IRemoteResource remote = getRemote();
- IRemoteResource base = getBase();
- IResource local = getLocal();
-
- IRemoteResource[] remoteChildren =
- remote != null ? remote.members(progress) : new IRemoteResource[0];
-
- IRemoteResource[] baseChildren =
- base != null ? base.members(progress) : new IRemoteResource[0];
-
- IResource[] localChildren;
- try {
- if( local.getType() != IResource.FILE && local.exists() ) {
- localChildren = ((IContainer)local).members();
- } else {
- localChildren = new IResource[0];
- }
- } catch(CoreException e) {
- throw new TeamException(e.getStatus());
- }
-
- if (remoteChildren.length > 0 || localChildren.length > 0) {
- List syncChildren = new ArrayList(10);
- Set allSet = new HashSet(20);
- Map localSet = null;
- Map remoteSet = null;
- Map baseSet = null;
-
- if (localChildren.length > 0) {
- localSet = new HashMap(10);
- for (int i = 0; i < localChildren.length; i++) {
- IResource localChild = localChildren[i];
- String name = localChild.getName();
- localSet.put(name, localChild);
- allSet.add(name);
- }
- }
-
- if (remoteChildren.length > 0) {
- remoteSet = new HashMap(10);
- for (int i = 0; i < remoteChildren.length; i++) {
- IRemoteResource remoteChild = remoteChildren[i];
- String name = remoteChild.getName();
- remoteSet.put(name, remoteChild);
- allSet.add(name);
- }
- }
-
- if (baseChildren.length > 0) {
- baseSet = new HashMap(10);
- for (int i = 0; i < baseChildren.length; i++) {
- IRemoteResource baseChild = baseChildren[i];
- String name = baseChild.getName();
- baseSet.put(name, baseChild);
- allSet.add(name);
- }
- }
-
- Iterator e = allSet.iterator();
- while (e.hasNext()) {
- String keyChildName = (String) e.next();
-
- if (progress != null) {
- if (progress.isCanceled()) {
- throw new OperationCanceledException();
- }
- // XXX show some progress?
- }
-
- IResource localChild =
- localSet != null ? (IResource) localSet.get(keyChildName) : null;
-
- IRemoteResource remoteChild =
- remoteSet != null ? (IRemoteResource) remoteSet.get(keyChildName) : null;
-
- IRemoteResource baseChild =
- baseSet != null ? (IRemoteResource) baseSet.get(keyChildName) : null;
-
-
- if (localChild == null) {
- // there has to be a remote resource available if we got this far
- Assert.isTrue(remoteChild != null || baseChild != null);
- boolean isContainer = remoteChild != null ? remoteChild.isContainer() : baseChild.isContainer();
-
- localChild = getResourceChild(local /* parent */, keyChildName, isContainer);
- }
-
- if(!localChild.exists() || !isIgnored(localChild)) {
- syncChildren.add(create(isThreeWay(), localChild, baseChild, remoteChild, getData()));
- }
- }
- return (IRemoteSyncElement[]) syncChildren.toArray(new IRemoteSyncElement[syncChildren.size()]);
- }
- else {
- return new IRemoteSyncElement[0];
- }
- }
-
- /*
- * @see ILocalSyncElement#getSyncKind(int, IProgressMonitor)
- */
- public int getSyncKind(int granularity, IProgressMonitor progress) {
- int description = IN_SYNC;
-
- IResource local = getLocal();
- IRemoteResource remote = getRemote();
- IRemoteResource base = getBase();
-
- boolean localExists = getLocal().exists();
-
- if (isThreeWay()) {
- if (base == null) {
- if (remote == null) {
- if (!localExists) {
- Assert.isTrue(false);
- } else {
- description = OUTGOING | ADDITION;
- }
- } else {
- if (!localExists) {
- description = INCOMING | ADDITION;
- } else {
- description = CONFLICTING | ADDITION;
- try {
- progress.beginTask(null, 60);
- if (granularity == RemoteSyncElement.GRANULARITY_CONTENTS &&
- compare(granularity, true, local, remote, Policy.subMonitorFor(progress, 30))) {
- description |= PSEUDO_CONFLICT;
- }
- } finally {
- progress.done();
- }
- }
- }
- } else {
- if (!localExists) {
- if (remote == null) {
- description = CONFLICTING | DELETION | PSEUDO_CONFLICT;
- } else {
- if (compare(granularity, false, base, remote, progress))
- description = OUTGOING | DELETION;
- else
- description = CONFLICTING | CHANGE;
- }
- } else {
- if (remote == null) {
- if (compare(granularity, false, local, base, progress))
- description = INCOMING | DELETION;
- else
- description = CONFLICTING | CHANGE;
- } else {
- progress.beginTask(null, 90);
- boolean ay = compare(granularity, false, local, base, Policy.subMonitorFor(progress, 30));
- boolean am = compare(granularity, false, base, remote, Policy.subMonitorFor(progress, 30));
- if (ay && am) {
- ;
- } else if (ay && !am) {
- description = INCOMING | CHANGE;
- } else if (!ay && am) {
- description = OUTGOING | CHANGE;
- } else {
- description = CONFLICTING | CHANGE;
- if (granularity == RemoteSyncElement.GRANULARITY_CONTENTS &&
- compare(granularity, true, local, remote, Policy.subMonitorFor(progress, 30))) {
- description |= PSEUDO_CONFLICT;
- }
- }
- progress.done();
- }
- }
- }
- } else { // two compare without access to base contents
- if (remote == null) {
- if (!localExists) {
- Assert.isTrue(false);
- // shouldn't happen
- } else {
- description= DELETION;
- }
- } else {
- if (!localExists) {
- description= ADDITION;
- } else {
- if (! compare(granularity, false, local, remote, Policy.subMonitorFor(progress, 30)))
- description= CHANGE;
- }
- }
- }
- return description;
- }
-
- /**
- * Helper methods for comparisons that returns true if the resource contents are the same.
- *
- * If timestampDiff is true then the timestamps don't differ and there's no point checking the
- * contents.
- */
- private boolean compare(int granularity, boolean force, IResource e1, IRemoteResource e2, IProgressMonitor monitor) {
- boolean timestampEquals = force || timestampEquals(e1, e2);
- if (!timestampEquals && (granularity == GRANULARITY_CONTENTS)) {
- try {
- monitor.beginTask(null, 100);
- return contentsEqual(getContents(e1, Policy.subMonitorFor(monitor, 50)), getContents(e2, Policy.subMonitorFor(monitor, 50)));
- } finally {
- monitor.done();
- }
- } else {
- return timestampEquals;
- }
- }
-
- private boolean compare(int granularity, boolean force, IRemoteResource e1, IRemoteResource e2, IProgressMonitor monitor) {
- boolean timestampEquals = force || timestampEquals(e1, e2);
- if (!timestampEquals && (granularity == GRANULARITY_CONTENTS)) {
- try {
- monitor.beginTask(null, 100);
- return contentsEqual(getContents(e1, Policy.subMonitorFor(monitor, 50)), getContents(e2, Policy.subMonitorFor(monitor, 50)));
- } finally {
- monitor.done();
- }
- } else {
- return timestampEquals;
- }
- }
-
- protected abstract boolean timestampEquals(IResource e1, IRemoteResource e2);
- protected abstract boolean timestampEquals(IRemoteResource e1, IRemoteResource e2);
-
- private InputStream getContents(IResource resource, IProgressMonitor monitor) {
- try {
- if (resource instanceof IStorage)
- return new BufferedInputStream(((IStorage) resource).getContents());
- return null;
- } catch (CoreException e) {
- return null;
- }
- }
-
- private InputStream getContents(IRemoteResource remote, IProgressMonitor monitor) {
- try {
- if (!remote.isContainer())
- return new BufferedInputStream(remote.getContents(monitor));
- return null;
- } catch (TeamException exception) {
- // The remote node has gone away .
- return null;
- }
- }
-
- /**
- * Returns <code>true</code> if both input streams byte contents is identical.
- *
- * @param input1 first input to contents compare
- * @param input2 second input to contents compare
- * @return <code>true</code> if content is equal
- */
- private boolean contentsEqual(InputStream is1, InputStream is2) {
- if (is1 == is2)
- return true;
-
- if (is1 == null && is2 == null) // no byte contents
- return true;
-
- try {
- if (is1 == null || is2 == null) // only one has contents
- return false;
-
- while (true) {
- int c1 = is1.read();
- int c2 = is2.read();
- if (c1 == -1 && c2 == -1)
- return true;
- if (c1 != c2)
- break;
-
- }
- } catch (IOException ex) {
- } finally {
- if (is1 != null) {
- try {
- is1.close();
- } catch (IOException ex) {
- }
- }
- if (is2 != null) {
- try {
- is2.close();
- } catch (IOException ex) {
- }
- }
- }
- return false;
- }
-
- /*
- * Returns a handle to a non-existing resource.
- */
- private IResource getResourceChild(IResource parent, String childName, boolean isContainer) {
- if (parent.getType() == IResource.FILE) {
- return null;
- }
- if (isContainer) {
- return ((IContainer) parent).getFolder(new Path(childName));
- } else {
- return ((IContainer) parent).getFile(new Path(childName));
- }
- }
-
- /*
- * @see Object#toString()
- */
- public String toString() {
- return getName() + kindToString(getSyncKind(GRANULARITY_TIMESTAMP, null));
- }
-
- static public String kindToString(int kind) {
- StringBuffer buffer = new StringBuffer();
- buffer.append("["); //$NON-NLS-1$
- if(kind==IN_SYNC) {
- buffer.append("in-sync"); //$NON-NLS-1$
- } else {
- switch(kind & DIRECTION_MASK) {
- case CONFLICTING: buffer.append("conflicting"); break; //$NON-NLS-1$
- case OUTGOING: buffer.append("outgoing"); break; //$NON-NLS-1$
- case INCOMING: buffer.append("incoming"); break; //$NON-NLS-1$
- }
- switch(kind & CHANGE_MASK) {
- case CHANGE: buffer.append("change"); break; //$NON-NLS-1$
- case ADDITION: buffer.append("addition"); break; //$NON-NLS-1$
- case DELETION: buffer.append("deletion"); break; //$NON-NLS-1$
- }
- if((kind & MANUAL_CONFLICT) != 0) buffer.append("{manual}"); //$NON-NLS-1$
- if((kind & AUTOMERGE_CONFLICT) != 0) buffer.append("{auto}"); //$NON-NLS-1$
- }
- buffer.append("]"); //$NON-NLS-1$
- return buffer.toString();
- }
-} \ No newline at end of file
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/Assert.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/Assert.java
deleted file mode 100644
index 4a5a4fc95..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/Assert.java
+++ /dev/null
@@ -1,100 +0,0 @@
-package org.eclipse.team.internal.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2002.
- * All Rights Reserved.
- */
-
-import org.eclipse.team.core.*;
-
-public final class Assert {
- public static class AssertionFailedException extends RuntimeException {
- public AssertionFailedException() {
- }
- public AssertionFailedException(String detail) {
- super(detail);
- }
- }
-/* This class is not intended to be instantiated. */
-private Assert() {
-}
-/** Asserts that an argument is legal. If the given boolean is
- * not <code>true</code>, an <code>IllegalArgumentException</code>
- * is thrown.
- *
- * @param expression the outcode of the check
- * @return <code>true</code> if the check passes (does not return
- * if the check fails)
- * @exception IllegalArgumentException if the legality test failed
- */
-public static boolean isLegal(boolean expression) {
- return isLegal(expression, ""); //$NON-NLS-1$
-}
-/** Asserts that an argument is legal. If the given boolean is
- * not <code>true</code>, an <code>IllegalArgumentException</code>
- * is thrown.
- * The given message is included in that exception, to aid debugging.
- *
- * @param expression the outcode of the check
- * @param message the message to include in the exception
- * @return <code>true</code> if the check passes (does not return
- * if the check fails)
- * @exception IllegalArgumentException if the legality test failed
- */
-public static boolean isLegal(boolean expression, String message) {
- if (!expression)
- throw new IllegalArgumentException(message);
- return expression;
-}
-/** Asserts that the given object is not <code>null</code>. If this
- * is not the case, some kind of unchecked exception is thrown.
- *
- * @param object the value to test
- * @exception IllegalArgumentException if the object is <code>null</code>
- */
-public static void isNotNull(Object object) {
- isNotNull(object, ""/*nonNLS*/); //$NON-NLS-1$
-}
-/** Asserts that the given object is not <code>null</code>. If this
- * is not the case, some kind of unchecked exception is thrown.
- * The given message is included in that exception, to aid debugging.
- *
- * @param object the value to test
- * @param message the message to include in the exception
- * @exception IllegalArgumentException if the object is <code>null</code>
- */
-public static void isNotNull(Object object, String message) {
- if (object == null)
- throw new AssertionFailedException("null argument:" /*non NLS*/ + message); //$NON-NLS-1$
-}
-/** Asserts that the given boolean is <code>true</code>. If this
- * is not the case, some kind of unchecked exception is thrown.
- *
- * @param expression the outcode of the check
- * @return <code>true</code> if the check passes (does not return
- * if the check fails)
- */
-public static boolean isTrue(boolean expression) {
- return isTrue(expression, ""/*nonNLS*/); //$NON-NLS-1$
-}
-/** Asserts that the given boolean is <code>true</code>. If this
- * is not the case, some kind of unchecked exception is thrown.
- * The given message is included in that exception, to aid debugging.
- *
- * @param expression the outcode of the check
- * @param message the message to include in the exception
- * @return <code>true</code> if the check passes (does not return
- * if the check fails)
- */
-public static boolean isTrue(boolean expression, String message) {
- if (!expression)
- throw new AssertionFailedException("assert failed:" /*non NLS*/ + message); //$NON-NLS-1$
- return expression;
-}
-/**
- * Indicates that the caller has not implemented the method.
- * Usually this is a temporary condition.
- */
-public static void notYetImplemented() {
-}
-}
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/DefaultFileModificationValidator.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/DefaultFileModificationValidator.java
deleted file mode 100644
index 8b6e6ec55..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/DefaultFileModificationValidator.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v0.5
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v05.html
- *
- * Contributors:
- * IBM - Initial API and implementation
- ******************************************************************************/
-package org.eclipse.team.internal.core;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFileModificationValidator;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.team.core.TeamPlugin;
-
-public class DefaultFileModificationValidator implements IFileModificationValidator {
- private static final Status OK = new Status(Status.OK, TeamPlugin.ID, Status.OK, Policy.bind("FileModificationValidator.ok"), null); //$NON-NLS-1$
-
- private IStatus getDefaultStatus(IFile file) {
- return file.isReadOnly()
- ? new Status(Status.ERROR, TeamPlugin.ID, Status.ERROR, Policy.bind("FileModificationValidator.fileIsReadOnly", file.getFullPath().toString()), null) //$NON-NLS-1$
- : OK;
- }
-
- /**
- * @see IFileModificationValidator#validateEdit(IFile[], Object)
- */
- public IStatus validateEdit(IFile[] files, Object context) {
- if (files.length == 1) {
- return getDefaultStatus(files[0]);
- }
-
- IStatus[] stati = new Status[files.length];
- boolean allOK = true;
-
- for (int i = 0; i < files.length; i++) {
- stati[i] = getDefaultStatus(files[i]);
- if(! stati[i].isOK())
- allOK = false;
- }
-
- return new MultiStatus(TeamPlugin.ID,
- 0, stati,
- Policy.bind(
- allOK
- ? "FileModificationValidator.ok" //$NON-NLS-1$
- : "FileModificationValidator.someReadOnly" ), //$NON-NLS-1$
- null);
- }
-
- /**
- * @see IFileModificationValidator#validateSave(IFile)
- */
- public IStatus validateSave(IFile file) {
- return getDefaultStatus(file);
- }
-}
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/DefaultMoveDeleteHook.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/DefaultMoveDeleteHook.java
deleted file mode 100644
index b35fa8136..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/DefaultMoveDeleteHook.java
+++ /dev/null
@@ -1,95 +0,0 @@
-package org.eclipse.team.internal.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2002.
- * All Rights Reserved.
- */
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
-import org.eclipse.core.resources.team.IMoveDeleteHook;
-import org.eclipse.core.resources.team.IResourceTree;
-import org.eclipse.core.runtime.IProgressMonitor;
-
-/**
- * A class which provides the default behavior for resource deletions and moves.
- * This class can be overridden by providers to change some or all of the behavior
- * related to resources deletions or moves.
- *
- * @see org.eclipse.team.core.ResourceProvider#getMoveDeleteHook()
- */
-
-public class DefaultMoveDeleteHook implements IMoveDeleteHook {
-
- /**
- * @see IMoveDeleteHook#deleteFile(IResourceTree, IFile, int, IProgressMonitor)
- */
- public boolean deleteFile(
- IResourceTree tree,
- IFile file,
- int updateFlags,
- IProgressMonitor monitor) {
- return false;
- }
-
- /**
- * @see IMoveDeleteHook#deleteFolder(IResourceTree, IFolder, int, IProgressMonitor)
- */
- public boolean deleteFolder(
- IResourceTree tree,
- IFolder folder,
- int updateFlags,
- IProgressMonitor monitor) {
- return false;
- }
-
- /**
- * @see IMoveDeleteHook#deleteProject(IResourceTree, IProject, int, IProgressMonitor)
- */
- public boolean deleteProject(
- IResourceTree tree,
- IProject project,
- int updateFlags,
- IProgressMonitor monitor) {
- return false;
- }
-
- /**
- * @see IMoveDeleteHook#moveFile(IResourceTree, IFile, IFile, int, IProgressMonitor)
- */
- public boolean moveFile(
- IResourceTree tree,
- IFile source,
- IFile destination,
- int updateFlags,
- IProgressMonitor monitor) {
- return false;
- }
-
- /**
- * @see IMoveDeleteHook#moveFolder(IResourceTree, IFolder, IFolder, int, IProgressMonitor)
- */
- public boolean moveFolder(
- IResourceTree tree,
- IFolder source,
- IFolder destination,
- int updateFlags,
- IProgressMonitor monitor) {
- return false;
- }
-
- /**
- * @see IMoveDeleteHook#moveProject(IResourceTree, IProject, IProjectDescription, int, IProgressMonitor)
- */
- public boolean moveProject(
- IResourceTree tree,
- IProject source,
- IProjectDescription description,
- int updateFlags,
- IProgressMonitor monitor) {
- return false;
- }
-
-}
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/FileModificationValidatorManager.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/FileModificationValidatorManager.java
deleted file mode 100644
index 8aab83d0d..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/FileModificationValidatorManager.java
+++ /dev/null
@@ -1,102 +0,0 @@
-package org.eclipse.team.internal.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2002.
- * All Rights Reserved.
- */
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFileModificationValidator;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.team.core.RepositoryProvider;
-import org.eclipse.team.core.TeamPlugin;
-
-public class FileModificationValidatorManager implements IFileModificationValidator {
- private static final IFileModificationValidator DEFAULT_VALIDATOR =
- new DefaultFileModificationValidator();
-
- /*
- * @see IFileModificationValidator#validateEdit(IFile[], Object)
- * For all files, determine which provider.
- * Ask each provider once for its files.
- * Collect the resulting status' and return a MultiStatus.
- */
- public IStatus validateEdit(IFile[] files, Object context) {
- ArrayList returnStati = new ArrayList();
-
- //map provider to the files under that provider's control
- Map providersToFiles = new HashMap(files.length);
-
- //for each file, determine which provider, map providers to files
- for (int i = 0; i < files.length; i++) {
- IFile file = files[i];
- RepositoryProvider provider = RepositoryProvider.getProvider(file.getProject());
-
- if (!providersToFiles.containsKey(provider)) {
- providersToFiles.put(provider, new ArrayList());
- }
-
- ((ArrayList)providersToFiles.get(provider)).add(file);
- }
-
- Iterator providersIterator = providersToFiles.keySet().iterator();
-
- boolean allOK = true;
-
- //for each provider, validate its files
- while(providersIterator.hasNext()) {
- RepositoryProvider provider = (RepositoryProvider)providersIterator.next();
- ArrayList filesList = (ArrayList)providersToFiles.get(provider);
- IFile[] filesArray = (IFile[])filesList.toArray(new IFile[filesList.size()]);
- IFileModificationValidator validator = DEFAULT_VALIDATOR;
-
- //if no provider or no validator use the default validator
- if (provider != null) {
- IFileModificationValidator v = provider.getFileModificationValidator();
- if (v != null) validator = v;
- }
-
- IStatus status = validator.validateEdit(filesArray, context);
- if(!status.isOK())
- allOK = false;
-
- returnStati.add(status);
- }
-
- if (returnStati.size() == 1) {
- return (IStatus)returnStati.get(0);
- }
-
- return new MultiStatus(TeamPlugin.ID,
- 0,
- (IStatus[])returnStati.toArray(new IStatus[returnStati.size()]),
- Policy.bind(
- allOK
- ? "FileModificationValidator.ok" //$NON-NLS-1$
- : "FileModificationValidator.editFailed"), //$NON-NLS-1$
- null); //$NON-NLS-1$
- }
-
- /*
- * @see IFileModificationValidator#validateSave(IFile)
- */
- public IStatus validateSave(IFile file) {
- RepositoryProvider provider = RepositoryProvider.getProvider(file.getProject());
- IFileModificationValidator validator = DEFAULT_VALIDATOR;
-
- //if no provider or no validator use the default validator
- if (provider != null) {
- IFileModificationValidator v = provider.getFileModificationValidator();
- if (v != null) validator = v;
- }
-
- return validator.validateSave(file);
- }
-}
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/MoveDeleteManager.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/MoveDeleteManager.java
deleted file mode 100644
index ef1e1eea6..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/MoveDeleteManager.java
+++ /dev/null
@@ -1,110 +0,0 @@
-package org.eclipse.team.internal.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2002.
- * All Rights Reserved.
- */
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.team.IMoveDeleteHook;
-import org.eclipse.core.resources.team.IResourceTree;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.team.core.RepositoryProvider;
-
-public class MoveDeleteManager implements IMoveDeleteHook {
-
- private static final IMoveDeleteHook DEFAULT_HOOK = new DefaultMoveDeleteHook();
-
- private IMoveDeleteHook getHookFor(IResource resource) {
- IProject project = resource.getProject();
- RepositoryProvider provider = RepositoryProvider.getProvider(project);
- if(provider==null) {
- return DEFAULT_HOOK;
- }
- IMoveDeleteHook hook = provider.getMoveDeleteHook();
- if (hook == null) {
- return DEFAULT_HOOK;
- }
- return hook;
- }
-
- /*
- * @see IMoveDeleteHook#deleteFile(IResourceTree, IFile, int, IProgressMonitor)
- */
- public boolean deleteFile(
- IResourceTree tree,
- IFile file,
- int updateFlags,
- IProgressMonitor monitor) {
-
- return getHookFor(file).deleteFile(tree, file, updateFlags, monitor);
- }
-
- /*
- * @see IMoveDeleteHook#deleteFolder(IResourceTree, IFolder, int, IProgressMonitor)
- */
- public boolean deleteFolder(
- IResourceTree tree,
- IFolder folder,
- int updateFlags,
- IProgressMonitor monitor) {
-
- return getHookFor(folder).deleteFolder(tree, folder, updateFlags, monitor);
- }
-
- /*
- * @see IMoveDeleteHook#deleteProject(IResourceTree, IProject, int, IProgressMonitor)
- */
- public boolean deleteProject(
- IResourceTree tree,
- IProject project,
- int updateFlags,
- IProgressMonitor monitor) {
-
- return getHookFor(project).deleteProject(tree, project, updateFlags, monitor);
- }
-
- /*
- * @see IMoveDeleteHook#moveFile(IResourceTree, IFile, IFile, int, IProgressMonitor)
- */
- public boolean moveFile(
- IResourceTree tree,
- IFile source,
- IFile destination,
- int updateFlags,
- IProgressMonitor monitor) {
-
- return getHookFor(source).moveFile(tree, source, destination, updateFlags, monitor);
- }
-
- /*
- * @see IMoveDeleteHook#moveFolder(IResourceTree, IFolder, IFolder, int, IProgressMonitor)
- */
- public boolean moveFolder(
- IResourceTree tree,
- IFolder source,
- IFolder destination,
- int updateFlags,
- IProgressMonitor monitor) {
-
- return getHookFor(source).moveFolder(tree, source, destination, updateFlags, monitor);
- }
-
- /*
- * @see IMoveDeleteHook#moveProject(IResourceTree, IProject, IProjectDescription, int, IProgressMonitor)
- */
- public boolean moveProject(
- IResourceTree tree,
- IProject source,
- IProjectDescription description,
- int updateFlags,
- IProgressMonitor monitor) {
-
- return getHookFor(source).moveProject(tree, source, description, updateFlags, monitor);
- }
-
-}
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/Policy.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/Policy.java
deleted file mode 100644
index 4b87bd415..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/Policy.java
+++ /dev/null
@@ -1,91 +0,0 @@
-package org.eclipse.team.internal.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import java.text.MessageFormat;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.core.runtime.SubProgressMonitor;
-
-public class Policy {
- protected static ResourceBundle bundle = null;
-
- /**
- * Creates a NLS catalog for the given locale.
- */
- public static void localize(String bundleName) {
- bundle = ResourceBundle.getBundle(bundleName);
- }
-
- /**
- * Lookup the message with the given ID in this catalog and bind its
- * substitution locations with the given string.
- */
- public static String bind(String id, String binding) {
- return bind(id, new String[] { binding });
- }
-
- /**
- * Lookup the message with the given ID in this catalog and bind its
- * substitution locations with the given strings.
- */
- public static String bind(String id, String binding1, String binding2) {
- return bind(id, new String[] { binding1, binding2 });
- }
-
- /**
- * Gets a string from the resource bundle. We don't want to crash because of a missing String.
- * Returns the key if not found.
- */
- public static String bind(String key) {
- try {
- return bundle.getString(key);
- } catch (MissingResourceException e) {
- return key;
- } catch (NullPointerException e) {
- return "!" + key + "!"; //$NON-NLS-1$ //$NON-NLS-2$
- }
- }
-
- /**
- * Gets a string from the resource bundle and binds it with the given arguments. If the key is
- * not found, return the key.
- */
- public static String bind(String key, Object[] args) {
- try {
- return MessageFormat.format(bind(key), args);
- } catch (MissingResourceException e) {
- return key;
- } catch (NullPointerException e) {
- return "!" + key + "!"; //$NON-NLS-1$ //$NON-NLS-2$
- }
- }
-
- /**
- * Progress monitor helpers
- */
- public static void checkCanceled(IProgressMonitor monitor) {
- if (monitor.isCanceled())
- throw new OperationCanceledException();
- }
- public static IProgressMonitor monitorFor(IProgressMonitor monitor) {
- if (monitor == null)
- return new NullProgressMonitor();
- return monitor;
- }
-
- public static IProgressMonitor subMonitorFor(IProgressMonitor monitor, int ticks) {
- if (monitor == null)
- return new NullProgressMonitor();
- if (monitor instanceof NullProgressMonitor)
- return monitor;
- return new SubProgressMonitor(monitor, ticks);
- }
-} \ No newline at end of file
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/StringMatcher.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/StringMatcher.java
deleted file mode 100644
index 015a2ae15..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/StringMatcher.java
+++ /dev/null
@@ -1,389 +0,0 @@
-package org.eclipse.team.internal.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import java.util.*;
-
-/**
- * A string pattern matcher, suppporting * and ? wildcards.
- * Note: code copied from org.eclipse.jdt.internal.core.util.StringMatcher on April 3, 2001
- * (version 0.1 - 010901H18 [rename jbl]).
- */
-public class StringMatcher {
- protected String fPattern;
- protected int fLength; // pattern length
- protected boolean fIgnoreWildCards;
- protected boolean fIgnoreCase;
- protected boolean fHasLeadingStar;
- protected boolean fHasTrailingStar;
- protected String fSegments[]; //the given pattern is split into * separated segments
-
- /* boundary value beyond which we don't need to search in the text */
- protected int fBound = 0;
-
-
- protected static final char fSingleWildCard = '\u0000';
-
- public static class Position {
- int start; //inclusive
- int end; //exclusive
- public Position(int start, int end) {
- this.start = start;
- this.end = end;
- }
- public int getStart() {
- return start;
- }
- public int getEnd() {
- return end;
- }
- }
- /**
- * Find the first occurrence of the pattern between <code>start</code)(inclusive)
- * and <code>end</code>(exclusive).
- * @param <code>text</code>, the String object to search in
- * @param <code>start</code>, the starting index of the search range, inclusive
- * @param <code>end</code>, the ending index of the search range, exclusive
- * @return an <code>StringMatcher.Position</code> object that keeps the starting
- * (inclusive) and ending positions (exclusive) of the first occurrence of the
- * pattern in the specified range of the text; return null if not found or subtext
- * is empty (start==end). A pair of zeros is returned if pattern is empty string
- * Note that for pattern like "*abc*" with leading and trailing stars, position of "abc"
- * is returned. For a pattern like"*??*" in text "abcdf", (1,3) is returned
- */
-
- public StringMatcher.Position find(String text, int start, int end) {
- if (fPattern == null|| text == null)
- throw new IllegalArgumentException();
-
- int tlen = text.length();
- if (start < 0)
- start = 0;
- if (end > tlen)
- end = tlen;
- if (end < 0 ||start >= end )
- return null;
- if (fLength == 0)
- return new Position(start, start);
- if (fIgnoreWildCards) {
- int x = posIn(text, start, end);
- if (x < 0)
- return null;
- return new Position(x, x+fLength);
- }
-
- int segCount = fSegments.length;
- if (segCount == 0)//pattern contains only '*'(s)
- return new Position (start, end);
-
- int curPos = start;
- int matchStart = -1;
- int i;
- for (i = 0; i < segCount && curPos < end; ++i) {
- String current = fSegments[i];
- int nextMatch = regExpPosIn(text, curPos, end, current);
- if (nextMatch < 0 )
- return null;
- if(i == 0)
- matchStart = nextMatch;
- curPos = nextMatch + current.length();
- }
- if (i < segCount)
- return null;
- return new Position(matchStart, curPos);
- }
- /**
- * StringMatcher constructor takes in a String object that is a simple
- * pattern which may contain *  for 0 and many characters and
- * ?  for exactly one character.
- *
- * Literal '*' and '?' characters must be escaped in the pattern
- * e.g., "\*" means literal "*", etc.
- *
- * Escaping any other character (including the escape character itself),
- * just results in that character in the pattern.
- * e.g., "\a" means "a" and "\\" means "\"
- *
- * If invoking the StringMatcher with string literals in Java, don't forget
- * escape characters are represented by "\\".
- *
- * @param aPattern the pattern to match text against
- * @param ignoreCase if true, case is ignored
- * @param ignoreWildCards if true, wild cards and their escape sequences are ignored
- * (everything is taken literally).
- */
- public StringMatcher(String aPattern, boolean ignoreCase, boolean ignoreWildCards) {
- fIgnoreCase = ignoreCase;
- fIgnoreWildCards = ignoreWildCards;
- fLength = aPattern.length();
-
- /* convert case */
- if (fIgnoreCase) {
- fPattern = aPattern.toUpperCase();
- } else {
- fPattern = aPattern;
- }
-
- if (fIgnoreWildCards) {
- parseNoWildCards();
- } else {
- parseWildCards();
- }
- }
- /**
- * Given the starting (inclusive) and the ending (exclusive) poisitions in the
- * <code>text</code>, determine if the given substring matches with aPattern
- * @return true if the specified portion of the text matches the pattern
- * @param String <code>text</code>, a String object that contains the substring to match
- * @param int <code>start<code> marks the starting position (inclusive) of the substring
- * @param int <code>end<code> marks the ending index (exclusive) of the substring
- */
- public boolean match(String text, int start, int end) {
- if (null == fPattern || null == text)
- throw new IllegalArgumentException();
-
- if (start >= end)
- return false;
-
- if (fIgnoreWildCards)
- return fPattern.regionMatches(fIgnoreCase, 0, text, start, fLength);
- int segCount = fSegments.length;
- if (segCount == 0)//pattern contains only '*'(s) or empty pattern
- return true;
- if (start == end)
- return fLength == 0;
- if (fLength == 0)
- return start == end;
-
- int tlen = text.length();
- if (start < 0)
- start = 0;
- if (end > tlen)
- end = tlen;
-
- int tCurPos = start;
- int bound = end - fBound;
- if ( bound < 0)
- return false;
- int i=0;
- String current = fSegments[i];
- int segLength = current.length();
-
- /* process first segment */
- if (!fHasLeadingStar){
- if(!regExpRegionMatches(text, start, current, 0, segLength)) {
- return false;
- } else {
- ++i;
- tCurPos = tCurPos + segLength;
- }
- }
-
- /* process middle segments */
- while ( i < segCount) {
- current = fSegments[i];
- int currentMatch;
- int k = current.indexOf(fSingleWildCard);
- if (k < 0) {
- currentMatch = textPosIn(text, tCurPos, end, current);
- if (currentMatch < 0)
- return false;
- } else {
- currentMatch = regExpPosIn(text, tCurPos, end, current);
- if (currentMatch < 0)
- return false;
- }
- tCurPos = currentMatch + current.length();
- i++;
- }
-
- /* process final segment */
- if (!fHasTrailingStar && tCurPos != end) {
- int clen = current.length();
- return regExpRegionMatches(text, end - clen, current, 0, clen);
- }
- return i == segCount ;
- }
- /**
- * match the given <code>text</code> with the pattern
- * @return true if matched eitherwise false
- * @param <code>text</code>, a String object
- */
- public boolean match(String text) {
- return match(text, 0, text.length());
- }
- /**
- * This method parses the given pattern into segments seperated by wildcard '*' characters.
- * Since wildcards are not being used in this case, the pattern consists of a single segment.
- */
- private void parseNoWildCards() {
- fSegments = new String[1];
- fSegments[0] = fPattern;
- fBound = fLength;
- }
- /**
- * This method parses the given pattern into segments seperated by wildcard '*' characters.
- * @param p, a String object that is a simple regular expression with *  and/or ? 
- */
- private void parseWildCards() {
- if(fPattern.startsWith("*"))//$NON-NLS-1$
- fHasLeadingStar = true;
- if(fPattern.endsWith("*")) {//$NON-NLS-1$
- /* make sure it's not an escaped wildcard */
- if (fLength > 1 && fPattern.charAt(fLength - 2) != '\\') {
- fHasTrailingStar = true;
- }
- }
-
- Vector temp = new Vector();
-
- int pos = 0;
- StringBuffer buf = new StringBuffer();
- while (pos < fLength) {
- char c = fPattern.charAt(pos++);
- switch (c) {
- case '\\':
- if (pos >= fLength) {
- buf.append(c);
- } else {
- char next = fPattern.charAt(pos++);
- /* if it's an escape sequence */
- if (next == '*' || next == '?' || next == '\\') {
- buf.append(next);
- } else {
- /* not an escape sequence, just insert literally */
- buf.append(c);
- buf.append(next);
- }
- }
- break;
- case '*':
- if (buf.length() > 0) {
- /* new segment */
- temp.addElement(buf.toString());
- fBound += buf.length();
- buf.setLength(0);
- }
- break;
- case '?':
- /* append special character representing single match wildcard */
- buf.append(fSingleWildCard);
- break;
- default:
- buf.append(c);
- }
- }
-
- /* add last buffer to segment list */
- if (buf.length() > 0) {
- temp.addElement(buf.toString());
- fBound += buf.length();
- }
-
- fSegments = new String[temp.size()];
- temp.copyInto(fSegments);
- }
- /**
- * @param <code>text</code>, a string which contains no wildcard
- * @param <code>start</code>, the starting index in the text for search, inclusive
- * @param <code>end</code>, the stopping point of search, exclusive
- * @return the starting index in the text of the pattern , or -1 if not found
- */
- protected int posIn(String text, int start, int end) {//no wild card in pattern
- int max = end - fLength;
-
- if (!fIgnoreCase) {
- int i = text.indexOf(fPattern, start);
- if (i == -1 || i > max)
- return -1;
- return i;
- }
-
- for (int i = start; i <= max; ++i) {
- if (text.regionMatches(true, i, fPattern, 0, fLength))
- return i;
- }
-
- return -1;
- }
- /**
- * @param <code>text</code>, a simple regular expression that may only contain '?'(s)
- * @param <code>start</code>, the starting index in the text for search, inclusive
- * @param <code>end</code>, the stopping point of search, exclusive
- * @param <code>p</code>, a simple regular expression that may contains '?'
- * @param <code>caseIgnored</code>, wether the pattern is not casesensitive
- * @return the starting index in the text of the pattern , or -1 if not found
- */
- protected int regExpPosIn(String text, int start, int end, String p) {
- int plen = p.length();
-
- int max = end - plen;
- for (int i = start; i <= max; ++i) {
- if (regExpRegionMatches(text, i, p, 0, plen))
- return i;
- }
- return -1;
- }
- /**
- *
- * @return boolean
- * @param <code>text</code>, a String to match
- * @param <code>start</code>, int that indicates the starting index of match, inclusive
- * @param <code>end</code> int that indicates the ending index of match, exclusive
- * @param <code>p</code>, String, String, a simple regular expression that may contain '?'
- * @param <code>ignoreCase</code>, boolean indicating wether code>p</code> is case sensitive
- */
- protected boolean regExpRegionMatches(String text, int tStart, String p, int pStart, int plen) {
- while (plen-- > 0) {
- char tchar = text.charAt(tStart++);
- char pchar = p.charAt(pStart++);
-
- /* process wild cards */
- if (!fIgnoreWildCards) {
- /* skip single wild cards */
- if (pchar == fSingleWildCard) {
- continue;
- }
- }
- if (pchar == tchar)
- continue;
- if (fIgnoreCase) {
- char tc = Character.toUpperCase(tchar);
- if (tc == pchar)
- continue;
- }
- return false;
- }
- return true;
- }
- /**
- * @param <code>text</code>, the string to match
- * @param <code>start</code>, the starting index in the text for search, inclusive
- * @param <code>end</code>, the stopping point of search, exclusive
- * @param code>p</code>, a string that has no wildcard
- * @param <code>ignoreCase</code>, boolean indicating wether code>p</code> is case sensitive
- * @return the starting index in the text of the pattern , or -1 if not found
- */
- protected int textPosIn(String text, int start, int end, String p) {
-
- int plen = p.length();
- int max = end - plen;
-
- if (!fIgnoreCase) {
- int i = text.indexOf(p, start);
- if (i == -1 || i > max)
- return -1;
- return i;
- }
-
- for (int i = start; i <= max; ++i) {
- if (text.regionMatches(true, i, p, 0, plen))
- return i;
- }
-
- return -1;
- }
-}
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/messages.properties b/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/messages.properties
deleted file mode 100644
index d14c44b45..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/messages.properties
+++ /dev/null
@@ -1,37 +0,0 @@
-
-manager.providerAlreadyMapped=Error associating {0} with provider named {1}. The project is already associated with a provider.
-manager.errorFlushSync=Error flushing provider mapping information for {0}.
-manager.errorDeconfigure=Error deconfiguring provider named {0} from project {1}.
-manager.providerTypeInvalid=The provider type is not registered: {0}.
-manager.providerExtensionNotFound=TeamPlugin provider extension not found.
-manager.providerNoConfigElems=No configuration elements found for extension: {0}.
-manager.cannotInstantiateExt=Cannot instantiate extension: {0}.
-manager.errorSerialize=Error serializing provider mappings for {0}.
-manager.errorUnserializeProvider=Cannot unserialize association of {0} with provider of type: {1}. It is no longer a registered provider type.
-manager.errorUnserialize=Error un-serializing provider mappings {0}.
-manager.notTeamNature=Error setting nature: {0} is not a registered team nature.
-manager.errorSettingNature=Error setting nature {1} on project {0}.
-manager.errorRemovingNature=Error removing nature {1} on project {0}.
-
-manager.badClassType=Error creating validator decorator: bad class type
-manager.coreException=Error creating validator decorator: core exception
-
-FileModificationValidator.someReadOnly=Some files are read-only.
-FileModificationValidator.fileIsReadOnly=File {0} is read-only.
-FileModificationValidator.editFailed=Files are read-only.
-FileModificationValidator.ok=OK
-
-RepositoryProvider_Error_removing_nature_from_project___1=Error removing nature from project:
-RepositoryProvider_Too_many_providers_associated_with_project___2=Too many providers associated with project:
-RepositoryProviderTypeduplicate_provider_found_in_plugin.xml___1=duplicate provider found in plugin.xml:
-RepositoryProviderTypeRepositoryProvider_assigned_to_the_project_must_be_a_subclass_of_RepositoryProvider___2=RepositoryProvider assigned to the project must be a subclass of RepositoryProvider:
-RepositoryProviderTypeRepositoryProvider_not_registered_as_a_nature_id___3=RepositoryProvider not registered as a nature id:
-
-RepositoryProvider_providerTypeIdNotRegistered=Error configuring the RepositoryProvider the nature id is not registered as a valid RepositoryProviderType id.
-
-TeamPlugin_setting_global_ignore_7=setting global ignore
-TeamPlugin_renaming_21=renaming
-TeamPlugin_closing_stream_22=closing stream
-TeamPlugin_closing_stream_23=closing stream
-
-
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/simpleAccess/SimpleAccessOperations.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/simpleAccess/SimpleAccessOperations.java
deleted file mode 100644
index 8373e0f14..000000000
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/internal/core/simpleAccess/SimpleAccessOperations.java
+++ /dev/null
@@ -1,269 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v0.5
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v05.html
- *
- * Contributors:
- * IBM - Initial API and implementation
- ******************************************************************************/
-package org.eclipse.team.internal.core.simpleAccess;
-
-import org.eclipse.team.core.*;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-
-/*
- * This class represents provisional API. Its here to allow experimentation with 3rd party tools
- * calling providers in a repository neutral manner.
- *
- * A provider is not required to implement this API.
- * Implementers, and those who reference it, do so with the awareness that this class may be
- * removed or substantially changed at future times without warning.
- *
- * The <code>SimpleAccessOperations</code> class exposes a basic repository model that
- * providers may implement to allow third-party plugins to perform repository operations
- * programmatically. For example, a code generation tool may want to get source
- * files before generating the code, and check-in the results. If a provider plugin does
- * not adhere to the <i>semantics</i> of the <code>SimpleAccessOperations</code> class
- * as described, they are free to opt out of implementing it.
- *
- * @since 2.0
- */
-public interface SimpleAccessOperations {
- /*
- * Updates the local resource to have the same content as the corresponding remote
- * resource. Where the local resource does not exist, this method will create it.
- * <p>
- * If the remote resource is a container (e.g. folder or project) this operation is equivalent
- * to getting each non-container member of the remote resource, thereby updating the
- * content of existing local members, creating local members to receive new remote resources,
- * and deleting local members that no longer have a corresponding remote resource.</p>
- * <p>
- * The method is applied to all resources satisfying the depth parameter, described above.</p>
- * <p>
- * Interrupting the method (via the progress monitor) may lead to partial, but consistent, results.</p>
- *
- * @param resources an array of local resources to update from the corresponding remote
- * resources.
- * @param depth the depth to traverse the given resources, taken from <code>IResource</code>
- * static constants.
- * @param progress a progress monitor to indicate the duration of the operation, or
- * <code>null</code> if progress reporting is not required.
- * @throws TeamException if there is a problem getting one or more of the resources. The
- * exception will contain multiple statuses, one for each resource in the <code>resources</code>
- * array. Possible status codes include:
- * <ul>
- * <li>NO_REMOTE_RESOURCE</li>
- * <li>IO_FAILED</li>
- * <li>NOT_AUTHORIZED</li>
- * <li>UNABLE</li>
- * </ul>
- */
- public void get(IResource[] resources, int depth, IProgressMonitor progress) throws TeamException;
-
- /*
- * Changes the state of the local resource from checked-in to checked-out and transfers the content
- * of the remote resource to the local resource.
- * <p>
- * Where no corresponding local resource exists in the workspace, one is created (including any
- * intermediate parent containers) to receive the contents of the remote resource.</p>
- * <p>
- * Implementations may optimistically only flag the state change locally and rely on resolving conflicts
- * during check-in, or they may pessimistically also checkout or lock the remote resource during a
- * local resource checkout to avoid conflicts. The provider API does not subscribe to either model
- * and supports each equally.</p>
- * <p>
- * Where checkout is applied to a resource that is already checked-out the method has no
- * effect.</p>
- *
- * @param resources the array of local resources to be checked-out.
- * @param depth the depth to traverse the given resources, taken from <code>IResource</code>
- * constants.
- * @param progress a progress monitor to indicate the duration of the operation, or
- * <code>null</code> if progress reporting is not required.
- * @throws TeamProviderException if there is a problem checking-out one or more of the resources.
- * The exception will contain multiple statuses, one for each resource in the <code>resources</code>
- * array. Possible status codes include:
- * <ul>
- * <li>NOT_CHECKED_IN</li>
- * <li>NO_REMOTE_RESOURCE</li>
- * <li>IO_FAILED</li>
- * <li>NOT_AUTHORIZED</li>
- * <li>UNABLE</li>
- * </ul>
- * @see checkin(IResource[], int, IProgressMonitor)
- */
- public void checkout(IResource[] resources, int depth, IProgressMonitor progress) throws TeamException;
-
- /*
- * Transfers the content of the local resource to the corresponding remote resource, and changes the
- * state of the local resource from checked-out to checked-in.
- * <p>
- * If a remote resource does not exist this method creates a new remote resource with the same content
- * as the given local resource. The local resource is said to <i>correspond</i> to the new remote resource.</p>
- * <p>
- * Where providers deal with stores that check-out or lock resources this method is an opportunity
- * to transfer the content and make the corresponding remote check-in or unlock. It is envisaged that
- * where the server maintains resource versions, checkin creates a new version of the remote resource.</p>
- * <p>
- * Note that some providers may <em>require</em> that a resource is checked-out before it can be
- * checked-in. However, all providers must support the explicit checking out a resource before checking
- * it in (e.g., even if the check out is a no-op).</p>
- *
- * @param resources an array of local resources to be checked-in.
- * @param the depth to traverse the given resources, taken from <code>IResource</code>
- * constants.
- * @param progress a progress monitor to indicate the duration of the operation, or
- * <code>null</code> if progress reporting is not required.
- * @throws TeamException if there is a problem checking-in one or more of the resources.
- * The exception will contain multiple statuses, one for each resource in the <code>resources</code>
- * array. Possible status codes include:
- * <ul>
- * <li>NOT_CHECKED_OUT</li>
- * <li>IO_FAILED</li>
- * <li>NOT_AUTHORIZED</li>
- * <li>UNABLE</li>
- * </ul>
- * @see checkout(IResource[], int, IProgressMonitor)
- */
- public void checkin(IResource[] resources, int depth, IProgressMonitor progress) throws TeamException;
-
- /*
- * Changes the state of the local resource from checked-out to checked-in without updating the contents
- * of the remote resource.
- * <p>
- * Note that where the provider is a versioning provider, it is envisaged (though not required) that the
- * uncheckout operation does not create a new version.</p>
- * <p>
- * Note also that <code>uncheckout()</code> does not affect the content of the local resource. The
- * caller is required to perform a <code>get()</code> to revert the local resource if that is required
- * (otherwise the local resource will be left with the changes that were made while the remote resource
- * was checked-out. Furthermore, it is valid to call <code>uncheckout()</code> with an
- * <code>IResource</code> that does not exist locally.</p>
- *
- * @param resources an array of the local resources that are to be unchecked-out.
- * @param depth the depth to traverse the given resources, taken from <code>IResource</code>
- * constants.
- * @param progress a progress monitor to indicate the duration of the operation, or
- * <code>null</code> if progress reporting is not required.
- * @throws TeamProviderException if there is a problem undoing the check-out of one or more of
- * the resources. The exception will contain multiple statuses, one for each resource in the
- * <code>resources</code> array. Possible status codes include:
- * <ul>
- * <li>NOT_CHECKED_OUT</li>
- * <li>IO_FAILED</li>
- * <li>NOT_AUTHORIZED</li>
- * <li>UNABLE</li>
- * </ul>
- * @see checkin(IResource)
- * @see uncheckout(IResource)
- */
- public void uncheckout(IResource[] resources, int depth, IProgressMonitor progress) throws TeamException;
-
- /*
- * Deletes the remote resource corresponding to the given local resource.
- * <p>
- * The notion of delete is simply to make the remote resource unavailable. Where the provider
- * supports versioning it is not specified whether the delete operation makes the version
- * temporarily or forever unavailable, or indeed whether the entire history is made unavailable.</p>
- * <p>
- * Note that the <code>IResource</code>'s passed as arguments may be non-existant in the
- * workbench, the typical case is when such a resource has been received in a core callback.</p>
- * <p>
- * The resource may be checked-in or checked-out prior to deletion. The local resource is not
- * deleted by this method.</p>
- * <p>
- * Resource deletions are inherently deep.</p>
- *
- * @param resources the array of resources whose corresponding remote resources are to be deleted.
- * @param progress a progress monitor to indicate the duration of the operation, or
- * <code>null</code> if progress reporting is not required.
- * @throws TeamProviderException if there is a problem deleting one or more of
- * the resources. The exception will contain multiple statuses, one for each resource in the
- * <code>resources</code> array. Possible status codes include:
- * <ul>
- * <li>NO_REMOTE_RESOURCE</li>
- * <li>IO_FAILED</li>
- * <li>NOT_AUTHORIZED</li>
- * <li>UNABLE</li>
- * </ul>
- */
- public void delete(IResource[] resources, IProgressMonitor progress) throws TeamException;
-
- /*
- * Informs the provider that a local resource's name or path has changed.
- * <p>
- * Some providers, such as versioning providers, may require this information to track the resource
- * across name changes.</p>
- * <p>
- * Note that this method is always called <em>after</em> the local resource has been moved.</p>
- *
- * @param source the full name of the resource before it was moved.
- * @param target the resource that was moved.
- * @param progress a progress monitor to indicate the duration of the operation, or
- * <code>null</code> if progress reporting is not required.
- * @throws TeamProviderException if there is a problem recording the move. The exception will
- * contain a single status. Possible status codes are:
- * <ul>
- * <li>NO_REMOTE_RESOURCE</li>
- * <li>IO_FAILED</li>
- * <li>NOT_AUTHORIZED</li>
- * <li>UNABLE</li>
- * </ul>
- */
- public void moved(IPath source, IResource target, IProgressMonitor progress) throws TeamException;
-
- /*
- * Implementor's Note:
- * The following methods are required to return promptly (i.e., they may be used to determine the state of
- * a resource in a UI where long delays are unacceptable). Implementations may cache these values
- * and update the cache on an explicit call to #refreshState().
- *
- * They are currently listed in the provider API, however, they may be moved to a new or different
- * interface in the future to better reflect their UI-orientation.
- */
-
- /*
- * Answers if the remote resource state is checked-out. If the resource has never been checked in this
- * method will return <code>true</code>.
- * <p>
- * It is undefined whether this method tests for a resource being checked out to this workspace
- * or any workspace.</p>
- *
- * @param resource the local resource to test.
- * @return <code>true</code> if the resource is checked-out and <code>false</code> if it is not.
- * @see checkout(IResource[], int, IProgressMonitor)
- */
- public boolean isCheckedOut(IResource resource);
-
- /*
- * Answers whether the resource has a corresponding remote resource.
- * <p>
- * Before a resource is checked-in, the resource will occur locally but not remotely, and calls to this
- * method will return <code>false</code>. Once a local resource is checked in (and assuming the local
- * local resource is not moved or the remote resource deleted) there will be a corresponding remote
- * resource and this method returns <code>true</code>.</p>
- *
- * @param resource the local resource to test.
- * @return <code>true</code> if the local resource has a corresponding remote resource,
- * and <code>false</code> otherwise.
- * @see checkin(IResource[], int, IProgressMonitor)
- * @see refreshState(IResource[], int, IProgressMonitor)
- */
- public boolean hasRemote(IResource resource);
-
- /*
- * Answer if the local resource currently has a different timestamp to the base timestamp
- * for this resource.
- *
- * @param resource the resource to test.
- * @return <code>true</code> if the resource has a different modification
- * timestamp, and <code>false</code> otherwise.
- */
- public boolean isDirty(IResource resource);
-} \ No newline at end of file

Back to the top