package Rtz.mockers; import Mocker.IDeviceMocker; import art.library.interop.serialization.Serialization; import art.library.model.devices.Device; import art.library.model.devices.colors.controller.RTZ32.RTZ32_Controller; import devices.mockers.LocalFileDeviceMocker; import java.io.File; import java.util.Random; import svgdevicestest.mock.*; public class RtzMockerMapComplex extends DeviceMocker implements IDeviceMocker { private final static Random rnd = new Random(); public RtzMockerMapComplex() { super(new LocalFileDeviceMocker(RTZ32_Controller.class).getDevice(), new LocalFileDeviceMocker(RTZ32_Controller.class).getDevice().getDeviceCommandsEmpty()); } public RtzMockerMapComplex getMocker() { return this; } @Override public void updateDevice(boolean active) { try { // RTZ32_ControllerStatus status = (RTZ32_ControllerStatus) device.getDeviceStatus(); // { // status.status = RTZ32_ControllerStatus.STATUS_OFFLINE_CONTROLLER; // status.rtz32.general.control = RTZ32_Status_General.CONTROL_LOCAL; // } // // RTZ32_ControllerInformation information = (RTZ32_ControllerInformation)device.getDeviceInformation(); // { // information.mode = RTZ32_ControllerInformation.MODE_NON_CENTRALIZED; // } Device d = Serialization.deserialize(RTZ32_Controller.class, new File("C:\\Users\\Konstantin\\Desktop\\rtz.txt")); RTZ32_Controller controller = (RTZ32_Controller) d; device.status = controller.status; device.information = controller.information; device.configuration = controller.configuration; device.alarms = controller.alarms; // RTZ32_ControllerCommands commands = RTZ32_ControllerCommands.class.cast(this.commands); // { // if ((System.currentTimeMillis() / 1000) % 2 == 0) // { // commands.online = new RTZ32_Commands_Online(); // commands.online.colorsMode = RTZ32_ControllerCommands.COLORS_MODE_COLORS; // commands.online.plan = new RTZ32_Commands_Plan(); // commands.online.plan.number = rnd.nextInt(7) + 1; // commands.online.plan.offset = rnd.nextInt(255); // commands.online.realtime = rnd.nextBoolean(); // // commands.online.computerMode = new RTZ32_Commands_Computer(); // { // commands.online.computerMode.actuated = rnd.nextBoolean(); // commands.online.computerMode.semiactuated = !commands.online.computerMode.actuated; // commands.online.control = RTZ32_ControllerCommands.CONTROL_COMPUTER; // } // } // else // { // commands.online = new RTZ32_Commands_Online(); // commands.online.colorsMode = RTZ32_ControllerCommands.COLORS_MODE_FLASHING; // commands.online.plan = new RTZ32_Commands_Plan(); // commands.online.plan.number = rnd.nextInt(7) + 1; // commands.online.plan.offset = rnd.nextInt(255); // commands.online.realtime = rnd.nextBoolean(); // // commands.online.clearAlarms = rnd.nextBoolean(); // // commands.online.computerMode = new RTZ32_Commands_Computer(); // { // commands.online.computerMode.actuated = rnd.nextBoolean(); // commands.online.computerMode.semiactuated = !commands.online.computerMode.actuated; // commands.online.control = RTZ32_ControllerCommands.CONTROL_LOCAL; // } // } // // commands.online.centralized = new RTZ32_Commands_Centralized(); // { // commands.online.centralized.centralized = rnd.nextBoolean(); // } // // commands.online.centralized = new RTZ32_Commands_Centralized(); // { //// commands.online.centralized.centralized = true; // commands.online.centralized.centralized = rnd.nextBoolean(); // } // } } catch (Exception ex) { } } @Override public String getFilePath() { return "C:\\Users\\Konstantin\\Documents\\LocalBackup\\Obras\\Zaragoza\\rtzserver\\data\\art.servers.rtzserver\\symbols\\18\\Controller.svg"; } @Override public boolean isStatusMode() { return true; } @Override public Class getScriptClass() { return Rtz.RtzMapComplex.class; } }