public virtual void OnSocStatusChangedOnDebug(SocStatusEventArgs e)
 {
     if (Logger.level >= LOGLEVEL.DEBUG)
     {
         OnSocStatusChanged(e);
     }
 }
 public virtual void OnSocStatusChangedOnInfo(SocStatusEventArgs e)
 {
     if (Logger.level >= LOGLEVEL.INFO)
     {
         OnSocStatusChanged(e);
     }
 }
Esempio n. 3
0
 public FTPStatusEventArgs(SocStatusEventArgs e, string msg, string printMsg, int index)
 {
     status             = e.Status;
     this.msg           = msg;
     this.printMsg      = printMsg;
     this.progressIndex = index;
 }
 public virtual void OnSocStatusChangedOnError(SocStatusEventArgs e)
 {
     if (Logger.level >= LOGLEVEL.ERROR)
     {
         OnSocStatusChanged(e);
     }
 }
Esempio n. 5
0
 public override void OnSocStatusChanged(SocStatusEventArgs e)
 {
     if (e.Status.Status == SocHandlerStatus.ERROR)
     {
         closeFTPConnection(e.Status);
     }
     base.OnSocStatusChanged(e);
 }
        public void OnTCPMsgReceived(SocStatusEventArgs e)
        {
            EventHandler <SocStatusEventArgs> handler = TCPMsgReceived;

            if (handler != null)
            {
                handler(this, e);
            }
        }
Esempio n. 7
0
        public virtual void OnSocStatusChanged(SocStatusEventArgs e)
        {
            EventHandler <SocStatusEventArgs> handler = SocStatusChanged;

            if (handler != null)
            {
                handler(this, new SocStatusEventArgs(e.Status.Clone()));
            }
        }
        public void OnConnectionError(SocStatusEventArgs e)
        {
            EventHandler <SocStatusEventArgs> handler = ConnectionError;

            if (handler != null)
            {
                handler(this, e);
            }
        }
        public override void OnSocStatusChanged(SocStatusEventArgs e)
        {
            EventHandler <FTPStatusEventArgs> handler = FTPStatusChanged;

            if (handler != null)
            {
                handler(this, new FTPStatusEventArgs(e.Status.Clone(), this.receiverId));
            }
        }
Esempio n. 10
0
        public virtual void OnSocStatusChanged(SocStatusEventArgs e)
        {
            EventHandler <SocStatusEventArgs> handler = SocStatusChanged;

            if (handler != null)
            {
                handler(this, e);
            }
        }
Esempio n. 11
0
        public virtual void OnMessageReceived(SocStatusEventArgs e)
        {
            EventHandler <SocStatusEventArgs> handler = MessageReceived;

            if (handler != null)
            {
                handler(this, e);
            }
        }
Esempio n. 12
0
        public void OnReadyToListen(SocStatusEventArgs e)
        {
            EventHandler <SocStatusEventArgs> handler = ReadyToListen;

            if (handler != null)
            {
                handler(this, e);
            }
        }
Esempio n. 13
0
        public void OnFTPListenRequested(SocStatusEventArgs e)
        {
            EventHandler <SocStatusEventArgs> handler = FTPListenRequested;

            if (handler != null)
            {
                handler(this, e);
            }
        }
Esempio n. 14
0
 protected virtual void ProcessOnMessageReceived(object sender, SocStatusEventArgs e)
 {
     OnMessageReceived(e);
     switch (e.Status.Cmd)
     {
     case MsgDef.MSG_BYE:
         CloseOnCloseMsgReceived();
         break;
     }
 }
Esempio n. 15
0
        public virtual void OnMessageReceived(SocStatusEventArgs e)
        {
            EventHandler <SocStatusEventArgs> handler = MessageReceived;

            if (handler != null)
            {
                Logger.info("OnMessageReceived:" + e.Status.Data);
                handler(this, new SocStatusEventArgs(e.Status.Clone()));
            }
        }
Esempio n. 16
0
        protected override void ServerMgrStatusChanged(object sender, SocStatusEventArgs e)
        {
            if (e.Status.Cmd == MsgDef.MSG_BYE)
            {
                Stop();
            }

            if (e.Status.Status == SocHandlerStatus.RECEIVING && e.Status.FtpStatus == FTPStatus.RECEIVE_STREAM)
            {
                int    index    = (int)(e.Status.FileSizeDone * (long)100 / e.Status.FileSize);
                string msg      = "수신중(" + index + " %)";
                string printMsg = "수신중(" + index + " %)";
                Logger.info("ServerMgrStatusChanged: msg=" + msg);
                OnFTPReceivingProgressed(new FTPStatusEventArgs(e, msg, printMsg, index));
            }
            else if (e.Status.Status == SocHandlerStatus.FTP_END)
            {
                string msg      = "수신완료";
                string printMsg = string.Format("파일 수신이 완료되었습니다.({0})", e.Status.FileName);
                Logger.info("ServerMgrStatusChanged: msg=" + msg);
                OnFTPReceivingFinished(new FTPStatusEventArgs(e, msg, printMsg));
            }
            else if (e.Status.Status == SocHandlerStatus.FTP_SERVER_CANCELED)
            {
                string msg      = "수신취소";
                string printMsg = string.Format("파일 수신이 취소되었습니다.({0})", e.Status.FileName);
                Logger.info("ServerMgrStatusChanged: msg=" + msg);
                OnFTPReceivingCanceled(new FTPStatusEventArgs(e, msg, printMsg));
            }
            else if (e.Status.Status == SocHandlerStatus.FTP_CANCELED)
            {
                string msg      = "수신취소";
                string printMsg = string.Format("전송자가 파일 전송을 취소되었습니다.({0})", e.Status.FileName);
                Logger.info("ServerMgrStatusChanged: msg=" + msg);
                OnFTPReceivingCanceled(new FTPStatusEventArgs(e, msg, printMsg));
            }
            else if (e.Status.Status == SocHandlerStatus.ERROR)
            {
                string msg      = "수신실패";
                string printMsg = string.Format("파일 수신이 실패하였습니다.({0})", e.Status.FileName);
                Logger.info("ServerMgrStatusChanged: msg=" + msg);
                OnFTPReceivingFailed(new FTPStatusEventArgs(e, msg, printMsg));
            }

            base.OnSocStatusChanged(e);
        }
Esempio n. 17
0
 protected virtual void ProcessOnConnectionError(object sender, SocStatusEventArgs e)
 {
     ForceClose();
     OnConnectionError(e);
 }
Esempio n. 18
0
 protected virtual void TcpClientStatusChanged(object sender, SocStatusEventArgs e)
 {
     OnSocStatusChanged(e);
 }
Esempio n. 19
0
 protected override void ProcessOnConnectionError(object sender, SocStatusEventArgs e)
 {
     mSocClient.Close();
     _internalHandleOnError("FTP접속에러");
     OnConnectionError(new FTPStatusEventArgs(e.Status, this.receiverId));
 }
        /// <summary>
        /// TcpClient인 경우 처리
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected virtual void ProcessOnMessageReceived(object sender, SocStatusEventArgs e)
        {
            //OnMessageReceived(e);
            switch (e.Status.Cmd)
            {
            case MsgDef.MSG_TEXT:
            {
                OnTCPMsgReceived(e);
                break;
            }

            case MsgDef.MSG_BYE:
                //처리없음
                break;

            case MsgDef.MSG_FTP_INFO_TO_RCV:
                //받는쪽. 파일전송의사가 전달됨
                //1. 서버로 재전송
            {
                //string msg = e.Status.Data.Substring(MsgDef.MSG_TEXT.Length+1); //"MSG|..."
                //this.Send(e.Status.Data);
                //2. 하위단에서 이벤트처리토록 둠.
                OnManagerStatusChanged(string.Format("2단계 서버 =>전송자 파일전송공지[{0}]", e.Status.Data));
                string[]  msgToken = e.Status.Data.Split(SocConst.TOKEN);
                string    senderId = msgToken[1];
                string    fileName = msgToken[2];
                long      fileSize = Convert.ToInt64(msgToken[3]);
                string    mapKey   = SocUtils.GenerateFTPClientKey(mKey, fileName, fileSize, senderId);
                FTPRcvObj rcvObj   = new FTPRcvObj((IPEndPoint)e.Status.Soc.RemoteEndPoint, mapKey, fileName, fileSize, senderId);
                OnFTPSendingNotified(new SocFTPInfoEventArgs <FTPRcvObj>(rcvObj));
                break;
            }

            case MsgDef.MSG_FTP_READY_TO_SND:    //header|(senderid|ip)|filename|filesize|(receiverId|ip or m) 'm'은 서버
            {
                //수신준비된것이 확인됨.==> FTP기동
                //필요한 인자: 파일정보, 수신자정보
                OnManagerStatusChanged(string.Format("4단계 서버=>전송자 파일수신준비완료[{0}]", e.Status.Data));
                string[]   msgToken     = e.Status.Data.Split(SocConst.TOKEN);
                string     fileName     = msgToken[2];
                long       fileSize     = Convert.ToInt64(msgToken[3]);
                string     receiverId   = msgToken[4];
                string     mapKey       = SocUtils.GenerateFTPClientKey(mKey, fileName, fileSize, receiverId);
                FTPSendObj sendObj      = mFileInfoMap[mapKey];
                string     fullFileName = sendObj.FileName;

                if (mFileInfoMap.ContainsKey(mapKey))
                {
                    mFileInfoMap.Remove(mapKey);
                }
                StartFTP(sendObj.RemoteEndPoint, receiverId, fullFileName, fileSize);
                Thread thServer = new Thread(new ParameterizedThreadStart(SendFile));
                thServer.Start((object)mapKey);

                OnFTPSendingAccepted(new SocFTPInfoEventArgs <FTPSendObj>(sendObj));
                break;
            }

            case MsgDef.MSG_FTP_REJECT_TO_SND:    //header|(senderid|ip)|filename|filesize|(receiverId|ip or m) 'm'은 서버
            {
                //파일전송의사가 전달됨
                //처리없음
                OnManagerStatusChanged(string.Format("4단계 서버=>전송자 파일수신준비거부[{0}]", e.Status.Data));
                string[]   msgToken   = e.Status.Data.Split(SocConst.TOKEN);
                string     fileName   = msgToken[2];
                long       fileSize   = Convert.ToInt64(msgToken[3]);
                string     receiverId = msgToken[4];
                string     mapKey     = SocUtils.GenerateFTPClientKey(mKey, fileName, fileSize, receiverId);
                FTPSendObj sendObj    = mFileInfoMap[mapKey];
                OnFTPSendingRejected(new SocFTPInfoEventArgs <FTPSendObj>(sendObj));
                break;
            }

            default:
                break;
            }
        }
Esempio n. 21
0
 public FTPStatusEventArgs(SocStatusEventArgs e, string msg, string printMsg)
 {
     status        = e.Status;
     this.msg      = msg;
     this.printMsg = printMsg;
 }
Esempio n. 22
0
 protected virtual void ServerMgrStatusChanged(object sender, SocStatusEventArgs e)
 {
     OnSocStatusChanged(e);
 }
Esempio n. 23
0
 protected override void TcpClientStatusChanged(object sender, SocStatusEventArgs e)
 {
     OnSocStatusChanged(e);
 }
Esempio n. 24
0
 public void ProcessOnFTPListenRequested(object sender, SocStatusEventArgs e)
 {
     OnFTPListenRequested(e);
 }
Esempio n. 25
0
 public void ProcessOnReadyToListen(object sender, SocStatusEventArgs e)
 {
     OnReadyToListen(e);
 }