diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-11-19 12:34:19 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-11-19 12:34:19 +0000 |
| commit | ff3faffc9fcf75370bc6955ce833b9a486edb11b (patch) | |
| tree | 4c7d062e69e43d7553d51475218faca7511094d4 /src/main/java/org/zwobble/mammoth/internal/styles/DocumentElementMatching.java | |
| parent | 8adbeb0f41d22431f660cacdbada7205d2a84489 (diff) | |
Introduce StringMatcher for style names
Diffstat (limited to 'src/main/java/org/zwobble/mammoth/internal/styles/DocumentElementMatching.java')
| -rw-r--r-- | src/main/java/org/zwobble/mammoth/internal/styles/DocumentElementMatching.java | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/main/java/org/zwobble/mammoth/internal/styles/DocumentElementMatching.java b/src/main/java/org/zwobble/mammoth/internal/styles/DocumentElementMatching.java index a0c5aec..568a1a5 100644 --- a/src/main/java/org/zwobble/mammoth/internal/styles/DocumentElementMatching.java +++ b/src/main/java/org/zwobble/mammoth/internal/styles/DocumentElementMatching.java @@ -6,7 +6,7 @@ import java.util.Optional; import java.util.function.BiPredicate; class DocumentElementMatching { - static boolean matchesStyle(Optional<String> styleId, Optional<String> styleName, Optional<Style> style) { + static boolean matchesStyle(Optional<String> styleId, Optional<StringMatcher> styleName, Optional<Style> style) { return matchesStyleId(styleId, style) && matchesStyleName(styleName, style); } @@ -14,11 +14,11 @@ class DocumentElementMatching { return matches(styleId, style.map(Style::getStyleId), Object::equals); } - private static boolean matchesStyleName(Optional<String> styleName, Optional<Style> style) { - return matches(styleName, style.flatMap(Style::getName), String::equalsIgnoreCase); + private static boolean matchesStyleName(Optional<StringMatcher> styleName, Optional<Style> style) { + return matches(styleName, style.flatMap(Style::getName), StringMatcher::matches); } - static <T> boolean matches(Optional<T> required, Optional<T> actual, BiPredicate<T, T> areEqual) { + static <T, U> boolean matches(Optional<T> required, Optional<U> actual, BiPredicate<T, U> areEqual) { return required .map(requiredValue -> actual.map(actualValue -> areEqual.test(requiredValue, actualValue)).orElse(false)) .orElse(true); |
