Class AbstractTransactionMapper<D,T extends io.nem.sdk.model.transaction.Transaction>
- java.lang.Object
-
- io.nem.sdk.infrastructure.okhttp.mappers.AbstractTransactionMapper<D,T>
-
- Type Parameters:
T- the dto type of the transaction object.
- All Implemented Interfaces:
TransactionMapper
- Direct Known Subclasses:
AccountAddressRestrictionTransactionMapper,AccountMosaicRestrictionTransactionMapper,AccountOperationRestrictionTransactionMapper
public abstract class AbstractTransactionMapper<D,T extends io.nem.sdk.model.transaction.Transaction> extends java.lang.Object implements TransactionMapper
Abstract transaction mapper for the transaction mappers that support a specific type of transaction (Account Link, Mosaic Alias, etc.).
-
-
Constructor Summary
Constructors Constructor Description AbstractTransactionMapper(io.nem.sdk.model.transaction.JsonHelper jsonHelper, io.nem.sdk.model.transaction.TransactionType transactionType, java.lang.Class<D> transactionDtoClass)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract voidcopyToDto(T transaction, D dto)Subclasses need to map the values from the transaction model to the transaction dto.protected abstract io.nem.sdk.model.transaction.TransactionFactory<T>createFactory(io.nem.sdk.model.blockchain.NetworkType networkType, D transaction)protected TcreateModel(io.nem.sdk.model.transaction.TransactionInfo transactionInfo, java.lang.Object transactionDto)protected io.nem.sdk.model.transaction.TransactionInfocreateTransactionInfo(io.nem.sdk.openapi.okhttp_gson.model.EmbeddedTransactionMetaDTO meta)protected io.nem.sdk.model.transaction.TransactionInfocreateTransactionInfo(io.nem.sdk.openapi.okhttp_gson.model.TransactionMetaDTO meta)io.nem.sdk.model.transaction.JsonHelpergetJsonHelper()io.nem.sdk.model.transaction.TransactionTypegetTransactionType()The type of transactions this mapper supports.io.nem.sdk.openapi.okhttp_gson.model.TransactionInfoDTOmap(io.nem.sdk.model.transaction.Transaction transaction)It maps an transaction to an DTO transaction.io.nem.sdk.model.transaction.Transactionmap(io.nem.sdk.openapi.okhttp_gson.model.EmbeddedTransactionInfoDTO transactionInfoDTO)It maps an embedded transaction included in an aggregate transaction.io.nem.sdk.model.transaction.Transactionmap(io.nem.sdk.openapi.okhttp_gson.model.TransactionInfoDTO transactionInfoDTO)It maps a general transaction included in a top level json response.io.nem.sdk.openapi.okhttp_gson.model.EmbeddedTransactionInfoDTOmapToEmbedded(io.nem.sdk.model.transaction.Transaction transaction)It maps an inner transaction to an embedded DTO transaction.
-
-
-
Constructor Detail
-
AbstractTransactionMapper
public AbstractTransactionMapper(io.nem.sdk.model.transaction.JsonHelper jsonHelper, io.nem.sdk.model.transaction.TransactionType transactionType, java.lang.Class<D> transactionDtoClass)
-
-
Method Detail
-
map
public io.nem.sdk.model.transaction.Transaction map(io.nem.sdk.openapi.okhttp_gson.model.EmbeddedTransactionInfoDTO transactionInfoDTO)
Description copied from interface:TransactionMapperIt maps an embedded transaction included in an aggregate transaction.- Specified by:
mapin interfaceTransactionMapper- Parameters:
transactionInfoDTO- the embedded transaction- Returns:
- the
Transaction
-
map
public io.nem.sdk.model.transaction.Transaction map(io.nem.sdk.openapi.okhttp_gson.model.TransactionInfoDTO transactionInfoDTO)
Description copied from interface:TransactionMapperIt maps a general transaction included in a top level json response.- Specified by:
mapin interfaceTransactionMapper- Parameters:
transactionInfoDTO- the the general transaction- Returns:
- the
Transaction
-
createModel
protected final T createModel(io.nem.sdk.model.transaction.TransactionInfo transactionInfo, java.lang.Object transactionDto)
-
createFactory
protected abstract io.nem.sdk.model.transaction.TransactionFactory<T> createFactory(io.nem.sdk.model.blockchain.NetworkType networkType, D transaction)
-
createTransactionInfo
protected io.nem.sdk.model.transaction.TransactionInfo createTransactionInfo(io.nem.sdk.openapi.okhttp_gson.model.TransactionMetaDTO meta)
-
createTransactionInfo
protected io.nem.sdk.model.transaction.TransactionInfo createTransactionInfo(io.nem.sdk.openapi.okhttp_gson.model.EmbeddedTransactionMetaDTO meta)
-
mapToEmbedded
public io.nem.sdk.openapi.okhttp_gson.model.EmbeddedTransactionInfoDTO mapToEmbedded(io.nem.sdk.model.transaction.Transaction transaction)
Description copied from interface:TransactionMapperIt maps an inner transaction to an embedded DTO transaction.- Specified by:
mapToEmbeddedin interfaceTransactionMapper- Parameters:
transaction- the transaction.- Returns:
- the
EmbeddedTransactionInfoDTO
-
map
public io.nem.sdk.openapi.okhttp_gson.model.TransactionInfoDTO map(io.nem.sdk.model.transaction.Transaction transaction)
Description copied from interface:TransactionMapperIt maps an transaction to an DTO transaction.- Specified by:
mapin interfaceTransactionMapper- Parameters:
transaction- the the general transaction- Returns:
- the
TransactionInfoDTO
-
copyToDto
protected abstract void copyToDto(T transaction, D dto)
Subclasses need to map the values from the transaction model to the transaction dto. Only the specific fields need to be mapped, not the common like maxFee or deadline as they are done in this abstract class.- Parameters:
transaction- the transaction modeldto- the transaction dto.
-
getJsonHelper
public io.nem.sdk.model.transaction.JsonHelper getJsonHelper()
-
getTransactionType
public io.nem.sdk.model.transaction.TransactionType getTransactionType()
Description copied from interface:TransactionMapperThe type of transactions this mapper supports.- Specified by:
getTransactionTypein interfaceTransactionMapper- Returns:
- the supported transaction type or null if supports all.
-
-