You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by el...@apache.org on 2020/05/29 11:49:37 UTC

[maven-shared-utils] branch master updated: -a (#43)

This is an automated email from the ASF dual-hosted git repository.

elharo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-shared-utils.git


The following commit(s) were added to refs/heads/master by this push:
     new d1042e0  -a (#43)
d1042e0 is described below

commit d1042e0aff6b4a70ed3620bb95e4767b95f85ad8
Author: Elliotte Rusty Harold <el...@users.noreply.github.com>
AuthorDate: Fri May 29 07:49:27 2020 -0400

    -a (#43)
    
    remove unreferenced non-public class
---
 .../maven/shared/utils/io/DirectoryWalker.java     | 337 ---------------------
 .../maven/shared/utils/io/DirectoryWalkerTest.java |  50 ---
 2 files changed, 387 deletions(-)

diff --git a/src/main/java/org/apache/maven/shared/utils/io/DirectoryWalker.java b/src/main/java/org/apache/maven/shared/utils/io/DirectoryWalker.java
deleted file mode 100644
index 2aff206..0000000
--- a/src/main/java/org/apache/maven/shared/utils/io/DirectoryWalker.java
+++ /dev/null
@@ -1,337 +0,0 @@
-package org.apache.maven.shared.utils.io;
-
-/*
- * 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.
- */
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Stack;
-
-/**
- * DirectoryWalker
- * 
- *
- */
-class DirectoryWalker
-{
-    /**
-     * DirStackEntry is an Item on the {@link DirectoryWalker#dirStack}
-     */
-    static class DirStackEntry
-    {
-        /**
-         * Count of files in the directory.
-         */
-        private final int count;
-
-        /**
-         * Current Directory.
-         */
-        private final File dir;
-
-        /**
-         * Index (or offset) within the directory count.
-         */
-        private int index;
-
-        /**
-         * Offset for percentage calculations. Based on parent DirStackEntry.
-         */
-        private double percentageOffset;
-
-        /**
-         * Size of percentage space to work with.
-         */
-        private double percentageSize;
-
-        /**
-         * Create a DirStackEntry.
-         * 
-         * @param d the directory to track
-         * @param length the length of entries in the directory.
-         */
-        DirStackEntry( File d, int length )
-        {
-            dir = d;
-            count = length;
-        }
-
-        /**
-         * Calculate the next percentage offset. Used by the next DirStackEntry.
-         * 
-         * @return the value for the next percentage offset.
-         */
-        public double getNextPercentageOffset()
-        {
-            return percentageOffset + ( index * ( percentageSize / count ) );
-        }
-
-        /**
-         * Calculate the next percentage size. Used by the next DirStackEntry.
-         * 
-         * @return the value for the next percentage size.
-         */
-        public double getNextPercentageSize()
-        {
-            return ( percentageSize / count );
-        }
-
-        /**
-         * The percentage of the DirStackEntry right now. Based on count, index, percentageOffset, and percentageSize.
-         * 
-         * @return the percentage right now.
-         */
-        public int getPercentage()
-        {
-            double percentageWithinDir = (double) index / (double) count;
-            return (int) Math.floor( percentageOffset + ( percentageWithinDir * percentageSize ) );
-        }
-
-        public String toString()
-        {
-            return "DirStackEntry[" + "dir=" + dir.getAbsolutePath() + ",count=" + count + ",index=" + index
-                + ",percentageOffset=" + percentageOffset + ",percentageSize=" + percentageSize + ",percentage()="
-                + getPercentage() + ",getNextPercentageOffset()=" + getNextPercentageOffset()
-                + ",getNextPercentageSize()=" + getNextPercentageSize() + "]";
-        }
-    }
-
-    private File baseDir;
-
-    private int baseDirOffset;
-
-    private Stack<DirStackEntry> dirStack;
-
-    private final List<String> excludes;
-
-    private final List<String> includes;
-
-    private final List<DirectoryWalkListener> listeners;
-
-    DirectoryWalker()
-    {
-        this.includes = new ArrayList<String>();
-        this.excludes = new ArrayList<String>();
-        this.listeners = new ArrayList<DirectoryWalkListener>();
-    }
-
-    public void addDirectoryWalkListener( DirectoryWalkListener listener )
-    {
-        this.listeners.add( listener );
-    }
-
-    void addExclude( String exclude )
-    {
-        this.excludes.add( fixPattern( exclude ) );
-    }
-
-    void addInclude( String include )
-    {
-        this.includes.add( fixPattern( include ) );
-    }
-
-    /**
-     * Add's to the Exclude List the default list of SCM excludes.
-     */
-    public void addSCMExcludes()
-    {
-        String scmexcludes[] = DirectoryScanner.DEFAULTEXCLUDES;
-        for ( String scmexclude : scmexcludes )
-        {
-            addExclude( scmexclude );
-        }
-    }
-
-    private void fireStep( File file )
-    {
-        DirStackEntry dsEntry = dirStack.peek();
-        int percentage = dsEntry.getPercentage();
-        for ( DirectoryWalkListener listener : this.listeners )
-        {
-            listener.directoryWalkStep( percentage, file );
-        }
-    }
-
-    private void fireWalkFinished()
-    {
-        for ( Object listener1 : this.listeners )
-        {
-            DirectoryWalkListener listener = (DirectoryWalkListener) listener1;
-            listener.directoryWalkFinished();
-        }
-    }
-
-    private void fireWalkStarting()
-    {
-        for ( Object listener1 : this.listeners )
-        {
-            DirectoryWalkListener listener = (DirectoryWalkListener) listener1;
-            listener.directoryWalkStarting( this.baseDir );
-        }
-    }
-
-    private void fireDebugMessage( String message )
-    {
-        for ( Object listener1 : this.listeners )
-        {
-            DirectoryWalkListener listener = (DirectoryWalkListener) listener1;
-            listener.debug( message );
-        }
-    }
-
-    private String fixPattern( String pattern )
-    {
-        String cleanPattern = pattern;
-
-        if ( File.separatorChar != '/' )
-        {
-            cleanPattern = cleanPattern.replace( '/', File.separatorChar );
-        }
-
-        if ( File.separatorChar != '\\' )
-        {
-            cleanPattern = cleanPattern.replace( '\\', File.separatorChar );
-        }
-
-        return cleanPattern;
-    }
-
-    private boolean isExcluded( String name )
-    {
-        return isMatch( this.excludes, name );
-    }
-
-    private boolean isIncluded( String name )
-    {
-        return isMatch( this.includes, name );
-    }
-
-    private boolean isMatch( List<String> patterns, String name )
-    {
-        for ( String pattern : patterns )
-        {
-            boolean caseSensitive = true;
-            if ( SelectorUtils.matchPath( pattern, name, caseSensitive ) )
-            {
-                return true;
-            }
-        }
-
-        return false;
-    }
-
-    private String relativeToBaseDir( File file )
-    {
-        return file.getAbsolutePath().substring( baseDirOffset + 1 );
-    }
-
-    /**
-     * Performs a Scan against the provided {@link #setBaseDir(File)}
-     */
-    public void scan()
-    {
-        if ( baseDir == null )
-        {
-            throw new IllegalStateException( "Scan Failure.  BaseDir not specified." );
-        }
-
-        if ( !baseDir.exists() )
-        {
-            throw new IllegalStateException( "Scan Failure.  BaseDir does not exist." );
-        }
-
-        if ( !baseDir.isDirectory() )
-        {
-            throw new IllegalStateException( "Scan Failure.  BaseDir is not a directory." );
-        }
-
-        if ( this.includes.isEmpty() )
-        {
-            // default to include all.
-            addInclude( "**" );
-        }
-
-        fireWalkStarting();
-        dirStack = new Stack<DirStackEntry>();
-        scanDir( this.baseDir );
-        fireWalkFinished();
-    }
-
-    private void scanDir( File dir )
-    {
-        File files[] = dir.listFiles();
-
-        if ( files == null )
-        {
-            return;
-        }
-
-        DirStackEntry curStackEntry = new DirStackEntry( dir, files.length );
-        if ( dirStack.isEmpty() )
-        {
-            curStackEntry.percentageOffset = 0;
-            curStackEntry.percentageSize = 100;
-        }
-        else
-        {
-            DirStackEntry previousStackEntry = dirStack.peek();
-            curStackEntry.percentageOffset = previousStackEntry.getNextPercentageOffset();
-            curStackEntry.percentageSize = previousStackEntry.getNextPercentageSize();
-        }
-
-        dirStack.push( curStackEntry );
-
-        for ( int idx = 0; idx < files.length; idx++ )
-        {
-            curStackEntry.index = idx;
-            String name = relativeToBaseDir( files[idx] );
-
-            if ( isExcluded( name ) )
-            {
-                fireDebugMessage( name + " is excluded." );
-                continue;
-            }
-
-            if ( files[idx].isDirectory() )
-            {
-                scanDir( files[idx] );
-            }
-            else
-            {
-                if ( isIncluded( name ) )
-                {
-                    fireStep( files[idx] );
-                }
-            }
-        }
-
-        dirStack.pop();
-    }
-
-    /**
-     * @param baseDir The baseDir to set.
-     */
-    public void setBaseDir( File baseDir )
-    {
-        this.baseDir = baseDir;
-        this.baseDirOffset = baseDir.getAbsolutePath().length();
-    }
-
-}
diff --git a/src/test/java/org/apache/maven/shared/utils/io/DirectoryWalkerTest.java b/src/test/java/org/apache/maven/shared/utils/io/DirectoryWalkerTest.java
deleted file mode 100644
index 2bb86b2..0000000
--- a/src/test/java/org/apache/maven/shared/utils/io/DirectoryWalkerTest.java
+++ /dev/null
@@ -1,50 +0,0 @@
-package org.apache.maven.shared.utils.io;
-
-/*
- * 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.
- */
-
-import java.io.File;
-
-import org.junit.Test;
-import org.junit.Assert;
-
-public class DirectoryWalkerTest
-{
-    @Test
-    public void testDirectoryWalk()
-    {
-        DirectoryWalker walker = new DirectoryWalker();
-
-        walker.addSCMExcludes();
-
-        walker.setBaseDir( new File("src/test/resources/directorywalker" ) );
-
-        WalkCollector collector = new WalkCollector();
-        walker.addDirectoryWalkListener( collector );
-
-        walker.scan();
-
-        Assert.assertEquals( "Walk Collector / Starting Count", 1, collector.startCount );
-        Assert.assertNotNull( "Walk Collector / Starting Dir", collector.startingDir );
-        Assert.assertEquals( "Walk Collector / Finish Count", 1, collector.finishCount );
-        Assert.assertEquals( "Walk Collector / Steps Count", 4, collector.steps.size() );
-        Assert.assertTrue( "Walk Collector / percentage low >= 0", collector.percentageLow >= 0 );
-        Assert.assertTrue( "Walk Collector / percentage high <= 100", collector.percentageHigh <= 100 );
-    }
-}