@SuppressWarnings("checkstyle:BooleanExpressionComplexity")
  public static Optional<KeyStoreOptions> getBcfksTrustStoreOptions(
      final Map<String, String> props) {
    final String location = getTrustStoreLocation(props);
    final String password = getTrustStorePassword(props);
    final String trustManagerAlgorithm = getTrustManagerAlgorithm(props);

    final String securityProviders = getSecurityProviders(props);

    if (Strings.isNullOrEmpty(location)
        || Strings.isNullOrEmpty(password)
        || Strings.isNullOrEmpty(trustManagerAlgorithm)
        || Strings.isNullOrEmpty(securityProviders)) {
      return Optional.empty();
    }

    specifySecurityProperties(securityProviders, trustManagerAlgorithm, false);
    return Optional.of(buildBcfksOptions(location, password, ""));
  }
@Test
  public void shouldReturnEmptyTrustStoreBCFKSOptionsIfPasswordIsEmpty() {
    // When
    final Optional<KeyStoreOptions> keyStoreOptions = VertxSslOptionsFactory.getBcfksTrustStoreOptions(
        ImmutableMap.of()
    );

    // Then
    assertThat(keyStoreOptions, is(Optional.empty()));
  }