Skip to content

Commit c8e76b2

Browse files
committed
优化ipfs api调用
1 parent 2fe2f3d commit c8e76b2

File tree

14 files changed

+302
-42
lines changed

14 files changed

+302
-42
lines changed

profile/nbs.db

0 Bytes
Binary file not shown.

src/main/java/UI/AppMainWindow.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ public AppMainWindow(){
142142

143143
initialize();
144144
//订阅世界消息
145-
subCtrlWorld();
145+
// subCtrlWorld();
146146
//广播自己上线
147147
broadcastOnline();
148148
ImPeersService imPeersService = new ImPeersService();
@@ -153,8 +153,6 @@ public AppMainWindow(){
153153

154154
}
155155

156-
157-
158156
/**
159157
*
160158
*/
@@ -554,10 +552,9 @@ private void subCtrlWorld(){
554552
@Override
555553
public void run() {
556554
try {
557-
Stream<Map<String,Object>> subs = ipfs.pubsub.sub(IPFSHelper.NBSWORLD_IMS_TOPIC);
555+
Stream<Map<String,Object>> subs = ipfs.pubsub.sub(IPFSHelper.NBSWORLD_CTRL_TOPIC);
558556
List<Map<String,Object>> messages = subs.limit(1).collect(Collectors.toList());
559557
logger.info(JSONParser.toString(messages));
560-
//TODO
561558
} catch (Exception e) {
562559
e.printStackTrace();
563560
}

src/main/java/UI/panel/im/IMPanel.java

Lines changed: 21 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,17 +15,16 @@
1515
import com.nbs.ui.components.ColorCnst;
1616
import com.nbs.utils.Base64CodecUtil;
1717
import io.ipfs.api.IPFS;
18-
import io.ipfs.api.JSONParser;
18+
1919
import org.apache.commons.lang3.StringUtils;
2020

2121
import javax.swing.*;
2222
import java.awt.*;
2323
import java.awt.event.ActionEvent;
2424
import java.util.List;
25-
import java.util.Map;
2625
import java.util.concurrent.TimeUnit;
27-
import java.util.stream.Collectors;
28-
import java.util.stream.Stream;
26+
import java.util.concurrent.atomic.AtomicInteger;
27+
2928

3029
/**
3130
* @Package : UI.panel.im
@@ -41,7 +40,7 @@ public class IMPanel extends NBSAbstractPanel {
4140
private static IMPanel context;
4241

4342
private boolean testRunning = false;
44-
43+
public static AtomicInteger msgMax = new AtomicInteger(0);
4544
/**
4645
* 左侧IM peers
4746
*/
@@ -187,7 +186,7 @@ private JPanel buildMessMainPanel(){
187186
messPanel = new WihteBackJPanel();
188187
messPanel.setLayout(new BorderLayout());
189188
int downHeight = 116;
190-
int upHeight = ConstantsUI.MAIN_WINDOW_HEIGHT -downHeight-24;
189+
int upHeight = ConstantsUI.MAIN_WINDOW_HEIGHT -24;
191190

192191
/**
193192
* 上部
@@ -237,7 +236,7 @@ private JPanel buildMessMainPanel(){
237236
imOperPanel.add(sendButton,BorderLayout.SOUTH);
238237

239238
//
240-
imOperPanel.add(testButton,BorderLayout.NORTH);
239+
//imOperPanel.add(testButton,BorderLayout.NORTH);
241240
imDownContainer.add(imOperPanel,BorderLayout.EAST);
242241

243242
messPanel.add(imupContainer,BorderLayout.CENTER);
@@ -284,6 +283,13 @@ private void sendMsg(){
284283
AppMainWindow.ipfs.pubsub.pub(topic,Base64CodecUtil.encodeByCtrlType(sendContent,Base64CodecUtil.CtrlTypes.normal));
285284
inputArea.setText("");
286285
sb.append(ConstantsUI.ENTER_CHARACTER);
286+
if(msgMax.intValue()>18){
287+
msgMax.set(0);
288+
imMSGShow.setText("");
289+
//清空
290+
}
291+
int next = msgMax.intValue() +1;
292+
msgMax.set(next);
287293
imMSGShow.append(sb.toString());
288294
} catch (Exception e) {
289295
e.printStackTrace();
@@ -332,6 +338,13 @@ public void contactsItemChanged(ContactsItem item){
332338

333339
public static void appendMsgShow(List<ContactsItem> items,IpfsMessage ipfsMessage){
334340
if(ipfsMessage==null)return;
341+
if(msgMax.intValue()>18){
342+
msgMax.set(0);
343+
imMSGShow.setText("");
344+
//清空
345+
}
346+
int next = msgMax.intValue() +1;
347+
msgMax.set(next);
335348
String formid = ipfsMessage.getFrom();
336349
String nick = formid;
337350
//
@@ -346,7 +359,7 @@ public static void appendMsgShow(List<ContactsItem> items,IpfsMessage ipfsMessag
346359

347360
StringBuilder sb = new StringBuilder();
348361
sb.append(nick).append(">>").append(ipfsMessage.getTime()).append(ConstantsUI.ENTER_CHARACTER);
349-
sb.append(ipfsMessage.getContents()).append(ConstantsUI.ENTER_CHARACTER);
362+
sb.append(ConstantsUI.WSPACE_CHARACTER4).append(ipfsMessage.getContents()).append(ConstantsUI.ENTER_CHARACTER);
350363
imMSGShow.append(sb.toString());
351364
}
352365

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
package com.nbs.biz.dao;
2+
3+
import org.apache.ibatis.session.SqlSession;
4+
5+
6+
7+
/**
8+
* @Package : com.nbs.biz.dao
9+
* @Description : <p></p>
10+
* @Author : lambor.c
11+
* @Date : 2018/6/27-16:36
12+
* Copyright (c) 2018, NBS , lambor.c<[email protected]>.
13+
* All rights reserved.
14+
*/
15+
public class ContactsDao extends BasicDao {
16+
public ContactsDao(SqlSession session) {
17+
super(session,ContactsDao.class);
18+
}
19+
20+
public int existCountByPeerId(String peerId){
21+
return 0;
22+
}
23+
}

src/main/java/com/nbs/biz/model/ContactsModel.java renamed to src/main/java/com/nbs/biz/model/ContactsEntity.java

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,10 @@
99
* Copyright (c) 2018, NBS , lambor.c<[email protected]>.
1010
* All rights reserved.
1111
*/
12-
public class ContactsModel extends BasicModel {
12+
public class ContactsEntity extends BasicModel {
1313

1414
private String id;
15+
private String fromid;
1516
private String nick;
1617
/**
1718
* hash58
@@ -28,18 +29,27 @@ public class ContactsModel extends BasicModel {
2829
private Integer ctime;
2930
private Integer lmtime;
3031

31-
public ContactsModel(String id, String nick, String avatar, String avatarSuffix) {
32+
33+
public ContactsEntity(String id, String nick, String avatar, String avatarSuffix) {
3234
this.id = id;
3335
this.nick = nick;
3436
this.avatar = avatar;
3537
this.avatarSuffix = avatarSuffix;
3638
}
3739

38-
public ContactsModel(String id, String nick) {
40+
public ContactsEntity(String id, String nick) {
3941
this.id = id;
4042
this.nick = nick;
4143
}
4244

45+
public String getFromid() {
46+
return fromid;
47+
}
48+
49+
public void setFromid(String fromid) {
50+
this.fromid = fromid;
51+
}
52+
4353
public String getId() {
4454
return id;
4555
}
Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
package com.nbs.biz.service;
2+
3+
import com.nbs.biz.dao.BasicDao;
4+
import com.nbs.biz.model.BasicModel;
5+
6+
import java.util.List;
7+
8+
/**
9+
* @Package : com.nbs.biz.service
10+
* @Description : <p></p>
11+
* @Author : lambor.c
12+
* @Date : 2018/6/27-17:52
13+
* Copyright (c) 2018, NBS , lambor.c<[email protected]>.
14+
* All rights reserved.
15+
*/
16+
public class BasicService<T extends BasicDao, E extends BasicModel> {
17+
T dao;
18+
19+
public void setDao(T dao)
20+
{
21+
this.dao = dao;
22+
}
23+
24+
public int insert(BasicModel model)
25+
{
26+
return dao.insert(model);
27+
}
28+
29+
public List<E> findAll()
30+
{
31+
return dao.findAll();
32+
}
33+
34+
public E findById(String id)
35+
{
36+
return (E) dao.findById(id);
37+
}
38+
39+
public List<E> find(String field, Object val)
40+
{
41+
return dao.find(field, val);
42+
}
43+
44+
public int delete(String id)
45+
{
46+
return dao.delete(id);
47+
}
48+
49+
public int deleteAll()
50+
{
51+
return dao.deleteAll();
52+
}
53+
54+
public int update(BasicModel model)
55+
{
56+
return dao.update(model);
57+
}
58+
59+
public int updateIgnoreNull(BasicModel model)
60+
{
61+
return dao.updateIgnoreNull(model);
62+
}
63+
64+
public int count()
65+
{
66+
return dao.count();
67+
}
68+
69+
public boolean exist(String id)
70+
{
71+
return dao.exist(id);
72+
}
73+
}
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
package com.nbs.biz.service;
2+
3+
import com.nbs.biz.dao.BasicDao;
4+
import com.nbs.biz.dao.ContactsDao;
5+
import com.nbs.biz.model.ContactsEntity;
6+
import org.apache.ibatis.session.SqlSession;
7+
8+
/**
9+
* @Package : com.nbs.biz.service
10+
* @Description : <p></p>
11+
* @Author : lambor.c
12+
* @Date : 2018/6/27-17:42
13+
* Copyright (c) 2018, NBS , lambor.c<[email protected]>.
14+
* All rights reserved.
15+
*/
16+
public class ContactsService extends BasicService<ContactsDao,ContactsEntity> {
17+
/**
18+
*
19+
* @param session
20+
*/
21+
public ContactsService(SqlSession session) {
22+
dao = new ContactsDao(session);
23+
setDao(dao);
24+
}
25+
26+
public int insertOrUpdate(ContactsEntity entity){
27+
28+
if(exist(entity.getId())){
29+
return update(entity);
30+
}else {
31+
return insert(entity);
32+
}
33+
}
34+
}

src/main/java/com/nbs/ui/adapter/ContactsItemAdapter.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,9 @@ public class ContactsItemAdapter extends BaseAdapter<ContactsItemViewHolder> {
3030
private List<ContactsItem> contactsItems;
3131
private List<ContactsItemViewHolder> viewHolders = new ArrayList<>();
3232

33+
/**
34+
* 首拼音
35+
*/
3336
Map<Integer, String> positionMap = new HashMap<>();
3437
/**
3538
* 选中的
@@ -149,7 +152,7 @@ public void mouseExited(MouseEvent e)
149152
{
150153
if (selectedViewHolder != viewHolder)
151154
{
152-
setBackground(viewHolder, ColorCnst.DARK);
155+
setBackground(viewHolder, ColorCnst.DARKER);
153156
}
154157
}
155158
});

0 commit comments

Comments
 (0)