This commit is contained in:
2011-06-11 23:34:01 +00:00
parent e0b8456bcb
commit 36e067d5f6
20 changed files with 49 additions and 46 deletions

View File

@@ -9,15 +9,15 @@ import mimis.device.panel.PanelDevice;
import mimis.device.wiimote.WiimoteDevice;
import mimis.event.EventRouter;
import mimis.event.router.GlobalRouter;
import mimis.exception.event.router.GlobalRouterException;
import mimis.exception.worker.ActivateException;
import mimis.exception.worker.DeactivateException;
import mimis.util.swing.Dialog;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class Client {
protected static Log log = LogFactory.getLog(Client.class);
protected Log log = LogFactory.getLog(getClass());
public static final String IP = "127.0.0.1";
public static final int PORT = 6789;
@@ -25,11 +25,7 @@ public class Client {
protected EventRouter eventRouter;
protected Device[] deviceArray;
public Client() throws GlobalRouterException {
this(IP, PORT);
}
public Client(String ip, int port) throws GlobalRouterException {
public Client(String ip, int port) {
eventRouter = new GlobalRouter(ip, port);
deviceArray = new Device[] {
new LircDevice(),
@@ -49,15 +45,16 @@ public class Client {
} catch (ActivateException e) {
log.fatal(e);
}
}
public static void main(String[] args) {
try {
String ip = Dialog.question("Server IP:", IP);
int port = Integer.valueOf(Dialog.question("Server Port:", PORT));
new Client(ip, port).start();
} catch (GlobalRouterException e) {
mimis.stop();
} catch (DeactivateException e) {
log.fatal(e);
}
}
public static void main(String[] args) {
String ip = Dialog.question("Server IP:", IP);
int port = Integer.valueOf(Dialog.question("Server Port:", PORT));
new Client(ip, port).start();
}
}

View File

@@ -49,10 +49,14 @@ public class GUI extends JFrame {
protected JPanel createControlPanel(Manager<Application> applicationManager, Manager<Device> deviceManager) {
JPanel controlPanel = new JPanel(new GridLayout(1, 0));
JPanel applicationPanel = createManagerPanel(applicationManager, APPLICATION_TITLE);
controlPanel.add(applicationPanel);
JPanel devicePanel = createManagerPanel(deviceManager, DEVICE_TITLE);
controlPanel.add(devicePanel);
if (applicationManager.count() > 0) {
JPanel applicationPanel = createManagerPanel(applicationManager, APPLICATION_TITLE);
controlPanel.add(applicationPanel);
}
if (applicationManager.count() > 0) {
JPanel devicePanel = createManagerPanel(deviceManager, DEVICE_TITLE);
controlPanel.add(devicePanel);
}
return controlPanel;
}

View File

@@ -6,7 +6,6 @@ import java.util.Map;
import javax.swing.JToggleButton;
import mimis.application.cmd.windows.winamp.WinampApplication;
import mimis.exception.worker.DeactivateException;
import mimis.manager.Exitable;
import mimis.manager.ManageButton;
@@ -31,12 +30,14 @@ public class Manager<T extends Worker & Titled & Exitable> extends Worker {
public void stop() throws DeactivateException {
super.stop();
for (T manageable : manageableArray) {
if (!(manageable instanceof WinampApplication)) {
manageable.stop();
}
manageable.stop();
}
}
public int count() {
return manageableArray.length;
}
protected void createButtons() {
buttonMap = new HashMap<T, ManageButton<T>>();
for (T manageable : manageableArray) {

View File

@@ -3,9 +3,9 @@ package mimis;
import mimis.event.EventHandler;
import mimis.event.EventRouter;
import mimis.event.Feedback;
import mimis.event.feedback.TextFeedback;
import mimis.exception.worker.ActivateException;
import mimis.exception.worker.DeactivateException;
import mimis.event.feedback.TextFeedback;
import mimis.sequence.SequenceParser;
import mimis.util.ArrayCycle;
import mimis.value.Action;
@@ -57,6 +57,9 @@ public class Mimis extends EventHandler {
}
public void activate() throws ActivateException {
log.debug("Create gui");
gui = new GUI(this, applicationManager, deviceManager);
log.debug("Activate event router");
eventRouter.activate();
@@ -64,9 +67,6 @@ public class Mimis extends EventHandler {
applicationManager.activate();
deviceManager.activate();
log.debug("Create gui");
gui = new GUI(this, applicationManager, deviceManager);
if (applicationCycle.size() > 0) {
log.debug("Initialise application cycle");
eventRouter.set(applicationCycle.current());

View File

@@ -3,11 +3,10 @@ package mimis.application.cmd.windows;
import java.io.IOException;
import mimis.application.cmd.CMDApplication;
import mimis.exception.worker.ActivateException;
import mimis.exception.worker.DeactivateException;
import mimis.util.Windows;
import mimis.util.VBScript;
import mimis.util.Windows;
import mimis.value.Command;
import mimis.value.Key;
import mimis.value.Type;

View File

@@ -1,11 +1,11 @@
package mimis.device;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import mimis.sequence.EventMap;
import mimis.util.ArrayCycle;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class EventMapCycle extends ArrayCycle<EventMap> {
protected static final long serialVersionUID = 1L;

View File

@@ -10,7 +10,6 @@ import mimis.exception.worker.ActivateException;
import mimis.exception.worker.DeactivateException;
import mimis.sequence.state.Press;
import mimis.sequence.state.Release;
import de.hardcode.jxinput.JXInputDevice;
import de.hardcode.jxinput.JXInputManager;
import de.hardcode.jxinput.event.JXInputAxisEvent;

View File

@@ -5,7 +5,6 @@ import java.util.Queue;
import mimis.Worker;
import mimis.exception.ButtonException;
import de.hardcode.jxinput.Button;
import de.hardcode.jxinput.Directional;
import de.hardcode.jxinput.JXInputDevice;

View File

@@ -6,7 +6,6 @@ import mimis.device.javainput.JavaInputDevice;
import mimis.exception.button.UnknownButtonException;
import mimis.exception.button.UnknownDirectionException;
import mimis.exception.worker.ActivateException;
import de.hardcode.jxinput.event.JXInputButtonEvent;
import de.hardcode.jxinput.event.JXInputDirectionalEvent;

View File

@@ -6,7 +6,6 @@ import mimis.device.javainput.JavaInputDevice;
import mimis.exception.button.UnknownButtonException;
import mimis.exception.button.UnknownDirectionException;
import mimis.exception.worker.ActivateException;
import de.hardcode.jxinput.event.JXInputButtonEvent;
import de.hardcode.jxinput.event.JXInputDirectionalEvent;

View File

@@ -8,6 +8,7 @@ import mimis.exception.worker.ActivateException;
import mimis.exception.worker.DeactivateException;
import mimis.sequence.state.Press;
import mimis.sequence.state.Release;
import com.melloware.jintellitype.HotkeyListener;
import com.melloware.jintellitype.IntellitypeListener;
import com.melloware.jintellitype.JIntellitype;

View File

@@ -12,8 +12,8 @@ import mimis.exception.worker.DeactivateException;
import mimis.sequence.state.Press;
import mimis.sequence.state.Release;
import mimis.util.Multiplexer;
import mimis.util.multiplexer.SignalListener;
import mimis.util.VBScript;
import mimis.util.multiplexer.SignalListener;
import mimis.value.Signal;
public class LircDevice extends Device implements LircButtonListener, SignalListener {
@@ -50,6 +50,7 @@ public class LircDevice extends Device implements LircButtonListener, SignalList
}
public boolean active() {
log.trace("LircDevice active?");
if (active && !lircService.active()) {
active = false;
} else if (!active) {
@@ -69,8 +70,9 @@ public class LircDevice extends Device implements LircButtonListener, SignalList
}
public void deactivate() throws DeactivateException {
log.debug("Deactivate LircDevice");
super.deactivate();
multiplexer.deactivate();
multiplexer.stop();
lircService.deactivate();
}

View File

@@ -82,6 +82,7 @@ public class LircService extends Worker {
}
public void deactivate() throws DeactivateException {
super.deactivate();
try {
bufferedReader.close();
inputStream.close();
@@ -89,8 +90,6 @@ public class LircService extends Worker {
socket.close();
} catch (IOException e) {
log.error(e);
} finally {
super.deactivate();
}
}

View File

@@ -42,9 +42,11 @@ public class NetworkDevice extends Device {
} catch (IOException e) {
throw new ActivateException();
}
super.activate();
}
public void deactivate() throws DeactivateException {
super.deactivate();
server.stop();
}

View File

@@ -11,6 +11,7 @@ import mimis.exception.worker.DeactivateException;
import mimis.sequence.state.Press;
import mimis.sequence.state.Release;
import mimis.value.Action;
import org.wiigee.event.GestureEvent;
import org.wiigee.event.GestureListener;
import org.wiigee.util.Log;

View File

@@ -3,9 +3,9 @@ package mimis.device.wiimote;
import mimis.device.EventMapCycle;
import mimis.event.Task;
import mimis.sequence.EventMap;
import mimis.sequence.state.Release;
import mimis.value.Action;
import mimis.value.Target;
import mimis.sequence.state.Release;
public class WiimoteEventMapCycle extends EventMapCycle {
protected static final long serialVersionUID = 1L;

View File

@@ -3,11 +3,11 @@ package mimis.device.wiimote;
import java.util.ArrayList;
import java.util.HashMap;
import mimis.exception.device.DeviceNotFoundException;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import mimis.exception.device.DeviceNotFoundException;
import wiiusej.WiiUseApiManager;
import wiiusej.Wiimote;
import wiiusej.wiiusejevents.GenericEvent;

View File

@@ -8,6 +8,7 @@ import org.wiigee.device.Device;
import org.wiigee.event.ButtonListener;
import org.wiigee.event.ButtonPressedEvent;
import org.wiigee.event.GestureListener;
import wiiusej.values.GForce;
public class GestureDevice extends Device /*implements AccelerationListener */{

View File

@@ -1,9 +1,9 @@
package mimis.event.router;
import mimis.Event;
import mimis.event.Task;
import mimis.event.EventListener;
import mimis.event.EventRouter;
import mimis.event.Task;
import mimis.event.feedback.TextFeedback;
import mimis.value.Target;

View File

@@ -3,9 +3,6 @@ package mimis.sequence;
import java.util.ArrayList;
import java.util.Map.Entry;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import mimis.Event;
import mimis.event.EventHandler;
import mimis.event.EventListener;
@@ -13,6 +10,9 @@ import mimis.event.Task;
import mimis.value.Signal;
import mimis.value.Target;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class SequenceParser {
protected Log log = LogFactory.getLog(getClass());