2  * ============LICENSE_START=======================================================
 
   4  * ================================================================================
 
   5  * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
 
   6  * Copyright © 2017-2018 Amdocs
 
   7  * ================================================================================
 
   8  * Licensed under the Apache License, Version 2.0 (the "License");
 
   9  * you may not use this file except in compliance with the License.
 
  10  * You may obtain a copy of the License at
 
  12  *       http://www.apache.org/licenses/LICENSE-2.0
 
  14  * Unless required by applicable law or agreed to in writing, software
 
  15  * distributed under the License is distributed on an "AS IS" BASIS,
 
  16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 
  17  * See the License for the specific language governing permissions and
 
  18  * limitations under the License.
 
  19  * ============LICENSE_END=========================================================
 
  21 package org.onap.aai.sa.searchdbabstraction.searchapi;
 
  23 import com.fasterxml.jackson.annotation.JsonProperty;
 
  26  * This is the common parent from which all aggregation types inherit. It defines the common fields that all
 
  27  * aggregations must include.
 
  29 public abstract class AbstractAggregation {
 
  32      * The name of the field to apply the aggregation against.
 
  34     protected String field;
 
  37      * Optionally allows the number of buckets for the aggregation to be specified.
 
  39     protected Integer size;
 
  42      * Optionally sets the minimum number of matches that must occur before a particular bucket is included in the
 
  45     @JsonProperty("min-threshold")
 
  46     protected Integer minThreshold;
 
  49     public String getField() {
 
  53     public void setField(String field) {
 
  57     public Integer getSize() {
 
  61     public void setSize(Integer size) {
 
  65     public Integer getMinThreshold() {
 
  69     public void setMinThreshold(Integer minThreshold) {
 
  70         this.minThreshold = minThreshold;
 
  73     public abstract String toElasticSearch();