Example #1
0
 public void AddDownloadingClient(ClientFileTransporter <T> cl)
 {
     lock (downloadingClients)
     {
         downloadingClients.Add(cl);
         Monitor.Pulse(downloadingClients);
     }
 }
Example #2
0
        public ClientFileTransporter <T> GetClientTransporter(IClient client)
        {
            ClientFileTransporter <T> ret;

            if (!clientFIleTransporterMap.TryGetValue(client, out ret))
            {
                ret = new ClientFileTransporter <T>(this);
                clientFIleTransporterMap[client] = ret;
                ret.startTransporter             = fileStartTransporter.GetTransporterForClient(client);
                ret.partTransporter = filePartTransporter.GetTransporterForClient(client);
                ret.endTransporter  = fileCompleteTransporter.GetTransporterForClient(client);

                //ret.StartReceiving(); //TODO: only suppport sending ATM
            }
            return(ret);
        }