public void TestPutContainerOnlyOne() { using var client = new Client.Client(key, host); var replica1 = new Replica(1, "loc1"); var replica2 = new Replica(1, "loc2"); var selector1 = new Selector("loc1", "Location", Clause.Same, 1, "loc1"); var selector2 = new Selector("loc2", "Location", Clause.Same, 1, "loc2"); var filter1 = new Filter("loc1", "Location", "Shanghai", Netmap.Operation.Eq); var filter2 = new Filter("loc2", "Location", "Shanghai", Netmap.Operation.Ne); var policy = new PlacementPolicy(1, new Replica[] { replica1, replica2 }, new Selector[] { selector1, selector2 }, new Filter[] { filter1, filter2 }); var container = new Container.Container { Version = Refs.Version.SDKVersion(), OwnerId = OwnerID.FromScriptHash(key.PublicKey().PublicKeyToScriptHash()), Nonce = Guid.NewGuid().ToByteString(), BasicAcl = BasicAcl.PublicBasicRule, PlacementPolicy = policy, }; container.Attributes.Add(new Container.Container.Types.Attribute { Key = "CreatedAt", Value = DateTime.UtcNow.ToString(), }); using var source = new CancellationTokenSource(); source.CancelAfter(TimeSpan.FromMinutes(1)); var cid = client.PutContainer(container, context: source.Token).Result; Console.WriteLine(cid.String()); Assert.AreEqual(container.CalCulateAndGetId, cid); }
public override int GetHashCode() { int hash = 1; if (OwnerID.Length != 0) { hash ^= OwnerID.GetHashCode(); } if (Salt.Length != 0) { hash ^= Salt.GetHashCode(); } if (Capacity != 0UL) { hash ^= Capacity.GetHashCode(); } if (rules_ != null) { hash ^= Rules.GetHashCode(); } if (BasicACL != 0) { hash ^= BasicACL.GetHashCode(); } if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }
/// <summary> /// Возвращает коллекцию параметров. /// </summary> public override Dictionary <string, string> GetParameters() { var parameters = base.GetParameters(); if (OwnerID != 0) { parameters["owner_id"] = OwnerID.ToString(); } parameters["video_id"] = VideoID.ToString(); if (!string.IsNullOrWhiteSpace(Message)) { parameters["message"] = Message; } if (Attachments != null && Attachments.Count != 0) { parameters["attachments"] = string.Join(",", Attachments); } if (FromGroup != VKBoolean.False && OwnerID < 0) { parameters["from_group"] = "1"; } if (ReplyToComment != 0) { parameters["reply_to_comment"] = ReplyToComment.ToString(); } if (StickerID != 0 && Message == null && Attachments == null) { parameters["sticker_id"] = StickerID.ToString(); } return(parameters); }
public void TestOwnerIDFromKey() { string pk = "A/9ltq55E0pNzp0NOdOFHpurTul6v4boHhxbvFDNKCau"; var address = OwnerID.FromScriptHash(Convert.FromBase64String(pk).PublicKeyToScriptHash()).ToAddress(); Console.WriteLine(address); }
/// <summary> /// Возвращает словарь параметров. /// </summary> public override Dictionary <string, string> GetParameters() { var parameters = base.GetParameters(); parameters["owner_id"] = OwnerID.ToString(); parameters["poll_id"] = PollID.ToString(); if (!string.IsNullOrWhiteSpace(Question)) { parameters["question"] = Question; } if (AddAnswers != null) { parameters["add_answers"] = (string)JsonConvert.SerializeObject(AddAnswers); } if (EditAnswers != null) { parameters["edit_answers"] = (string)JsonConvert.SerializeObject(EditAnswers); } if (DeleteAnswers != null) { parameters["delete_answers"] = (string)JsonConvert.SerializeObject(DeleteAnswers); } return(parameters); }
public void TestWif3() { var key = "KxDgvEKzgSBPPfuVfw67oPQBSjidEiqTHURKSDL1R7yGaGYAeYnr".LoadWif(); Assert.AreEqual("NbUgTSFvPmsRxmGeWpuuGeJUoRoi6PErcM", key.PublicKey().PublicKeyToScriptHash().ToAddress(0x35)); Assert.AreEqual("NbUgTSFvPmsRxmGeWpuuGeJUoRoi6PErcM", OwnerID.FromScriptHash(key.PublicKey().PublicKeyToScriptHash()).ToAddress()); }
public async Task <ContainerID> PutContainer(Container.Container container, CallOptions options = null, CancellationToken context = default) { if (container is null) { throw new ArgumentNullException(nameof(container)); } var opts = DefaultCallOptions.ApplyCustomOptions(options); CheckOptions(opts); container.Version = Refs.Version.SDKVersion(); if (container.OwnerId is null) { container.OwnerId = OwnerID.FromScriptHash(opts.Key.PublicKey().PublicKeyToScriptHash()); } var req = new PutRequest { Body = new PutRequest.Types.Body { Container = container, Signature = opts.Key.SignRFC6979(container), } }; req.MetaHeader = opts.GetRequestMetaHeader(); opts.Key.Sign(req); return(await PutContainer(req, opts.Deadline, context)); }
public void TestObjectPut() { var rand = new Random(); var payload = new byte[1024]; rand.NextBytes(payload); var obj = new FSObject { Header = new Header { OwnerId = OwnerID.FromScriptHash(key.PublicKey().PublicKeyToScriptHash()), ContainerId = cid, }, Payload = ByteString.CopyFrom(payload), }; using var client = new Client.Client(key, host); using var source = new CancellationTokenSource(); source.CancelAfter(TimeSpan.FromMinutes(10)); var session = client.CreateSession(20).Result; var o = client.PutObject(obj, new CallOptions { Ttl = 1, Session = session }, source.Token).Result; Console.WriteLine(o.String()); Assert.AreNotEqual("", o.String()); }
public void TestPutContainerSelect() { using var client = new Client.Client(key, host); // var replica = new Replica(2, ""); //not in policy var replica = new Replica(2, ""); // in policy with others // var replica = new Replica(1, ""); // test only one node put container size var policy = new PlacementPolicy(1, new Replica[] { replica }, null, null); var container = new Container.Container { Version = Refs.Version.SDKVersion(), OwnerId = OwnerID.FromScriptHash(key.PublicKey().PublicKeyToScriptHash()), Nonce = Guid.NewGuid().ToByteString(), BasicAcl = BasicAcl.PublicBasicRule, PlacementPolicy = policy, }; container.Attributes.Add(new Container.Container.Types.Attribute { Key = "CreatedAt", Value = DateTime.UtcNow.ToString(), }); using var source = new CancellationTokenSource(); source.CancelAfter(TimeSpan.FromMinutes(1)); var cid = client.PutContainer(container, context: source.Token).Result; Console.WriteLine(cid.String()); Assert.AreEqual(container.CalCulateAndGetId, cid); }
/// <summary> /// Возвращает коллекцию параметров. /// </summary> public override Dictionary <string, string> GetParameters() { var parameters = base.GetParameters(); parameters["owner_id"] = OwnerID.ToString(); parameters["audio_id"] = AudioID.ToString(); if (!String.IsNullOrWhiteSpace(Artist)) { parameters["artist"] = Artist; } if (!String.IsNullOrWhiteSpace(Title)) { parameters["title"] = Title; } if (!String.IsNullOrWhiteSpace(Text)) { parameters["text"] = Text; } if (Genre != VKAudioGenre.Unknown) { parameters["genre"] = ((byte)Genre).ToString(); } if (NoSearch == VKBoolean.True) { parameters["no_search"] = "1"; } return(parameters); }
/// <summary> /// Возвращает коллекцию параметров. /// </summary> public override Dictionary <string, string> GetParameters() { var parameters = base.GetParameters(); parameters["owner_id"] = OwnerID.ToString(); parameters["post_id"] = PostID.ToString(); if (NeedLikes != VKBoolean.False) { parameters["need_likes"] = "1"; } if (StartCommentID != 0) { parameters["start_comment_id"] = StartCommentID.ToString(); } if (Sort != VKSortByDate.asc) { parameters["sort"] = VKSortByDate.desc.ToString(); } if (PreviewLength != 0) { parameters["preview_length"] = PreviewLength.ToString(); } return(parameters); }
/// <summary> /// Возвращает словарь параметров. /// </summary> public override Dictionary <string, string> GetParameters() { var parameters = base.GetParameters(); parameters["owner_id"] = OwnerID.ToString(); parameters["doc_id"] = DocumentID.ToString(); return(parameters); }
public void TestOwnerIDToScriptHash() { var key = "L4kWTNckyaWn2QdUrACCJR1qJNgFFGhTCy63ERk7ZK3NvBoXap6t".LoadWif(); var scriptHash = key.PublicKey().PublicKeyToScriptHash(); var owner = OwnerID.FromScriptHash(scriptHash); Assert.AreEqual(scriptHash, owner.ToScriptHash()); }
public void Render(Cell sadConsoleCell) { System.Console.WriteLine("Render ME ! " + OwnerID.ToString()); //if ( Changed == false ) // return; Appearance.CopyAppearanceTo(sadConsoleCell); Changed = false; }
public void TestPublicKey() { var key = "0203592a65bd5fb116a3381f1f29a125bac8658cd592d2a8dc9fed886c891f16c1".HexToBytes().LoadPublicKey(); Assert.AreEqual("0203592a65bd5fb116a3381f1f29a125bac8658cd592d2a8dc9fed886c891f16c1", key.PublicKey().ToHexString()); Assert.AreEqual("Nedo3Wtrx8fDjtYosjt7ZERHyR2EsgPtxK", key.PublicKey().PublicKeyToScriptHash().ToAddress(0x35)); Assert.AreEqual("Nedo3Wtrx8fDjtYosjt7ZERHyR2EsgPtxK", OwnerID.FromScriptHash(key.PublicKey().PublicKeyToScriptHash()).ToAddress()); }
public override int GetHashCode() { var hashCode = 1023787409; hashCode = hashCode * -1521134295 + OwnerID.GetHashCode(); hashCode = hashCode * -1521134295 + EqualityComparer <string> .Default.GetHashCode(PreferredLender); return(hashCode); }
public void TestOwnerID() { var version = new OwnerID { Value = ByteString.CopyFrom("351f694a2a49229f8e41d24542a0e6a7329b7ed065a113d002".HexToBytes()), }; Console.WriteLine(version.ToByteArray().ToHexString()); }
public XElement ToQBXML(string name) { XElement xElement = new XElement(name); xElement.Add(OwnerID.ToQBXML(nameof(OwnerID))); xElement.Add(DataExtName.ToQBXML(nameof(DataExtName))); xElement.Add(DataExtValue.ToQBXML(nameof(DataExtValue))); return(xElement); }
public void TestBalanceWithOwner() { var address = "NiXweMv91Vz512bQw7jFNHAGBg8upVS8Qo"; using var client = new Client.Client(key, host); var balance = client.GetBalance(OwnerID.FromAddress(address)).Result; Assert.AreEqual(0, balance.Value); }
/// <summary> /// Возвращает словарь параметров. /// </summary> public override Dictionary <string, string> GetParameters() { var parameters = base.GetParameters(); parameters["type"] = Type.ToString().ToLower(); parameters["owner_id"] = OwnerID.ToString(); parameters["item_id"] = ItemID.ToString(); return(parameters); }
public void TestSessionCreate() { using var client = new Client.Client(key, host); using var source = new CancellationTokenSource(); source.CancelAfter(10000); var token = client.CreateSession(ulong.MaxValue, context: source.Token).Result; Assert.AreEqual(OwnerID.FromScriptHash(key.PublicKey().PublicKeyToScriptHash()), token.Body.OwnerId); Console.WriteLine($"id={token.Body.Id.ToUUID()}, key={token.Body.SessionKey.ToByteArray().ToHexString()}"); }
public void TestWif1() { var key = "L4kWTNckyaWn2QdUrACCJR1qJNgFFGhTCy63ERk7ZK3NvBoXap6t".LoadWif(); var address = key.PublicKey().PublicKeyToScriptHash().ToAddress(0x35); Assert.AreEqual("Nivku7mFnqdzVftRnUYHo5hD1oJT71yeZp", address); key = "L1pBKpw4tR6CogySzye3GUcVPz5pAeemXbyupoWUEVrtfstBfDiN".LoadWif(); Assert.AreEqual("NgYMvdwCWMypHLqoZ6uqYutbeAAAgbSFcD", key.PublicKey().PublicKeyToScriptHash().ToAddress(0x35)); Assert.AreEqual("NgYMvdwCWMypHLqoZ6uqYutbeAAAgbSFcD", OwnerID.FromScriptHash(key.PublicKey().PublicKeyToScriptHash()).ToAddress()); }
public void TestListContainer() { using var client = new Client.Client(key, host); using var source = new CancellationTokenSource(); source.CancelAfter(10000); var cids = client.ListContainers(OwnerID.FromScriptHash(key.PublicKey().PublicKeyToScriptHash()), context: source.Token).Result; Console.WriteLine(string.Join(", ", cids.Select(p => p.String()))); Assert.AreEqual(1, cids.Count); Assert.AreEqual(cid.String(), cids[0].String()); }
private string MakeCoverPicPath(long id) { if (id == 0) { return(System.IO.Path.Combine("Resource", OwnerID.ToString(), "NewsPicture", "Temp")); } else { return(System.IO.Path.Combine("Resource", OwnerID.ToString(), "NewsPicture", id.ToString())); } }
/// <summary> /// Возвращает коллекцию параметров. /// </summary> public override Dictionary <string, string> GetParameters() { var parameters = base.GetParameters(); if (OwnerID != 0) { parameters["owner_id"] = OwnerID.ToString(); } parameters["need_system"] = "1"; return(parameters); }
public void TestOwnerId() { var address = "NTfozM1xX7WDKD2LUE5yjtd8FMFYQJoy54"; var ownerId = OwnerID.FromAddress(address); Assert.AreEqual(25, ownerId.Value.Length); var key = "Kwk6k2eC3L3QuPvD8aiaNyoSXgQ2YL1bwS5CP1oKoA9waeAze97s".LoadWif(); ownerId = OwnerID.FromScriptHash(key.PublicKey().PublicKeyToScriptHash()); Assert.AreEqual(25, ownerId.Value.Length); Assert.AreEqual(27, ownerId.ToByteArray().Length); }
/// <summary> /// Возвращает коллекцию параметров. /// </summary> public override Dictionary <string, string> GetParameters() { var parameters = base.GetParameters(); if (OwnerID != 0) { parameters["owner_id"] = OwnerID.ToString(); } parameters["album_id"] = AlbumID.ToString(); return(parameters); }
/// <summary> /// Возвращает коллекцию параметров. /// </summary> public override Dictionary <string, string> GetParameters() { var parameters = base.GetParameters(); parameters["owner_id"] = OwnerID.ToString(); parameters["comment_id"] = CommentID.ToString(); if (Reason != VKReason.Spam) { parameters["reason"] = ((byte)Reason).ToString(); } return(parameters); }
/// <summary> /// Возвращает коллекцию параметров. /// </summary> public override Dictionary <string, string> GetParameters() { var parameters = base.GetParameters(); parameters["audio_id"] = AudioID.ToString(); parameters["owner_id"] = OwnerID.ToString(); if (GroupID > 0) { parameters["group_id"] = GroupID.ToString(); } return(parameters); }
/// <summary> /// Возвращает коллекцию параметров. /// </summary> public override Dictionary <string, string> GetParameters() { var parameters = base.GetParameters(); if (TargetID != 0) { parameters["target_id"] = TargetID.ToString(); } parameters["video_id"] = VideoID.ToString(); parameters["owner_id"] = OwnerID.ToString(); return(parameters); }