<commit_before>package com.realexpayments.hpp.sdk.domain;

import java.io.UnsupportedEncodingException;
import java.util.HashMap;
import java.util.Map;

import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;

import org.apache.commons.codec.binary.Base64;

import com.fasterxml.jackson.annotation.JsonAnyGetter;
import com.fasterxml.jackson.annotation.JsonAnySetter;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.realexpayments.hpp.sdk.utils.GenerationUtils;
import com.realexpayments.hpp.sdk.validators.OtbAmount;

/**
 * <p>
 * Class representing a request to be sent to HPP.
 * </p>
 * <p>
 * Helper methods are provided (prefixed with 'add') for object creation.
 * </p>
 * <p>
 * Example usage:
 * <code><pre>
 * HppRequest request = new HppRequest()
 * 	.addAmount(100)
 * 	.addCurrency("EUR")
 * 	.addMerchantId("merchantId");
 * </pre></code>
 * </p>
 * 
 * @author markstanford
 */
@OtbAmount
public class HppRequest {

	public enum Flag {
		TRUE("1"),
		FALSE("0");

		/**
		 * The flag String value 
		 */
		private final String flag;<commit_msg>Included annotation to prevent request values being populated with NULL.<commit_after>package com.realexpayments.hpp.sdk.domain;

import java.io.UnsupportedEncodingException;
import java.util.HashMap;
import java.util.Map;

import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;

import org.apache.commons.codec.binary.Base64;

import com.fasterxml.jackson.annotation.JsonAnyGetter;
import com.fasterxml.jackson.annotation.JsonAnySetter;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.realexpayments.hpp.sdk.utils.GenerationUtils;
import com.realexpayments.hpp.sdk.validators.OtbAmount;

/**
 * <p>
 * Class representing a request to be sent to HPP.
 * </p>
 * <p>
 * Helper methods are provided (prefixed with 'add') for object creation.
 * </p>
 * <p>
 * Example usage:
 * <code><pre>
 * HppRequest request = new HppRequest()
 * 	.addAmount(100)
 * 	.addCurrency("EUR")
 * 	.addMerchantId("merchantId");
 * </pre></code>
 * </p>
 * 
 * @author markstanford
 */
@JsonInclude(Include.NON_NULL)
@OtbAmount
public class HppRequest {

	public enum Flag {
		TRUE("1"),
		FALSE("0");

		/**
		 * The flag String value 
		 */
		private final String flag;
{'fraction_non_alphanumeric': 0.12904498816101026, 'fraction_numerical': 0.0055248618784530384, 'mean_word_length': 4.645879732739421, 'pattern_counts': {'":': 0, '<': 23, '<?xml version=': 0, '>': 23, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 10}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3019201', 'n_tokens_mistral': 858, 'n_tokens_neox': 802, 'n_words': 175}