private Optional getBucketLifecycleRule()

in priam/src/main/java/com/netflix/priam/aws/S3FileSystemBase.java [151:170]


    private Optional<Rule> getBucketLifecycleRule(List<Rule> rules, String prefix) {
        if (rules == null || rules.isEmpty()) return Optional.empty();

        for (Rule rule : rules) {
            String rulePrefix = "";
            if (rule.getFilter() != null) {
                PrefixVisitor prefixVisitor = new PrefixVisitor();
                rule.getFilter().getPredicate().accept(prefixVisitor);
                rulePrefix = prefixVisitor.prefix;
            } else if (rule.getPrefix() != null) {
                // Being backwards compatible, here.
                rulePrefix = rule.getPrefix();
            }
            if (prefix.equalsIgnoreCase(rulePrefix)) {
                return Optional.of(rule);
            }
        }

        return Optional.empty();
    }