Alexandros Kosiaris has uploaded a new change for review. (
https://gerrit.wikimedia.org/r/402081 )
Change subject: ircecho: Remove redundant thread
......................................................................
ircecho: Remove redundant thread
EchoReader is just an instantiating class in essense. All it does is
parse configuration input and spawn threads to handle each IRC
channel/logfile combination. There is no reason to complicate code for
minimal gains in an initialization procedure that takes a couple of
seconds at most in a long running process. Move the body of the run()
function into __init__ and remove references to threading and start()
from EchoReader. While this changes nothing functionally it makes the
code a tad easier to understand
Change-Id: I1fb447fc8d5091be09c3cd8e7761c7966bdfafe8
---
M modules/ircecho/files/ircecho.py
1 file changed, 19 insertions(+), 22 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/operations/puppet
refs/changes/81/402081/1
diff --git a/modules/ircecho/files/ircecho.py b/modules/ircecho/files/ircecho.py
index 1135b36..2e64fbd 100755
--- a/modules/ircecho/files/ircecho.py
+++ b/modules/ircecho/files/ircecho.py
@@ -41,34 +41,14 @@
self.notifier.loop()
-class EchoReader(threading.Thread):
+class EchoReader():
def __init__(self, infile='', associatedchannel=''):
- threading.Thread.__init__(self)
self.infile = infile
self.associatedchannel = associatedchannel
self.uniques = {';': 'UNIQ_' + self.get_unique_string() + '_QINU',
':': 'UNIQ_' + self.get_unique_string() + '_QINU',
',': 'UNIQ_' + self.get_unique_string() + '_QINU'}
- def get_unique_string(self):
- unique = ''
- for i in range(15):
- unique = unique + random.choice(string.letters)
- return unique
-
- def escape(self, string):
- escaped_string = re.sub('\\\;', self.uniques[';'], string)
- escaped_string = re.sub('\\\:', self.uniques[':'], escaped_string)
- escaped_string = re.sub('\\\,', self.uniques[','], escaped_string)
- return escaped_string
-
- def unescape(self, string):
- unescaped_string = re.sub(self.uniques[';'], ';', string)
- unescaped_string = re.sub(self.uniques[':'], ':', unescaped_string)
- unescaped_string = re.sub(self.uniques[','], ',', unescaped_string)
- return unescaped_string
-
- def run(self):
if self.infile:
print('Using infile')
self.notifiers = []
@@ -111,6 +91,24 @@
break
except Exception:
pass
+
+ def get_unique_string(self):
+ unique = ''
+ for i in range(15):
+ unique = unique + random.choice(string.letters)
+ return unique
+
+ def escape(self, string):
+ escaped_string = re.sub('\\\;', self.uniques[';'], string)
+ escaped_string = re.sub('\\\:', self.uniques[':'], escaped_string)
+ escaped_string = re.sub('\\\,', self.uniques[','], escaped_string)
+ return escaped_string
+
+ def unescape(self, string):
+ unescaped_string = re.sub(self.uniques[';'], ';', string)
+ unescaped_string = re.sub(self.uniques[':'], ':', unescaped_string)
+ unescaped_string = re.sub(self.uniques[','], ',', unescaped_string)
+ return unescaped_string
def readfile(self, filename):
if self.files[filename]:
@@ -188,7 +186,6 @@
bot = EchoBot(chans, nickname, server)
global reader
reader = EchoReader(options.infile)
-reader.start()
try:
bot.start()
except Exception:
--
To view, visit https://gerrit.wikimedia.org/r/402081
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I1fb447fc8d5091be09c3cd8e7761c7966bdfafe8
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Alexandros Kosiaris <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits