]> source.dussan.org Git - jgit.git/commitdiff
Make jgit diff obey core.autocrlf 94/7294/3
authorRobin Rosenberg <robin.rosenberg@dewire.com>
Sun, 19 Aug 2012 18:14:45 +0000 (20:14 +0200)
committerGerrit Code Review @ Eclipse.org <gerrit@eclipse.org>
Thu, 27 Dec 2012 17:22:14 +0000 (12:22 -0500)
Change-Id: I0a756943d95ee20f189c154b27cd2972a116f550

org.eclipse.jgit/src/org/eclipse/jgit/diff/ContentSource.java

index 39d2ba4cb8b2c40bf959593c2653e1077bc2c265..3c780e7d8890258035d5201f436311fa473c12c2 100644 (file)
@@ -44,8 +44,6 @@
 package org.eclipse.jgit.diff;
 
 import java.io.BufferedInputStream;
-import java.io.File;
-import java.io.FileInputStream;
 import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.io.InputStream;
@@ -93,10 +91,6 @@ public abstract class ContentSource {
         * @return a content source wrapping the iterator.
         */
        public static ContentSource create(WorkingTreeIterator iterator) {
-               if (iterator instanceof FileTreeIterator) {
-                       FileTreeIterator i = (FileTreeIterator) iterator;
-                       return new FileSource(i.getDirectory());
-               }
                return new WorkingTreeSource(iterator);
        }
 
@@ -158,6 +152,7 @@ public abstract class ContentSource {
 
                WorkingTreeSource(WorkingTreeIterator iterator) {
                        this.tw = new TreeWalk((ObjectReader) null);
+                       this.tw.setRecursive(true);
                        this.iterator = iterator;
                }
 
@@ -218,57 +213,6 @@ public abstract class ContentSource {
                }
        }
 
-       private static class FileSource extends ContentSource {
-               private final File root;
-
-               FileSource(File root) {
-                       this.root = root;
-               }
-
-               @Override
-               public long size(String path, ObjectId id) throws IOException {
-                       return new File(root, path).length();
-               }
-
-               @Override
-               public ObjectLoader open(String path, ObjectId id) throws IOException {
-                       final File p = new File(root, path);
-                       if (!p.isFile())
-                               throw new FileNotFoundException(path);
-                       return new ObjectLoader() {
-                               @Override
-                               public long getSize() {
-                                       return p.length();
-                               }
-
-                               @Override
-                               public int getType() {
-                                       return Constants.OBJ_BLOB;
-                               }
-
-                               @Override
-                               public ObjectStream openStream() throws MissingObjectException,
-                                               IOException {
-                                       final FileInputStream in = new FileInputStream(p);
-                                       final long sz = in.getChannel().size();
-                                       final int type = getType();
-                                       final BufferedInputStream b = new BufferedInputStream(in);
-                                       return new ObjectStream.Filter(type, sz, b);
-                               }
-
-                               @Override
-                               public boolean isLarge() {
-                                       return true;
-                               }
-
-                               @Override
-                               public byte[] getCachedBytes() throws LargeObjectException {
-                                       throw new LargeObjectException();
-                               }
-                       };
-               }
-       }
-
        /** A pair of sources to access the old and new sides of a DiffEntry. */
        public static final class Pair {
                private final ContentSource oldSource;