hwj35
5 天以前 b8cda3b926e4503224568fc5afefdf73d403911d
1
2
3
4
5
6
7
8
9
10
11
œÔíhc@sddlmZddlZddlmZddlmZdejfd„ƒYZdejfd„ƒYZ    da d    „Z dS(
iÿÿÿÿ(tAsyncoreServerN(t    Singleton(tSingletonObjectt MongoDBServercBs/eZdd„Zd„Zd„Zd„ZRS(iÿÿÿÿcCstjj|d|ƒdS(NR(RtAsynCoreServert__init__(tselft MaxClientCnt((s$.\\ServersRoute\Net\MongoDBServer.pyRscCstj||||ƒ}|S(s½ÓÊÕÁ¬½Óʼþ֪ͨ(tMongoDBServerClient(RtsocktaddrtonClientDisconnectt    recvQueuetclient((s$.\\ServersRoute\Net\MongoDBServer.pytonAcceptClientsc    Csˆtjƒjƒ}|j|ƒ||jƒ_||jƒ_||jƒ_||jƒ_||jƒ_    |j
|ƒ|j |ƒdS(N( Rt getPackPooltalloct setSessionIDt getPackHeadt    sessionIDt    poolIndexttypet
dstSvrTypet
srcSvrTypet    setBuffertpushSend(    RtsendViaSessionIDRRRRRtbuftsendPack((s$.\\ServersRoute\Net\MongoDBServer.pytpackSendBySessionID%s  cCs|jj|ƒS(N(t    clientMgrtgetClientSessionIDByIndex(Rtindex((s$.\\ServersRoute\Net\MongoDBServer.pyR6s(t__name__t
__module__RRRR(((s$.\\ServersRoute\Net\MongoDBServer.pyRs         tMongoDBServerMgrcBsbeZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z    d„Z
d    „Z RS(
cCs i|_dS(N(t_MongoDBServerMgr__ServersDict(R((s$.\\ServersRoute\Net\MongoDBServer.pyRHscCs(x!|jjƒD]}|jƒqWdS(N(R$tvaluestprocessSendQueue(Rtv((s$.\\ServersRoute\Net\MongoDBServer.pytprocessAllSendQueueLscCs'|jj|ƒrtS||j|<tS(N(R$thas_keytFalsetTrue(RtNametServer((s$.\\ServersRoute\Net\MongoDBServer.pyt    AddServerPs cCs|jj|dƒS(N(R$tgettNone(RR,((s$.\\ServersRoute\Net\MongoDBServer.pyt    GetServerXscCs(x!|jjƒD]}|jƒqWdS(N(R$R%tstop(RtoServer((s$.\\ServersRoute\Net\MongoDBServer.pyR2bscCs/|j|jƒƒ}|r+|j|ƒndS(N(tFindServerByClientSessionIDt getSessionIDR(RtpackR3((s$.\\ServersRoute\Net\MongoDBServer.pyRnscCs i|_dS(N(R$(R((s$.\\ServersRoute\Net\MongoDBServer.pytCleartscCs&|j|ƒ}|r"|j|ƒSdS(Niÿÿÿÿ(R1R(RtnameR tserver((s$.\\ServersRoute\Net\MongoDBServer.pytgetClientSessionIDByNamexs cCs1x*|jjƒD]}|j|ƒr|SqWdS(N(R$R%tFindClientBySessionIDR0(RRR9((s$.\\ServersRoute\Net\MongoDBServer.pyR4~sc    Cs;|j|ƒ}|r7|j|||||||ƒndS(N(R4R(    RRRRRRRRR9((s$.\\ServersRoute\Net\MongoDBServer.pyR„s( R!R"RR(R.R1R2RR7R:R4R(((s$.\\ServersRoute\Net\MongoDBServer.pyR#Fs                
                     cCstr
tStƒatS(N(t__MongoDBServerMgrR#(((s$.\\ServersRoute\Net\MongoDBServer.pyt getServerMgr‹s    ( tNetCoreRRtCommonRtDBCommonRRRR#R0R<R=(((s$.\\ServersRoute\Net\MongoDBServer.pyt<module>s 6C