📄 joingroup.java
字号:
import java.io.StringWriter;
import net.jxta.credential.AuthenticationCredential;
import net.jxta.credential.Credential;
import net.jxta.document.StructuredDocument;
import net.jxta.document.StructuredTextDocument;
import net.jxta.document.MimeMediaType;
import net.jxta.membership.Authenticator;
import net.jxta.membership.MembershipService;
import net.jxta.peergroup.PeerGroup;
import net.jxta.protocol.PeerGroupAdvertisement;
import net.jxta.protocol.ModuleImplAdvertisement;
import net.jxta.discovery.DiscoveryService;
public class JoinGroup {
/**
* 加入到新建的点组grp
* @param grp
*/
public void joinGroup(PeerGroup grp){
StructuredDocument creds = null;
try{
//生成点组的信任书
AuthenticationCredential authCred = new AuthenticationCredential(grp,//要加入的点组
null,//请求调用的方法
creds);//可选信息
MembershipService membership =grp.getMembershipService(); //获取要加入的成员关系服务
Authenticator auth = membership.apply(authCred); //申请加入
if(auth.isReadyForJoin()){ //如果申请得到批准
Credential myCred= membership.join(auth); //加入点组
System.out.println("成功加入到新建的点组");
StructuredTextDocument doc = (StructuredTextDocument)myCred.getDocument(new MimeMediaType("text/plain"));
StringWriter out = new StringWriter();
doc.sendToWriter(out); //输出信任书
out.close();
}
else
System.out.println("加入到点组失败");
}
catch(Exception e){
System.out.println("Failure in authentication");
e.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -