X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fonap%2Faai%2Fsa%2Fsearchdbabstraction%2Fsearchapi%2FAggregationStatement.java;h=4b446fd5985d671085d4c07029341b234fda6c27;hb=15af66b115f3e8046b2d0f2634fb77b3d835f730;hp=696c9d9cb0d273b283d8709e13e701f0e27411d9;hpb=71393bb2bf9fb10962723e61cf0e70d9aa202645;p=aai%2Fsearch-data-service.git diff --git a/src/main/java/org/onap/aai/sa/searchdbabstraction/searchapi/AggregationStatement.java b/src/main/java/org/onap/aai/sa/searchdbabstraction/searchapi/AggregationStatement.java index 696c9d9..4b446fd 100644 --- a/src/main/java/org/onap/aai/sa/searchdbabstraction/searchapi/AggregationStatement.java +++ b/src/main/java/org/onap/aai/sa/searchdbabstraction/searchapi/AggregationStatement.java @@ -25,149 +25,149 @@ import java.util.Arrays; public class AggregationStatement { - @JsonProperty("group-by") - private GroupByAggregation groupBy; + @JsonProperty("group-by") + private GroupByAggregation groupBy; - @JsonProperty("date-range") - private DateRangeAggregation dateRange; + @JsonProperty("date-range") + private DateRangeAggregation dateRange; - @JsonProperty("date-histogram") - private DateHistogramAggregation dateHist; + @JsonProperty("date-histogram") + private DateHistogramAggregation dateHist; - @JsonProperty("nested") - private Aggregation[] nested; + @JsonProperty("nested") + private Aggregation[] nested; - @JsonProperty("sub-aggregations") - private Aggregation[] subAggregations; + @JsonProperty("sub-aggregations") + private Aggregation[] subAggregations; - public GroupByAggregation getGroupBy() { - return groupBy; - } - - public void setGroupBy(GroupByAggregation groupBy) { - this.groupBy = groupBy; - } - - public DateRangeAggregation getDateRange() { - return dateRange; - } + public GroupByAggregation getGroupBy() { + return groupBy; + } - public void setDateRange(DateRangeAggregation dateRange) { - this.dateRange = dateRange; - } + public void setGroupBy(GroupByAggregation groupBy) { + this.groupBy = groupBy; + } - public DateHistogramAggregation getDateHist() { - return dateHist; - } + public DateRangeAggregation getDateRange() { + return dateRange; + } - public void setDateHist(DateHistogramAggregation dateHist) { - this.dateHist = dateHist; - } + public void setDateRange(DateRangeAggregation dateRange) { + this.dateRange = dateRange; + } - public Aggregation[] getNested() { - return nested; - } + public DateHistogramAggregation getDateHist() { + return dateHist; + } - public void setNested(Aggregation[] nested) { - this.nested = nested; - } + public void setDateHist(DateHistogramAggregation dateHist) { + this.dateHist = dateHist; + } - public Aggregation[] getSubAggregations() { - return subAggregations; - } + public Aggregation[] getNested() { + return nested; + } - public void setSubAggregations(Aggregation[] subAggregations) { - this.subAggregations = subAggregations; - } + public void setNested(Aggregation[] nested) { + this.nested = nested; + } - public String toElasticSearch() { - StringBuffer sb = new StringBuffer(); + public Aggregation[] getSubAggregations() { + return subAggregations; + } - sb.append("{"); + public void setSubAggregations(Aggregation[] subAggregations) { + this.subAggregations = subAggregations; + } - if (nested != null && nested.length > 0) { - sb.append("\"nested\": {\"path\": \""); - if (nested[0].getStatement() != null) { - sb.append(nested[0].getStatement().getNestedPath()); - } - sb.append("\"}, \"aggs\": {"); - for (int i = 0; i < nested.length; i++) { - if (i > 0) { - sb.append(","); - } - sb.append(nested[i].toElasticSearch()); - } - - sb.append("}"); - } else { - if (groupBy != null) { - sb.append(groupBy.toElasticSearch()); - } else if (dateRange != null) { - sb.append(dateRange.toElasticSearch()); - } else if (dateHist != null) { - sb.append(dateHist.toElasticSearch()); - } - - if (subAggregations != null && subAggregations.length > 0) { - sb.append(", \"aggs\": {"); - for (int i = 0; i < subAggregations.length; i++) { - if (i > 0) { - sb.append(","); - } - sb.append(subAggregations[i].toElasticSearch()); + public String toElasticSearch() { + StringBuffer sb = new StringBuffer(); + + sb.append("{"); + + if (nested != null && nested.length > 0) { + sb.append("\"nested\": {\"path\": \""); + if (nested[0].getStatement() != null) { + sb.append(nested[0].getStatement().getNestedPath()); + } + sb.append("\"}, \"aggs\": {"); + for (int i = 0; i < nested.length; i++) { + if (i > 0) { + sb.append(","); + } + sb.append(nested[i].toElasticSearch()); + } + + sb.append("}"); + } else { + if (groupBy != null) { + sb.append(groupBy.toElasticSearch()); + } else if (dateRange != null) { + sb.append(dateRange.toElasticSearch()); + } else if (dateHist != null) { + sb.append(dateHist.toElasticSearch()); + } + + if (subAggregations != null && subAggregations.length > 0) { + sb.append(", \"aggs\": {"); + for (int i = 0; i < subAggregations.length; i++) { + if (i > 0) { + sb.append(","); + } + sb.append(subAggregations[i].toElasticSearch()); + } + sb.append("}"); + } } + sb.append("}"); - } - } - sb.append("}"); + return sb.toString(); + } - return sb.toString(); - } + @Override + public String toString() { + StringBuffer sb = new StringBuffer(); + + if (nested != null) { + sb.append("{nested: "); + sb.append(Arrays.toString(nested)); + } else if (groupBy != null) { + sb.append(groupBy.toString()); + } else if (dateHist != null) { + sb.append(dateHist.toString()); + } else if (dateRange != null) { + sb.append(dateRange.toString()); + } - @Override - public String toString() { - StringBuffer sb = new StringBuffer(); + if (subAggregations != null) { + sb.append(", sub-aggregations: "); + sb.append(Arrays.toString(subAggregations)); + } - if (nested != null) { - sb.append("{nested: "); - sb.append(Arrays.toString(nested)); - } else if (groupBy != null) { - sb.append(groupBy.toString()); - } else if (dateHist != null) { - sb.append(dateHist.toString()); - } else if (dateRange != null) { - sb.append(dateRange.toString()); - } + sb.append("}"); - if (subAggregations != null) { - sb.append(", sub-aggregations: "); - sb.append(Arrays.toString(subAggregations)); + return sb.toString(); } - sb.append("}"); - - return sb.toString(); - } + public String getNestedPath() { + String path = null; + String fieldName = null; - public String getNestedPath() { - String path = null; - String fieldName = null; + if (groupBy != null) { + fieldName = groupBy.getField(); + } else if (dateRange != null) { + fieldName = dateRange.getField(); + } else if (dateHist != null) { + fieldName = dateHist.getField(); + } - if (groupBy != null) { - fieldName = groupBy.getField(); - } else if (dateRange != null) { - fieldName = dateRange.getField(); - } else if (dateHist != null) { - fieldName = dateHist.getField(); - } + if (fieldName != null && fieldName.contains(".")) { + // we have nested field + path = fieldName.substring(0, fieldName.indexOf(".")); + } - if (fieldName != null && fieldName.contains(".")) { - // we have nested field - path = fieldName.substring(0, fieldName.indexOf(".")); + return path; } - return path; - } - }