createByName method

ISerializable createByName(
  1. String entityName
)

Implementation

ISerializable createByName(String entityName) {
	var mapping = <String, ISerializable Function()>{
		'account_key_link_transaction_v1': () => AccountKeyLinkTransactionV1(),
		'node_key_link_transaction_v1': () => NodeKeyLinkTransactionV1(),
		'aggregate_complete_transaction_v1': () => AggregateCompleteTransactionV1(),
		'aggregate_complete_transaction_v2': () => AggregateCompleteTransactionV2(),
		'aggregate_complete_transaction_v3': () => AggregateCompleteTransactionV3(),
		'aggregate_bonded_transaction_v1': () => AggregateBondedTransactionV1(),
		'aggregate_bonded_transaction_v2': () => AggregateBondedTransactionV2(),
		'aggregate_bonded_transaction_v3': () => AggregateBondedTransactionV3(),
		'voting_key_link_transaction_v1': () => VotingKeyLinkTransactionV1(),
		'vrf_key_link_transaction_v1': () => VrfKeyLinkTransactionV1(),
		'hash_lock_transaction_v1': () => HashLockTransactionV1(),
		'secret_lock_transaction_v1': () => SecretLockTransactionV1(),
		'secret_proof_transaction_v1': () => SecretProofTransactionV1(),
		'account_metadata_transaction_v1': () => AccountMetadataTransactionV1(),
		'mosaic_metadata_transaction_v1': () => MosaicMetadataTransactionV1(),
		'namespace_metadata_transaction_v1': () => NamespaceMetadataTransactionV1(),
		'mosaic_definition_transaction_v1': () => MosaicDefinitionTransactionV1(),
		'mosaic_supply_change_transaction_v1': () => MosaicSupplyChangeTransactionV1(),
		'mosaic_supply_revocation_transaction_v1': () => MosaicSupplyRevocationTransactionV1(),
		'multisig_account_modification_transaction_v1': () => MultisigAccountModificationTransactionV1(),
		'address_alias_transaction_v1': () => AddressAliasTransactionV1(),
		'mosaic_alias_transaction_v1': () => MosaicAliasTransactionV1(),
		'namespace_registration_transaction_v1': () => NamespaceRegistrationTransactionV1(),
		'account_address_restriction_transaction_v1': () => AccountAddressRestrictionTransactionV1(),
		'account_mosaic_restriction_transaction_v1': () => AccountMosaicRestrictionTransactionV1(),
		'account_operation_restriction_transaction_v1': () => AccountOperationRestrictionTransactionV1(),
		'mosaic_address_restriction_transaction_v1': () => MosaicAddressRestrictionTransactionV1(),
		'mosaic_global_restriction_transaction_v1': () => MosaicGlobalRestrictionTransactionV1(),
		'transfer_transaction_v1': () => TransferTransactionV1()
	};

	if (!mapping.containsKey(entityName)) {
		throw Exception('Unknown Transaction type $entityName');
	}

	return mapping[entityName]!();
}