All Downloads are FREE. Search and download functionalities are using the official Maven repository.

au.org.consumerdatastandards.api.banking.models.BankingPayeeDetail Maven / Gradle / Ivy

Go to download

This artefact describes the Consumer Data Standards using Java classes and annotations in a way suitable for automatic generation of Open API Specification, documentation, Server Stub, Client Libraries and Reference Test.

There is a newer version: 1.1.1
Show newest version
package au.org.consumerdatastandards.api.banking.models;

import au.org.consumerdatastandards.support.data.*;

@DataDefinition(
    allOf = { BankingPayee.class },
    anyOf = { "domestic", "biller", "international" }
)
@CustomAttributes({
    @CustomAttribute(name = "x-conditional", value = "domestic", multiple = true),
    @CustomAttribute(name = "x-conditional", value = "biller", multiple = true),
    @CustomAttribute(name = "x-conditional", value = "international", multiple = true)
})
public class BankingPayeeDetail {

    public enum PayeeUType {
        domestic,
        biller,
        international
    }

    @Property(
        description = "Type of object included that describes the payee in detail",
        required = true
    )
    PayeeUType payeeUType;

    @Property(
        requiredIf = { @Condition(propertyName = "payeeUType", values = {"domestic"}) }
    )
    BankingDomesticPayee domestic;

    @Property(
        requiredIf = { @Condition(propertyName = "payeeUType", values = {"biller"}) }
    )
    BankingBillerPayee biller;

    @Property(
        requiredIf = { @Condition(propertyName = "payeeUType", values = {"international"}) }
    )
    BankingInternationalPayee international;
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy