createByName method

ISerializable createByName(
  1. String entityName
)

Implementation

ISerializable createByName(String entityName) {
	var mapping = <String, ISerializable Function()>{
		'account_key_link_transaction_v1': () => EmbeddedAccountKeyLinkTransactionV1(),
		'node_key_link_transaction_v1': () => EmbeddedNodeKeyLinkTransactionV1(),
		'voting_key_link_transaction_v1': () => EmbeddedVotingKeyLinkTransactionV1(),
		'vrf_key_link_transaction_v1': () => EmbeddedVrfKeyLinkTransactionV1(),
		'hash_lock_transaction_v1': () => EmbeddedHashLockTransactionV1(),
		'secret_lock_transaction_v1': () => EmbeddedSecretLockTransactionV1(),
		'secret_proof_transaction_v1': () => EmbeddedSecretProofTransactionV1(),
		'account_metadata_transaction_v1': () => EmbeddedAccountMetadataTransactionV1(),
		'mosaic_metadata_transaction_v1': () => EmbeddedMosaicMetadataTransactionV1(),
		'namespace_metadata_transaction_v1': () => EmbeddedNamespaceMetadataTransactionV1(),
		'mosaic_definition_transaction_v1': () => EmbeddedMosaicDefinitionTransactionV1(),
		'mosaic_supply_change_transaction_v1': () => EmbeddedMosaicSupplyChangeTransactionV1(),
		'mosaic_supply_revocation_transaction_v1': () => EmbeddedMosaicSupplyRevocationTransactionV1(),
		'multisig_account_modification_transaction_v1': () => EmbeddedMultisigAccountModificationTransactionV1(),
		'address_alias_transaction_v1': () => EmbeddedAddressAliasTransactionV1(),
		'mosaic_alias_transaction_v1': () => EmbeddedMosaicAliasTransactionV1(),
		'namespace_registration_transaction_v1': () => EmbeddedNamespaceRegistrationTransactionV1(),
		'account_address_restriction_transaction_v1': () => EmbeddedAccountAddressRestrictionTransactionV1(),
		'account_mosaic_restriction_transaction_v1': () => EmbeddedAccountMosaicRestrictionTransactionV1(),
		'account_operation_restriction_transaction_v1': () => EmbeddedAccountOperationRestrictionTransactionV1(),
		'mosaic_address_restriction_transaction_v1': () => EmbeddedMosaicAddressRestrictionTransactionV1(),
		'mosaic_global_restriction_transaction_v1': () => EmbeddedMosaicGlobalRestrictionTransactionV1(),
		'transfer_transaction_v1': () => EmbeddedTransferTransactionV1()
	};

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

	return mapping[entityName]!();
}