Skip to content

Commit

Permalink
owo what's this?
Browse files Browse the repository at this point in the history
  • Loading branch information
BenjaminUrquhart authored Sep 2, 2018
1 parent 50f0c98 commit f64175c
Show file tree
Hide file tree
Showing 3 changed files with 88 additions and 0 deletions.
10 changes: 10 additions & 0 deletions src/main/java/net/arptell/dhcpcord/DHCPCord.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;
import java.util.concurrent.TimeUnit;

import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
Expand Down Expand Up @@ -1029,5 +1030,14 @@ else if(id.contains(":")) {
channel.sendMessage("<@190544080164487168>").queue();
return;
}
if(cmd.equals("despacito") && guild.getId().equals("110373943822540800")) {
try {
channel.sendMessage(guild.getRoleById("483796184083726346").getAsMention()).complete();
channel.sendMessage(guild.getRoleById("483796220792406017").getAsMention()).completeAfter(750L, TimeUnit.MILLISECONDS);
channel.sendMessage(guild.getRoleById("483796246088384512").getAsMention()).completeAfter(750L, TimeUnit.MILLISECONDS);
}
catch(Exception e) {}
return;
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package net.arptell.dhcpcord.exceptions;

public class DHCPConnectException extends Exception {

public DHCPConnectException(String reason) {
super(reason);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
package net.arptell.dhcpcord.handlers;

import net.arptell.dhcpcord.exceptions.*;

import java.util.HashMap;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.*;

import net.dv8tion.jda.core.entities.*;

public class DHCPConnectionHandler {

private HashMap<Member, String> ipCache = new HashMap<>();
private Socket conn = null;
private PrintWriter output = null;
private BufferedReader input = null;

protected DHCPConnectionHandler(String ip, int port) throws DHCPConnectException {
try {
conn = new Socket(ip, port);
output = new PrintWriter(conn.getOutputStream(), true);
input = new BufferedReader(new InputStreamReader(conn.getInputStream()));
}
catch(Exception e) {
throw new DHCPConnectException(e.getMessage());
}
}
private String makeRequest(String request) {
if(conn.isClosed()) {
throw new IllegalStateException("Already disconnected from the server!");
}
try {
output.print(request);
return input.readLine();
}
catch(IOException e) {}
return null;
}
public String getIp(Member member) {
String ip = ipCache.get(member);
if(ip == null) {
ip = makeRequest("GET IP " + member.getGuild().getId() + " " + member.getUser().getId());
ipCache.put(member, ip);
}
return ip;
}
public String assignIp(Member member) {
String ip = makeRequest("ASSIGN IP " + member.getGuild().getId() + " " + member.getUser().getId());
ipCache.put(member, ip);
return ip;
}
public boolean setIp(Member member, String ip) {
boolean success = Boolean.parseBoolean(makeRequest("SET IP " + member.getGuild().getId() + " " + member.getUser().getId() + " " + ip));
if(success) {
ipCache.put(member, ip);
}
return success;
}
public void close() throws IOException{
if(conn.isClosed()) {
throw new IllegalStateException("Already disconnected from the server!");
}
input.close();
output.close();
conn.close();
}
}

0 comments on commit f64175c

Please sign in to comment.