You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ivy-dev@incubator.apache.org by Gilles Scokart <gs...@gmail.com> on 2007/05/16 07:39:40 UTC

FW: svn commit: r538245 [2/2] - in /incubator/ivy/core/trunk: ./ src/java/org/apache/ivy/ src/java/org/apache/ivy/ant/ src/java/org/apache/ivy/core/ src/java/org/apache/ivy/core/deliver/ src/java/org/apache/ivy/core/event/ src/java/org/apache/ivy/core/mod

Did you note the strange diff for the file Scp.java.  The others are
correct.  Maybe a problem of CR/LF ?

Gilles

-----Original Message-----
From: xavier@apache.org [mailto:xavier@apache.org] 
Sent: mardi 15 mai 2007 18:30
To: ivy-commits@incubator.apache.org
Subject: svn commit: r538245 [2/2] - in /incubator/ivy/core/trunk: ./
src/java/org/apache/ivy/ src/java/org/apache/ivy/ant/
src/java/org/apache/ivy/core/ src/java/org/apache/ivy/core/deliver/
src/java/org/apache/ivy/core/event/ src/java/org/apache/ivy/core/modu...

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/ssh/Scp.
java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/repository/ssh/Scp.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/ssh/Scp.
java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/ssh/Scp.
java Tue May 15 09:29:33 2007
@@ -1,620 +1,618 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
- *  this work for additional information regarding copyright ownership.
- *  The ASF licenses this file to You under the Apache License, Version 2.0
- *  (the "License"); you may not use this file except in compliance with
- *  the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- *
- */
-package org.apache.ivy.plugins.repository.ssh;
-
-import java.io.BufferedInputStream;
-import java.io.BufferedOutputStream;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-
-import com.jcraft.jsch.Channel;
-import com.jcraft.jsch.ChannelExec;
-import com.jcraft.jsch.JSchException;
-import com.jcraft.jsch.Session;
-
-/**
- * This class is using the scp client to transfer data and information for
the
- * repository. It is based on the SCPClient from the ganymed ssh library
from
- * Christian Plattner. To minimize the dependency to the ssh library and
because
- * I needed some additional functionality, I decided to copy'n'paste the
single
- * class rather than to inherit or delegate it somehow. Nevertheless credit
- * should go to the original author.
- * 
- * @author Andreas Sahlbach
- * @author Christian Plattner, plattner@inf.ethz.ch
- */
-
-public class Scp {
-    Session session;
-
-    public class FileInfo {
-        private String filename;
-        private long length;
-        private long lastModified;
-        /**
-         * @param filename The filename to set.
-         */
-        public void setFilename(String filename) {
-            this.filename = filename;
-        }
-        /**
-         * @return Returns the filename.
-         */
-        public String getFilename() {
-            return filename;
-        }
-        /**
-         * @param length The length to set.
-         */
-        public void setLength(long length) {
-            this.length = length;
-        }
-        /**
-         * @return Returns the length.
-         */
-        public long getLength() {
-            return length;
-        }
-        /**
-         * @param lastModified The lastModified to set.
-         */
-        public void setLastModified(long lastModified) {
-            this.lastModified = lastModified;
-        }
-        /**
-         * @return Returns the lastModified.
-         */
-        public long getLastModified() {
-            return lastModified;
-        }
-    }
-
-    public Scp(Session session) {
-        if (session == null)
-            throw new IllegalArgumentException("Cannot accept null
argument!");
-        this.session = session;
-    }
-
-    private void readResponse(InputStream is) throws IOException,
RemoteScpException {
-        int c = is.read();
-
-        if (c == 0)
-            return;
-
-        if (c == -1)
-            throw new RemoteScpException("Remote scp terminated
unexpectedly.");
-
-        if ((c != 1) && (c != 2))
-            throw new RemoteScpException("Remote scp sent illegal error
code.");
-
-        if (c == 2)
-            throw new RemoteScpException("Remote scp terminated with
error.");
-
-        String err = receiveLine(is);
-        throw new RemoteScpException("Remote scp terminated with error (" +
err + ").");
-    }
-
-    private String receiveLine(InputStream is) throws
IOException,RemoteScpException {
-        StringBuffer sb = new StringBuffer(30);
-
-        while (true) {
-            /*
-             * This is a random limit - if your path names are longer, then
-             * adjust it
-             */
-
-            if (sb.length() > 8192)
-                throw new RemoteScpException("Remote scp sent a too long
line");
-
-            int c = is.read();
-
-            if (c < 0)
-                throw new RemoteScpException("Remote scp terminated
unexpectedly.");
-
-            if (c == '\n')
-                break;
-
-            sb.append((char) c);
-
-        }
-        return sb.toString();
-    }
-
-    private void parseCLine(String line, FileInfo fileInfo) throws
RemoteScpException {
-        /* Minimum line: "xxxx y z" ---> 8 chars */
-
-        long len;
-
-        if (line.length() < 8)
-            throw new RemoteScpException(
-                    "Malformed C line sent by remote SCP binary, line too
short.");
-
-        if ((line.charAt(4) != ' ') || (line.charAt(5) == ' '))
-            throw new RemoteScpException("Malformed C line sent by remote
SCP binary.");
-
-        int length_name_sep = line.indexOf(' ', 5);
-
-        if (length_name_sep == -1)
-            throw new RemoteScpException("Malformed C line sent by remote
SCP binary.");
-
-        String length_substring = line.substring(5, length_name_sep);
-        String name_substring = line.substring(length_name_sep + 1);
-
-        if ((length_substring.length() <= 0) || (name_substring.length() <=
0))
-            throw new RemoteScpException("Malformed C line sent by remote
SCP binary.");
-
-        if ((6 + length_substring.length() + name_substring.length()) !=
line
-                .length())
-            throw new RemoteScpException("Malformed C line sent by remote
SCP binary.");
-
-        try {
-            len = Long.parseLong(length_substring);
-        } catch (NumberFormatException e) {
-            throw new RemoteScpException(
-                    "Malformed C line sent by remote SCP binary, cannot
parse file length.");
-        }
-
-        if (len < 0)
-            throw new RemoteScpException(
-                    "Malformed C line sent by remote SCP binary, illegal
file length.");
-
-        fileInfo.setLength(len);
-        fileInfo.setFilename(name_substring);
-    }
-    
-    private void parseTLine(String line, FileInfo fileInfo) throws
RemoteScpException {
-        /* Minimum line: "0 0 0 0" ---> 8 chars */
-
-        long modtime;
-        long first_msec;
-        long atime;
-        long second_msec;
-
-        if (line.length() < 8)
-            throw new RemoteScpException(
-                    "Malformed T line sent by remote SCP binary, line too
short.");
-
-        int first_msec_begin = line.indexOf(" ")+1;
-        if(first_msec_begin == 0 || first_msec_begin >= line.length())
-            throw new RemoteScpException(
-            "Malformed T line sent by remote SCP binary, line not enough
data.");
-       
-        int atime_begin = line.indexOf(" ",first_msec_begin+1)+1;
-        if(atime_begin == 0 || atime_begin >= line.length())
-            throw new RemoteScpException(
-            "Malformed T line sent by remote SCP binary, line not enough
data.");
-        
-        int second_msec_begin = line.indexOf(" ",atime_begin+1)+1;
-        if(second_msec_begin == 0 || second_msec_begin >= line.length())
-            throw new RemoteScpException(
-            "Malformed T line sent by remote SCP binary, line not enough
data.");
-       
-        try {
-            modtime = Long.parseLong(line.substring(0,first_msec_begin-1));
-            first_msec =
Long.parseLong(line.substring(first_msec_begin,atime_begin-1));
-            atime =
Long.parseLong(line.substring(atime_begin,second_msec_begin-1));
-            second_msec =
Long.parseLong(line.substring(second_msec_begin));
-        } catch (NumberFormatException e) {
-            throw new RemoteScpException(
-                    "Malformed C line sent by remote SCP binary, cannot
parse file length.");
-        }
-
-        if (modtime < 0 || first_msec < 0 || atime < 0 || second_msec < 0)
-            throw new RemoteScpException(
-                    "Malformed C line sent by remote SCP binary, illegal
file length.");
-
-        fileInfo.setLastModified(modtime);
-    }
-    
-    private void sendBytes(Channel channel, byte[] data, String fileName,
-            String mode) throws IOException,RemoteScpException {
-        OutputStream os = channel.getOutputStream();
-        InputStream is = new BufferedInputStream(channel.getInputStream(),
512);
-
-        try {
-            if(channel.isConnected())
-                channel.start();
-            else
-                channel.connect();
-        } catch (JSchException e1) {
-            throw (IOException) new IOException("Channel connection
problems").initCause(e1);
-        }
-       
-        readResponse(is);
-
-        String cline = "C" + mode + " " + data.length + " " + fileName +
"\n";
-
-        os.write(cline.getBytes());
-        os.flush();
-
-        readResponse(is);
-
-        os.write(data, 0, data.length);
-        os.write(0);
-        os.flush();
-
-        readResponse(is);
-
-        os.write("E\n".getBytes());
-        os.flush();
-    }
-
-    private void sendFile(Channel channel, String localFile, String
remoteName, String mode)
-            throws IOException, RemoteScpException {
-        byte[] buffer = new byte[8192];
-
-        OutputStream os = new
BufferedOutputStream(channel.getOutputStream(), 40000);
-        InputStream is = new BufferedInputStream(channel.getInputStream(),
512);
-
-        try {
-            if(channel.isConnected())
-                channel.start();
-            else
-                channel.connect();
-        } catch (JSchException e1) {
-            throw (IOException) new IOException("Channel connection
problems").initCause(e1);
-        }
-
-        readResponse(is);
-
-        File f = new File(localFile);
-        long remain = f.length();
-
-        String cline = "C" + mode + " " + remain + " " + remoteName + "\n";
-
-        os.write(cline.getBytes());
-        os.flush();
-
-        readResponse(is);
-
-        FileInputStream fis = null;
-
-        try {
-            fis = new FileInputStream(f);
-
-            while (remain > 0) {
-                int trans;
-                if (remain > buffer.length)
-                    trans = buffer.length;
-                else
-                    trans = (int) remain;
-
-                if (fis.read(buffer, 0, trans) != trans)
-                    throw new IOException(
-                            "Cannot read enough from local file "
-                                    + localFile);
-
-                os.write(buffer, 0, trans);
-
-                remain -= trans;
-            }
-
-            fis.close();
-        } catch (IOException e) {
-            if (fis != null) {
-                fis.close();
-            }
-            throw (e);
-        }
-
-        os.write(0);
-        os.flush();
-
-        readResponse(is);
-
-        os.write("E\n".getBytes());
-        os.flush();
-    }
-
-    /**
-     * Receive a file via scp and store it in a stream
-     * @param channel ssh channel to use
-     * @param file to receive from remote
-     * @param target to store file into (if null, get only file info)
-     * @return file information of the file we received
-     * @throws IOException in case of network or protocol trouble
-     * @throws RemoteScpException in case of problems on the target system
(connection is fine)
-     */
-    private FileInfo receiveStream(Channel channel, String file,
OutputStream targetStream) 
-      throws IOException,RemoteScpException {
-        byte[] buffer = new byte[8192];
-
-        OutputStream os = channel.getOutputStream();
-        InputStream is = channel.getInputStream();
-        try {
-            if(channel.isConnected())
-                channel.start();
-            else
-                channel.connect();
-        } catch (JSchException e1) {
-            throw (IOException) new IOException("Channel connection
problems").initCause(e1);
-        }
-        os.write(0x0);
-        os.flush();
-
-        FileInfo fileInfo = new FileInfo();
-
-        while (true) {
-            int c = is.read();
-            if (c < 0)
-                throw new RemoteScpException("Remote scp terminated
unexpectedly.");
-
-            String line = receiveLine(is);
-
-            if (c == 'T') {
-                parseTLine(line,fileInfo);
-                os.write(0x0);
-                os.flush();
-                continue;
-            }
-            if ((c == 1) || (c == 2))
-                throw new RemoteScpException("Remote SCP error: " + line);
-
-            if (c == 'C') {
-                parseCLine(line,fileInfo);
-                break;
-            }
-            throw new RemoteScpException("Remote SCP error: " + ((char) c)
+ line);
-        }
-        if(targetStream != null) {
-            
-            os.write(0x0);
-            os.flush();
-    
-            try {
-                long remain = fileInfo.getLength();
-    
-                while (remain > 0) {
-                    int trans;
-                    if (remain > buffer.length)
-                        trans = buffer.length;
-                    else
-                        trans = (int) remain;
-    
-                    int this_time_received = is.read(buffer, 0, trans);
-    
-                    if (this_time_received < 0) {
-                        throw new IOException(
-                                "Remote scp terminated connection
unexpectedly");
-                    }
-    
-                    targetStream.write(buffer, 0, this_time_received);
-    
-                    remain -= this_time_received;
-                }
-    
-                targetStream.close();
-            } catch (IOException e) {
-                if (targetStream != null)
-                    targetStream.close();
-    
-                throw (e);
-            }
-
-            readResponse(is);
-    
-            os.write(0x0);
-            os.flush();
-        }
-        return fileInfo;
-    }
-
-    /**
-     * Copy a local file to a remote directory, uses mode 0600 when
creating the
-     * file on the remote side.
-     * 
-     * @param localFile Path and name of local file.
-     * @param remoteTargetDirectory Remote target directory where the file
has to end up (optional)
-     * @param remoteName target filename to use
-     * @throws IOException in case of network problems
-     * @throws RemoteScpException in case of problems on the target system
(connection ok)
-     */
-    public void put(String localFile, String remoteTargetDirectory, String
remoteName)
-    throws IOException, RemoteScpException {
-        put(localFile, remoteTargetDirectory, remoteName, "0600");
-    }
-
-    /**
-     * Create a remote file and copy the contents of the passed byte array
into
-     * it. Uses mode 0600 for creating the remote file.
-     * 
-     * @param data the data to be copied into the remote file.
-     * @param remoteFileName The name of the file which will be created in
the remote target directory.
-     * @param remoteTargetDirectory Remote target directory where the file
has to end up (optional)
-     * @throws IOException in case of network problems
-     * @throws RemoteScpException in case of problems on the target system
(connection ok)
-     */
-
-    public void put(byte[] data, String remoteFileName, String
remoteTargetDirectory) 
-    throws IOException,RemoteScpException {
-        put(data, remoteFileName, remoteTargetDirectory, "0600");
-    }
-
-    /**
-     * Create a remote file and copy the contents of the passed byte array
into
-     * it. The method use the specified mode when creating the file on the
-     * remote side.
-     * 
-     * @param data the data to be copied into the remote file.
-     * @param remoteFileName The name of the file which will be created in
the remote target directory.
-     * @param remoteTargetDirectory Remote target directory where the file
has to end up (optional)
-     * @param mode a four digit string (e.g., 0644, see "man chmod", "man
open")
-     * @throws IOException in case of network problems
-     * @throws RemoteScpException in case of problems on the target system
(connection ok)
-     */
-    public void put(byte[] data, String remoteFileName, String
remoteTargetDirectory, String mode) 
-    throws IOException,RemoteScpException {
-        ChannelExec channel = null;
-
-        if ((remoteFileName == null) || (mode == null))
-            throw new IllegalArgumentException("Null argument.");
-
-        if (mode.length() != 4)
-            throw new IllegalArgumentException("Invalid mode.");
-
-        for (int i = 0; i < mode.length(); i++)
-            if (Character.isDigit(mode.charAt(i)) == false)
-                throw new IllegalArgumentException("Invalid mode.");
-
-        String cmd = "scp -t ";
-        if(remoteTargetDirectory != null && remoteTargetDirectory.length()
> 0) {
-            cmd = cmd + "-d " + remoteTargetDirectory;
-        }
-
-        try {
-            channel = getExecChannel();
-            channel.setCommand(cmd);
-            sendBytes(channel, data, remoteFileName, mode);
-            //channel.disconnect();
-        } catch (JSchException e) {
-            if (channel != null)
-                channel.disconnect();
-            throw (IOException) new IOException("Error during SCP
transfer."+e.getMessage())
-                    .initCause(e);
-        }
-    }
-
-    /**
-     * @return
-     * @throws JSchException
-     */
-    private ChannelExec getExecChannel() throws JSchException {
-        ChannelExec channel;
-        channel = (ChannelExec)session.openChannel("exec");
-        return channel;
-    }
-
-    /**
-     * Copy a local file to a remote site, uses the specified mode when
-     * creating the file on the remote side.
-     * 
-     * @param localFile Path and name of local file.
-     * @param remoteTargetDir Remote target directory where the file has to
end up (optional)
-     * @param remoteTargetName file name to use on the target system 
-     * @param mode a four digit string (e.g., 0644, see "man chmod", "man
open")
-     * @throws IOException in case of network problems
-     * @throws RemoteScpException in case of problems on the target system
(connection ok)
-     */
-    public void put(String localFile, String remoteTargetDir, String
remoteTargetName, String mode) 
-    throws IOException,RemoteScpException {
-        ChannelExec channel = null;
-
-        if ((localFile == null) || (remoteTargetName == null) || (mode ==
null))
-            throw new IllegalArgumentException("Null argument.");
-
-        if (mode.length() != 4)
-            throw new IllegalArgumentException("Invalid mode.");
-
-        for (int i = 0; i < mode.length(); i++)
-            if (Character.isDigit(mode.charAt(i)) == false)
-                throw new IllegalArgumentException("Invalid mode.");
-           
-        String cmd = "scp -t ";
-        if(remoteTargetDir != null && remoteTargetDir.length() > 0) {
-            cmd = cmd + "-d " + remoteTargetDir;
-        }
-
-        try {
-            channel = getExecChannel();
-            channel.setCommand(cmd);
-            sendFile(channel, localFile, remoteTargetName, mode);
-            channel.disconnect();
-        } catch (JSchException e) {
-            if (channel != null)
-                channel.disconnect();
-            throw (IOException) new IOException("Error during SCP
transfer."+e.getMessage())
-                    .initCause(e);
-        }
-    }
-
-    /**
-     * Download a file from the remote server to a local file.
-     * @param remoteFile Path and name of the remote file.
-     * @param localTarget Local file where to store the data.
-     * @throws IOException in case of network problems
-     * @throws RemoteScpException in case of problems on the target system
(connection ok)
-     */
-    public void get(String remoteFile, String localTarget) throws
IOException,RemoteScpException {
-        File f = new File(localTarget);
-        FileOutputStream fop = new FileOutputStream(f);
-        get(remoteFile,fop);
-    }
-    
-    /**
-     * Download a file from the remote server into an OutputStream
-     * @param remoteFile Path and name of the remote file.
-     * @param localTarget OutputStream to store the data.
-     * @throws IOException in case of network problems
-     * @throws RemoteScpException in case of problems on the target system
(connection ok)
-     */
-    public void get(String remoteFile, OutputStream localTarget) throws
IOException,RemoteScpException {
-        ChannelExec channel = null;
-
-        if ((remoteFile == null) || (localTarget == null))
-            throw new IllegalArgumentException("Null argument.");
-
-        String cmd = "scp -p -f "+ remoteFile;
-
-        try {
-            channel = getExecChannel();
-            channel.setCommand(cmd);
-            receiveStream(channel, remoteFile, localTarget);
-            channel.disconnect();
-        } catch (JSchException e) {
-            if (channel != null)
-                channel.disconnect();
-            throw (IOException) new IOException("Error during SCP
transfer."+e.getMessage())
-                    .initCause(e);
-        }
-    }
-    
-    /**
-     * Initiates an SCP sequence but stops after getting fileinformation
header
-     * @param remoteFile to get information for
-     * @return the file information got
-     * @throws IOException in case of network problems
-     * @throws RemoteScpException in case of problems on the target system
(connection ok)
-     */
-    public FileInfo getFileinfo(String remoteFile) throws
IOException,RemoteScpException {
-        ChannelExec channel = null;
-        FileInfo fileInfo = null;
-        
-        if (remoteFile == null)
-            throw new IllegalArgumentException("Null argument.");
-
-        String cmd = "scp -p -f \""+remoteFile+"\"";
-
-        try {
-            channel = getExecChannel();
-            channel.setCommand(cmd);
-            fileInfo = receiveStream(channel, remoteFile, null);
-            channel.disconnect();
-        } catch (JSchException e) {
-            throw (IOException) new IOException("Error during SCP
transfer."+e.getMessage())
-            .initCause(e);
-        } finally {
-            if (channel != null)
-              channel.disconnect();
-        }
-        return fileInfo;
-    }
-}
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *
+ */
+package org.apache.ivy.plugins.repository.ssh;
+
+import java.io.BufferedInputStream;
+import java.io.BufferedOutputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+
+import com.jcraft.jsch.Channel;
+import com.jcraft.jsch.ChannelExec;
+import com.jcraft.jsch.JSchException;
+import com.jcraft.jsch.Session;
+
+/**
+ * This class is using the scp client to transfer data and information for
the
+ * repository. It is based on the SCPClient from the ganymed ssh library
from
+ * Christian Plattner. To minimize the dependency to the ssh library and
because
+ * I needed some additional functionality, I decided to copy'n'paste the
single
+ * class rather than to inherit or delegate it somehow. Nevertheless credit
+ * should go to the original author.
+ * 
+ */
+
+public class Scp {
+    Session session;
+
+    public class FileInfo {
+        private String filename;
+        private long length;
+        private long lastModified;
+        /**
+         * @param filename The filename to set.
+         */
+        public void setFilename(String filename) {
+            this.filename = filename;
+        }
+        /**
+         * @return Returns the filename.
+         */
+        public String getFilename() {
+            return filename;
+        }
+        /**
+         * @param length The length to set.
+         */
+        public void setLength(long length) {
+            this.length = length;
+        }
+        /**
+         * @return Returns the length.
+         */
+        public long getLength() {
+            return length;
+        }
+        /**
+         * @param lastModified The lastModified to set.
+         */
+        public void setLastModified(long lastModified) {
+            this.lastModified = lastModified;
+        }
+        /**
+         * @return Returns the lastModified.
+         */
+        public long getLastModified() {
+            return lastModified;
+        }
+    }
+
+    public Scp(Session session) {
+        if (session == null)
+            throw new IllegalArgumentException("Cannot accept null
argument!");
+        this.session = session;
+    }
+
+    private void readResponse(InputStream is) throws IOException,
RemoteScpException {
+        int c = is.read();
+
+        if (c == 0)
+            return;
+
+        if (c == -1)
+            throw new RemoteScpException("Remote scp terminated
unexpectedly.");
+
+        if ((c != 1) && (c != 2))
+            throw new RemoteScpException("Remote scp sent illegal error
code.");
+
+        if (c == 2)
+            throw new RemoteScpException("Remote scp terminated with
error.");
+
+        String err = receiveLine(is);
+        throw new RemoteScpException("Remote scp terminated with error (" +
err + ").");
+    }
+
+    private String receiveLine(InputStream is) throws
IOException,RemoteScpException {
+        StringBuffer sb = new StringBuffer(30);
+
+        while (true) {
+            /*
+             * This is a random limit - if your path names are longer, then
+             * adjust it
+             */
+
+            if (sb.length() > 8192)
+                throw new RemoteScpException("Remote scp sent a too long
line");
+
+            int c = is.read();
+
+            if (c < 0)
+                throw new RemoteScpException("Remote scp terminated
unexpectedly.");
+
+            if (c == '\n')
+                break;
+
+            sb.append((char) c);
+
+        }
+        return sb.toString();
+    }
+
+    private void parseCLine(String line, FileInfo fileInfo) throws
RemoteScpException {
+        /* Minimum line: "xxxx y z" ---> 8 chars */
+
+        long len;
+
+        if (line.length() < 8)
+            throw new RemoteScpException(
+                    "Malformed C line sent by remote SCP binary, line too
short.");
+
+        if ((line.charAt(4) != ' ') || (line.charAt(5) == ' '))
+            throw new RemoteScpException("Malformed C line sent by remote
SCP binary.");
+
+        int length_name_sep = line.indexOf(' ', 5);
+
+        if (length_name_sep == -1)
+            throw new RemoteScpException("Malformed C line sent by remote
SCP binary.");
+
+        String length_substring = line.substring(5, length_name_sep);
+        String name_substring = line.substring(length_name_sep + 1);
+
+        if ((length_substring.length() <= 0) || (name_substring.length() <=
0))
+            throw new RemoteScpException("Malformed C line sent by remote
SCP binary.");
+
+        if ((6 + length_substring.length() + name_substring.length()) !=
line
+                .length())
+            throw new RemoteScpException("Malformed C line sent by remote
SCP binary.");
+
+        try {
+            len = Long.parseLong(length_substring);
+        } catch (NumberFormatException e) {
+            throw new RemoteScpException(
+                    "Malformed C line sent by remote SCP binary, cannot
parse file length.");
+        }
+
+        if (len < 0)
+            throw new RemoteScpException(
+                    "Malformed C line sent by remote SCP binary, illegal
file length.");
+
+        fileInfo.setLength(len);
+        fileInfo.setFilename(name_substring);
+    }
+    
+    private void parseTLine(String line, FileInfo fileInfo) throws
RemoteScpException {
+        /* Minimum line: "0 0 0 0" ---> 8 chars */
+
+        long modtime;
+        long first_msec;
+        long atime;
+        long second_msec;
+
+        if (line.length() < 8)
+            throw new RemoteScpException(
+                    "Malformed T line sent by remote SCP binary, line too
short.");
+
+        int first_msec_begin = line.indexOf(" ")+1;
+        if(first_msec_begin == 0 || first_msec_begin >= line.length())
+            throw new RemoteScpException(
+            "Malformed T line sent by remote SCP binary, line not enough
data.");
+       
+        int atime_begin = line.indexOf(" ",first_msec_begin+1)+1;
+        if(atime_begin == 0 || atime_begin >= line.length())
+            throw new RemoteScpException(
+            "Malformed T line sent by remote SCP binary, line not enough
data.");
+        
+        int second_msec_begin = line.indexOf(" ",atime_begin+1)+1;
+        if(second_msec_begin == 0 || second_msec_begin >= line.length())
+            throw new RemoteScpException(
+            "Malformed T line sent by remote SCP binary, line not enough
data.");
+       
+        try {
+            modtime = Long.parseLong(line.substring(0,first_msec_begin-1));
+            first_msec =
Long.parseLong(line.substring(first_msec_begin,atime_begin-1));
+            atime =
Long.parseLong(line.substring(atime_begin,second_msec_begin-1));
+            second_msec =
Long.parseLong(line.substring(second_msec_begin));
+        } catch (NumberFormatException e) {
+            throw new RemoteScpException(
+                    "Malformed C line sent by remote SCP binary, cannot
parse file length.");
+        }
+
+        if (modtime < 0 || first_msec < 0 || atime < 0 || second_msec < 0)
+            throw new RemoteScpException(
+                    "Malformed C line sent by remote SCP binary, illegal
file length.");
+
+        fileInfo.setLastModified(modtime);
+    }
+    
+    private void sendBytes(Channel channel, byte[] data, String fileName,
+            String mode) throws IOException,RemoteScpException {
+        OutputStream os = channel.getOutputStream();
+        InputStream is = new BufferedInputStream(channel.getInputStream(),
512);
+
+        try {
+            if(channel.isConnected())
+                channel.start();
+            else
+                channel.connect();
+        } catch (JSchException e1) {
+            throw (IOException) new IOException("Channel connection
problems").initCause(e1);
+        }
+       
+        readResponse(is);
+
+        String cline = "C" + mode + " " + data.length + " " + fileName +
"\n";
+
+        os.write(cline.getBytes());
+        os.flush();
+
+        readResponse(is);
+
+        os.write(data, 0, data.length);
+        os.write(0);
+        os.flush();
+
+        readResponse(is);
+
+        os.write("E\n".getBytes());
+        os.flush();
+    }
+
+    private void sendFile(Channel channel, String localFile, String
remoteName, String mode)
+            throws IOException, RemoteScpException {
+        byte[] buffer = new byte[8192];
+
+        OutputStream os = new
BufferedOutputStream(channel.getOutputStream(), 40000);
+        InputStream is = new BufferedInputStream(channel.getInputStream(),
512);
+
+        try {
+            if(channel.isConnected())
+                channel.start();
+            else
+                channel.connect();
+        } catch (JSchException e1) {
+            throw (IOException) new IOException("Channel connection
problems").initCause(e1);
+        }
+
+        readResponse(is);
+
+        File f = new File(localFile);
+        long remain = f.length();
+
+        String cline = "C" + mode + " " + remain + " " + remoteName + "\n";
+
+        os.write(cline.getBytes());
+        os.flush();
+
+        readResponse(is);
+
+        FileInputStream fis = null;
+
+        try {
+            fis = new FileInputStream(f);
+
+            while (remain > 0) {
+                int trans;
+                if (remain > buffer.length)
+                    trans = buffer.length;
+                else
+                    trans = (int) remain;
+
+                if (fis.read(buffer, 0, trans) != trans)
+                    throw new IOException(
+                            "Cannot read enough from local file "
+                                    + localFile);
+
+                os.write(buffer, 0, trans);
+
+                remain -= trans;
+            }
+
+            fis.close();
+        } catch (IOException e) {
+            if (fis != null) {
+                fis.close();
+            }
+            throw (e);
+        }
+
+        os.write(0);
+        os.flush();
+
+        readResponse(is);
+
+        os.write("E\n".getBytes());
+        os.flush();
+    }
+
+    /**
+     * Receive a file via scp and store it in a stream
+     * @param channel ssh channel to use
+     * @param file to receive from remote
+     * @param target to store file into (if null, get only file info)
+     * @return file information of the file we received
+     * @throws IOException in case of network or protocol trouble
+     * @throws RemoteScpException in case of problems on the target system
(connection is fine)
+     */
+    private FileInfo receiveStream(Channel channel, String file,
OutputStream targetStream) 
+      throws IOException,RemoteScpException {
+        byte[] buffer = new byte[8192];
+
+        OutputStream os = channel.getOutputStream();
+        InputStream is = channel.getInputStream();
+        try {
+            if(channel.isConnected())
+                channel.start();
+            else
+                channel.connect();
+        } catch (JSchException e1) {
+            throw (IOException) new IOException("Channel connection
problems").initCause(e1);
+        }
+        os.write(0x0);
+        os.flush();
+
+        FileInfo fileInfo = new FileInfo();
+
+        while (true) {
+            int c = is.read();
+            if (c < 0)
+                throw new RemoteScpException("Remote scp terminated
unexpectedly.");
+
+            String line = receiveLine(is);
+
+            if (c == 'T') {
+                parseTLine(line,fileInfo);
+                os.write(0x0);
+                os.flush();
+                continue;
+            }
+            if ((c == 1) || (c == 2))
+                throw new RemoteScpException("Remote SCP error: " + line);
+
+            if (c == 'C') {
+                parseCLine(line,fileInfo);
+                break;
+            }
+            throw new RemoteScpException("Remote SCP error: " + ((char) c)
+ line);
+        }
+        if(targetStream != null) {
+            
+            os.write(0x0);
+            os.flush();
+    
+            try {
+                long remain = fileInfo.getLength();
+    
+                while (remain > 0) {
+                    int trans;
+                    if (remain > buffer.length)
+                        trans = buffer.length;
+                    else
+                        trans = (int) remain;
+    
+                    int this_time_received = is.read(buffer, 0, trans);
+    
+                    if (this_time_received < 0) {
+                        throw new IOException(
+                                "Remote scp terminated connection
unexpectedly");
+                    }
+    
+                    targetStream.write(buffer, 0, this_time_received);
+    
+                    remain -= this_time_received;
+                }
+    
+                targetStream.close();
+            } catch (IOException e) {
+                if (targetStream != null)
+                    targetStream.close();
+    
+                throw (e);
+            }
+
+            readResponse(is);
+    
+            os.write(0x0);
+            os.flush();
+        }
+        return fileInfo;
+    }
+
+    /**
+     * Copy a local file to a remote directory, uses mode 0600 when
creating the
+     * file on the remote side.
+     * 
+     * @param localFile Path and name of local file.
+     * @param remoteTargetDirectory Remote target directory where the file
has to end up (optional)
+     * @param remoteName target filename to use
+     * @throws IOException in case of network problems
+     * @throws RemoteScpException in case of problems on the target system
(connection ok)
+     */
+    public void put(String localFile, String remoteTargetDirectory, String
remoteName)
+    throws IOException, RemoteScpException {
+        put(localFile, remoteTargetDirectory, remoteName, "0600");
+    }
+
+    /**
+     * Create a remote file and copy the contents of the passed byte array
into
+     * it. Uses mode 0600 for creating the remote file.
+     * 
+     * @param data the data to be copied into the remote file.
+     * @param remoteFileName The name of the file which will be created in
the remote target directory.
+     * @param remoteTargetDirectory Remote target directory where the file
has to end up (optional)
+     * @throws IOException in case of network problems
+     * @throws RemoteScpException in case of problems on the target system
(connection ok)
+     */
+
+    public void put(byte[] data, String remoteFileName, String
remoteTargetDirectory) 
+    throws IOException,RemoteScpException {
+        put(data, remoteFileName, remoteTargetDirectory, "0600");
+    }
+
+    /**
+     * Create a remote file and copy the contents of the passed byte array
into
+     * it. The method use the specified mode when creating the file on the
+     * remote side.
+     * 
+     * @param data the data to be copied into the remote file.
+     * @param remoteFileName The name of the file which will be created in
the remote target directory.
+     * @param remoteTargetDirectory Remote target directory where the file
has to end up (optional)
+     * @param mode a four digit string (e.g., 0644, see "man chmod", "man
open")
+     * @throws IOException in case of network problems
+     * @throws RemoteScpException in case of problems on the target system
(connection ok)
+     */
+    public void put(byte[] data, String remoteFileName, String
remoteTargetDirectory, String mode) 
+    throws IOException,RemoteScpException {
+        ChannelExec channel = null;
+
+        if ((remoteFileName == null) || (mode == null))
+            throw new IllegalArgumentException("Null argument.");
+
+        if (mode.length() != 4)
+            throw new IllegalArgumentException("Invalid mode.");
+
+        for (int i = 0; i < mode.length(); i++)
+            if (Character.isDigit(mode.charAt(i)) == false)
+                throw new IllegalArgumentException("Invalid mode.");
+
+        String cmd = "scp -t ";
+        if(remoteTargetDirectory != null && remoteTargetDirectory.length()
> 0) {
+            cmd = cmd + "-d " + remoteTargetDirectory;
+        }
+
+        try {
+            channel = getExecChannel();
+            channel.setCommand(cmd);
+            sendBytes(channel, data, remoteFileName, mode);
+            //channel.disconnect();
+        } catch (JSchException e) {
+            if (channel != null)
+                channel.disconnect();
+            throw (IOException) new IOException("Error during SCP
transfer."+e.getMessage())
+                    .initCause(e);
+        }
+    }
+
+    /**
+     * @return
+     * @throws JSchException
+     */
+    private ChannelExec getExecChannel() throws JSchException {
+        ChannelExec channel;
+        channel = (ChannelExec)session.openChannel("exec");
+        return channel;
+    }
+
+    /**
+     * Copy a local file to a remote site, uses the specified mode when
+     * creating the file on the remote side.
+     * 
+     * @param localFile Path and name of local file.
+     * @param remoteTargetDir Remote target directory where the file has to
end up (optional)
+     * @param remoteTargetName file name to use on the target system 
+     * @param mode a four digit string (e.g., 0644, see "man chmod", "man
open")
+     * @throws IOException in case of network problems
+     * @throws RemoteScpException in case of problems on the target system
(connection ok)
+     */
+    public void put(String localFile, String remoteTargetDir, String
remoteTargetName, String mode) 
+    throws IOException,RemoteScpException {
+        ChannelExec channel = null;
+
+        if ((localFile == null) || (remoteTargetName == null) || (mode ==
null))
+            throw new IllegalArgumentException("Null argument.");
+
+        if (mode.length() != 4)
+            throw new IllegalArgumentException("Invalid mode.");
+
+        for (int i = 0; i < mode.length(); i++)
+            if (Character.isDigit(mode.charAt(i)) == false)
+                throw new IllegalArgumentException("Invalid mode.");
+           
+        String cmd = "scp -t ";
+        if(remoteTargetDir != null && remoteTargetDir.length() > 0) {
+            cmd = cmd + "-d " + remoteTargetDir;
+        }
+
+        try {
+            channel = getExecChannel();
+            channel.setCommand(cmd);
+            sendFile(channel, localFile, remoteTargetName, mode);
+            channel.disconnect();
+        } catch (JSchException e) {
+            if (channel != null)
+                channel.disconnect();
+            throw (IOException) new IOException("Error during SCP
transfer."+e.getMessage())
+                    .initCause(e);
+        }
+    }
+
+    /**
+     * Download a file from the remote server to a local file.
+     * @param remoteFile Path and name of the remote file.
+     * @param localTarget Local file where to store the data.
+     * @throws IOException in case of network problems
+     * @throws RemoteScpException in case of problems on the target system
(connection ok)
+     */
+    public void get(String remoteFile, String localTarget) throws
IOException,RemoteScpException {
+        File f = new File(localTarget);
+        FileOutputStream fop = new FileOutputStream(f);
+        get(remoteFile,fop);
+    }
+    
+    /**
+     * Download a file from the remote server into an OutputStream
+     * @param remoteFile Path and name of the remote file.
+     * @param localTarget OutputStream to store the data.
+     * @throws IOException in case of network problems
+     * @throws RemoteScpException in case of problems on the target system
(connection ok)
+     */
+    public void get(String remoteFile, OutputStream localTarget) throws
IOException,RemoteScpException {
+        ChannelExec channel = null;
+
+        if ((remoteFile == null) || (localTarget == null))
+            throw new IllegalArgumentException("Null argument.");
+
+        String cmd = "scp -p -f "+ remoteFile;
+
+        try {
+            channel = getExecChannel();
+            channel.setCommand(cmd);
+            receiveStream(channel, remoteFile, localTarget);
+            channel.disconnect();
+        } catch (JSchException e) {
+            if (channel != null)
+                channel.disconnect();
+            throw (IOException) new IOException("Error during SCP
transfer."+e.getMessage())
+                    .initCause(e);
+        }
+    }
+    
+    /**
+     * Initiates an SCP sequence but stops after getting fileinformation
header
+     * @param remoteFile to get information for
+     * @return the file information got
+     * @throws IOException in case of network problems
+     * @throws RemoteScpException in case of problems on the target system
(connection ok)
+     */
+    public FileInfo getFileinfo(String remoteFile) throws
IOException,RemoteScpException {
+        ChannelExec channel = null;
+        FileInfo fileInfo = null;
+        
+        if (remoteFile == null)
+            throw new IllegalArgumentException("Null argument.");
+
+        String cmd = "scp -p -f \""+remoteFile+"\"";
+
+        try {
+            channel = getExecChannel();
+            channel.setCommand(cmd);
+            fileInfo = receiveStream(channel, remoteFile, null);
+            channel.disconnect();
+        } catch (JSchException e) {
+            throw (IOException) new IOException("Error during SCP
transfer."+e.getMessage())
+            .initCause(e);
+        } finally {
+            if (channel != null)
+              channel.disconnect();
+        }
+        return fileInfo;
+    }
+}

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vfs/IvyW
ebdavClientFactory.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/repository/vfs/IvyWebdavClientFactory.java?view=diff&rev=538245&r1
=538244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vfs/IvyW
ebdavClientFactory.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vfs/IvyW
ebdavClientFactory.java Tue May 15 09:29:33 2007
@@ -35,9 +35,6 @@
  * 
  * Create a HttpClient instance
  * 
- * @author <a href="mailto:imario@apache.org">Mario Ivankovits</a>
- * @author Maarten Coene
- * @version $Revision: 330479 $ $Date: 2005-11-03 07:19:24 +0100 (Do, 03
Nov 2005) $
  */
 class IvyWebdavClientFactory {
 

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vfs/IvyW
ebdavConnectionManager.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/repository/vfs/IvyWebdavConnectionManager.java?view=diff&rev=53824
5&r1=538244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vfs/IvyW
ebdavConnectionManager.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vfs/IvyW
ebdavConnectionManager.java Tue May 15 09:29:33 2007
@@ -36,13 +36,6 @@
  * <p/>
  * imario@apache.org: Keep connection in ThreadLocal.
  *
- * @author <a href="mailto:imario@apache.org">Mario Ivankovits</a>
- * @author <a href="mailto:becke@u.washington.edu">Michael Becke</a>
- * @author Eric Johnson
- * @author <a href="mailto:mbowler@GargoyleSoftware.com">Mike Bowler</a>
- * @author <a href="mailto:oleg@ural.ru">Oleg Kalnichevski</a>
- * @author Laura Werner
- * @author Maarten Coene
  */
 class IvyWebdavConnectionManager implements HttpConnectionManager {
 

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vfs/IvyW
ebdavFileProvider.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/repository/vfs/IvyWebdavFileProvider.java?view=diff&rev=538245&r1=
538244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vfs/IvyW
ebdavFileProvider.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vfs/IvyW
ebdavFileProvider.java Tue May 15 09:29:33 2007
@@ -31,9 +31,6 @@
  * 
  * A provider for WebDAV.
  *
- * @author <a href="mailto:adammurdoch@apache.org">Adam Murdoch</a>
- * @author Maarten Coene
- * @version $Revision: 417178 $ $Date: 2006-06-26 05:31:41 -0700 (Mon, 26
Jun 2006) $
  */
 public class IvyWebdavFileProvider extends WebdavFileProvider {
 

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vfs/IvyW
ebdavFileSystem.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/repository/vfs/IvyWebdavFileSystem.java?view=diff&rev=538245&r1=53
8244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vfs/IvyW
ebdavFileSystem.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vfs/IvyW
ebdavFileSystem.java Tue May 15 09:29:33 2007
@@ -26,7 +26,6 @@
 /**
  * This class extends from WebDavFileSystem because it doesn't provide an
accessible constructor.
  * 
- * @author Maarten Coene
  */
 class IvyWebdavFileSystem extends WebDavFileSystem {
 

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vfs/VfsR
epository.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/repository/vfs/VfsRepository.java?view=diff&rev=538245&r1=538244&r
2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vfs/VfsR
epository.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vfs/VfsR
epository.java Tue May 15 09:29:33 2007
@@ -44,10 +44,6 @@
 /**
  * Implementation of a VFS repository
  * 
- * @author glen
- * @author Matt Inger
- * @author Stephen Nesbitt
- * 
  */
 public class VfsRepository extends AbstractRepository {
 	/**

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vfs/VfsR
esource.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/repository/vfs/VfsResource.java?view=diff&rev=538245&r1=538244&r2=
538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vfs/VfsR
esource.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vfs/VfsR
esource.java Tue May 15 09:29:33 2007
@@ -35,10 +35,6 @@
 /**
  * VFS implementation of the Resource interface
  * 
- * @author glen
- * @author Matt Inger
- * @author Stephen Nesbitt
- *
  */
 public class VfsResource implements Resource {	
 	private String _vfsURI;

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vsftp/Vs
ftpRepository.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/repository/vsftp/VsftpRepository.java?view=diff&rev=538245&r1=5382
44&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vsftp/Vs
ftpRepository.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/vsftp/Vs
ftpRepository.java Tue May 15 09:29:33 2007
@@ -52,7 +52,6 @@
  * 
  * Tested with SecureCRT 5.0.5
  * 
- * @author Xavier Hanin
  *
  */
 public class VsftpRepository extends AbstractRepository {

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/AbstractRe
sourceResolver.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/resolver/AbstractResourceResolver.java?view=diff&rev=538245&r1=538
244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/AbstractRe
sourceResolver.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/AbstractRe
sourceResolver.java Tue May 15 09:29:33 2007
@@ -45,7 +45,6 @@
 
 
 /**
- * @author Xavier Hanin
  *
  */
 public abstract class AbstractResourceResolver extends BasicResolver {

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/BasicResol
ver.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/resolver/BasicResolver.java?view=diff&rev=538245&r1=538244&r2=5382
45
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/BasicResol
ver.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/BasicResol
ver.java Tue May 15 09:29:33 2007
@@ -76,7 +76,6 @@
 
 
 /**
- * @author Xavier Hanin
  *
  */
 public abstract class BasicResolver extends AbstractResolver {

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/ChainResol
ver.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/resolver/ChainResolver.java?view=diff&rev=538245&r1=538244&r2=5382
45
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/ChainResol
ver.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/ChainResol
ver.java Tue May 15 09:29:33 2007
@@ -42,7 +42,6 @@
 
 
 /**
- * @author Hanin
  *
  */
 public class ChainResolver extends AbstractResolver {

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/Dependency
Resolver.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/resolver/DependencyResolver.java?view=diff&rev=538245&r1=538244&r2
=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/Dependency
Resolver.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/Dependency
Resolver.java Tue May 15 09:29:33 2007
@@ -34,7 +34,6 @@
 
 
 /**
- * @author x.hanin
  *
  */
 public interface DependencyResolver {

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/FileSystem
Resolver.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/resolver/FileSystemResolver.java?view=diff&rev=538245&r1=538244&r2
=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/FileSystem
Resolver.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/FileSystem
Resolver.java Tue May 15 09:29:33 2007
@@ -20,7 +20,6 @@
 import org.apache.ivy.plugins.repository.file.FileRepository;
 
 /**
- * @author Xavier Hanin
  */
 public class FileSystemResolver extends RepositoryResolver {
     public FileSystemResolver() {

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/Repository
Resolver.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/resolver/RepositoryResolver.java?view=diff&rev=538245&r1=538244&r2
=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/Repository
Resolver.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/Repository
Resolver.java Tue May 15 09:29:33 2007
@@ -51,7 +51,6 @@
 
 
 /**
- * @author Xavier Hanin
  *
  */
 public class RepositoryResolver extends AbstractResourceResolver {

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/VfsResolve
r.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/resolver/VfsResolver.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/VfsResolve
r.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/VfsResolve
r.java Tue May 15 09:29:33 2007
@@ -24,7 +24,6 @@
 import org.apache.ivy.plugins.repository.vfs.VfsRepository;
 
 /**
- * @author S. Nesbitt
  *
  */
 public class VfsResolver extends RepositoryResolver {

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/trigger/AbstractTri
gger.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/trigger/AbstractTrigger.java?view=diff&rev=538245&r1=538244&r2=538
245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/trigger/AbstractTri
gger.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/trigger/AbstractTri
gger.java Tue May 15 09:29:33 2007
@@ -34,7 +34,6 @@
  * 
  * 
  * @since 1.4
- * @author Xavier Hanin
  *
  */
 public abstract class AbstractTrigger implements Trigger {

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/version/Match.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/version/Match.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/version/Match.java
(original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/version/Match.java
Tue May 15 09:29:33 2007
@@ -33,7 +33,6 @@
 
 /**
  * 
- * @author Maarten Coene
  */
 public class Match {
 	private String _revision;

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/version/PatternVers
ionMatcher.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/version/PatternVersionMatcher.java?view=diff&rev=538245&r1=538244&
r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/version/PatternVers
ionMatcher.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/version/PatternVers
ionMatcher.java Tue May 15 09:29:33 2007
@@ -29,7 +29,6 @@
 
 /**
  * 
- * @author Maarten Coene
  */
 public class PatternVersionMatcher extends AbstractVersionMatcher {
 

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/version/VersionMatc
her.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/version/VersionMatcher.java?view=diff&rev=538245&r1=538244&r2=5382
45
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/version/VersionMatc
her.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/version/VersionMatc
her.java Tue May 15 09:29:33 2007
@@ -38,7 +38,6 @@
  * Therefore if a version matcher uses only module descriptors to accept a
revision or not it should always return true
  * to needModuleDescriptor(ModuleRevisionId askedMrid, ModuleRevisionId
foundMrid) and accept(ModuleRevisionId askedMrid, ModuleRevisionId
foundMrid).
  * 
- * @author Xavier Hanin
  */
 public interface VersionMatcher {
     /**

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/version/VersionRang
eMatcher.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/plugins/version/VersionRangeMatcher.java?view=diff&rev=538245&r1=538244&r2
=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/version/VersionRang
eMatcher.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/version/VersionRang
eMatcher.java Tue May 15 09:29:33 2007
@@ -45,7 +45,6 @@
  * Note that it can't work with latest time strategy, cause no time is
known for the limits of the range.
  * Therefore only purely revision based LatestStrategy can be used.  
  * 
- * @author xavier hanin
  *
  */
 public class VersionRangeMatcher   extends AbstractVersionMatcher {

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/ConfigurationUtils.jav
a
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/util/ConfigurationUtils.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/ConfigurationUtils.jav
a (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/ConfigurationUtils.jav
a Tue May 15 09:29:33 2007
@@ -28,7 +28,6 @@
 /**
  * Class containing several utility methods for working with
configurations.
  * 
- * @author Maarten Coene
  *
  */
 public class ConfigurationUtils {

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/Configurator.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/util/Configurator.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
--- incubator/ivy/core/trunk/src/java/org/apache/ivy/util/Configurator.java
(original)
+++ incubator/ivy/core/trunk/src/java/org/apache/ivy/util/Configurator.java
Tue May 15 09:29:33 2007
@@ -52,7 +52,6 @@
  * conf.endCreateChild(); // xinterface
  * conf.endCreateChild(); // buildpath
  * 
- * @author x.hanin
  *
  */
 public class Configurator {

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/Credentials.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/util/Credentials.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
--- incubator/ivy/core/trunk/src/java/org/apache/ivy/util/Credentials.java
(original)
+++ incubator/ivy/core/trunk/src/java/org/apache/ivy/util/Credentials.java
Tue May 15 09:29:33 2007
@@ -19,8 +19,6 @@
 
 /**
  * 
- * @author Christian Riege
- * @author Xavier Hanin
  */
 public class Credentials {
 	private String _realm;

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/EncrytedProperties.jav
a
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/util/EncrytedProperties.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/EncrytedProperties.jav
a (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/EncrytedProperties.jav
a Tue May 15 09:29:33 2007
@@ -33,7 +33,6 @@
  * 
  * It this thus recommended to void using them, use setProperty and
getProperty instead.
  * 
- * @author Xavier Hanin
  *
  */
 public class EncrytedProperties extends Properties {

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/FileUtil.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/util/FileUtil.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
--- incubator/ivy/core/trunk/src/java/org/apache/ivy/util/FileUtil.java
(original)
+++ incubator/ivy/core/trunk/src/java/org/apache/ivy/util/FileUtil.java Tue
May 15 09:29:33 2007
@@ -38,7 +38,6 @@
 
 
 /**
- * @author x.hanin
  *
  */
 public class FileUtil {

Modified: incubator/ivy/core/trunk/src/java/org/apache/ivy/util/Message.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/util/Message.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
--- incubator/ivy/core/trunk/src/java/org/apache/ivy/util/Message.java
(original)
+++ incubator/ivy/core/trunk/src/java/org/apache/ivy/util/Message.java Tue
May 15 09:29:33 2007
@@ -30,8 +30,6 @@
 
 /**
  * 
- * @author Xavier Hanin
- * @author Gilles Scokart
  */
 public class Message {
     // messages level copied from ant project, to avoid dependency on ant

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/StringUtils.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/util/StringUtils.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
--- incubator/ivy/core/trunk/src/java/org/apache/ivy/util/StringUtils.java
(original)
+++ incubator/ivy/core/trunk/src/java/org/apache/ivy/util/StringUtils.java
Tue May 15 09:29:33 2007
@@ -23,7 +23,6 @@
  * Usually use commons lang but here we do not want to have such 
  * a dependency for only one feature
  * 
- * @author X. Hanin
  *
  */
 public class StringUtils {

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/ApacheURLLister.ja
va
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/util/url/ApacheURLLister.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/ApacheURLLister.ja
va (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/ApacheURLLister.ja
va Tue May 15 09:29:33 2007
@@ -36,9 +36,6 @@
  * tested with Apache 1.3.33 server listing, as the one used at ibiblio,
and
  * with Apache 2.0.53 server listing, as the one on mirrors.sunsite.dk.
  *
- * @author Glen Marchesani
- * @author Xavier Hanin
- * @author <a href="mailto:johnmshields@yahoo.com">John M. Shields</a>
  */
 public class ApacheURLLister {
     //~ Static variables/initializers
------------------------------------------

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/BasicURLHandler.ja
va
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/util/url/BasicURLHandler.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/BasicURLHandler.ja
va (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/BasicURLHandler.ja
va Tue May 15 09:29:33 2007
@@ -33,8 +33,6 @@
 
 
 /**
- * @author Xavier Hanin
- * @author Christian Riege
  *
  */
 public class BasicURLHandler extends AbstractURLHandler {

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/CredentialsStore.j
ava
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/util/url/CredentialsStore.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/CredentialsStore.j
ava (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/CredentialsStore.j
ava Tue May 15 09:29:33 2007
@@ -26,8 +26,6 @@
 
 /**
  * 
- * @author Christian Riege
- * @author Xavier Hanin
  */
 public class CredentialsStore {
     /**

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/HttpClientHandler.
java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/util/url/HttpClientHandler.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/HttpClientHandler.
java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/HttpClientHandler.
java Tue May 15 09:29:33 2007
@@ -44,7 +44,6 @@
 
 
 /**
- * @author Xavier Hanin
  *
  */
 public class HttpClientHandler extends AbstractURLHandler {

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/IvyAuthenticator.j
ava
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/util/url/IvyAuthenticator.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/IvyAuthenticator.j
ava (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/IvyAuthenticator.j
ava Tue May 15 09:29:33 2007
@@ -1,60 +1,58 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
- *  this work for additional information regarding copyright ownership.
- *  The ASF licenses this file to You under the Apache License, Version 2.0
- *  (the "License"); you may not use this file except in compliance with
- *  the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- *
- */
-package org.apache.ivy.util.url;
-
-import java.net.Authenticator;
-import java.net.PasswordAuthentication;
-
-import org.apache.ivy.util.Credentials;
-import org.apache.ivy.util.Message;
-
-
-/**
- * 
- * @author Christian Riege
- * @author Xavier Hanin
- */
-public final class IvyAuthenticator extends Authenticator {
-
-
-    /**
-     * The sole instance.
-     */
-    public final static IvyAuthenticator INSTANCE = new IvyAuthenticator();
-
-    /**
-     * Private c'tor to prevent instantiation. Also installs this as the
default
-     * Authenticator to use by the JVM.
-     */
-    private IvyAuthenticator() {
-        // Install this as the default Authenticator object.
-        Authenticator.setDefault(this);
-    }
-
-    // API
******************************************************************
-
-    // Overriding Authenticator
*********************************************
-
-    protected PasswordAuthentication getPasswordAuthentication() {
-    	Credentials c =
CredentialsStore.INSTANCE.getCredentials(getRequestingPrompt(),
getRequestingHost());
-        Message.debug("authentication:
k='"+Credentials.buildKey(getRequestingPrompt(), getRequestingHost())+"'
c='" + c + "'");
-        return c != null ? new PasswordAuthentication(c.getUserName(),
c.getPasswd().toCharArray()) : null;
-    }
-
-
-}
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *
+ */
+package org.apache.ivy.util.url;
+
+import java.net.Authenticator;
+import java.net.PasswordAuthentication;
+
+import org.apache.ivy.util.Credentials;
+import org.apache.ivy.util.Message;
+
+
+/**
+ * 
+ */
+public final class IvyAuthenticator extends Authenticator {
+
+
+    /**
+     * The sole instance.
+     */
+    public final static IvyAuthenticator INSTANCE = new IvyAuthenticator();
+
+    /**
+     * Private c'tor to prevent instantiation. Also installs this as the
default
+     * Authenticator to use by the JVM.
+     */
+    private IvyAuthenticator() {
+        // Install this as the default Authenticator object.
+        Authenticator.setDefault(this);
+    }
+
+    // API
******************************************************************
+
+    // Overriding Authenticator
*********************************************
+
+    protected PasswordAuthentication getPasswordAuthentication() {
+    	Credentials c =
CredentialsStore.INSTANCE.getCredentials(getRequestingPrompt(),
getRequestingHost());
+        Message.debug("authentication:
k='"+Credentials.buildKey(getRequestingPrompt(), getRequestingHost())+"'
c='" + c + "'");
+        return c != null ? new PasswordAuthentication(c.getUserName(),
c.getPasswd().toCharArray()) : null;
+    }
+
+
+}

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/URLHandler.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/util/url/URLHandler.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/URLHandler.java
(original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/URLHandler.java
Tue May 15 09:29:33 2007
@@ -29,7 +29,6 @@
  * This interface is responsible for handling some URL manipulation
  * (stream opening, downloading, check reachability, ...). 
  * 
- * @author Xavier Hanin
  *
  */
 public interface URLHandler {

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/URLHandlerDispatch
er.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/util/url/URLHandlerDispatcher.java?view=diff&rev=538245&r1=538244&r2=53824
5
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/URLHandlerDispatch
er.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/URLHandlerDispatch
er.java Tue May 15 09:29:33 2007
@@ -30,7 +30,6 @@
 /**
  * This class is used to dispatch downloading requests
  * 
- * @author Xavier Hanin
  *
  */
 public class URLHandlerDispatcher implements URLHandler {

Modified:
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/URLHandlerRegistry
.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/iv
y/util/url/URLHandlerRegistry.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/URLHandlerRegistry
.java (original)
+++
incubator/ivy/core/trunk/src/java/org/apache/ivy/util/url/URLHandlerRegistry
.java Tue May 15 09:29:33 2007
@@ -20,7 +20,6 @@
 import org.apache.ivy.util.Message;
 
 /**
- * @author Xavier Hanin
  *
  */
 public class URLHandlerRegistry {

Modified:
incubator/ivy/core/trunk/test/java/org/apache/ivy/core/resolve/ResolveTest.j
ava
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/test/java/org/apache/i
vy/core/resolve/ResolveTest.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/test/java/org/apache/ivy/core/resolve/ResolveTest.j
ava (original)
+++
incubator/ivy/core/trunk/test/java/org/apache/ivy/core/resolve/ResolveTest.j
ava Tue May 15 09:29:33 2007
@@ -60,7 +60,6 @@
 
 
 /**
- * @author Xavier Hanin
  *
  */
 public class ResolveTest extends TestCase {

Modified:
incubator/ivy/core/trunk/test/java/org/apache/ivy/core/sort/SortTest.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/test/java/org/apache/i
vy/core/sort/SortTest.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/test/java/org/apache/ivy/core/sort/SortTest.java
(original)
+++
incubator/ivy/core/trunk/test/java/org/apache/ivy/core/sort/SortTest.java
Tue May 15 09:29:33 2007
@@ -30,8 +30,6 @@
 import org.apache.ivy.core.module.id.ModuleRevisionId;
 
 /**
- * @author Xavier Hanin
- * @author baumkar
  */
 public class SortTest extends TestCase {
     

Modified:
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/conflict/RegexpCon
flictManagerTest.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/test/java/org/apache/i
vy/plugins/conflict/RegexpConflictManagerTest.java?view=diff&rev=538245&r1=5
38244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/conflict/RegexpCon
flictManagerTest.java (original)
+++
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/conflict/RegexpCon
flictManagerTest.java Tue May 15 09:29:33 2007
@@ -17,10 +17,6 @@
  */
 package org.apache.ivy.plugins.conflict;
 
-/**
- * @author Anders janmyr
- */
-
 import java.io.File;
 
 import junit.framework.TestCase;

Modified:
incubator/ivy/core/trunk/test/java/org/apache/ivy/util/ConfiguratorTest.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/test/java/org/apache/i
vy/util/ConfiguratorTest.java?view=diff&rev=538245&r1=538244&r2=538245
============================================================================
==
---
incubator/ivy/core/trunk/test/java/org/apache/ivy/util/ConfiguratorTest.java
(original)
+++
incubator/ivy/core/trunk/test/java/org/apache/ivy/util/ConfiguratorTest.java
Tue May 15 09:29:33 2007
@@ -23,7 +23,6 @@
 import junit.framework.TestCase;
 
 /**
- * @author x.hanin
  *
  */
 public class ConfiguratorTest extends TestCase {

Modified:
incubator/ivy/core/trunk/test/java/org/apache/ivy/util/url/ApacheURLListerTe
st.java
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/test/java/org/apache/i
vy/util/url/ApacheURLListerTest.java?view=diff&rev=538245&r1=538244&r2=53824
5
============================================================================
==
---
incubator/ivy/core/trunk/test/java/org/apache/ivy/util/url/ApacheURLListerTe
st.java (original)
+++
incubator/ivy/core/trunk/test/java/org/apache/ivy/util/url/ApacheURLListerTe
st.java Tue May 15 09:29:33 2007
@@ -27,8 +27,6 @@
 /**
  * Tests {@link ApacheURLLister}.
  *
- * @author Xavier Hanin
- * @author <a href="johnmshields@yahoo.com">John M. Shields</a>
  */
 public class ApacheURLListerTest extends TestCase {