本文整理汇总了Java中com.vexsoftware.votifier.model.Vote类的典型用法代码示例。如果您正苦于以下问题:Java Vote类的具体用法?Java Vote怎么用?Java Vote使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
Vote类属于com.vexsoftware.votifier.model包,在下文中一共展示了Vote类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: onVoteReceived
import com.vexsoftware.votifier.model.Vote; //导入依赖的package包/类
@Override
public void onVoteReceived(Channel channel, final Vote vote, VotifierSession.ProtocolVersion protocolVersion) throws Exception {
if (debug) {
if (protocolVersion == VotifierSession.ProtocolVersion.ONE) {
getLogger().info("Got a protocol v1 vote record from " + channel.remoteAddress() + " -> " + vote);
} else {
getLogger().info("Got a protocol v2 vote record from " + channel.remoteAddress() + " -> " + vote);
}
}
Bukkit.getScheduler().runTask(this, new Runnable() {
@Override
public void run() {
Bukkit.getPluginManager().callEvent(new VotifierEvent(vote));
}
});
}
示例2: onVoteReceived
import com.vexsoftware.votifier.model.Vote; //导入依赖的package包/类
@Override
public void onVoteReceived(Channel channel, final Vote vote, VotifierSession.ProtocolVersion protocolVersion) throws Exception {
if (debug) {
if (protocolVersion == VotifierSession.ProtocolVersion.ONE) {
logger.info("Got a protocol v1 vote record from " + channel.remoteAddress() + " -> " + vote);
} else {
logger.info("Got a protocol v2 vote record from " + channel.remoteAddress() + " -> " + vote);
}
}
Sponge.getScheduler().createTaskBuilder()
.execute(new Runnable() {
@Override
public void run() {
VotifierEvent event = new VotifierEvent(vote, Sponge.getCauseStackManager().getCurrentCause());
Sponge.getEventManager().post(event);
}
})
.submit(this);
}
示例3: onVoteReceived
import com.vexsoftware.votifier.model.Vote; //导入依赖的package包/类
@Override
public void onVoteReceived(Channel channel, final Vote vote, VotifierSession.ProtocolVersion protocolVersion) throws Exception {
if (debug) {
if (protocolVersion == VotifierSession.ProtocolVersion.ONE) {
getLogger().info("Got a protocol v1 vote record from " + channel.remoteAddress() + " -> " + vote);
} else {
getLogger().info("Got a protocol v2 vote record from " + channel.remoteAddress() + " -> " + vote);
}
}
getProxy().getScheduler().runAsync(this, new Runnable() {
@Override
public void run() {
getProxy().getPluginManager().callEvent(new VotifierEvent(vote));
}
});
if (forwardingMethod != null) {
getProxy().getScheduler().runAsync(this, new Runnable() {
@Override
public void run() {
forwardingMethod.forward(vote);
}
});
}
}
示例4: testFailureDecodeBadRsa
import com.vexsoftware.votifier.model.Vote; //导入依赖的package包/类
@Test(expected = CorruptedFrameException.class)
public void testFailureDecodeBadRsa() throws Exception {
// Decode our bad RSA key
KeyFactory keyFactory = KeyFactory.getInstance("RSA");
X509EncodedKeySpec publicKeySpec = new X509EncodedKeySpec(TestVotifierPlugin.r("/bad_public.key"));
PublicKey badPublicKey = keyFactory.generatePublic(publicKeySpec);
// Send the bad vote
EmbeddedChannel channel = createChannel();
byte[] encrypted = VoteUtil.encodePOJOv1(new Vote("Test", "test", "test", "test"), badPublicKey);
ByteBuf encryptedByteBuf = Unpooled.wrappedBuffer(encrypted);
try {
channel.writeInbound(encryptedByteBuf);
} finally {
channel.close();
}
}
示例5: tryIdentifyRealVotev1
import com.vexsoftware.votifier.model.Vote; //导入依赖的package包/类
@Test
public void tryIdentifyRealVotev1() throws Exception {
EmbeddedChannel channel = new EmbeddedChannel(new VotifierProtocolDifferentiator(true, true));
VotifierSession session = new VotifierSession();
channel.attr(VotifierSession.KEY).set(session);
Vote votePojo = new Vote("Test", "test", "test", "test");
byte[] encrypted = VoteUtil.encodePOJOv1(votePojo);
ByteBuf encryptedByteBuf = Unpooled.wrappedBuffer(encrypted);
channel.writeInbound(encryptedByteBuf);
assertEquals(VotifierSession.ProtocolVersion.ONE, session.getVersion());
channel.close();
}
示例6: sendVote
import com.vexsoftware.votifier.model.Vote; //导入依赖的package包/类
private void sendVote(Vote vote, Key key, boolean expectSuccess) throws Exception {
// Create a well-formed request
EmbeddedChannel channel = createChannel();
JSONObject object = new JSONObject();
JSONObject payload = vote.serialize();
payload.put("challenge", SESSION.getChallenge());
object.put("payload", payload.toString());
Mac mac = Mac.getInstance("HmacSHA256");
mac.init(key);
object.put("signature",
Base64.getEncoder().encodeToString(mac.doFinal(payload.toString().getBytes(StandardCharsets.UTF_8))));
if (expectSuccess) {
assertTrue(channel.writeInbound(object.toString()));
assertEquals(vote, channel.readInbound());
assertFalse(channel.finish());
} else {
try {
channel.writeInbound(object.toString());
} finally {
channel.close();
}
}
}
示例7: testFailureDecodeBadPacket
import com.vexsoftware.votifier.model.Vote; //导入依赖的package包/类
@Test(expected = DecoderException.class)
public void testFailureDecodeBadPacket() throws Exception {
// Create a well-formed request
EmbeddedChannel channel = createChannel();
Vote vote = new Vote("Test", "test", "test", "0");
JSONObject object = new JSONObject();
JSONObject payload = vote.serialize();
payload.put("challenge", SESSION.getChallenge());
object.put("payload", payload.toString());
// We "forget" the signature.
try {
channel.writeInbound(object.toString());
} finally {
channel.close();
}
}
示例8: testFailureDecodeBadVoteField
import com.vexsoftware.votifier.model.Vote; //导入依赖的package包/类
@Test(expected = DecoderException.class)
public void testFailureDecodeBadVoteField() throws Exception {
// Create a well-formed request
EmbeddedChannel channel = createChannel();
Vote vote = new Vote("Test", "test", "test", "0");
JSONObject object = new JSONObject();
JSONObject payload = vote.serialize();
// We "forget" the challenge.
object.put("payload", payload.toString());
Mac mac = Mac.getInstance("HmacSHA256");
mac.init(TestVotifierPlugin.getI().getTokens().get("default"));
object.put("signature",
Base64.getEncoder().encodeToString(mac.doFinal(payload.toString().getBytes(StandardCharsets.UTF_8))));
try {
channel.writeInbound(object.toString());
} finally {
channel.close();
}
}
示例9: testFailureDecodeBadChallenge
import com.vexsoftware.votifier.model.Vote; //导入依赖的package包/类
@Test(expected = DecoderException.class)
public void testFailureDecodeBadChallenge() throws Exception {
// Create a well-formed request
EmbeddedChannel channel = createChannel();
Vote vote = new Vote("Test", "test", "test", "0");
JSONObject object = new JSONObject();
JSONObject payload = vote.serialize();
// We provide the wrong challenge.
payload.put("challenge", "not a challenge for me");
object.put("payload", payload.toString());
Mac mac = Mac.getInstance("HmacSHA256");
mac.init(TestVotifierPlugin.getI().getTokens().get("default"));
object.put("signature",
Base64.getEncoder().encode(mac.doFinal(payload.toString().getBytes(StandardCharsets.UTF_8))));
try {
channel.writeInbound(object.toString());
} finally {
channel.close();
}
}
示例10: onVotifierEvent
import com.vexsoftware.votifier.model.Vote; //导入依赖的package包/类
@EventHandler(priority = EventPriority.NORMAL)
public void onVotifierEvent(VotifierEvent event) {
Vote vote = event.getVote();
System.out.println("Received vote: " + vote);
String name = vote.getUsername();
Runnable callback = () -> {
System.out.println("Processed vote for " + name + " from " + vote.getServiceName() + ".");
};
RewardsManager.givePoints(name, 1, VOTE_MESSAGE, callback);
}
示例11: onPluginMessageReceived
import com.vexsoftware.votifier.model.Vote; //导入依赖的package包/类
@Override
public void onPluginMessageReceived(String s, Player player, byte[] bytes) {
try {
String message = new String(bytes, StandardCharsets.UTF_8);
JSONObject jsonObject = new JSONObject(message);
Vote v = new Vote(jsonObject);
listener.onForward(v);
} catch (Exception e) {
NuVotifierBukkit.getInstance().getLogger().log(Level.SEVERE, "There was an unknown error when processing a forwarded vote.", e);
}
}
示例12: onForward
import com.vexsoftware.votifier.model.Vote; //导入依赖的package包/类
@Override
public void onForward(final Vote v) {
if (debug) {
getLogger().info("Got a forwarded vote -> " + v);
}
Bukkit.getScheduler().runTask(this, new Runnable() {
@Override
public void run() {
Bukkit.getPluginManager().callEvent(new VotifierEvent(v));
}
});
}
示例13: handlePayload
import com.vexsoftware.votifier.model.Vote; //导入依赖的package包/类
@Override
public void handlePayload(ChannelBuf channelBuf, RemoteConnection remoteConnection, Platform.Type type) {
try {
String message = new String(channelBuf.array(), StandardCharsets.UTF_8);
JSONObject jsonObject = new JSONObject(message);
Vote v = new Vote(jsonObject);
listener.onForward(v);
} catch (Exception e) {
p.getLogger().error("There was an unknown error when processing a forwarded vote.", e);
}
}
示例14: onForward
import com.vexsoftware.votifier.model.Vote; //导入依赖的package包/类
@Override
public void onForward(final Vote v) {
if (debug) {
logger.info("Got a forwarded vote -> " + v);
}
Sponge.getScheduler().createTaskBuilder()
.execute(new Runnable() {
@Override
public void run() {
VotifierEvent event = new VotifierEvent(v, Sponge.getCauseStackManager().getCurrentCause());
Sponge.getEventManager().post(event);
}
})
.submit(this);
}
示例15: forward
import com.vexsoftware.votifier.model.Vote; //导入依赖的package包/类
@Override
public void forward(Vote v) {
ProxiedPlayer p = ProxyServer.getInstance().getPlayer(v.getUsername());
if (p == null || !forwardSpecific(p.getServer().getInfo(), v)) {
ServerInfo serverInfo = ProxyServer.getInstance().getServers().get(fallbackServer);
// nowhere to fall back to, yet still not online. lets save this vote yet!
if (serverInfo == null)
attempToAddToPlayerCache(v, v.getUsername());
else if (!forwardSpecific(serverInfo, v))
attemptToAddToCache(v, fallbackServer);
}
}