LumiSoft.Net.AsyncSocketHelper.OnSendedData C# (CSharp) Method

OnSendedData() private static method

Is called from asynchronous socket if data is sended.
private static OnSendedData ( IAsyncResult a ) : void
a IAsyncResult
return void
        private static void OnSendedData(IAsyncResult a)
        {
            object[]       param    = (object[])a.AsyncState;
            BufferedSocket socket   = (BufferedSocket)param[0];
            MemoryStream   strm     = (MemoryStream)param[1];
            object         tag      = param[2];
            SocketCallBack callBack = (SocketCallBack)param[3];

            try{
                int countSended = socket.Socket.EndSend(a);

                // Send next data block
                if(strm.Position < strm.Length){
                    SendDataBlock(socket,strm,tag,callBack);
                }
                // We sended all data
                else{
                    callBack(SocketCallBackResult.Ok,strm.Position,null,tag);
                }
            }
            catch(Exception x){
                callBack(SocketCallBackResult.Exception,strm.Position,x,tag);
            }
        }