56 lines
1.1 KiB
Java
56 lines
1.1 KiB
Java
package core;
|
|
|
|
import dataStructures.KittyChannel;
|
|
import dataStructures.KittyGuild;
|
|
import dataStructures.KittyUser;
|
|
import dataStructures.Response;
|
|
import dataStructures.UserInput;
|
|
|
|
public class CommandThread extends Thread
|
|
{
|
|
// Pile of variables. This may be packaged later as thread arguments.
|
|
CommandManager manager;
|
|
UserInput input;
|
|
KittyGuild guild;
|
|
KittyChannel channel;
|
|
KittyUser user;
|
|
Response response;
|
|
|
|
// Constructor
|
|
public CommandThread(CommandManager manager, UserInput input, KittyGuild guild, KittyChannel channel, KittyUser user, Response response)
|
|
{
|
|
this.manager = manager;
|
|
this.input = input;
|
|
this.guild = guild;
|
|
this.channel = channel;
|
|
this.user = user;
|
|
this.response = response;
|
|
}
|
|
|
|
// Method called when spawned as a thread
|
|
@Override
|
|
public void run()
|
|
{
|
|
InvokeCommand();
|
|
}
|
|
|
|
private void InvokeCommand()
|
|
{
|
|
manager.Invoke(guild, channel, user, input, response);
|
|
}
|
|
|
|
// Handles the try catch requirement java has for sleeping
|
|
@SuppressWarnings("unused")
|
|
private void ThreadSleep(int ms)
|
|
{
|
|
try
|
|
{
|
|
Thread.sleep(ms);
|
|
}
|
|
catch (InterruptedException e)
|
|
{
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
}
|