public void CreateUser(string userName, bool propagate) { PeerGroupID gid = this.netPeerGroup.PeerGroupID; PipeID pipeid = IDFactory.NewPipeID(gid); PipeAdvertisement adv = new PipeAdvertisement(); adv.SetPipeID(pipeid); adv.Type = (propagate ? "JxtaPropagate" : "JxtaUnicast"); adv.Name = "JxtaTalkUserName." + userName; adv.Desc = "created by JXTA .NET"; discovery.Publish(adv); }
/// <summary> /// Standard run-method. Call this for the 'whoami'-action. /// </summary> /// <param name="args">The commandline-parameters.</param> public override void Run(string[] args) { bool printpretty = false; bool printgroup = false; bool printcreds = false; for (int i = 1; i < args.Length; i++) { switch (args[i]) { case "-g": printgroup = true; break; case "-c": printcreds = true; break; case "-p": printpretty = true; break; case "-h": Help(); return; default: textWriter.WriteLine("Error: invalid parameter"); return; } } PeerGroupAdvertisement myGroupAdv = this.netPeerGroup.PeerGroupAdvertisement; if (myGroupAdv == null) { textWriter.WriteLine("# ERROR - Invalid peer group advertisement\n"); return; } PeerAdvertisement myAdv = this.netPeerGroup.PeerAdvertisement; if (myAdv == null) { textWriter.WriteLine("# ERROR - Invalid peer advertisement\n"); return; } if (printpretty && printgroup) { ID gid = myGroupAdv.ID; ModuleSpecID msid = myGroupAdv.GetModuleSpecID(); string name = myGroupAdv.Name; string desc = myGroupAdv.Description; textWriter.WriteLine("\nGroup : \n"); textWriter.WriteLine(" Name : " + name); textWriter.WriteLine(" Desc : " + desc); textWriter.WriteLine(" GID : " + gid); textWriter.WriteLine(" MSID : " + msid + "\n"); } else if (printgroup) { textWriter.WriteLine(myGroupAdv.ToString()); } /* peer adv part */ if (printpretty) { ID pid = myAdv.ID; PeerGroupID gid = myAdv.PeerGroupID; string name = myAdv.Name; textWriter.WriteLine("\nPeer :"); textWriter.WriteLine(" Name : " + name); textWriter.WriteLine(" PID : " + pid); textWriter.WriteLine(" GID : " + gid + "\n"); } else { textWriter.WriteLine(myAdv.ToString()); } /* credentials part */ if (printcreds) { if (printpretty) { textWriter.WriteLine("Credentials:\n"); } MembershipService membership = this.netPeerGroup.MembershipService; if (membership == null) { textWriter.WriteLine("# invalid membership service\n"); return; } List <Credential> creds = membership.CurrentCredentials; if (creds == null) { textWriter.WriteLine("# could not get credentials.\n"); return; } for (int i = 0; i < creds.Count; i++) { if (creds[i] == null) { textWriter.WriteLine("# could not get credential\n"); continue; } if (printpretty) { textWriter.WriteLine("Credential #" + i + ": \n"); textWriter.WriteLine(" PID : " + creds[i].PeerID); textWriter.WriteLine(" GID : " + creds[i].PeerGroupID); } else { textWriter.WriteLine("Cred:\n" + creds[i].ToString()); } } } }