liuxiaolong
2019-05-09 0d1d88cdb668e75ea8609417ac18ae19947e9525
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
Êþº¾2H.com/jeeplus/common/websocket/onchat/ChatServer)org/java_websocket/server/WebSocketServer<init>(I)V
Exceptions    java/net/UnknownHostExceptionCode java/net/InetSocketAddress
 
 (Ljava/net/InetSocketAddress;)VLineNumberTableLocalVariableTablethis0Lcom/jeeplus/common/websocket/onchat/ChatServer;portIaddressLjava/net/InetSocketAddress;onOpenO(Lorg/java_websocket/WebSocket;Lorg/java_websocket/handshake/ClientHandshake;)VconnLorg/java_websocket/WebSocket;    handshake.Lorg/java_websocket/handshake/ClientHandshake;onClose5(Lorg/java_websocket/WebSocket;ILjava/lang/String;Z)V
# $%    userLeave!(Lorg/java_websocket/WebSocket;)V
')(2com/jeeplus/common/websocket/onchat/ChatServerPool *+ getOnlineUser()Ljava/util/Collection;- com/jeeplus/common/json/AjaxJson
,/ 0()V2data
,4 56put'(Ljava/lang/String;Ljava/lang/Object;)V8java/lang/StringBuilder:_online_all_status_
7< =(Ljava/lang/String;)V
,? @A
getJsonStr()Ljava/lang/String;
7C DEappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;
7G HAtoString
'J K= sendMessagecodereasonLjava/lang/String;remoteZ onlineUsersLjava/util/Collection;j"Lcom/jeeplus/common/json/AjaxJson;LocalVariableTypeTable*Ljava/util/Collection<Ljava/lang/String;>;    onMessage3(Lorg/java_websocket/WebSocket;Ljava/lang/String;)V
ZG[java/lang/String]chatHistoryService
_a`,com/jeeplus/common/utils/SpringContextHolder bcgetBean&(Ljava/lang/String;)Ljava/lang/Object;e2com/jeeplus/modules/iim/service/ChatHistoryServiceg _online_user_
Zi jk
startsWith(Ljava/lang/String;)Zm
Zo pq replaceFirst8(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
s tuuserjoin3(Ljava/lang/String;Lorg/java_websocket/WebSocket;)Vw*com/jeeplus/modules/iim/entity/ChatHistory
v/
vz {=
setUserid2}0
v €=    setStatus
d‚ ƒ„findList>(Lcom/jeeplus/modules/iim/entity/ChatHistory;)Ljava/util/List; †ˆ‡java/util/List ‰Šiterator()Ljava/util/Iterator; ŒŽjava/util/Iterator next()Ljava/lang/Object;
v’ “A
getUserid1
Z• –—valueOf&(Ljava/lang/Object;)Ljava/lang/String;™_msg_
v› œA
getUserid2
vž ŸAgetMsg¡java/text/SimpleDateFormat£yyyy-MM-dd HH:mm:ss
 <
v¦ §¨ getCreateDate()Ljava/util/Date;
 ª «¬format$(Ljava/util/Date;)Ljava/lang/String;
'® ¯XsendMessageToUser±1
d³ ´µsave/(Lcom/jeeplus/modules/iim/entity/ChatHistory;)V Œ· ¸¹hasNext()Z» _leave_user_
Z½ ¾¿contains(Ljava/lang/CharSequence;)Z
ZÁ ÂÃsplit'(Ljava/lang/String;)[Ljava/lang/String;
vÅ Æ=
setUserid1
vÈ É=setMsgËjava/util/Date
Ê/
vÎ ÏÐ setCreateDate(Ljava/util/Date;)V
'Ò ÓÔgetWebSocketByUser2(Ljava/lang/String;)Lorg/java_websocket/WebSocket;Ö?_sys_对方现在离线,他将在上线后收到你的消息!message4Lcom/jeeplus/modules/iim/service/ChatHistoryService;userIdchat,Lcom/jeeplus/modules/iim/entity/ChatHistory;listLjava/util/List;carr[Ljava/lang/String;fromUsertoUsermsg
toUserConn>Ljava/util/List<Lcom/jeeplus/modules/iim/entity/ChatHistory;>; StackMapTableèorg/java_websocket/WebSocketêjava/util/Collectionà6(Lorg/java_websocket/WebSocket;Ljava/nio/ByteBuffer;)VîUTF-8
ðòñjava/nio/charset/Charset óôforName.(Ljava/lang/String;)Ljava/nio/charset/Charset;
ðö ÷ø
newDecoder#()Ljava/nio/charset/CharsetDecoder;
úüûjava/nio/ByteBuffer ýþasReadOnlyBuffer()Ljava/nio/ByteBuffer;
java/nio/charset/CharsetDecoder decode,(Ljava/nio/ByteBuffer;)Ljava/nio/CharBuffer;    java/lang/System     
outLjava/io/PrintStream;
 G java/nio/CharBuffer
java/io/PrintStream =println
java/lang/Exception 0printStackTracebufferLjava/nio/ByteBuffer;charsetLjava/nio/charset/Charset;decoder!Ljava/nio/charset/CharsetDecoder;
charBufferLjava/nio/CharBuffer;exLjava/lang/Exception;
onFragmentG(Lorg/java_websocket/WebSocket;Lorg/java_websocket/framing/Framedata;)Vfragment&Lorg/java_websocket/framing/Framedata;onError6(Lorg/java_websocket/WebSocket;Ljava/lang/Exception;)V
') *uaddUseruser
'- ./ getUserByKey2(Lorg/java_websocket/WebSocket;)Ljava/lang/String;
'1 23
removeUser!(Lorg/java_websocket/WebSocket;)Zbmain([Ljava/lang/String;)V8java/lang/InterruptedException:java/io/IOException    <>= org/java_websocket/WebSocketImpl ?PDEBUG
 
B C0startargss
SourceFileChatServer.java! 
E *» Y· ·±
$ %  
>*+·±
()
?±4  !
À4*+¶"¸&:»,Y·.:1¶3»7Y9·;¶>¶B¶F¸I±;<
=>?3@H444L4MN4OP
*QR!STU 
*QVWX
Õ µ,¶YM\¸^ÀdN,Æâ,f¶h™Ù,fl¶n:*+¶r¸&:»,Y·.:1¶3»7Y9·;¶>¶B¶F¸I»vY·x:¶y|¶~-¶:¹…:
§e
¹‹Àv:    +»7Y    ¶‘¸”·;˜¶B    ¶š¶B˜¶B    ¶¶B˜¶B» Y¢·¤    ¶¥¶©¶B¶F¸­    °¶~-    ¶²
¹¶šÿ—,Æ?,º¶h™6*+¶"¸&:»,Y·.:1¶3»7Y9·;¶>¶B¶F¸I,Ƃ,˜¶¼™y,˜¶À:2:2:2:»vY·x:¶Ä¶y¶Ç»ÊY·Ì¶Í¸Ñ:        Æ¸Ñ,¸­°¶~§+Õ¸­|¶~-¶²±®+GHJK%L,O1P:QCRZUcVjWqXyY‘ZÚ[á\çYñ`þabcde1f>gFhLiRjXmanhoopvr‚u‰vŽw—xžy¡z§{®~´¶µµµ×N§]Ø%ÌÙN1ÀQR:·STcŽÚÛyxÜÝ‘VÞÛ    )QR STFnßàLháNRbâNX\ãNaSÚÛ‰+ä    U 1ÀQVyxÜå)QVæxÿ… çZdZé,v†Œûaÿ    çZd?ÿo
çZdëZZZvç ÿçZdWì
ì5N::í¸ïN-¶õ:,¶ù¶ÿ:²¶ ¶§
:¶±*-*
…†‡‰ŠŒŽ*/4’H55530-/ !æÿ-çúð "#
?±• $%&'
G,¶±
œ   !tu
H+,¸(±
°³ +N$%
[ +¸,M+¸0>±º»
Ä*  +N
4P    5679
d³;!Û<»Y·@M,¶A±ÆÇÈÉË DàEFG