@Override
  public Set<Resource> populateResources(Set<Resource> resources, Request request, Predicate predicate)
    throws SystemException {
    Set<Resource> keepers = new HashSet<Resource>();
    try {
      Connection connection = connectionFactory.getConnection();
      try {
        Statement statement = connection.createStatement();
        try {
          for (Resource resource : resources) {
            if (populateResource(resource, request, predicate, statement)) {
              keepers.add(resource);
            }
          }
        } finally {
          statement.close();
        }
      } finally {
        connection.close();
      }
    } catch (SQLException e) {
      if (LOG.isErrorEnabled()) {
        LOG.error("Error during populateResources call.");
        LOG.debug("Error during populateResources call : caught exception", e);
      }
    }
    return keepers;
  }
SQL based property/metrics provider required for ambari-scom.
contrib/ambari-scom/ambari-scom-server/src/main/java/org/apache/ambari/scom/SQLPropertyProvider.java