Ejemplo n.º 1
0
        private bool preProcessPack(SessionPack sessionPack)
        {
            if (sessionPack.mRetryLeft <= 0)
            {
                Log.e("Network", "sender: retryLeft =0,cmd =:" + ((CmdConst)sessionPack.mCmdID));
                sessionPack.mSendStatus = 6;
                OnCallback.onError(sessionPack, PackResult.RETRY_LIMIT);
                return(false);
            }
            if (sessionPack.mCanceled)
            {
                Log.e("Network", "not send packet been cancelled.)");
                return(false);
            }
            if ((sessionPack.mCmdID != 6) && (sessionPack.mRetryLeft != 3))
            {
                int newSeq = SessionPack.getSeqID();
                Log.d("Network", string.Concat(new object[] { "resend pack, change seq ", sessionPack.mSeqID, " to new seq ", newSeq }));
                SessionPackMgr.changeSessionPackSeq(sessionPack.mSeqID, newSeq);
                sessionPack.mSeqID = newSeq;
            }
            sessionPack.mRetryLeft--;
            sessionPack.mSendStatus = 1;
            if (sessionPack.mCacheBodyBuffer == null)
            {
                //   if ((sessionPack.mCmdID == 8) || (sessionPack.mCmdID == 0x19) || (sessionPack.mCmdID == 232 || (sessionPack.mCmdID == 233)))
                //  {
                //sessionPack.mCacheBodyBuffer = sessionPack.requestToByteArray();


                ////Log.e("Network", "mCacheBodyBuffer:"+);
                //if (sessionPack.mCacheBodyBuffer == null)
                //{
                //    Log.e("Network", "newsync check got bytearray failed.");
                //    sessionPack.mSendStatus = 6;
                //    OnCallback.onError(sessionPack, PackResult.PACK_ERROR);
                //    return false;
                //}

                //if (sessionPack.mCmdID == 232 || sessionPack.mCmdID == 233)
                //{
                //    if (!MMPack.EncodePackMini(sessionPack))
                //    //if (!MMPack.EncodePack(sessionPack))
                //    {
                //        Log.e("Network", "sender.encodePack failed,cmd= " + ((CmdConst)sessionPack.mCmdID));
                //        sessionPack.mCacheBodyBuffer = null;
                //        sessionPack.mSendStatus = 6;
                //        OnCallback.onError(sessionPack, PackResult.PACK_ERROR);
                //        return false;
                //    }
                //}

                //return true;
                //  }

                if (!MMPack.EncodePackMini(sessionPack))
                // if (!MMPack.EncodePack(sessionPack))
                {
                    Log.e("Network", "sender.encodePack failed,cmd= " + ((CmdConst)sessionPack.mCmdID));
                    sessionPack.mCacheBodyBuffer = null;
                    sessionPack.mSendStatus      = 6;
                    OnCallback.onError(sessionPack, PackResult.PACK_ERROR);
                    return(false);
                }
            }
            return(true);
        }