package Bollard; import art.library.model.devices.DeviceGraphicsRuntime; import com.kitfox.svg.SVGDiagram; import com.kitfox.svg.SVGElement; public class BollardCommandsAspect extends DeviceGraphicsRuntime { public BollardCommandsAspect(art.library.model.devices.Device device, SVGDiagram diagram) { super(device, diagram); } public BollardCommandsAspect(art.library.model.devices.Device device, art.library.model.devices.DeviceCommands deviceCommands, SVGDiagram diagram) { super(device, deviceCommands, diagram); } private boolean flashOn = false; public void timer() { flashOn = !flashOn; commands(); } public void commands() { art.library.model.devices.bollard.BollardCommands deviceCommands = (art.library.model.devices.bollard.BollardCommands) getDeviceCommands(); SVGElement bollard_down = getElement("bollard-down"); SVGElement bollard_up = getElement("bollard-up"); SVGElement lock = getElement("lock"); SVGElement unlock = getElement("unlock"); SVGElement lock_disabled = getElement("lock-disabled"); setAttribute(bollard_down, "display", "none",999); setAttribute(bollard_up, "display", "none",999); setAttribute(lock, "display", "none",999); setAttribute(unlock, "display", "none",999); setAttribute(lock_disabled, "display", "inline", 999); if (deviceCommands.general != null) { if (deviceCommands.general.lock != null) { switch (deviceCommands.general.lock.lock) { case art.library.model.devices.bollard.commands.BollardCommands_Lock.LOCK_LOCK_DOWN: setAttribute(bollard_down, "display", "inline", 999); setAttribute(lock, "display", "inline", 999); setAttribute(lock_disabled, "display", "none", 999); break; case art.library.model.devices.bollard.commands.BollardCommands_Lock.LOCK_LOCK_UP: setAttribute(bollard_up, "display", "inline", 999); setAttribute(lock, "display", "inline", 999); setAttribute(lock_disabled, "display", "none", 999); break; case art.library.model.devices.bollard.commands.BollardCommands_Lock.LOCK_UNLOCK: setAttribute(unlock, "display", "inline", 999); setAttribute(lock_disabled, "display", "none", 999); break; } } else if (deviceCommands.general.position != null) { switch (deviceCommands.general.position.position) { case art.library.model.devices.bollard.commands.BollardCommands_Position.POSITION_DOWN: case art.library.model.devices.bollard.commands.BollardCommands_Position.POSITION_NOTHING: setAttribute(bollard_down, "display", "inline", 999); break; case art.library.model.devices.bollard.commands.BollardCommands_Position.POSITION_UP: setAttribute(bollard_up, "display", "inline", 999); break; } } } } // java.io.StringWriter sw = new java.io.StringWriter(); // art.library.gui.flat.FlatDialog.showDialog(null, "Error", e.getMessage() + "\n\n" + sw.toString(), true, art.library.gui.flat.FlatDialog.DIALOG_ERROR); // }