Package com.flagright.api.types
Class Transaction.Builder
- java.lang.Object
-
- com.flagright.api.types.Transaction.Builder
-
- All Implemented Interfaces:
Transaction._FinalStage,Transaction.TimestampStage,Transaction.TransactionIdStage,Transaction.TypeStage
- Enclosing class:
- Transaction
public static final class Transaction.Builder extends java.lang.Object implements Transaction.TypeStage, Transaction.TransactionIdStage, Transaction.TimestampStage, Transaction._FinalStage
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Transactionbuild()Transaction._FinalStagedestinationAmountDetails(TransactionAmountDetails destinationAmountDetails)Transaction._FinalStagedestinationAmountDetails(java.util.Optional<TransactionAmountDetails> destinationAmountDetails)Transaction._FinalStagedestinationDeviceData(DeviceData destinationDeviceData)Transaction._FinalStagedestinationDeviceData(java.util.Optional<DeviceData> destinationDeviceData)Transaction._FinalStagedestinationPaymentDetails(TransactionDestinationPaymentDetails destinationPaymentDetails)Transaction._FinalStagedestinationPaymentDetails(java.util.Optional<TransactionDestinationPaymentDetails> destinationPaymentDetails)Transaction._FinalStagedestinationUserId(java.lang.String destinationUserId)UserId for transaction's destination.Transaction._FinalStagedestinationUserId(java.util.Optional<java.lang.String> destinationUserId)Transaction.Builderfrom(Transaction other)Transaction._FinalStageoriginAmountDetails(TransactionAmountDetails originAmountDetails)Transaction._FinalStageoriginAmountDetails(java.util.Optional<TransactionAmountDetails> originAmountDetails)Transaction._FinalStageoriginDeviceData(DeviceData originDeviceData)Transaction._FinalStageoriginDeviceData(java.util.Optional<DeviceData> originDeviceData)Transaction._FinalStageoriginFundsInfo(OriginFundsInfo originFundsInfo)Transaction._FinalStageoriginFundsInfo(java.util.Optional<OriginFundsInfo> originFundsInfo)Transaction._FinalStageoriginPaymentDetails(TransactionOriginPaymentDetails originPaymentDetails)Payment details of the origin.Transaction._FinalStageoriginPaymentDetails(java.util.Optional<TransactionOriginPaymentDetails> originPaymentDetails)Transaction._FinalStageoriginUserId(java.lang.String originUserId)UserId for where the transaction originates fromTransaction._FinalStageoriginUserId(java.util.Optional<java.lang.String> originUserId)Transaction._FinalStageproductType(java.lang.String productType)Type of produce being used by the consumer (ex wallets, payments etc)Transaction._FinalStageproductType(java.util.Optional<java.lang.String> productType)Transaction._FinalStagepromotionCodeUsed(java.lang.Boolean promotionCodeUsed)Whether a promotion code was used or not the transactionTransaction._FinalStagepromotionCodeUsed(java.util.Optional<java.lang.Boolean> promotionCodeUsed)Transaction._FinalStagereference(java.lang.String reference)Reference field for the transaction indicating the purpose of the transaction etc.Transaction._FinalStagereference(java.util.Optional<java.lang.String> reference)Transaction._FinalStagerelatedTransactionIds(java.util.List<java.lang.String> relatedTransactionIds)IDs of transactions related to this transaction.Transaction._FinalStagerelatedTransactionIds(java.util.Optional<java.util.List<java.lang.String>> relatedTransactionIds)Transaction._FinalStagetags(java.util.List<Tag> tags)Additional information that can be added via tagsTransaction._FinalStagetags(java.util.Optional<java.util.List<Tag>> tags)Transaction._FinalStagetimestamp(double timestamp)Timestamp of when transaction took placeTransaction.TimestampStagetransactionId(java.lang.String transactionId)Unique transaction identifierTransaction._FinalStagetransactionState(TransactionState transactionState)Transaction._FinalStagetransactionState(java.util.Optional<TransactionState> transactionState)Transaction.TransactionIdStagetype(java.lang.String type)Type of transaction (ex: DEPOSIT, WITHDRAWAL, TRANSFER, EXTERNAL_PAYMENT, REFUND, OTHER)Transaction._FinalStageupdateCount(java.lang.Double updateCount)Transaction._FinalStageupdateCount(java.util.Optional<java.lang.Double> updateCount)
-
-
-
Method Detail
-
from
public Transaction.Builder from(Transaction other)
- Specified by:
fromin interfaceTransaction.TypeStage
-
type
public Transaction.TransactionIdStage type(@NotNull java.lang.String type)
Type of transaction (ex: DEPOSIT, WITHDRAWAL, TRANSFER, EXTERNAL_PAYMENT, REFUND, OTHER)
- Specified by:
typein interfaceTransaction.TypeStage- Returns:
- Reference to
thisso that method calls can be chained together.
-
transactionId
public Transaction.TimestampStage transactionId(@NotNull java.lang.String transactionId)
Unique transaction identifier
- Specified by:
transactionIdin interfaceTransaction.TransactionIdStage- Returns:
- Reference to
thisso that method calls can be chained together.
-
timestamp
public Transaction._FinalStage timestamp(double timestamp)
Timestamp of when transaction took place
- Specified by:
timestampin interfaceTransaction.TimestampStage- Returns:
- Reference to
thisso that method calls can be chained together.
-
updateCount
public Transaction._FinalStage updateCount(java.lang.Double updateCount)
- Specified by:
updateCountin interfaceTransaction._FinalStage
-
updateCount
public Transaction._FinalStage updateCount(java.util.Optional<java.lang.Double> updateCount)
- Specified by:
updateCountin interfaceTransaction._FinalStage
-
tags
public Transaction._FinalStage tags(java.util.List<Tag> tags)
Additional information that can be added via tags
- Specified by:
tagsin interfaceTransaction._FinalStage- Returns:
- Reference to
thisso that method calls can be chained together.
-
tags
public Transaction._FinalStage tags(java.util.Optional<java.util.List<Tag>> tags)
- Specified by:
tagsin interfaceTransaction._FinalStage
-
destinationDeviceData
public Transaction._FinalStage destinationDeviceData(DeviceData destinationDeviceData)
- Specified by:
destinationDeviceDatain interfaceTransaction._FinalStage
-
destinationDeviceData
public Transaction._FinalStage destinationDeviceData(java.util.Optional<DeviceData> destinationDeviceData)
- Specified by:
destinationDeviceDatain interfaceTransaction._FinalStage
-
originDeviceData
public Transaction._FinalStage originDeviceData(DeviceData originDeviceData)
- Specified by:
originDeviceDatain interfaceTransaction._FinalStage
-
originDeviceData
public Transaction._FinalStage originDeviceData(java.util.Optional<DeviceData> originDeviceData)
- Specified by:
originDeviceDatain interfaceTransaction._FinalStage
-
reference
public Transaction._FinalStage reference(java.lang.String reference)
Reference field for the transaction indicating the purpose of the transaction etc.
- Specified by:
referencein interfaceTransaction._FinalStage- Returns:
- Reference to
thisso that method calls can be chained together.
-
reference
public Transaction._FinalStage reference(java.util.Optional<java.lang.String> reference)
- Specified by:
referencein interfaceTransaction._FinalStage
-
promotionCodeUsed
public Transaction._FinalStage promotionCodeUsed(java.lang.Boolean promotionCodeUsed)
Whether a promotion code was used or not the transaction
- Specified by:
promotionCodeUsedin interfaceTransaction._FinalStage- Returns:
- Reference to
thisso that method calls can be chained together.
-
promotionCodeUsed
public Transaction._FinalStage promotionCodeUsed(java.util.Optional<java.lang.Boolean> promotionCodeUsed)
- Specified by:
promotionCodeUsedin interfaceTransaction._FinalStage
-
productType
public Transaction._FinalStage productType(java.lang.String productType)
Type of produce being used by the consumer (ex wallets, payments etc)
- Specified by:
productTypein interfaceTransaction._FinalStage- Returns:
- Reference to
thisso that method calls can be chained together.
-
productType
public Transaction._FinalStage productType(java.util.Optional<java.lang.String> productType)
- Specified by:
productTypein interfaceTransaction._FinalStage
-
relatedTransactionIds
public Transaction._FinalStage relatedTransactionIds(java.util.List<java.lang.String> relatedTransactionIds)
IDs of transactions related to this transaction. Ex: refund, split bills
- Specified by:
relatedTransactionIdsin interfaceTransaction._FinalStage- Returns:
- Reference to
thisso that method calls can be chained together.
-
relatedTransactionIds
public Transaction._FinalStage relatedTransactionIds(java.util.Optional<java.util.List<java.lang.String>> relatedTransactionIds)
- Specified by:
relatedTransactionIdsin interfaceTransaction._FinalStage
-
originFundsInfo
public Transaction._FinalStage originFundsInfo(OriginFundsInfo originFundsInfo)
- Specified by:
originFundsInfoin interfaceTransaction._FinalStage
-
originFundsInfo
public Transaction._FinalStage originFundsInfo(java.util.Optional<OriginFundsInfo> originFundsInfo)
- Specified by:
originFundsInfoin interfaceTransaction._FinalStage
-
destinationPaymentDetails
public Transaction._FinalStage destinationPaymentDetails(TransactionDestinationPaymentDetails destinationPaymentDetails)
- Specified by:
destinationPaymentDetailsin interfaceTransaction._FinalStage
-
destinationPaymentDetails
public Transaction._FinalStage destinationPaymentDetails(java.util.Optional<TransactionDestinationPaymentDetails> destinationPaymentDetails)
- Specified by:
destinationPaymentDetailsin interfaceTransaction._FinalStage
-
originPaymentDetails
public Transaction._FinalStage originPaymentDetails(TransactionOriginPaymentDetails originPaymentDetails)
Payment details of the origin. It can be a bank account number, wallet ID, card fingerprint etc.
- Specified by:
originPaymentDetailsin interfaceTransaction._FinalStage- Returns:
- Reference to
thisso that method calls can be chained together.
-
originPaymentDetails
public Transaction._FinalStage originPaymentDetails(java.util.Optional<TransactionOriginPaymentDetails> originPaymentDetails)
- Specified by:
originPaymentDetailsin interfaceTransaction._FinalStage
-
destinationAmountDetails
public Transaction._FinalStage destinationAmountDetails(TransactionAmountDetails destinationAmountDetails)
- Specified by:
destinationAmountDetailsin interfaceTransaction._FinalStage
-
destinationAmountDetails
public Transaction._FinalStage destinationAmountDetails(java.util.Optional<TransactionAmountDetails> destinationAmountDetails)
- Specified by:
destinationAmountDetailsin interfaceTransaction._FinalStage
-
originAmountDetails
public Transaction._FinalStage originAmountDetails(TransactionAmountDetails originAmountDetails)
- Specified by:
originAmountDetailsin interfaceTransaction._FinalStage
-
originAmountDetails
public Transaction._FinalStage originAmountDetails(java.util.Optional<TransactionAmountDetails> originAmountDetails)
- Specified by:
originAmountDetailsin interfaceTransaction._FinalStage
-
transactionState
public Transaction._FinalStage transactionState(TransactionState transactionState)
- Specified by:
transactionStatein interfaceTransaction._FinalStage
-
transactionState
public Transaction._FinalStage transactionState(java.util.Optional<TransactionState> transactionState)
- Specified by:
transactionStatein interfaceTransaction._FinalStage
-
destinationUserId
public Transaction._FinalStage destinationUserId(java.lang.String destinationUserId)
UserId for transaction's destination. In other words, where the value is being transferred to.
- Specified by:
destinationUserIdin interfaceTransaction._FinalStage- Returns:
- Reference to
thisso that method calls can be chained together.
-
destinationUserId
public Transaction._FinalStage destinationUserId(java.util.Optional<java.lang.String> destinationUserId)
- Specified by:
destinationUserIdin interfaceTransaction._FinalStage
-
originUserId
public Transaction._FinalStage originUserId(java.lang.String originUserId)
UserId for where the transaction originates from
- Specified by:
originUserIdin interfaceTransaction._FinalStage- Returns:
- Reference to
thisso that method calls can be chained together.
-
originUserId
public Transaction._FinalStage originUserId(java.util.Optional<java.lang.String> originUserId)
- Specified by:
originUserIdin interfaceTransaction._FinalStage
-
build
public Transaction build()
- Specified by:
buildin interfaceTransaction._FinalStage
-
-