本文整理汇总了Java中com.google.bitcoin.protocols.channels.ServerConnectionEventHandler类的典型用法代码示例。如果您正苦于以下问题:Java ServerConnectionEventHandler类的具体用法?Java ServerConnectionEventHandler怎么用?Java ServerConnectionEventHandler使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ServerConnectionEventHandler类属于com.google.bitcoin.protocols.channels包,在下文中一共展示了ServerConnectionEventHandler类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: onNewConnection
import com.google.bitcoin.protocols.channels.ServerConnectionEventHandler; //导入依赖的package包/类
@Override
public ServerConnectionEventHandler onNewConnection(final SocketAddress clientAddress) {
// Each connection needs a handler which is informed when that payment channel gets adjusted. Here we just log
// things. In a real app this object would be connected to some business logic.
return new ServerConnectionEventHandler() {
@Override
public void channelOpen(Sha256Hash channelId) {
log.info("Channel open for {}: {}.", clientAddress, channelId);
// Try to get the state object from the stored state set in our wallet
PaymentChannelServerState state = null;
try {
state = storedStates.getChannel(channelId).getOrCreateState(appKit.wallet(), appKit.peerGroup());
} catch (VerificationException e) {
// This indicates corrupted data, and since the channel was just opened, cannot happen
throw new RuntimeException(e);
}
log.info(" with a maximum value of {}, expiring at UNIX timestamp {}.",
// The channel's maximum value is the value of the multisig contract which locks in some
// amount of money to the channel
state.getMultisigContract().getOutput(0).getValue(),
// The channel expires at some offset from when the client's refund transaction becomes
// spendable.
state.getRefundTransactionUnlockTime() + StoredPaymentChannelServerStates.CHANNEL_EXPIRE_OFFSET);
}
@Override
public void paymentIncrease(BigInteger by, BigInteger to) {
log.info("Client {} paid increased payment by {} for a total of " + to.toString(), clientAddress, by);
}
@Override
public void channelClosed(PaymentChannelCloseException.CloseReason reason) {
log.info("Client {} closed channel for reason {}", clientAddress, reason);
}
};
}
示例2: onNewConnection
import com.google.bitcoin.protocols.channels.ServerConnectionEventHandler; //导入依赖的package包/类
@Nullable
@Override
public native ServerConnectionEventHandler onNewConnection(SocketAddress clientAddress);