public override List <byte[]> GetProperties() { EncodedShortIdsEncoder shortIdsEncoder = new EncodedShortIdsEncoder(); return(new List <byte[]> { ChainHash, shortIdsEncoder.Encode(ShortChannelIds, CompressShortIds) }); }
public override void SetProperties(List <byte[]> propertyData) { EncodedShortIdsEncoder shortIdsEncoder = new EncodedShortIdsEncoder(); ChainHash = propertyData[0]; ShortChannelIds = shortIdsEncoder.Decode(propertyData[1]); CompressShortIds = propertyData[1][0] != 0; }
public override void SetProperties(List <byte[]> propertyData) { EncodedShortIdsEncoder shortIdsEncoder = new EncodedShortIdsEncoder(); ChainHash = propertyData[0]; FirstBlockNumber = propertyData[1].ToUIntBigEndian(); NumberOfBlocks = propertyData[2].ToUIntBigEndian(); Complete = propertyData[3][0] != 0; ShortIds = shortIdsEncoder.Decode(propertyData[4]); CompressShortIds = propertyData[4][0] != 0; }
public override List <byte[]> GetProperties() { EncodedShortIdsEncoder shortIdsEncoder = new EncodedShortIdsEncoder(); return(new List <byte[]> { ChainHash, FirstBlockNumber.GetBytesBigEndian(), NumberOfBlocks.GetBytesBigEndian(), Complete ? new byte[] { 255 } : new byte[1], shortIdsEncoder.Encode(ShortIds, CompressShortIds) }); }
public void EncodeWithCompressionTest() { var encoder = new EncodedShortIdsEncoder(); List <byte[]> ids = new List <byte[]>() { "13bc9c0000800000".HexToByteArray(), "13bc9c0000801111".HexToByteArray(), "13bc9c0000802222".HexToByteArray() }; var encoded = encoder.Encode(ids, true); Assert.Equal("01789c13de338781a1818141184c0b0a4268252500", encoded.ToHex()); }
public void EncodeWithoutCompressionTest() { var encoder = new EncodedShortIdsEncoder(); List <byte[]> ids = new List <byte[]>() { "13bc9c0000800000".HexToByteArray(), "13bc9c0000801111".HexToByteArray(), "13bc9c0000802222".HexToByteArray() }; var encoded = encoder.Encode(ids, false); Assert.Equal("0013bc9c000080000013bc9c000080111113bc9c0000802222", encoded.ToHex()); }
public void DecodeWithCompressionTest() { var encoder = new EncodedShortIdsEncoder(); List <byte[]> reference = new List <byte[]>() { "13bc9c0000800000".HexToByteArray(), "13bc9c0000801111".HexToByteArray(), "13bc9c0000802222".HexToByteArray() }; var decoded = encoder.Decode("01780113de338781a1818141184c0b0a4268252500".HexToByteArray()); Assert.Equal(reference.Count, decoded.Count); for (int i = 0; i < reference.Count; i++) { Assert.True(reference[i].SequenceEqual(decoded[i])); } }