/// <summary> /// Initializes a new FileTransferConnection /// </summary> public FileTransferConnection(Session parent, int id, DirectConnectionMethod dcmethod, DirectConnectRole role) : base(parent, id, dcmethod, role) { Logging.WriteString("Creating new FTC (id " + id.ToString() + ")"); base.DirectConnectionFailed += new DirectConnectionFailed(FileTransferConnection_DirectConnectionFailed); base.DirectConnectionReady += new DirectConnectionReady(FileTransferConnection_DirectConnectionReady); }
/// <summary> /// Creates a new Direct Connection /// </summary> /// <param name="parent">The <see cref="Session"/> that owns this connection</param> /// <param name="id">The connection's unique ID</param> /// <param name="dcmethod">The method (direct or proxied) that the connection is to use</param> /// <param name="role">The role of this connection in a Rendezvous session</param> public DirectConnection(Session parent, int id, DirectConnectionMethod dcmethod, DirectConnectRole role) : base(parent, id) { directConnectionMethod = dcmethod; directConnectRole = role; // Generate a random ICBM cookie Cookie = Cookie.CreateNullTerminatedCookieForSending(); // Get the local IP //ClientIP = Dns.GetHostEntry(Dns.GetHostName()).AddressList[0].ToString(); IPAddress[] addresses = Dns.GetHostEntry(Dns.GetHostName()).AddressList; foreach (IPAddress address in addresses) { if (address.AddressFamily == AddressFamily.InterNetwork) { ClientIP = address.ToString(); break; } } if (String.IsNullOrEmpty(ClientIP)) { throw new Exception("Local host does not have an IPv4 address bound to it"); } }
public ChatInvitationConnection CreateNewChatInvitationConnection(DirectConnectRole role) { ChatInvitationConnection retval = new ChatInvitationConnection(_parent, _id++, role); _directconnections.Add(retval); return(retval); }
/// <summary> /// Creates a new file transfer connection /// </summary> /// <param name="method">The <see cref="DirectConnectionMethod"/> to use for the transfer</param> /// <param name="role">The <see cref="DirectConnectRole"/> of the local client in the transfer</param> public FileTransferConnection CreateNewFileTransferConnection(DirectConnectionMethod method, DirectConnectRole role) { FileTransferConnection retval = new FileTransferConnection(_parent, _id++, method, role); _directconnections.Add(retval); return(retval); }
/// <summary> /// Creates a new file transfer connection /// </summary> /// <param name="method">The <see cref="DirectConnectionMethod"/> to use for the transfer</param> /// <param name="role">The <see cref="DirectConnectRole"/> of the local client in the transfer</param> public FileTransferConnection CreateNewFileTransferConnection(DirectConnectionMethod method, DirectConnectRole role) { FileTransferConnection retval = new FileTransferConnection(_parent, _id++, method, role); _directconnections.Add(retval); return retval; }
/// <summary> /// Creates a new DirectIM connection /// </summary> /// <param name="method">The <see cref="DirectConnectionMethod"/> to use for the transfer</param> /// <param name="role">The <see cref="DirectConnectRole"/> of the local client in the transfer</param> public DirectIMConnection CreateNewDirectIMConnection(DirectConnectionMethod method, DirectConnectRole role) { DirectIMConnection retval = new DirectIMConnection(_parent, _id++, method, role); _directconnections.Add(retval); return retval; }
public ChatInvitationConnection CreateNewChatInvitationConnection(DirectConnectRole role) { ChatInvitationConnection retval = new ChatInvitationConnection(_parent, _id++, role); _directconnections.Add(retval); return retval; }
/// <summary> /// Creates a new DirectIM connection /// </summary> /// <param name="method">The <see cref="DirectConnectionMethod"/> to use for the transfer</param> /// <param name="role">The <see cref="DirectConnectRole"/> of the local client in the transfer</param> public DirectIMConnection CreateNewDirectIMConnection(DirectConnectionMethod method, DirectConnectRole role) { DirectIMConnection retval = new DirectIMConnection(_parent, _id++, method, role); _directconnections.Add(retval); return(retval); }
public ChatInvitationConnection(Session parent, int id, DirectConnectRole role) : base(parent, id, DirectConnectionMethod.Direct, role) { }
/// <summary> /// Initializes a new DirectIMConnection /// </summary> public DirectIMConnection(Session parent, int id, DirectConnectionMethod method, DirectConnectRole role) : base(parent, id, method, role) { _messagetimer = new Timer(new TimerCallback(MessageSendCallback), null, Timeout.Infinite, Timeout.Infinite); base.DirectConnectionReady += new DirectConnectionReady(DirectIMConnection_DirectConnectionReady); base.DirectConnectionFailed += new DirectConnectionFailed(DirectIMConnection_DirectConnectionFailed); }