For example, the state implementation can be done as follow:
// Input Attribute
private static final TextBoxAttribute inPIId = new TextBoxAttribute("PI_ID", "Payment Instrument Id", false);
private static final TextBoxAttribute inOutputDateFormat = new TextBoxAttribute("OUTPUT_DATE_FORMAT", "Override default output date format", true);
// Output Attributes
private static final OutputAttribute outAcctNumber = new OutputAttribute("PI_BANKACCT_ACCTNUMBER", "Account number");
private static final OutputAttribute outHolderName = new OutputAttribute("PI_BANKACCT_HOLDERNAME", "Account holder name");
private static Attribute[] stateAttr = new Attribute[] { inPIId, inOutputDateFormat, outAcctNumber, outHolderName};
protected Attribute[] getStateAttributes() {
return stateAttr;
}