@Override
  public void processMappingsFromRowValues(RowValues values) {
    this.setSharedEntityAssociation(new SharedEntityAssociation());
    this.getSharedEntityAssociation().setEntityType("Campaign");
    this.getSharedEntityAssociation().setSharedEntityType("NegativeKeywordList");

    MappingHelpers.convertToEntity(values, MAPPINGS, this);
  }
  @Override
  public void processMappingsFromRowValues(RowValues values) {
    super.processMappingsFromRowValues(values);

    MappingHelpers.convertToEntity(values, MAPPINGS, this);
  }
  @Override
  public void processMappingsToRowValues(RowValues values, boolean excludeReadonlyData) {
    super.processMappingsToRowValues(values, excludeReadonlyData);

    MappingHelpers.convertToValues(this, values, MAPPINGS);
  }
  @Override
  public void processMappingsToRowValues(RowValues values, boolean excludeReadonlyData) {
    // TODO: throw if Association doesn't have NKW and Campaign as entity types

    MappingHelpers.convertToValues(this, values, MAPPINGS);
  }