update LinkService

This commit is contained in:
free will
2021-04-26 17:38:49 +08:00
parent 8074b49e0c
commit 79bb16267e
2 changed files with 59 additions and 60 deletions
@@ -0,0 +1,16 @@
package logicface;
import component.Identifier;
import security.KeyChain;
/*
* @Author: Wang Feng
* @Description: IRegisterPrefixHelper 命令执行器接口
* 1. 本来不必在 logicface 这个包里面定义这个接口,但是因为go语言不允许两个包循环引用,所以在这边用一个接口做隔离
* @Version: 1.0.0
* @Date: 17:21 2021/4/26
* @Copyright: MIN-Group;国家重大科技基础设施——未来网络北大实验室;深圳市信息论与未来网络重点实验室
*/
public interface IRegisterPrefixHelper {
boolean registerPrefix(Identifier identifier, LogicFace face, KeyChain keyChain);
}
+43 -60
View File
@@ -146,58 +146,43 @@ public class LinkService {
}
}
private boolean sendPacket(IEncodingAble packet) throws LogicFaceException {
/**
* 发送一个兴趣包
* @param interest
* @return
* @throws LogicFaceException
*/
public boolean sendInterest(Interest interest) throws LogicFaceException {
try {
Encoder encoder=new Encoder();
if(!encoder.encoderReset(new SizeT(Encoder.MaxPacketSize),new SizeT(0))){
return false;
}
int bufLen=packet.wireEncode(encoder);
int bufLen=interest.wireEncode(encoder);
byte[] buf=encoder.getBuffer();
return this.sendByteBuffer(buf,bufLen);
} catch (EncoderException | PacketException | LogicFaceException | MgmtException | ComponentException e) {
throw new LogicFaceException("LinkService.sendPacket: "+e.getMessage());
} catch (EncoderException | PacketException | LogicFaceException e) {
throw new LogicFaceException("LinkService.sendInterest: "+e.getMessage());
}
}
/**
* 发送一个兴趣包
* @param interest
* @return
*/
public boolean sendInterest(Interest interest) throws LogicFaceException {
// try {
// Encoder encoder=new Encoder();
// if(!encoder.encoderReset(new SizeT(Encoder.MaxPacketSize),new SizeT(0))){
// return false;
// }
// int bufLen=interest.wireEncode(encoder);
// byte[] buf=encoder.getBuffer();
// return this.sendByteBuffer(buf,bufLen);
// } catch (EncoderException | PacketException e) {
// throw new LogicFaceException("LinkService.sendInterest: "+e.getMessage());
// }
return sendPacket(interest);
}
/**
* 发送一个数据包
* @param data
* @return
*/
public boolean sendData(Data data) throws LogicFaceException {
// try {
// Encoder encoder=new Encoder();
// if(!encoder.encoderReset(new SizeT(Encoder.MaxPacketSize),new SizeT(0))){
// return false;
// }
// int bufLen=data.wireEncode(encoder);
// byte[] buf=encoder.getBuffer();
// return this.sendByteBuffer(buf,bufLen);
// } catch (EncoderException | PacketException e) {
// throw new LogicFaceException("LinkService.sendData: "+e.getMessage());
// }
return sendPacket(data);
try {
Encoder encoder=new Encoder();
if(!encoder.encoderReset(new SizeT(Encoder.MaxPacketSize),new SizeT(0))){
return false;
}
int bufLen=data.wireEncode(encoder);
byte[] buf=encoder.getBuffer();
return this.sendByteBuffer(buf,bufLen);
} catch (EncoderException | PacketException | LogicFaceException e) {
throw new LogicFaceException("LinkService.sendData: "+e.getMessage());
}
}
/**
@@ -206,18 +191,17 @@ public class LinkService {
* @return
*/
public boolean sendCPacket(CPacket cPacket) throws LogicFaceException {
// try {
// Encoder encoder=new Encoder();
// if(!encoder.encoderReset(new SizeT(Encoder.MaxPacketSize),new SizeT(0))){
// return false;
// }
// int bufLen=cPacket.wireEncode(encoder);
// byte[] buf=encoder.getBuffer();
// return this.sendByteBuffer(buf,bufLen);
// } catch (EncoderException | PacketException e) {
// throw new LogicFaceException("LinkService.sendCPacket: "+e.getMessage());
// }
return sendPacket(cPacket);
try {
Encoder encoder=new Encoder();
if(!encoder.encoderReset(new SizeT(Encoder.MaxPacketSize),new SizeT(0))){
return false;
}
int bufLen=cPacket.wireEncode(encoder);
byte[] buf=encoder.getBuffer();
return this.sendByteBuffer(buf,bufLen);
} catch (EncoderException | PacketException | LogicFaceException e) {
throw new LogicFaceException("LinkService.sendCPacket: "+e.getMessage());
}
}
/**
@@ -226,17 +210,16 @@ public class LinkService {
* @return
*/
public boolean sendMINPacket(MINPacket minPacket) throws LogicFaceException {
// try {
// Encoder encoder=new Encoder();
// if(!encoder.encoderReset(new SizeT(Encoder.MaxPacketSize),new SizeT(0))){
// return false;
// }
// int bufLen=minPacket.wireEncode(encoder);
// byte[] buf=encoder.getBuffer();
// return this.sendByteBuffer(buf,bufLen);
// } catch (EncoderException | PacketException e) {
// throw new LogicFaceException("LinkService.sendMINPacket: "+e.getMessage());
// }
return sendPacket(minPacket);
try {
Encoder encoder=new Encoder();
if(!encoder.encoderReset(new SizeT(Encoder.MaxPacketSize),new SizeT(0))){
return false;
}
int bufLen=minPacket.wireEncode(encoder);
byte[] buf=encoder.getBuffer();
return this.sendByteBuffer(buf,bufLen);
} catch (EncoderException | PacketException | LogicFaceException e) {
throw new LogicFaceException("LinkService.sendMINPacket: "+e.getMessage());
}
}
}