package art.servers.rtzserver.controller; import art.library.model.devices.colors.controller.RTZ32.configuration.RTZ32_Configuration; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_1; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_11_28; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_2; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_3; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_31; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_32; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_33; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_34; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_35; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_36; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_37; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_38_40; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_4; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_42; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_43; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_44; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_45; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_46; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_5; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_6; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.RTZ32_Configuration_Table_7; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.eprom.RTZ32_Configuration_Table_91; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.eprom.RTZ32_Configuration_Table_92; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.eprom.RTZ32_Configuration_Table_93; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.eprom.RTZ32_Configuration_Table_94; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.eprom.RTZ32_Configuration_Table_95; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.microregulation.RTZ32_Configuration_Table_65; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.microregulation.RTZ32_Configuration_Table_66; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.microregulation.RTZ32_Configuration_Table_67; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.microregulation.RTZ32_Configuration_Table_68; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.microregulation.RTZ32_Configuration_Table_69; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.timetables.RTZ32_Configuration_Table_50; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.timetables.RTZ32_Configuration_Table_51; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.timetables.RTZ32_Configuration_Table_52; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.timetables.RTZ32_Configuration_Table_53_60; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.trolleygroups.RTZ32_Configuration_Table_70; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.trolleygroups.RTZ32_Configuration_Table_71; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.trolleygroups.RTZ32_Configuration_Table_72; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.trolleygroups.RTZ32_Configuration_Table_73; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.trolleygroups.RTZ32_Configuration_Table_74; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.trolleygroups.RTZ32_Configuration_Table_75; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.trolleygroups.RTZ32_Configuration_Table_78; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.trolleygroups.RTZ32_Configuration_Table_79; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.trolleygroups.RTZ32_Configuration_Table_80; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.trolleygroups.RTZ32_Configuration_Table_81; import art.library.model.devices.colors.controller.RTZ32.configuration.tables.trolleygroups.RTZ32_Configuration_Table_82_85; import java.util.HashMap; public class Controller_RTZ32_Factory_Configuration { public HashMap tables = new HashMap(); public RTZ32_Configuration configuration = null; public Controller_RTZ32_Factory_Configuration(RTZ32_Configuration configuration) { this.configuration = configuration; } public void serialize() throws Exception { try { serialize(new RTZ32_Configuration_Table_1(1)); serialize(new RTZ32_Configuration_Table_2(2)); serialize(new RTZ32_Configuration_Table_3(3)); serialize(new RTZ32_Configuration_Table_4(4)); serialize(new RTZ32_Configuration_Table_5(5)); serialize(new RTZ32_Configuration_Table_6(6)); serialize(new RTZ32_Configuration_Table_7(7)); for (int i=11; i<=28; i++) { serialize(new RTZ32_Configuration_Table_11_28(i)); } serialize(new RTZ32_Configuration_Table_31(31)); serialize(new RTZ32_Configuration_Table_32(32)); serialize(new RTZ32_Configuration_Table_33(33)); serialize(new RTZ32_Configuration_Table_34(34)); serialize(new RTZ32_Configuration_Table_35(35)); serialize(new RTZ32_Configuration_Table_36(36)); serialize(new RTZ32_Configuration_Table_37(37)); for (int i=38; i<=40; i++) { serialize(new RTZ32_Configuration_Table_38_40(i)); } serialize(new RTZ32_Configuration_Table_42(42)); serialize(new RTZ32_Configuration_Table_43(43)); serialize(new RTZ32_Configuration_Table_44(44)); serialize(new RTZ32_Configuration_Table_45(45)); serialize(new RTZ32_Configuration_Table_46(46)); serialize(new RTZ32_Configuration_Table_50(50)); serialize(new RTZ32_Configuration_Table_51(51)); serialize(new RTZ32_Configuration_Table_52(52)); for (int i=53; i<=60; i++) { serialize(new RTZ32_Configuration_Table_53_60(i)); } serialize(new RTZ32_Configuration_Table_65(65)); serialize(new RTZ32_Configuration_Table_66(66)); serialize(new RTZ32_Configuration_Table_67(67)); serialize(new RTZ32_Configuration_Table_68(68)); serialize(new RTZ32_Configuration_Table_69(69)); serialize(new RTZ32_Configuration_Table_70(70)); serialize(new RTZ32_Configuration_Table_71(71)); serialize(new RTZ32_Configuration_Table_72(72)); serialize(new RTZ32_Configuration_Table_73(73)); serialize(new RTZ32_Configuration_Table_74(74)); serialize(new RTZ32_Configuration_Table_75(75)); serialize(new RTZ32_Configuration_Table_78(78)); serialize(new RTZ32_Configuration_Table_79(79)); serialize(new RTZ32_Configuration_Table_80(80)); serialize(new RTZ32_Configuration_Table_81(81)); for (int i=82; i<=85; i++) { serialize(new RTZ32_Configuration_Table_82_85(i)); } // serialize(new RTZ32_Configuration_Table_91(91)); // serialize(new RTZ32_Configuration_Table_92(92)); // serialize(new RTZ32_Configuration_Table_93(93)); // serialize(new RTZ32_Configuration_Table_94(94)); serialize(new RTZ32_Configuration_Table_95(95)); } catch (Exception exception) { exception.printStackTrace(); throw exception; } } public RTZ32_Configuration deserialize() throws Exception { int i=0; try { for (i=1; i<=7; i++) deserialize(configuration, i, (byte[])tables.get(i)); for (i=11; i<=28; i++) deserialize(configuration, i, (byte[])tables.get(i)); for (i=31; i<=40; i++) deserialize(configuration, i, (byte[])tables.get(i)); for (i=42; i<=46; i++) deserialize(configuration, i, (byte[])tables.get(i)); for (i=50; i<=60; i++) deserialize(configuration, i, (byte[])tables.get(i)); for (i=65; i<=75; i++) deserialize(configuration, i, (byte[])tables.get(i)); for (i=78; i<=85; i++) deserialize(configuration, i, (byte[])tables.get(i)); i = 95; deserialize(configuration, 95, (byte[])tables.get(95)); return configuration; } catch (Exception e) { e.printStackTrace(); throw e; } } private void serialize (RTZ32_Configuration_Table table) throws Exception { tables.put(table.number, table.serialize(configuration)); } private void deserialize (RTZ32_Configuration configuration, int tableNumber, byte[] data) throws Exception { if (data == null) return; RTZ32_Configuration_Table table = null; if ((tableNumber >= 11) && (tableNumber) <= 28) { table = new RTZ32_Configuration_Table_11_28(tableNumber); } else if ((tableNumber >= 38) && (tableNumber) <= 40) { table = new RTZ32_Configuration_Table_38_40(tableNumber); } else if ((tableNumber >= 53) && (tableNumber) <= 60) { table = new RTZ32_Configuration_Table_53_60(tableNumber); } else if ((tableNumber >= 82) && (tableNumber) <= 85) { table = new RTZ32_Configuration_Table_82_85(tableNumber); } else { switch (tableNumber) { case 1: table = new RTZ32_Configuration_Table_1(tableNumber); break; case 2: table = new RTZ32_Configuration_Table_2(tableNumber); break; case 3: table = new RTZ32_Configuration_Table_3(tableNumber); break; case 4: table = new RTZ32_Configuration_Table_4(tableNumber); break; case 5: table = new RTZ32_Configuration_Table_5(tableNumber); break; case 6: table = new RTZ32_Configuration_Table_6(tableNumber); break; case 7: table = new RTZ32_Configuration_Table_7(tableNumber); break; case 31: table = new RTZ32_Configuration_Table_31(tableNumber); break; case 32: table = new RTZ32_Configuration_Table_32(tableNumber); break; case 33: table = new RTZ32_Configuration_Table_33(tableNumber); break; case 34: table = new RTZ32_Configuration_Table_34(tableNumber); break; case 35: table = new RTZ32_Configuration_Table_35(tableNumber); break; case 36: table = new RTZ32_Configuration_Table_36(tableNumber); break; case 37: table = new RTZ32_Configuration_Table_37(tableNumber); break; case 42: table = new RTZ32_Configuration_Table_42(tableNumber); break; case 43: table = new RTZ32_Configuration_Table_43(tableNumber); break; case 44: table = new RTZ32_Configuration_Table_44(tableNumber); break; case 45: table = new RTZ32_Configuration_Table_45(tableNumber); break; case 46: table = new RTZ32_Configuration_Table_46(tableNumber); break; case 50: table = new RTZ32_Configuration_Table_50(tableNumber); break; case 51: table = new RTZ32_Configuration_Table_51(tableNumber); break; case 52: table = new RTZ32_Configuration_Table_52(tableNumber); break; case 65: table = new RTZ32_Configuration_Table_65(tableNumber); break; case 66: table = new RTZ32_Configuration_Table_66(tableNumber); break; case 67: table = new RTZ32_Configuration_Table_67(tableNumber); break; case 68: table = new RTZ32_Configuration_Table_68(tableNumber); break; case 69: table = new RTZ32_Configuration_Table_69(tableNumber); break; case 70: table = new RTZ32_Configuration_Table_70(tableNumber); break; case 71: table = new RTZ32_Configuration_Table_71(tableNumber); break; case 72: table = new RTZ32_Configuration_Table_72(tableNumber); break; case 73: table = new RTZ32_Configuration_Table_73(tableNumber); break; case 74: table = new RTZ32_Configuration_Table_74(tableNumber); break; case 75: table = new RTZ32_Configuration_Table_75(tableNumber); break; case 78: table = new RTZ32_Configuration_Table_78(tableNumber); break; case 79: table = new RTZ32_Configuration_Table_79(tableNumber); break; case 80: table = new RTZ32_Configuration_Table_80(tableNumber); break; case 81: table = new RTZ32_Configuration_Table_81(tableNumber); break; case 91: table = new RTZ32_Configuration_Table_91(tableNumber); break; case 92: table = new RTZ32_Configuration_Table_92(tableNumber); break; case 93: table = new RTZ32_Configuration_Table_93(tableNumber); break; case 94: table = new RTZ32_Configuration_Table_94(tableNumber); break; case 95: table = new RTZ32_Configuration_Table_95(tableNumber); break; default: table = new RTZ32_Configuration_Table(tableNumber); break; } } table.number = tableNumber; table.deserialize(configuration, data); } }