-
Notifications
You must be signed in to change notification settings - Fork 1
/
deed.py
36 lines (31 loc) · 953 Bytes
/
deed.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/usr/bin/python3
# -*- coding: utf-8 -*-
#
# (C) Drono, 2021
#
from __future__ import absolute_import
from lxml import etree as ET
import os
class Deed(object):
__instance = None
def __init__(self):
if Deed.__instance != None:
raise Exception("This class is a singleton! " +
"Use 'Deed.getInstance()'")
else:
Deed.__instance = self
pathToXml = "../data/lotro-data/deeds/deeds.xml"
pathToXml = os.path.join(os.path.dirname(__file__), pathToXml)
self.root = ET.parse(pathToXml).getroot()
self.deed = None
def getInstance():
if Deed.__instance == None:
Deed()
return Deed.__instance
def setId(self, deedId):
self.deed = self.root.find(".//deed[@id='%s']"%deedId)
def getName(self):
if self.deed == None:
return ""
else:
return self.deed.get('name')