
com.yodlee.api.model.transaction.FieldOperation Maven / Gradle / Ivy
/**
* Copyright (c) 2019 Yodlee, Inc. All Rights Reserved.
*
* Licensed under the MIT License. See LICENSE file in the project root for license information.
*/
package com.yodlee.api.model.transaction;
import javax.validation.constraints.NotNull;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.yodlee.api.model.AbstractModelComponent;
import com.yodlee.api.model.transaction.enums.Operation;
import com.yodlee.api.model.transaction.enums.TransactionClauseType;
import io.swagger.annotations.ApiModelProperty;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({"field", "operation", "value"})
public class FieldOperation extends AbstractModelComponent {
@NotNull(message = "{transactions.rule.ruleClauses.field.required}")
@ApiModelProperty(value = "Field for which the clause is created."//
+ "
"//
+ "Applicable containers: bank, creditCard, investment, insurance, loan
"//
+ "Applicable Values:"//
+ ""//
+ "- amount
"//
+ "- description
"//
+ "
"//
+ "Applicable Values
"//
)
@JsonProperty("field")
private TransactionClauseType field;
@NotNull(message = "{transactions.rule.ruleClauses.operation.required}")
@ApiModelProperty(value = "Operation for which the clause is created."//
+ "
"//
+ "Applicable containers: bank, creditCard, investment, insurance, loan
"//
+ "Applicable values (depends on the value of field):"//
+ ""//
+ "- field is description -> operation can be"//
+ "
"//
+ "- stringEquals
"//
+ "- stringContains
"//
+ "
"//
+ " "//
+ "- field is amount -> operation can be"//
+ "
"//
+ "- numberEquals
"//
+ "- numberLessThan
"//
+ "- numberLessThanEquals
"//
+ "- numberGreaterThan
"//
+ "- numberGreaterThanEquals
"//
+ "
"//
+ " "//
+ "
"//
+ "Applicable Values
"//
)
@JsonProperty("operation")
private Operation operation;
@NotNull(message = "{transactions.rule.ruleClauses.value.required}")
@ApiModelProperty(value = "The value would be the amount value in case of amount based rule clause or the string value in case of description based rule clause."//
+ "
"//
+ "Applicable containers: bank, creditCard, investment, insurance, loan
"//
+ "Applicable Values:"//
+ ""//
+ "- field is description -> value should be min of 3 and max of 50 characters
"//
+ "- field is amount -> value should be min value of 0 and a max value of 99999999999.99
"//
+ "
")
@JsonProperty("value")
private Object value;
public TransactionClauseType field() {
return field;
}
public void setField(TransactionClauseType field) {
this.field = field;
}
/**
* Operation for which the clause is created.
*
* Applicable containers: bank, creditCard, investment, insurance, loan
* Applicable values (depends on the value of field):
*
* - field is description -{@literal >} operation can be
*
* - stringEquals
* - stringContains
*
*
* - field is amount -{@literal >} operation can be
*
* - numberEquals
* - numberLessThan
* - numberLessThanEquals
* - numberGreaterThan
* - numberGreaterThanEquals
*
*
*
* Applicable Values
*
* @return operation
*/
public Operation getOperation() {
return operation;
}
public void setOperation(Operation operation) {
this.operation = operation;
}
/**
* The value would be the amount value in case of amount based rule clause or the string value in case of
* description based rule clause.
*
* Applicable containers: bank, creditCard, investment, insurance, loan
* Applicable Values:
*
* - field is description -{@literal >} value should be min of 3 and max of 50 characters
* - field is amount -{@literal >} value should be min value of 0 and a max value of
* 99999999999.99
*
*
* @return value
*/
public Object getValue() {
return value;
}
public void setValue(Object value) {
this.value = value;
}
@Override
public String toString() {
return "FieldOperation [field=" + field + ", operation=" + operation + ", value=" + value + "]";
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy