All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.groupbyinc.api.model.Biasing Maven / Gradle / Ivy

There is a newer version: 198
Show newest version
package com.groupbyinc.api.model;

import com.fasterxml.jackson.annotation.JsonInclude;

import java.util.ArrayList;
import java.util.List;

/**
 * 
 * A biasing profile can be defined at query time.
 * 
 */
public class Biasing {

  @JsonInclude(JsonInclude.Include.NON_EMPTY) private List restrictToIds = new ArrayList();

  @JsonInclude(JsonInclude.Include.NON_EMPTY) private List bringToTop = new ArrayList();

  @JsonInclude(JsonInclude.Include.NON_DEFAULT) private boolean augmentBiases = false;

  private Float influence = null;

  @JsonInclude(JsonInclude.Include.NON_EMPTY) private List numericBoosts = new ArrayList();

  @JsonInclude(JsonInclude.Include.NON_EMPTY) private List biases = new ArrayList();

  /**
   * @return The list of product IDs
   */
  public List getRestrictToIds() {
    return restrictToIds;
  }

  /**
   * 
   * A list of product IDs to restrict the result set. This list
   * will ensure that the search query and refinements only apply the list of products included.
   * 
   *
   * @param restrictToIds
   *      The list of productIds.
   */
  public com.groupbyinc.api.model.Biasing setRestrictToIds(List restrictToIds) {
    this.restrictToIds = restrictToIds;
    return this;
  }

  /**
   * @return The list of product IDs
   */
  public List getBringToTop() {
    return bringToTop;
  }

  /**
   * 
   * A list of product IDs to bring to the top of the result set. This list
   * will ensure that the products are included in the result set and appear in the order
   * defined.
   * 
   *
   * @param bringToTop
   *      The list of productIds.
   */
  public com.groupbyinc.api.model.Biasing setBringToTop(List bringToTop) {
    this.bringToTop = bringToTop;
    return this;
  }

  /**
   * @return True if this biasing profile should augment the biases defined
   * in Command Center, false otherwise.
   */
  public boolean isAugmentBiases() {
    return augmentBiases;
  }

  /**
   * 
   * Set whether the biases defined should override or augment the biases
   * defined in Command Center
   *
   * 
   *
   * @param augmentBiases
   *         True to augment biases, false otherwise
   */
  public com.groupbyinc.api.model.Biasing setAugmentBiases(boolean augmentBiases) {
    this.augmentBiases = augmentBiases;
    return this;
  }

  /**
   * @return The list of biases
   */
  public List getBiases() {
    return biases;
  }

  /**
   * 
   * Set the list of biases
   * 
   *
   * @param biases
   *         The biases
   */
  public com.groupbyinc.api.model.Biasing setBiases(List biases) {
    this.biases = biases;
    return this;
  }

  /**
   * @return The influence of the biases.
   */
  public Float getInfluence() {
    return influence;
  }

  /**
   * 
   * Set the influence of the biases.
   * 
   *
   * @param influence
   *          The influence of the biases.
   */
  public com.groupbyinc.api.model.Biasing setInfluence(Float influence) {
    this.influence = influence;
    return this;
  }

  public List getNumericBoosts() {
    return numericBoosts;
  }

  public com.groupbyinc.api.model.Biasing setNumericBoosts(List numericBoosts) {
    this.numericBoosts = numericBoosts;
    return this;
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy