Example usage for org.apache.commons.collections MapUtils getBoolean

List of usage examples for org.apache.commons.collections MapUtils getBoolean

Introduction

In this page you can find the example usage for org.apache.commons.collections MapUtils getBoolean.

Prototype

public static Boolean getBoolean(Map map, Object key, Boolean defaultValue) 

Source Link

Document

Looks up the given key in the given map, converting the result into a boolean, using the default value if the the conversion fails.

Usage

From source file:com.ctrip.infosec.rule.util.Emitter.java

/**
 * ????//  w w  w.  j  a  v a2  s  . co  m
 */
public static void emitBWListResults(RiskFact fact, List<Map<String, String>> bwlistResults) {
    boolean _isAsync = MapUtils.getBoolean(fact.ext, Constants.key_isAsync, false);
    if (_isAsync || bwlistResults == null || bwlistResults.isEmpty()) {
        return;
    }

    // ???(?BW)
    for (Map<String, String> resultMap : bwlistResults) {
        String ruleType = valueAsString(resultMap, "ruleType");
        //            String ruleNo = valueAsString(resultMap, "ruleName");
        String riskMessage = "???: " + valueAsString(resultMap, "ruleRemark"); // "???: [" + Joiner.on(", ").withKeyValueSeparator(":").useForNull("").join(resultMap) + "]";
        int riskLevel = valueAsInt(resultMap, "riskLevel");

        if (ruleType.equals(BW)) {
            if (riskLevel == 0) {
                fact.finalWhitelistResult.put(Constants.riskLevel, 0);
                fact.finalWhitelistResult.put(Constants.riskMessage, riskMessage);
                emit(fact, riskLevel, riskMessage);
                break;
            }
            if (riskLevel == 95) {
                fact.finalWhitelistResult.put(Constants.riskLevel, 95);
                fact.finalWhitelistResult.put(Constants.riskMessage, riskMessage);
                emit(fact, riskLevel, riskMessage);
                break;
            }
            // 97
            if (riskLevel >= 90 && riskLevel < 100) {
                fact.finalWhitelistResult.put(Constants.riskLevel, 97);
                fact.finalWhitelistResult.put(Constants.riskMessage, riskMessage);
                emit(fact, riskLevel, riskMessage);
            }
        }
    }

    // ???
    if (fact.finalWhitelistResult.isEmpty() || (fact.finalWhitelistResult.containsKey(Constants.riskLevel)
            && valueAsInt(fact.finalWhitelistResult, Constants.riskLevel) == 97)) {
        emitBListResults(fact, bwlistResults);
    }

    // ??checkResultLogB????
    for (Map<String, String> resultMap : bwlistResults) {
        String ruleType = valueAsString(resultMap, "ruleType");
        String ruleName = valueAsString(resultMap, "ruleName");
        String riskMessage = valueAsString(resultMap, "ruleRemark");
        String ruleId = valueAsString(resultMap, "ruleID");
        int riskLevel = valueAsInt(resultMap, "riskLevel");

        if (ruleType.equals(BW) && riskLevel > 0) {
            Map<String, Object> result = Maps.newHashMap();
            result.put(Constants.riskLevel, riskLevel);
            result.put(Constants.riskMessage, riskMessage);
            result.put(Constants.ruleType, "B");
            result.put(Constants.ruleId, ruleId);
            result.put(Constants.ruleName, ruleName);
            fact.whitelistResults.put(ruleId, result);
        }
    }
}

From source file:com.ctrip.infosec.rule.util.Emitter.java

/**
 * ????//from w ww. ja va2 s .  com
 */
static void emitBListResults(RiskFact fact, List<Map<String, String>> bwlistResults) {

    //result: [{"ruleType":"ACCOUNT","ruleID":0,"ruleName":"CREDIT-EXCHANGE","riskLevel":295,"ruleRemark":""},
    //         {"ruleType":"ACCOUNT","ruleID":0,"ruleName":"CREDIT-EXCHANGE1","riskLevel":80,"ruleRemark":""}]
    boolean _isAsync = MapUtils.getBoolean(fact.ext, Constants.key_isAsync, false);
    if (_isAsync) {
        return;
    }

    String orderType = EventBodyUtils.valueAsString(fact.getEventBody(), "orderType");
    boolean isAdapterFact = Constants.eventPointsWithScene.contains(fact.eventPoint);
    boolean isScoreFact = orderType.equals("12"); //

    if (isAdapterFact) {
        //?
        for (Map<String, String> resultMap : bwlistResults) {

            String ruleType = valueAsString(resultMap, "ruleType");
            String ruleNo = valueAsString(resultMap, "ruleName");
            String riskMessage = "???: " + valueAsString(resultMap, "ruleRemark"); // "???: [" + Joiner.on(", ").withKeyValueSeparator(":").useForNull("").join(resultMap) + "]";
            int riskLevel = valueAsInt(resultMap, "riskLevel");

            if (ruleType.equals(ACCOUNT)) {
                emit(fact, ruleNo, riskLevel, riskMessage, ruleNo);
            } else if (ruleType.equals(BW) && riskLevel > 100) {
                emit(fact, "PAYMENT-CONF-LIPIN", 295, riskMessage, "PAYMENT-CONF-LIPIN");
            }

        }

    } else {

        //            String finalBRuleNo = null;
        int finalBRiskLevel = 0;
        String finalBRiskMessage = null;

        for (Map<String, String> resultMap : bwlistResults) {

            String ruleType = valueAsString(resultMap, "ruleType");
            String ruleNo = valueAsString(resultMap, "ruleName");
            String riskMessage = "???: " + valueAsString(resultMap, "ruleRemark");
            int riskLevel = valueAsInt(resultMap, "riskLevel");

            if (isScoreFact) {
                //,?ruleType
                if (riskLevel > finalBRiskLevel) {
                    //                        finalBRuleNo = ruleNo;
                    finalBRiskLevel = riskLevel;
                    finalBRiskMessage = riskMessage; // "???: [" + Joiner.on(", ").withKeyValueSeparator(":").useForNull("").join(resultMap) + "]";
                }

            } else {
                //??
                //??ruleType = BW
                if (ruleType.equals(BW)) {
                    if (riskLevel > finalBRiskLevel) {
                        //                            finalBRuleNo = ruleNo;
                        finalBRiskLevel = riskLevel;
                        finalBRiskMessage = riskMessage; // "???: [" + Joiner.on(", ").withKeyValueSeparator(":").useForNull("").join(resultMap) + "]";
                    }
                }
            }
        }

        // 97??195????97
        boolean finalWhitelistResultSetted = fact.finalWhitelistResult.containsKey(Constants.riskLevel);
        int finalWhitelistRiskLevel = valueAsInt(fact.finalWhitelistResult, Constants.riskLevel);
        if (finalWhitelistRiskLevel == 97 && finalBRiskLevel < 195) {
            emit(fact, 97, finalBRiskMessage);
        } else {
            if (finalBRiskLevel < 200) {
                emit(fact, finalBRiskLevel, finalBRiskMessage);
            } else if ((!finalWhitelistResultSetted || finalWhitelistRiskLevel != 0)
                    && finalBRiskLevel >= 200) {
                emit(fact, finalBRiskLevel, finalBRiskMessage);
            }
        }
    }
}

From source file:com.ctrip.infosec.rule.util.Emitter.java

/**
 * ????/* w  ww . j a  v  a2  s  .  c o m*/
 */
public static void emitLeveldownResult(RiskFact fact, int riskLevel, String riskMessage) {
    String ruleNo = (String) fact.ext.get(Constants.key_ruleNo);
    boolean _isAsync = MapUtils.getBoolean(fact.ext, Constants.key_isAsync, false);
    if (!_isAsync && !Strings.isNullOrEmpty(ruleNo)) {
        Map<String, Object> result = Maps.newHashMap();
        result.put(Constants.riskLevel, riskLevel);
        result.put(Constants.riskMessage, riskMessage);
        result.put(Constants.async, _isAsync);
        result.put(Constants.ruleType, "N");
        fact.leveldownResults.put(ruleNo, result);
        buidFinalResultAfterEmitLeveldownResult(fact, _isAsync);
        //            RuleMonitorHelper.addRiskRuleNo(ruleNo);
        RuleMonitorHelper.addRiskRuleNo(ruleNo, riskLevel);
    }
}

From source file:com.ctrip.infosec.rule.util.Emitter.java

/**
 * //w ww .jav a  2 s  . c  o m
 */
public static void emitModelResult(RiskFact fact, int riskLevel, String riskMessage) {
    String ruleNo = (String) fact.ext.get(Constants.key_ruleNo);
    boolean _isAsync = MapUtils.getBoolean(fact.ext, Constants.key_isAsync, true);
    if (_isAsync && !Strings.isNullOrEmpty(ruleNo)) {
        Map<String, Object> result = Maps.newHashMap();
        result.put(Constants.riskLevel, riskLevel);
        result.put(Constants.riskMessage, riskMessage);
        result.put(Constants.ruleType, "M");
        fact.modelResults.put(ruleNo, result);
        //            RuleMonitorHelper.addRiskRuleNo(ruleNo);
        RuleMonitorHelper.addRiskRuleNo(ruleNo, riskLevel);
    }
}

From source file:org.codehaus.groovy.grails.plugins.searchable.compass.search.DefaultStringQuerySearchableCompassQueryBuilder.java

public CompassQuery buildQuery(GrailsApplication grailsApplication, CompassSession compassSession, Map options,
        Object query) {//from   w w  w .java2s  .  c  om
    Assert.notNull(query, "query cannot be null");
    Assert.isInstanceOf(String.class, query,
            "query must be a String but is [" + query.getClass().getName() + "]");

    String analyzer = (String) getOption(ANALYZER_NAMES, options);
    String parser = (String) getOption(PARSER_NAMES, options);
    String defaultSearchProperty = (String) getOption(DEFAULT_PROPERTY_NAMES, options);
    Collection properties = (Collection) getOption(PROPERTIES_NAMES, options);
    Boolean useAndDefaultOperator = (Boolean) getOption(USE_AND_DEFAULT_OPERATOR_NAMES, options);
    Boolean escape = MapUtils.getBoolean(options, "escape", Boolean.FALSE);

    Assert.isTrue(!(properties != null && defaultSearchProperty != null),
            "The " + DefaultGroovyMethods.join(DEFAULT_PROPERTY_NAMES, "/") + " and "
                    + DefaultGroovyMethods.join(PROPERTIES_NAMES, "/") + " options cannot be combined");

    String queryString = (String) query;
    if (escape.booleanValue()) {
        queryString = CompassQueryParser.escape(queryString);
    }

    CompassQueryBuilder compassQueryBuilder = compassSession.queryBuilder();
    CompassQueryBuilder.ToCompassQuery stringBuilder;
    if (properties != null && !properties.isEmpty()) {
        stringBuilder = compassQueryBuilder.multiPropertyQueryString(queryString);
        for (Iterator iter = properties.iterator(); iter.hasNext();) {
            ((CompassQueryBuilder.CompassMultiPropertyQueryStringBuilder) stringBuilder)
                    .add((String) iter.next());
        }
    } else {
        stringBuilder = compassQueryBuilder.queryString(queryString);
    }

    if (analyzer != null) {
        InvokerHelper.invokeMethod(stringBuilder, "setAnalyzer", analyzer);
    }
    if (parser != null) {
        InvokerHelper.invokeMethod(stringBuilder, "setQueryParser", parser);
    }
    if (defaultSearchProperty != null) {
        InvokerHelper.invokeMethod(stringBuilder, "setDefaultSearchProperty", defaultSearchProperty);
    }
    if (useAndDefaultOperator != null && useAndDefaultOperator.booleanValue()) {
        InvokerHelper.invokeMethod(stringBuilder, "useAndDefaultOperator", null);
    }
    return stringBuilder.toQuery();
}