private List getQueriesThatCanBePublished()

in src/main/java/com/epam/digital/data/platform/report/pipeline/impl/UtilQueryPipeline.java [87:108]


  private List<Query> getQueriesThatCanBePublished(List<Query> queries, Context context) {
    List<Query> result = new ArrayList<>();
    for (var query : queries) {
      var params = (List<Map<String, Object>>) query.getOptions().get("parameters");

      if (params.isEmpty()) {
        result.add(query);
        continue;
      }
      Set<Integer> subQueryIds = new HashSet<>();
      for (var parameter : params) {
        var subQueryId = parameter.get("queryId");
        if (subQueryId != null) {
          subQueryIds.add((Integer) subQueryId);
        }
      }
      if (context.getMappedIds().keySet().containsAll(subQueryIds)) {
        result.add(query);
      }
    }
    return result;
  }