本文整理汇总了Java中org.sdnplatform.sync.thrift.AsyncMessageHeader.setTransactionId方法的典型用法代码示例。如果您正苦于以下问题:Java AsyncMessageHeader.setTransactionId方法的具体用法?Java AsyncMessageHeader.setTransactionId怎么用?Java AsyncMessageHeader.setTransactionId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.sdnplatform.sync.thrift.AsyncMessageHeader
的用法示例。
在下文中一共展示了AsyncMessageHeader.setTransactionId方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getError
import org.sdnplatform.sync.thrift.AsyncMessageHeader; //导入方法依赖的package包/类
/**
* Generate an error message from the provided transaction ID and
* exception
* @param transactionId the transaction Id
* @param error the exception
* @param type the type of the message that generated the error
* @return the {@link SyncError} message
*/
protected SyncMessage getError(int transactionId, Exception error,
MessageType type) {
int ec = SyncException.ErrorType.GENERIC.getValue();
if (error instanceof SyncException) {
ec = ((SyncException)error).getErrorType().getValue();
} else {
logger.error("Unexpected error processing message " + transactionId
+ "(" + type + ")", error);
}
SyncError m = new SyncError();
m.setErrorCode(ec);
m.setMessage(error.getMessage());
ErrorMessage em = new ErrorMessage();
em.setError(m);
em.setType(type);
AsyncMessageHeader header = new AsyncMessageHeader();
header.setTransactionId(transactionId);
em.setHeader(header);
SyncMessage bsm = new SyncMessage(MessageType.ERROR);
bsm.setError(em);
return bsm;
}
示例2: handleHello
import org.sdnplatform.sync.thrift.AsyncMessageHeader; //导入方法依赖的package包/类
@Override
protected void handleHello(HelloMessage hello, Channel channel) {
remoteNodeId = hello.getNodeId();
org.sdnplatform.sync.thrift.Node n =
new org.sdnplatform.sync.thrift.Node();
n.setHostname(bootstrap.localNode.getHostname());
n.setPort(bootstrap.localNode.getPort());
if (bootstrap.localNode.getNodeId() >= 0)
n.setNodeId(bootstrap.localNode.getNodeId());
if (bootstrap.localNode.getDomainId() >= 0)
n.setDomainId(bootstrap.localNode.getDomainId());
ClusterJoinRequestMessage cjrm = new ClusterJoinRequestMessage();
AsyncMessageHeader header = new AsyncMessageHeader();
header.setTransactionId(bootstrap.transactionId.getAndIncrement());
cjrm.setHeader(header);
cjrm.setNode(n);
SyncMessage bsm =
new SyncMessage(MessageType.CLUSTER_JOIN_REQUEST);
bsm.setClusterJoinRequest(cjrm);
channel.writeAndFlush(bsm);
}
示例3: get
import org.sdnplatform.sync.thrift.AsyncMessageHeader; //导入方法依赖的package包/类
@Override
public List<Versioned<byte[]>> get(ByteArray key) throws SyncException {
StoreUtils.assertValidKey(key);
GetRequestMessage grm = new GetRequestMessage();
AsyncMessageHeader header = new AsyncMessageHeader();
header.setTransactionId(syncManager.getTransactionId());
grm.setHeader(header);
grm.setKey(key.get());
grm.setStoreName(storeName);
SyncMessage bsm = new SyncMessage(MessageType.GET_REQUEST);
bsm.setGetRequest(grm);
SyncReply reply = getReply(header.getTransactionId(), bsm);
return reply.getValues();
}
示例4: put
import org.sdnplatform.sync.thrift.AsyncMessageHeader; //导入方法依赖的package包/类
@Override
public void put(ByteArray key, Versioned<byte[]> value)
throws SyncException {
StoreUtils.assertValidKey(key);
PutRequestMessage prm = new PutRequestMessage();
AsyncMessageHeader header = new AsyncMessageHeader();
header.setTransactionId(syncManager.getTransactionId());
prm.setHeader(header);
prm.setVersionedValue(TProtocolUtil.getTVersionedValue(value));
prm.setKey(key.get());
prm.setStoreName(storeName);
SyncMessage bsm = new SyncMessage(MessageType.PUT_REQUEST);
bsm.setPutRequest(prm);
getReply(header.getTransactionId(), bsm);
}
示例5: handleHello
import org.sdnplatform.sync.thrift.AsyncMessageHeader; //导入方法依赖的package包/类
@Override
protected void handleHello(HelloMessage hello, Channel channel) {
remoteNodeId = hello.getNodeId();
org.sdnplatform.sync.thrift.Node n =
new org.sdnplatform.sync.thrift.Node();
n.setHostname(bootstrap.localNode.getHostname());
n.setPort(bootstrap.localNode.getPort());
if (bootstrap.localNode.getNodeId() >= 0)
n.setNodeId(bootstrap.localNode.getNodeId());
if (bootstrap.localNode.getDomainId() >= 0)
n.setDomainId(bootstrap.localNode.getDomainId());
ClusterJoinRequestMessage cjrm = new ClusterJoinRequestMessage();
AsyncMessageHeader header = new AsyncMessageHeader();
header.setTransactionId(bootstrap.transactionId.getAndIncrement());
cjrm.setHeader(header);
cjrm.setNode(n);
SyncMessage bsm =
new SyncMessage(MessageType.CLUSTER_JOIN_REQUEST);
bsm.setClusterJoinRequest(cjrm);
channel.write(bsm);
}
示例6: put
import org.sdnplatform.sync.thrift.AsyncMessageHeader; //导入方法依赖的package包/类
@Override
public void put(ByteArray key, Versioned<byte[]> value)
throws SyncException {
StoreUtils.assertValidKey(key);
PutRequestMessage prm = new PutRequestMessage();
AsyncMessageHeader header = new AsyncMessageHeader();
header.setTransactionId(syncManager.getTransactionId());
prm.setHeader(header);
prm.setVersionedValue(TProtocolUtil.getTVersionedValue(value));
prm.setKey(key.get());
prm.setStoreName(storeName);
SyncMessage bsm = new SyncMessage(MessageType.PUT_REQUEST);
bsm.setPutRequest(prm);
getReply(header.getTransactionId(), bsm);
}
示例7: getError
import org.sdnplatform.sync.thrift.AsyncMessageHeader; //导入方法依赖的package包/类
/**
* Generate an error message from the provided transaction ID and
* exception
* @param transactionId the transaction Id
* @param error the exception
* @param type the type of the message that generated the error
* @return the {@link SyncError} message
*/
protected SyncMessage getError(int transactionId, Exception error,
MessageType type) {
int ec = SyncException.ErrorType.GENERIC.getValue();
if (error instanceof SyncException) {
ec = ((SyncException)error).getErrorType().getValue();
} else {
logger.error("Unexpected error processing message " + transactionId
+ "(" + type + ")", error);
}
SyncError m = new SyncError();
m.setErrorCode(ec);
m.setMessage(error.getMessage());
ErrorMessage em = new ErrorMessage();
em.setError(m);
em.setType(type);
AsyncMessageHeader header = new AsyncMessageHeader();
header.setTransactionId(transactionId);
em.setHeader(header);
SyncMessage bsm = new SyncMessage(MessageType.ERROR);
bsm.setError(em);
return bsm;
}
示例8: handleHello
import org.sdnplatform.sync.thrift.AsyncMessageHeader; //导入方法依赖的package包/类
@Override
protected void handleHello(HelloMessage hello, Channel channel) {
remoteNodeId = hello.getNodeId();
org.sdnplatform.sync.thrift.Node n =
new org.sdnplatform.sync.thrift.Node();
n.setHostname(bootstrap.localNode.getHostname());
n.setPort(bootstrap.localNode.getPort());
if (bootstrap.localNode.getNodeId() >= 0)
n.setNodeId(bootstrap.localNode.getNodeId());
if (bootstrap.localNode.getDomainId() >= 0)
n.setDomainId(bootstrap.localNode.getDomainId());
ClusterJoinRequestMessage cjrm = new ClusterJoinRequestMessage();
AsyncMessageHeader header = new AsyncMessageHeader();
header.setTransactionId(bootstrap.transactionId.getAndIncrement());
cjrm.setHeader(header);
cjrm.setNode(n);
SyncMessage bsm =
new SyncMessage(MessageType.CLUSTER_JOIN_REQUEST);
bsm.setClusterJoinRequest(cjrm);
channel.writeAndFlush(bsm);
}
示例9: channelActive
import org.sdnplatform.sync.thrift.AsyncMessageHeader; //导入方法依赖的package包/类
@Override
public void channelActive(ChannelHandlerContext ctx) throws Exception {
channelState = ChannelState.CONNECTED;
HelloMessage m = new HelloMessage();
if (getLocalNodeId() != null)
m.setNodeId(getLocalNodeId());
AsyncMessageHeader header = new AsyncMessageHeader();
header.setTransactionId(getTransactionId());
m.setHeader(header);
switch (getAuthScheme()) {
case NO_AUTH:
channelState = ChannelState.AUTHENTICATED;
m.setAuthScheme(org.sdnplatform.sync.thrift.
AuthScheme.NO_AUTH);
break;
case CHALLENGE_RESPONSE:
AuthChallengeResponse cr = new AuthChallengeResponse();
cr.setChallenge(generateChallenge());
m.setAuthScheme(org.sdnplatform.sync.thrift.
AuthScheme.CHALLENGE_RESPONSE);
m.setAuthChallengeResponse(cr);
break;
}
SyncMessage bsm = new SyncMessage(MessageType.HELLO);
bsm.setHello(m);
ctx.channel().writeAndFlush(bsm);
}
示例10: channelIdle
import org.sdnplatform.sync.thrift.AsyncMessageHeader; //导入方法依赖的package包/类
public void channelIdle(ChannelHandlerContext ctx, IdleStateEvent e) throws Exception {
// send an echo request
EchoRequestMessage m = new EchoRequestMessage();
AsyncMessageHeader header = new AsyncMessageHeader();
header.setTransactionId(getTransactionId());
m.setHeader(header);
SyncMessage bsm = new SyncMessage(MessageType.ECHO_REQUEST);
bsm.setEchoRequest(m);
ctx.channel().writeAndFlush(bsm);
}
示例11: handshakeChallengeResponse
import org.sdnplatform.sync.thrift.AsyncMessageHeader; //导入方法依赖的package包/类
protected void handshakeChallengeResponse(HelloMessage request,
Channel channel)
throws AuthException {
AuthChallengeResponse cr = request.getAuthChallengeResponse();
if (cr == null) {
throw new AuthException("No authentication data in " +
"handshake message");
}
if (cr.isSetResponse()) {
authenticateResponse(currentChallenge, cr.getResponse());
currentChallenge = null;
channelState = ChannelState.AUTHENTICATED;
handleHello(request, channel);
} else if (cr.isSetChallenge()) {
HelloMessage m = new HelloMessage();
if (getLocalNodeId() != null)
m.setNodeId(getLocalNodeId());
AsyncMessageHeader header = new AsyncMessageHeader();
header.setTransactionId(getTransactionId());
m.setHeader(header);
SyncMessage bsm = new SyncMessage(MessageType.HELLO);
bsm.setHello(m);
AuthChallengeResponse reply = new AuthChallengeResponse();
reply.setResponse(generateResponse(cr.getChallenge()));
m.setAuthChallengeResponse(reply);
channel.writeAndFlush(bsm);
} else {
throw new AuthException("No authentication data in " +
"handshake message");
}
}
示例12: handleEchoRequest
import org.sdnplatform.sync.thrift.AsyncMessageHeader; //导入方法依赖的package包/类
protected void handleEchoRequest(EchoRequestMessage request,
Channel channel) {
EchoReplyMessage m = new EchoReplyMessage();
AsyncMessageHeader header = new AsyncMessageHeader();
header.setTransactionId(request.getHeader().getTransactionId());
m.setHeader(header);
SyncMessage bsm = new SyncMessage(MessageType.ECHO_REPLY);
bsm.setEchoReply(m);
channel.writeAndFlush(bsm);
}
示例13: getCRM
import org.sdnplatform.sync.thrift.AsyncMessageHeader; //导入方法依赖的package包/类
private CursorRequestMessage getCRM() {
CursorRequestMessage crm = new CursorRequestMessage();
AsyncMessageHeader header = new AsyncMessageHeader();
header.setTransactionId(syncManager.getTransactionId());
crm.setHeader(header);
return crm;
}
示例14: channelConnected
import org.sdnplatform.sync.thrift.AsyncMessageHeader; //导入方法依赖的package包/类
@Override
public void channelConnected(ChannelHandlerContext ctx,
ChannelStateEvent e) throws Exception {
channelState = ChannelState.CONNECTED;
HelloMessage m = new HelloMessage();
if (getLocalNodeId() != null)
m.setNodeId(getLocalNodeId());
AsyncMessageHeader header = new AsyncMessageHeader();
header.setTransactionId(getTransactionId());
m.setHeader(header);
switch (getAuthScheme()) {
case NO_AUTH:
channelState = ChannelState.AUTHENTICATED;
m.setAuthScheme(org.sdnplatform.sync.thrift.
AuthScheme.NO_AUTH);
break;
case CHALLENGE_RESPONSE:
AuthChallengeResponse cr = new AuthChallengeResponse();
cr.setChallenge(generateChallenge());
m.setAuthScheme(org.sdnplatform.sync.thrift.
AuthScheme.CHALLENGE_RESPONSE);
m.setAuthChallengeResponse(cr);
break;
}
SyncMessage bsm = new SyncMessage(MessageType.HELLO);
bsm.setHello(m);
ctx.getChannel().write(bsm);
}
示例15: channelIdle
import org.sdnplatform.sync.thrift.AsyncMessageHeader; //导入方法依赖的package包/类
@Override
public void channelIdle(ChannelHandlerContext ctx,
IdleStateEvent e) throws Exception {
// send an echo request
EchoRequestMessage m = new EchoRequestMessage();
AsyncMessageHeader header = new AsyncMessageHeader();
header.setTransactionId(getTransactionId());
m.setHeader(header);
SyncMessage bsm = new SyncMessage(MessageType.ECHO_REQUEST);
bsm.setEchoRequest(m);
ctx.getChannel().write(bsm);
}