public static Receipt FromDto(JObject dto) { var type = ReceiptTypeExtension.GetRawValue(dto["type"].ToObject <int>()); switch (type) { case ReceiptType.Harvest_Fee: case ReceiptType.LockHash_Created: case ReceiptType.LockHash_Completed: case ReceiptType.LockHash_Expired: case ReceiptType.LockSecret_Created: case ReceiptType.LockSecret_Completed: case ReceiptType.LockSecret_Expired: return(new Receipt(ReceiptVersion.BALANCE_CHANGE, type, null)); case ReceiptType.Mosaic_Levy: case ReceiptType.Mosaic_Rental_Fee: case ReceiptType.Namespace_Rental_Fee: return(new Receipt(ReceiptVersion.BALANCE_TRANSFER, type, null)); case ReceiptType.Mosaic_Expired: case ReceiptType.Namespace_Expired: return(new Receipt(ReceiptVersion.ARTIFACT_EXPIRY, type, null)); case ReceiptType.Inflation: return(new Receipt(ReceiptVersion.INFLATION_RECEIPT, type, null)); } throw new Exception("Unsupport Receipt"); }
public static BalanceChangeReceipt FromDto(JObject dto, NetworkType networkType) { var type = ReceiptTypeExtension.GetRawValue(dto["type"].ToObject <int>()); var account = PublicAccount.CreateFromPublicKey(dto["account"].ToObject <string>(), networkType); var mosaicId = dto["mosaicId"].ToObject <UInt64DTO>().ToUInt64(); var amount = dto["amount"].ToObject <UInt64DTO>().ToUInt64(); return(new BalanceChangeReceipt(account, new MosaicId(mosaicId), amount, ReceiptVersion.BALANCE_CHANGE, type, null)); }
public static InflationReceipt FromDto(JObject dto) { var type = ReceiptTypeExtension.GetRawValue(dto["type"].ToObject <int>()); var mosaicId = dto["mosaicId"].ToObject <UInt64DTO>().ToUInt64(); var amount = dto["amount"].ToObject <UInt64DTO>().ToUInt64(); return(new InflationReceipt(new MosaicId(mosaicId), amount, ReceiptVersion.INFLATION_RECEIPT, type, null)); }
public static ArtifactExpiryReceipt FromDto(JObject dto) { var type = ReceiptTypeExtension.GetRawValue(dto["type"].ToObject <int>()); switch (type) { case ReceiptType.Mosaic_Expired: //Mosaic_Expired var mosaicId = dto["mosaicId"].ToObject <UInt64DTO>().ToUInt64(); return(new ArtifactExpiryReceipt(new MosaicId(mosaicId), ReceiptVersion.ARTIFACT_EXPIRY, type, null)); case ReceiptType.Namespace_Expired: //Namespace_Expired var namespaceId = dto["namespaceId"].ToObject <UInt64DTO>().ToUInt64(); return(new ArtifactExpiryReceipt(new NamespaceId(namespaceId), ReceiptVersion.ARTIFACT_EXPIRY, type, null)); default: throw new Exception("Reciept Type is not support"); } }