def write_computer_xml(p_pyhouse_obj): # p_pyhouse_obj.Computer.Name = platform.node() # p_pyhouse_obj.Computer.Key = 0 # p_pyhouse_obj.Computer.Active = True l_xml = XmlConfigTools.write_base_object_xml(COMPUTER_DIVISION, p_pyhouse_obj.Computer) return l_xml
def write_one_room(p_room_object): l_entry = XmlConfigTools.write_base_object_xml('Room', p_room_object) PutGetXML.put_text_element(l_entry, 'Comment', p_room_object.Comment) PutGetXML.put_text_element(l_entry, 'Corner', p_room_object.Corner) PutGetXML.put_text_element(l_entry, 'Floor', p_room_object.Floor) PutGetXML.put_text_element(l_entry, 'Size', p_room_object.Size) return l_entry
def _write_one_node_xml(p_node_obj): l_entry = XmlConfigTools.write_base_object_xml('Node', p_node_obj) PutGetXML.put_text_element(l_entry, 'ConnectionAddressV4', p_node_obj.ConnectionAddr_IPv4) PutGetXML.put_text_element(l_entry, 'ConnectionAddressV6', p_node_obj.ConnectionAddr_IPv6) PutGetXML.put_int_element(l_entry, 'NodeRole', p_node_obj.NodeRole) l_entry.append(Xml._write_interfaces_xml(p_node_obj.NodeInterfaces)) return l_entry
def _write_one_zone(p_obj): """ @param p_obj: is one zone object @return the XML for one Zone """ l_xml = XmlConfigTools.write_base_object_xml('Zone', p_obj) PutGetXML.put_text_element(l_xml, 'Comment', p_obj.Comment) PutGetXML.put_int_element(l_xml, 'Duration', p_obj.Duration) return l_xml
def _write_one_base_schedule(p_schedule_obj): """ """ l_entry = XmlConfigTools.write_base_object_xml('Schedule', p_schedule_obj) PutGetXML.put_text_element(l_entry, 'ScheduleType', p_schedule_obj.ScheduleType) PutGetXML.put_text_element(l_entry, 'Time', p_schedule_obj.Time) PutGetXML.put_int_element(l_entry, 'DayOfWeek', int(p_schedule_obj.DOW)) PutGetXML.put_int_element(l_entry, 'Mode', p_schedule_obj.Mode) return l_entry
def _write_one_login(p_obj): """ @param p_obj: is one login object """ l_xml = XmlConfigTools.write_base_object_xml('Login', p_obj, no_uuid = True) PutGetXML().put_text_element(l_xml, 'FullName', p_obj.LoginFullName) PutGetXML().put_text_element(l_xml, 'Password', p_obj.LoginPasswordCurrent) PutGetXML().put_text_element(l_xml, 'Role', p_obj.LoginRole) return l_xml
def _write_one_zone(p_obj): """ @param p_obj: is one zone object @return the XML for one Zone """ l_xml = XmlConfigTools.write_base_object_xml('Zone', p_obj) PutGetXML.put_text_element(l_xml, 'Comment', p_obj.Comment) PutGetXML.put_int_element(l_xml, 'Duration', p_obj.Duration) return l_xml
def write_one_room(p_room_object): l_entry = XmlConfigTools.write_base_object_xml('Room', p_room_object) PutGetXML.put_text_element(l_entry, 'Comment', p_room_object.Comment) PutGetXML.put_coords_element(l_entry, 'Corner', p_room_object.Corner) PutGetXML.put_text_element(l_entry, 'Floor', p_room_object.Floor) PutGetXML.put_date_time_element(l_entry, 'LastUpdate', p_room_object.LastUpdate) PutGetXML.put_coords_element(l_entry, 'Size', p_room_object.Size) PutGetXML.put_text_element(l_entry, 'RoomType', p_room_object.RoomType) return l_entry
def _write_one_login(p_obj): """ @param p_obj: is one login object """ l_xml = XmlConfigTools.write_base_object_xml('Login', p_obj) PutGetXML().put_text_element(l_xml, 'FullName', p_obj.LoginFullName) PutGetXML().put_text_element(l_xml, 'Password', p_obj.LoginPasswordCurrent) PutGetXML().put_text_element(l_xml, 'Role', p_obj.LoginRole) return l_xml
def test_02_BaseObject(self): """Write Base Object XML w/ NO UUID """ l_base_obj = CoreLightingData() XmlConfigTools.read_base_object_xml(l_base_obj, self.m_xml.light) l_base_obj.Key = 44 l_xml = XmlConfigTools.write_base_object_xml('Light', l_base_obj, no_uuid = True) print(PrettyFormatAny.form(l_xml, 'XML')) self.assertEqual(l_xml.attrib['Name'], 'Insteon Light') self.assertEqual(l_xml.attrib['Key'], '44')
def test_02_BaseObject(self): """Write Base Object XML w/ NO UUID """ l_base_obj = CoreLightingData() XmlConfigTools.read_base_object_xml(l_base_obj, self.m_xml.light) l_base_obj.Key = 44 l_xml = XmlConfigTools.write_base_object_xml('Light', l_base_obj) print(PrettyFormatAny.form(l_xml, 'XML')) self.assertEqual(l_xml.attrib['Name'], TESTING_LIGHT_NAME_0) self.assertEqual(l_xml.attrib['Key'], '44')
def write_house_xml(p_pyhouse_obj): """Replace the data in the 'Houses' section with the current data. """ # print(PrettyFormatAny.form(p_pyhouse_obj, 'PyHouse')) # l_house_obj = p_pyhouse_obj.House # print(PrettyFormatAny.form(l_house_obj, 'PyHouse')) l_house_xml = XmlConfigTools.write_base_object_xml('HouseDivision', p_pyhouse_obj.House) l_house_xml.append(locationXML.write_location_xml(p_pyhouse_obj.House.Location)) l_house_xml.append(roomsXML.write_rooms_xml(p_pyhouse_obj.House.Rooms)) return l_house_xml
def _write_one_system(p_obj): """ @param p_obj: is one irrigation system object. @return: the XML for one complete IrrigationSystem """ l_xml = XmlConfigTools.write_base_object_xml('IrrigationSystem', p_obj) PutGetXML.put_text_element(l_xml, 'Comment', p_obj.Comment) for l_obj in p_obj.Zones.itervalues(): l_zone = Xml._write_one_zone(l_obj) l_xml.append(l_zone) return l_xml
def _write_one_broker(p_mqtt): """ @param p_obj: is one broker object. @return: the XML for one Broker System """ l_entry = XmlConfigTools.write_base_object_xml('Broker', p_mqtt) PutGetXML().put_int_element(l_entry, 'BrokerAddress', p_mqtt.BrokerAddress) PutGetXML().put_int_element(l_entry, 'BrokerPort', p_mqtt.BrokerPort) PutGetXML().put_text_element(l_entry, 'BrokerUser', p_mqtt.UserName) PutGetXML().put_text_element(l_entry, 'BrokerPassword', p_mqtt.Password) return l_entry
def _write_one_system(p_obj): """ @param p_obj: is one irrigation system object. @return: the XML for one complete IrrigationSystem """ l_xml = XmlConfigTools.write_base_object_xml('IrrigationSystem', p_obj) PutGetXML.put_text_element(l_xml, 'Comment', p_obj.Comment) for l_obj in p_obj.Zones.itervalues(): l_zone = Xml._write_one_zone(l_obj) l_xml.append(l_zone) return l_xml
def _write_one_broker(p_mqtt): """ @param p_obj: is one broker object. @return: the XML for one Broker System """ l_entry = XmlConfigTools.write_base_object_xml('Broker', p_mqtt) PutGetXML().put_int_element(l_entry, 'BrokerAddress', p_mqtt.BrokerAddress) PutGetXML().put_int_element(l_entry, 'BrokerPort', p_mqtt.BrokerPort) PutGetXML().put_text_element(l_entry, 'BrokerUser', p_mqtt.UserName) PutGetXML().put_text_element(l_entry, 'BrokerPassword', p_mqtt.Password) return l_entry
def test_01_BaseObject(self): """Write Base Object XML w/UUID """ l_base_obj = CoreLightingData() XmlConfigTools.read_base_object_xml(l_base_obj, self.m_xml.light) l_base_obj.Key = 43 l_uuid = '12345678-fedc-1111-ffff-aaBBccDDeeFF' l_base_obj.UUID = l_uuid l_xml = XmlConfigTools.write_base_object_xml('Light', l_base_obj) print(PrettyFormatAny.form(l_xml, 'XML')) self.assertEqual(l_xml.attrib['Name'], TESTING_LIGHT_NAME_0) self.assertEqual(l_xml.attrib['Key'], '43') self.assertEqual(l_xml.find('UUID').text, l_uuid)
def _write_one_base_schedule(p_schedule_obj): """ """ l_entry = XmlConfigTools.write_base_object_xml(SCHEDULE_ATTR, p_schedule_obj) PutGetXML.put_int_element(l_entry, 'DayOfWeek', int(p_schedule_obj.DOW)) PutGetXML.put_text_element(l_entry, 'ScheduleMode', p_schedule_obj.ScheduleMode) PutGetXML.put_text_element(l_entry, 'ScheduleType', p_schedule_obj.ScheduleType) PutGetXML.put_text_element(l_entry, 'Time', p_schedule_obj.Time) return l_entry
def test_01_BaseObject(self): """Write Base Object XML w/UUID """ l_base_obj = CoreLightingData() XmlConfigTools.read_base_object_xml(l_base_obj, self.m_xml.light) l_base_obj.Key = 43 l_uuid = '12345678-fedc-1111-ffff-aaBBccDDeeFF' l_base_obj.UUID = l_uuid l_xml = XmlConfigTools.write_base_object_xml('Light', l_base_obj) print(PrettyFormatAny.form(l_xml, 'XML')) self.assertEqual(l_xml.attrib['Name'], 'Insteon Light') self.assertEqual(l_xml.attrib['Key'], '43') self.assertEqual(l_xml.find('UUID').text, l_uuid)
def _write_one_interface_xml(p_interface_obj): l_entry = XmlConfigTools.write_base_object_xml('Interface', p_interface_obj) PutGetXML.put_text_element(l_entry, 'MacAddress', p_interface_obj.MacAddress) PutGetXML.put_text_element(l_entry, 'IPv4Address', p_interface_obj.V4Address) PutGetXML.put_text_element(l_entry, 'IPv6Address', p_interface_obj.V6Address) return l_entry
def write_computer_xml(p_pyhouse_obj): p_pyhouse_obj.Computer.Name = platform.node() p_pyhouse_obj.Computer.Key = 0 p_pyhouse_obj.Computer.Active = True l_xml = XmlConfigTools.write_base_object_xml(DIVISION, p_pyhouse_obj.Computer) return l_xml
def _write_base(p_obj): l_entry = XmlConfigTools.write_base_object_xml('Pool', p_obj) return l_entry
def _write_one_pool(p_pool_obj): l_entry = XmlConfigTools.write_base_object_xml('Pool', p_pool_obj) PutGetXML().put_text_element(l_entry, 'Comment', p_pool_obj.Comment) PutGetXML().put_text_element(l_entry, 'PoolType', p_pool_obj.PoolType) return l_entry
def _write_base(p_obj): l_entry = XmlConfigTools.write_base_object_xml('Pool', p_obj) return l_entry
def _write_one_pool(p_pool_obj): l_entry = XmlConfigTools.write_base_object_xml('Pool', p_pool_obj) PutGetXML().put_text_element(l_entry, 'Comment', p_pool_obj.Comment) PutGetXML().put_text_element(l_entry, 'PoolType', p_pool_obj.PoolType) return l_entry