Example usage for org.apache.commons.io FilenameUtils wildcardMatch

List of usage examples for org.apache.commons.io FilenameUtils wildcardMatch

Introduction

In this page you can find the example usage for org.apache.commons.io FilenameUtils wildcardMatch.

Prototype

public static boolean wildcardMatch(String filename, String wildcardMatcher, IOCase caseSensitivity) 

Source Link

Document

Checks a filename to see if it matches the specified wildcard matcher allowing control over case-sensitivity.

Usage

From source file:com.github.aliteralmind.codelet.util.FilenameBlackWhiteList.java

private boolean isMatchedByProper(boolean doCrashIfPath_nullEmpty, String path) {
    if (doCrashIfPath_nullEmpty) {
        CrashIfString.nullEmpty(path, "path", null);
    }//w  w w .  java 2s . c  om
    for (String proper : getImmutableProperList()) {
        if (FilenameUtils.wildcardMatch(path, proper, getCaseSensitivity())) {
            return true;
        }
    }
    return false;
}

From source file:com.github.aliteralmind.codelet.util.FilenameBlackWhiteList.java

private boolean isMatchedByOverride(boolean doCrashIfPath_nullEmpty, String path) {
    if (doCrashIfPath_nullEmpty) {
        CrashIfString.nullEmpty(path, "path", null);
    }//  w ww  .j  a v  a 2s. c om
    for (String override : getImmutableOverrideList()) {
        if (FilenameUtils.wildcardMatch(path, override, getCaseSensitivity())) {
            return true;
        }
    }
    return false;
}

From source file:jenkins.scm.impl.subversion.SubversionSCMSource.java

/**
 * Checks if we have a match against a wildcard matcher.
 *
 * @param value           the value//from   w  w  w  .  j a  v a  2s  .co  m
 * @param wildcareMatcher the wildcard matcher
 * @return {@code true} if and only if the value matches the wildcard matcher.
 */
static boolean isMatch(@NonNull String value, @NonNull String wildcareMatcher) {
    return FilenameUtils.wildcardMatch(value, wildcareMatcher, IOCase.SENSITIVE);
}

From source file:org.apache.atlas.authorize.simple.SimpleAtlasAuthorizer.java

private boolean isMatch(String resource, List<String> policyValues) {
    if (isDebugEnabled) {
        LOG.debug("==> SimpleAtlasAuthorizer isMatch");
    }// w w  w.  j  ava2s  .c  om
    boolean isMatchAny = resourceMatchHelper(policyValues);
    boolean isMatch = false;
    boolean allValuesRequested = isAllValuesRequested(resource);

    if (allValuesRequested || isMatchAny) {
        isMatch = isMatchAny;
    } else {
        for (String policyValue : policyValues) {
            if (policyValue.contains("*")) {
                isMatch = optIgnoreCase ? FilenameUtils.wildcardMatch(resource, policyValue, IOCase.INSENSITIVE)
                        : FilenameUtils.wildcardMatch(resource, policyValue, IOCase.SENSITIVE);
            } else {
                isMatch = optIgnoreCase ? StringUtils.equalsIgnoreCase(resource, policyValue)
                        : StringUtils.equals(resource, policyValue);
            }
            if (isMatch) {
                break;
            }
        }
    }

    if (!isMatch) {
        if (isDebugEnabled) {
            StringBuilder sb = new StringBuilder();
            sb.append("[");
            for (String policyValue : policyValues) {
                sb.append(policyValue);
                sb.append(" ");
            }
            sb.append("]");

            LOG.debug("AtlasDefaultResourceMatcher.isMatch returns FALSE, (resource={}, policyValues={})",
                    resource, sb.toString());
        }

    }

    if (isDebugEnabled) {
        LOG.debug("<== SimpleAtlasAuthorizer isMatch({}): {}", resource, isMatch);
    }

    return isMatch;
}

From source file:org.apache.atlas.authorize.SimpleAtlasAuthorizer.java

private boolean isMatch(String resource, List<String> policyValues) {
    if (isDebugEnabled) {
        LOG.debug("<== SimpleAtlasAuthorizer isMatch");
    }//  w w  w  .j  a v  a 2  s.c  om
    boolean isMatchAny = resourceMatchHelper(policyValues);
    boolean isMatch = false;
    boolean allValuesRequested = isAllValuesRequested(resource);

    if (allValuesRequested || isMatchAny) {
        isMatch = isMatchAny;
    } else {
        for (String policyValue : policyValues) {
            if (policyValue.contains("*")) {
                isMatch = optIgnoreCase ? FilenameUtils.wildcardMatch(resource, policyValue, IOCase.INSENSITIVE)
                        : FilenameUtils.wildcardMatch(resource, policyValue, IOCase.SENSITIVE);
            } else {
                isMatch = optIgnoreCase ? StringUtils.equalsIgnoreCase(resource, policyValue)
                        : StringUtils.equals(resource, policyValue);
            }
            if (isMatch) {
                break;
            }
        }
    }

    if (isMatch == false) {

        if (isDebugEnabled) {
            StringBuilder sb = new StringBuilder();
            sb.append("[");
            for (String policyValue : policyValues) {
                sb.append(policyValue);
                sb.append(" ");
            }
            sb.append("]");

            LOG.debug("AtlasDefaultResourceMatcher.isMatch returns FALSE, (resource=" + resource
                    + ", policyValues=" + sb.toString() + ")");
        }

    }

    if (isDebugEnabled) {
        LOG.debug("==> SimpleAtlasAuthorizer isMatch(" + resource + "): " + isMatch);
    }

    return isMatch;
}

From source file:org.apache.ranger.biz.RangerBizUtil.java

/**
 * returns true if first and second path are same
 *
 * @param pathToCheckFragment//from  www  . ja  v a2s. co m
 * @param wildCardPathFragment
 * @return
 */
private boolean matchPath(String pathToCheckFragment, String wildCardPathFragment) {
    if (pathToCheckFragment == null || wildCardPathFragment == null) {
        return false;
    }

    if (pathToCheckFragment.contains("*") || pathToCheckFragment.contains("?")) {
        pathToCheckFragment = replaceMetaChars(pathToCheckFragment);

        if (wildCardPathFragment.contains("*") || wildCardPathFragment.contains("?")) {
            return FilenameUtils.wildcardMatch(pathToCheckFragment, wildCardPathFragment, IOCase.SENSITIVE);
        } else {
            return false;
        }
    } else {
        if (wildCardPathFragment.contains("*") || wildCardPathFragment.contains("?")) {
            return FilenameUtils.wildcardMatch(pathToCheckFragment, wildCardPathFragment, IOCase.SENSITIVE);
        } else {
            return pathToCheckFragment.trim().equals(wildCardPathFragment.trim());
        }
    }
}

From source file:org.apache.ranger.plugin.resourcematcher.RangerAbstractResourceMatcher.java

@Override
boolean isMatch(String resourceValue, Map<String, Object> evalContext) {
    return FilenameUtils.wildcardMatch(resourceValue, getExpandedValue(evalContext), IOCase.SENSITIVE);
}

From source file:org.apache.ranger.plugin.resourcematcher.RangerAbstractResourceMatcher.java

@Override
boolean isMatch(String resourceValue, Map<String, Object> evalContext) {
    return FilenameUtils.wildcardMatch(resourceValue, getExpandedValue(evalContext), IOCase.INSENSITIVE);
}

From source file:org.apache.ranger.plugin.resourcematcher.RangerPathResourceMatcher.java

static boolean isRecursiveWildCardMatch(String pathToCheck, String wildcardPath, char pathSeparatorChar,
        IOCase caseSensitivity) {/*from  w  w  w  . j  a  va  2 s . c  om*/

    boolean ret = false;

    if (!StringUtils.isEmpty(pathToCheck)) {
        String[] pathElements = StringUtils.split(pathToCheck, pathSeparatorChar);

        if (!ArrayUtils.isEmpty(pathElements)) {
            StringBuilder sb = new StringBuilder();

            if (pathToCheck.charAt(0) == pathSeparatorChar) {
                sb.append(pathSeparatorChar); // preserve the initial pathSeparatorChar
            }

            for (String p : pathElements) {
                sb.append(p);

                ret = FilenameUtils.wildcardMatch(sb.toString(), wildcardPath, caseSensitivity);

                if (ret) {
                    break;
                }

                sb.append(pathSeparatorChar);
            }

            sb = null;
        } else { // pathToCheck consists of only pathSeparatorChar
            ret = FilenameUtils.wildcardMatch(pathToCheck, wildcardPath, caseSensitivity);
        }
    }
    return ret;
}

From source file:org.apache.torque.generator.file.Fileset.java

static boolean matchesPattern(File file, String pattern) {
    String filePath = file.getPath();
    List<String> fileParts = splitAndNormalize(filePath);
    List<String> patternParts = splitAndNormalize(pattern);
    if (fileParts.size() != patternParts.size()) {
        return false;
    }/*from w  w w  . jav  a  2s.  co m*/
    Iterator<String> patternPartIt = patternParts.iterator();
    for (String filePart : fileParts) {
        String patternPart = patternPartIt.next();
        if (!FilenameUtils.wildcardMatch(filePart, patternPart, IOCase.SENSITIVE)) {
            return false;
        }
    }
    return true;
}