Package org.imixs.workflow.sepa.plugins
Class IBANBICPlugin
- java.lang.Object
-
- org.imixs.workflow.engine.plugins.AbstractPlugin
-
- org.imixs.workflow.sepa.plugins.IBANBICPlugin
-
- All Implemented Interfaces:
org.imixs.workflow.Plugin
public class IBANBICPlugin extends org.imixs.workflow.engine.plugins.AbstractPluginThe IBANBICPlugin validates the items dbtr.iban, dbtr.bic, cdtr.iban and cdtr.bic.Validation is skipped in case no data is provided.
For validation we use the open source library 'iban4j'
Note: In some cases the IBAN/BIC is provided on a external invoice with spaces at positions which are strictly not allowed. For example a space between the country and the first to digits 'DE 99'. We accept those settings by removing all spaces before validation. You can disable this behaviour by setting the property sepa.validation.strict=true.
- Version:
- 1.0
- Author:
- rsoika
-
-
Field Summary
Fields Modifier and Type Field Description static String[]BIC_ITEMSstatic StringERROR_INVALID_IBANBICstatic String[]IBAN_BIC_ITEMSstatic String[]IBAN_ITEMSstatic StringSEPA_VALIDATION_STRICT
-
Constructor Summary
Constructors Constructor Description IBANBICPlugin()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.imixs.workflow.ItemCollectionrun(org.imixs.workflow.ItemCollection workitem, org.imixs.workflow.ItemCollection event)Validates the items dbtr.iban, dbtr.bic, cdtr.iban and cdtr.bic.voidsetSepaValidationStrict(boolean sepaValidationStrict)voidvalidateBIC(org.imixs.workflow.ItemCollection workitem, String... itemNames)This method validates an bic item.voidvalidateIBAN(org.imixs.workflow.ItemCollection workitem, String... itemNames)This method validates an iban item.
-
-
-
Field Detail
-
ERROR_INVALID_IBANBIC
public static final String ERROR_INVALID_IBANBIC
- See Also:
- Constant Field Values
-
SEPA_VALIDATION_STRICT
public static final String SEPA_VALIDATION_STRICT
- See Also:
- Constant Field Values
-
IBAN_BIC_ITEMS
public static final String[] IBAN_BIC_ITEMS
-
IBAN_ITEMS
public static final String[] IBAN_ITEMS
-
BIC_ITEMS
public static final String[] BIC_ITEMS
-
-
Method Detail
-
run
public org.imixs.workflow.ItemCollection run(org.imixs.workflow.ItemCollection workitem, org.imixs.workflow.ItemCollection event) throws org.imixs.workflow.exceptions.PluginExceptionValidates the items dbtr.iban, dbtr.bic, cdtr.iban and cdtr.bic. If the input is not valid the method throws a PluginExceptionIf the event result provides the tag
<validation name="required">false</validation>the validation will be scipped
- Throws:
org.imixs.workflow.exceptions.PluginException- - if invalid iban/bic
-
setSepaValidationStrict
public void setSepaValidationStrict(boolean sepaValidationStrict)
-
validateIBAN
public void validateIBAN(org.imixs.workflow.ItemCollection workitem, String... itemNames)This method validates an iban item.The method supports formated IBAN input as well as normal IBAN (without spaces)
- Parameters:
workitem-itemName-- Throws:
org.imixs.workflow.exceptions.PluginException
-
validateBIC
public void validateBIC(org.imixs.workflow.ItemCollection workitem, String... itemNames)This method validates an bic item.- Parameters:
workitem-itemName-- Throws:
org.imixs.workflow.exceptions.PluginException
-
-