package net.mms_projects.copy_it.ui; import java.io.PrintStream; import net.mms_projects.copy_it.ClipboardManager; import net.mms_projects.copy_it.Config; import net.mms_projects.copy_it.SyncManager; import net.mms_projects.copy_it.ui.interactive_shell.commands.CopyIt; import net.mms_projects.copy_it.ui.interactive_shell.commands.PasteIt; import net.mms_projects.irc.channel_bots.pb.CommandHandler; import net.mms_projects.irc.channel_bots.pb.commands.Help; public class SingleCommandUi implements UserInterfaceImplementation { private SettingsUserInterface settingsUserInterface; private AboutUserInterface aboutUserInterface; private SyncManager syncManager; private ClipboardManager clipboardManager; private String command; public SingleCommandUi(Config settings, SyncManager syncManager, ClipboardManager clipboardManager, String command) { this.syncManager = syncManager; this.clipboardManager = clipboardManager; this.command = command; } @Override public void open() { PrintStream printStream = new PrintStream(System.out); CommandHandler commandHandler = new CommandHandler(); commandHandler.setPrintStream(printStream); commandHandler.addCommand(new Help(commandHandler)); commandHandler.addCommand(new CopyIt(commandHandler, this.syncManager, this.clipboardManager)); commandHandler.addCommand(new PasteIt(commandHandler, this.syncManager, this.clipboardManager)); commandHandler.handle(this.command); } @Override public void close() { } @Override public void setSettingsUserInterface( SettingsUserInterface settingsUserInterface) { this.settingsUserInterface = settingsUserInterface; } @Override public SettingsUserInterface getSettingsUserInterface() { return this.settingsUserInterface; } @Override public void setAboutUserInterface(AboutUserInterface userInterface) { this.aboutUserInterface = userInterface; } @Override public AboutUserInterface getAboutUserInterface() { return this.aboutUserInterface; } @Override public void setQueueUserInterface(QueueUserInterface userInterface) { // TODO Auto-generated method stub } @Override public QueueUserInterface getQueueUserInterface() { // TODO Auto-generated method stub return null; } }