Package nxt.blockchain
Class ChildTransactionType
java.lang.Object
nxt.blockchain.TransactionType
nxt.blockchain.ChildTransactionType
- Direct Known Subclasses:
AccountControlTransactionType,AccountPropertyTransactionType,AliasTransactionType,AssetExchangeTransactionType,ChildChainControlTransactionType,CoinExchangeTransactionType,DigitalGoodsTransactionType,LightContractTransactionType,MessagingTransactionType,MonetarySystemTransactionType,PaymentTransactionType,ShufflingTransactionType,TaggedDataTransactionType,VotingTransactionType
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final byteprotected static final byteprotected static final byteprotected static final byteprotected static final byteprotected static final byteprotected static final byteprotected static final byteprotected static final byteprotected static final byteprotected static final byteprotected static final byteprotected static final byteprotected static final byte -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal voidapply(TransactionImpl transaction, Account senderAccount, Account recipientAccount) protected abstract voidapplyAttachment(ChildTransactionImpl transaction, Account senderAccount, Account recipientAccount) final voidapplyAttachment(Transaction transaction, Account senderAccount, Account recipientAccount) protected abstract booleanapplyAttachmentUnconfirmed(ChildTransactionImpl transaction, Account senderAccount) final booleanapplyAttachmentUnconfirmed(Transaction transaction, Account senderAccount) final booleanapplyUnconfirmed(TransactionImpl transaction, Account senderAccount) static TransactionTypefindTransactionType(byte type, byte subtype) getBaselineFee(Transaction transaction) protected List<ChildChain>getInvolvedChildChains(ChildTransactionImpl transaction) final List<ChildChain>getInvolvedChildChains(Transaction transaction) protected abstract voidundoAttachmentUnconfirmed(ChildTransactionImpl transaction, Account senderAccount) final voidundoAttachmentUnconfirmed(Transaction transaction, Account senderAccount) final voidundoUnconfirmed(TransactionImpl transaction, Account senderAccount) protected abstract voidvalidateAttachment(ChildTransactionImpl transaction) final voidvalidateAttachment(Transaction transaction) protected voidvalidateId(ChildTransactionImpl transaction) protected final voidvalidateId(Transaction transaction) Methods inherited from class nxt.blockchain.TransactionType
canHaveRecipient, getBaselineFeeHeight, getLedgerEvent, getName, getNextFee, getNextFeeHeight, getSubtype, getType, isBlockDuplicate, isDuplicate, isDuplicate, isDuplicate, isGlobal, isPhasable, isPhasingSafe, isPruned, isUnconfirmedDuplicate, mustHaveRecipient, parseAttachment, parseAttachment, toString
-
Field Details
-
TYPE_PAYMENT
protected static final byte TYPE_PAYMENT- See Also:
-
TYPE_MESSAGING
protected static final byte TYPE_MESSAGING- See Also:
-
TYPE_ASSET_EXCHANGE
protected static final byte TYPE_ASSET_EXCHANGE- See Also:
-
TYPE_DIGITAL_GOODS
protected static final byte TYPE_DIGITAL_GOODS- See Also:
-
TYPE_ACCOUNT_CONTROL
protected static final byte TYPE_ACCOUNT_CONTROL- See Also:
-
TYPE_MONETARY_SYSTEM
protected static final byte TYPE_MONETARY_SYSTEM- See Also:
-
TYPE_DATA
protected static final byte TYPE_DATA- See Also:
-
TYPE_SHUFFLING
protected static final byte TYPE_SHUFFLING- See Also:
-
TYPE_ALIASES
protected static final byte TYPE_ALIASES- See Also:
-
TYPE_VOTING
protected static final byte TYPE_VOTING- See Also:
-
TYPE_ACCOUNT_PROPERTY
protected static final byte TYPE_ACCOUNT_PROPERTY- See Also:
-
TYPE_COIN_EXCHANGE
protected static final byte TYPE_COIN_EXCHANGE- See Also:
-
TYPE_LIGHT_CONTRACT
protected static final byte TYPE_LIGHT_CONTRACT- See Also:
-
TYPE_CHILD_CHAIN_CONTROL
protected static final byte TYPE_CHILD_CHAIN_CONTROL- See Also:
-
-
Constructor Details
-
ChildTransactionType
public ChildTransactionType()
-
-
Method Details
-
findTransactionType
-
getBaselineFee
- Specified by:
getBaselineFeein classTransactionType
-
applyUnconfirmed
- Specified by:
applyUnconfirmedin classTransactionType
-
apply
public final void apply(TransactionImpl transaction, Account senderAccount, Account recipientAccount) - Specified by:
applyin classTransactionType
-
undoUnconfirmed
- Specified by:
undoUnconfirmedin classTransactionType
-
validateAttachment
public final void validateAttachment(Transaction transaction) throws NxtException.ValidationException - Specified by:
validateAttachmentin classTransactionType- Throws:
NxtException.ValidationException
-
validateAttachment
protected abstract void validateAttachment(ChildTransactionImpl transaction) throws NxtException.ValidationException - Throws:
NxtException.ValidationException
-
applyAttachmentUnconfirmed
- Specified by:
applyAttachmentUnconfirmedin classTransactionType
-
applyAttachmentUnconfirmed
protected abstract boolean applyAttachmentUnconfirmed(ChildTransactionImpl transaction, Account senderAccount) - Parameters:
transaction- Transaction to apply as unconfirmedsenderAccount- Cached sender account- Returns:
- return false ONLY if double spending detected.
-
applyAttachment
public final void applyAttachment(Transaction transaction, Account senderAccount, Account recipientAccount) - Specified by:
applyAttachmentin classTransactionType
-
applyAttachment
protected abstract void applyAttachment(ChildTransactionImpl transaction, Account senderAccount, Account recipientAccount) -
undoAttachmentUnconfirmed
- Specified by:
undoAttachmentUnconfirmedin classTransactionType
-
undoAttachmentUnconfirmed
protected abstract void undoAttachmentUnconfirmed(ChildTransactionImpl transaction, Account senderAccount) -
validateId
- Specified by:
validateIdin classTransactionType- Throws:
NxtException.ValidationException
-
validateId
protected void validateId(ChildTransactionImpl transaction) throws NxtException.NotCurrentlyValidException -
getInvolvedChildChains
- Specified by:
getInvolvedChildChainsin classTransactionType
-
getInvolvedChildChains
-