Example usage for org.apache.commons.lang StringUtils defaultIfBlank

List of usage examples for org.apache.commons.lang StringUtils defaultIfBlank

Introduction

In this page you can find the example usage for org.apache.commons.lang StringUtils defaultIfBlank.

Prototype

public static String defaultIfBlank(String str, String defaultStr) 

Source Link

Document

Returns either the passed in String, or if the String is whitespace, empty ("") or null, the value of defaultStr.

Usage

From source file:org.sonar.plugins.delphi.codecoverage.CodeCoverageSensor.java

private void readJdbcFromConfiguration(Settings settings) {
    for (int i = 0; i < JDBC_PROPERTY_KEYS.length; ++i) {
        String jdbcProperty = StringUtils.defaultIfBlank(settings.getString(JDBC_PROPERTY_KEYS[i]),
                JDBC_DEFAULT_VALUES[i]);
        jdbcProperties.put(JDBC_PROPERTY_KEYS[i], jdbcProperty);
    }/*from   w w  w  .  j  a v a 2 s  . c o  m*/
}

From source file:org.sonar.plugins.emailnotifications.EmailNotificationChannel.java

private void send(EmailMessage emailMessage) throws EmailException {
    // Trick to correctly initilize javax.mail library
    ClassLoader classloader = Thread.currentThread().getContextClassLoader();
    Thread.currentThread().setContextClassLoader(getClass().getClassLoader());

    try {//from   w  w w. ja  va 2 s  .  c  om
        LOG.debug("Sending email: {}", emailMessage);
        String host = null;
        try {
            host = new URL(configuration.getServerBaseURL()).getHost();
        } catch (MalformedURLException e) {
            // ignore
        }

        SimpleEmail email = new SimpleEmail();
        if (StringUtils.isNotBlank(host)) {
            /*
            * Set headers for proper threading: GMail will not group messages, even if they have same subject, but don't have "In-Reply-To" and
            * "References" headers. TODO investigate threading in other clients like KMail, Thunderbird, Outlook
            */
            if (StringUtils.isNotEmpty(emailMessage.getMessageId())) {
                String messageId = "<" + emailMessage.getMessageId() + "@" + host + ">";
                email.addHeader(IN_REPLY_TO_HEADER, messageId);
                email.addHeader(REFERENCES_HEADER, messageId);
            }
            // Set headers for proper filtering
            email.addHeader(LIST_ID_HEADER, "Sonar <sonar." + host + ">");
            email.addHeader(LIST_ARCHIVE_HEADER, configuration.getServerBaseURL());
        }
        // Set general information
        email.setCharset("UTF-8");
        String from = StringUtils.isBlank(emailMessage.getFrom()) ? FROM_NAME_DEFAULT
                : emailMessage.getFrom() + " (Sonar)";
        email.setFrom(configuration.getFrom(), from);
        email.addTo(emailMessage.getTo(), " ");
        String subject = StringUtils.defaultIfBlank(StringUtils.trimToEmpty(configuration.getPrefix()) + " ",
                "") + StringUtils.defaultString(emailMessage.getSubject(), SUBJECT_DEFAULT);
        email.setSubject(subject);
        email.setMsg(emailMessage.getMessage());
        // Send
        email.setHostName(configuration.getSmtpHost());
        if (StringUtils.equalsIgnoreCase(configuration.getSecureConnection(), "SSL")) {
            email.setSSL(true);
            email.setSslSmtpPort(String.valueOf(configuration.getSmtpPort()));

            // this port is not used except in EmailException message, that's why it's set with the same value than SSL port.
            // It prevents from getting bad message.
            email.setSmtpPort(configuration.getSmtpPort());
        } else if (StringUtils.isBlank(configuration.getSecureConnection())) {
            email.setSmtpPort(configuration.getSmtpPort());
        } else {
            throw new SonarException(
                    "Unknown type of SMTP secure connection: " + configuration.getSecureConnection());
        }
        if (StringUtils.isNotBlank(configuration.getSmtpUsername())
                || StringUtils.isNotBlank(configuration.getSmtpPassword())) {
            email.setAuthentication(configuration.getSmtpUsername(), configuration.getSmtpPassword());
        }
        email.setSocketConnectionTimeout(SOCKET_TIMEOUT);
        email.setSocketTimeout(SOCKET_TIMEOUT);
        email.send();

    } finally {
        Thread.currentThread().setContextClassLoader(classloader);
    }
}

From source file:org.sonar.plugins.emailnotifications.reviews.ReviewEmailTemplate.java

/**
 * Visibility has been relaxed for tests.
 *//*from  ww w .ja  v a2s.  c  o  m*/
String getUserFullName(String login) {
    if (login == null) {
        return null;
    }
    User user = userFinder.findByLogin(login);
    if (user == null) { // most probably user was deleted
        return login;
    }
    return StringUtils.defaultIfBlank(user.getName(), login);
}

From source file:org.sonar.plugins.emailnotifications.templates.reviews.ReviewEmailTemplate.java

/**
 * Visibility has been relaxed for tests.
 *//* w  w w  .  ja v  a  2  s  .c o  m*/
String getUserFullName(String login) {
    if (login == null) {
        return null;
    }
    User user = userFinder.findByLogin(login);
    if (user == null) {
        // most probably user was deleted
        return login;
    }
    return StringUtils.defaultIfBlank(user.getName(), login);
}

From source file:org.sonar.plugins.gosu.surefire.data.SurefireStaxHandler.java

private static String getClassname(SMInputCursor testCaseCursor, String defaultClassname)
        throws XMLStreamException {
    String testClassName = testCaseCursor.getAttrValue("classname");
    if (StringUtils.isNotBlank(testClassName) && testClassName.endsWith(")")) {
        testClassName = testClassName.substring(0, testClassName.indexOf('('));
    }/*from   w ww . j  av  a 2s.co  m*/
    return StringUtils.defaultIfBlank(testClassName, defaultClassname);
}

From source file:org.sonar.plugins.javascript.integrationtests.parser.SurefireStaxHandler.java

private String getClassname(SMInputCursor testCaseCursor, String defaultClassname) throws XMLStreamException {
    String testClassName = testCaseCursor.getAttrValue("classname");
    return StringUtils.defaultIfBlank(testClassName, defaultClassname);
}

From source file:org.sonar.plugins.scmactivity.ScmConfiguration.java

public String getUrl() {
    String url = conf.getString(ScmActivityPlugin.URL_PROPERTY);
    if (StringUtils.isBlank(url)) {
        url = getMavenUrl();/* www.  ja  v a  2  s.  c om*/
    }
    return StringUtils.defaultIfBlank(url, null);
}

From source file:org.sonar.plugins.switchoffviolations.pattern.PatternsInitializer.java

private void loadPatternsFromNewProperties() {
    // Patterns Multicriteria
    String patternConf = StringUtils.defaultIfBlank(settings.getString(Constants.PATTERNS_MULTICRITERIA_KEY),
            "");//w w  w  . j  a v  a  2  s  .  c o  m
    for (String id : StringUtils.split(patternConf, ',')) {
        String propPrefix = Constants.PATTERNS_MULTICRITERIA_KEY + "." + id + ".";
        String resourceKeyPattern = settings.getString(propPrefix + Constants.RESOURCE_KEY);
        String ruleKeyPattern = settings.getString(propPrefix + Constants.RULE_KEY);
        Pattern pattern = new Pattern(firstNonNull(resourceKeyPattern, "*"), firstNonNull(ruleKeyPattern, "*"));
        String lineRange = settings.getString(propPrefix + Constants.LINE_RANGE_KEY);
        PatternDecoder.decodeRangeOfLines(pattern, firstNonNull(lineRange, "*"));
        multicriteriaPatterns.add(pattern);
    }

    // Patterns Block
    patternConf = StringUtils.defaultIfBlank(settings.getString(Constants.PATTERNS_BLOCK_KEY), "");
    for (String id : StringUtils.split(patternConf, ',')) {
        String propPrefix = Constants.PATTERNS_BLOCK_KEY + "." + id + ".";
        String beginBlockRegexp = settings.getString(propPrefix + Constants.BEGIN_BLOCK_REGEXP);
        String endBlockRegexp = settings.getString(propPrefix + Constants.END_BLOCK_REGEXP);
        Pattern pattern = new Pattern().setBeginBlockRegexp(nullToEmpty(beginBlockRegexp))
                .setEndBlockRegexp(nullToEmpty(endBlockRegexp));
        blockPatterns.add(pattern);
    }

    // Patterns All File
    patternConf = StringUtils.defaultIfBlank(settings.getString(Constants.PATTERNS_ALLFILE_KEY), "");
    for (String id : StringUtils.split(patternConf, ',')) {
        String propPrefix = Constants.PATTERNS_ALLFILE_KEY + "." + id + ".";
        String allFileRegexp = settings.getString(propPrefix + Constants.FILE_REGEXP);
        Pattern pattern = new Pattern().setAllFileRegexp(nullToEmpty(allFileRegexp));
        allFilePatterns.add(pattern);
    }
}

From source file:org.sonar.scanner.issue.ignore.pattern.AbstractPatternInitializer.java

@VisibleForTesting
protected final void initPatterns() {
    // Patterns Multicriteria
    multicriteriaPatterns = new ArrayList<>();
    String patternConf = StringUtils.defaultIfBlank(settings.getString(getMulticriteriaConfigurationKey()), "");
    for (String id : StringUtils.split(patternConf, ',')) {
        String propPrefix = getMulticriteriaConfigurationKey() + "." + id + ".";
        String resourceKeyPattern = settings.getString(propPrefix + "resourceKey");
        String ruleKeyPattern = settings.getString(propPrefix + "ruleKey");
        String lineRange = "*";
        String[] fields = new String[] { resourceKeyPattern, ruleKeyPattern, lineRange };
        PatternDecoder.checkRegularLineConstraints(StringUtils.join(fields, ","), fields);
        Set<LineRange> rangeOfLines = PatternDecoder.decodeRangeOfLines(firstNonNull(lineRange, "*"));
        IssuePattern pattern = new IssuePattern(firstNonNull(resourceKeyPattern, "*"),
                firstNonNull(ruleKeyPattern, "*"), rangeOfLines);

        multicriteriaPatterns.add(pattern);
    }/*from   w  w  w. j  av  a 2s  . c o m*/
}

From source file:org.sonar.scanner.issue.ignore.pattern.IssueExclusionPatternInitializer.java

private final void loadFileContentPatterns() {
    // Patterns Block
    blockPatterns = new ArrayList<>();
    String patternConf = StringUtils
            .defaultIfBlank(getSettings().getString(IssueExclusionProperties.PATTERNS_BLOCK_KEY), "");
    for (String id : StringUtils.split(patternConf, ',')) {
        String propPrefix = IssueExclusionProperties.PATTERNS_BLOCK_KEY + "." + id + ".";
        String beginBlockRegexp = getSettings()
                .getString(propPrefix + IssueExclusionProperties.BEGIN_BLOCK_REGEXP);
        String endBlockRegexp = getSettings().getString(propPrefix + IssueExclusionProperties.END_BLOCK_REGEXP);
        String[] fields = new String[] { beginBlockRegexp, endBlockRegexp };
        PatternDecoder.checkDoubleRegexpLineConstraints(StringUtils.join(fields, ","), fields);
        BlockIssuePattern pattern = new BlockIssuePattern(nullToEmpty(beginBlockRegexp),
                nullToEmpty(endBlockRegexp));
        blockPatterns.add(pattern);//from   w w  w  .j av a  2  s  .com
    }
    blockPatterns = Collections.unmodifiableList(blockPatterns);

    // Patterns All File
    allFilePatterns = new ArrayList<>();
    patternConf = StringUtils
            .defaultIfBlank(getSettings().getString(IssueExclusionProperties.PATTERNS_ALLFILE_KEY), "");
    for (String id : StringUtils.split(patternConf, ',')) {
        String propPrefix = IssueExclusionProperties.PATTERNS_ALLFILE_KEY + "." + id + ".";
        String allFileRegexp = getSettings().getString(propPrefix + IssueExclusionProperties.FILE_REGEXP);
        PatternDecoder.checkWholeFileRegexp(allFileRegexp);
        allFilePatterns.add(nullToEmpty(allFileRegexp));
    }
    allFilePatterns = Collections.unmodifiableList(allFilePatterns);
}