This commit is contained in:
deathbybandaid 2019-05-31 08:29:29 -04:00
parent 52381e0bcd
commit 2f108d1174

View File

@ -45,7 +45,7 @@ class NickValues(BASE):
"""
__tablename__ = 'spice_nick_values'
nick_id = Column(Integer, ForeignKey('nick_ids.nick_id'), primary_key=True)
category = Column(String(255), primary_key=True)
namespace = Column(String(255), primary_key=True)
key = Column(String(255), primary_key=True)
value = Column(String(255))
@ -56,7 +56,7 @@ class ChannelValues(BASE):
"""
__tablename__ = 'spice_channel_values'
channel = Column(String(255), primary_key=True)
category = Column(String(255), primary_key=True)
namespace = Column(String(255), primary_key=True)
key = Column(String(255), primary_key=True)
value = Column(String(255))
@ -67,7 +67,7 @@ class PluginValues(BASE):
"""
__tablename__ = 'spice_plugin_values'
plugin = Column(String(255), primary_key=True)
category = Column(String(255), primary_key=True)
namespace = Column(String(255), primary_key=True)
key = Column(String(255), primary_key=True)
value = Column(String(255))
@ -76,7 +76,7 @@ class SpiceDB(object):
# NICK FUNCTIONS
def set_nick_value(self, nick, key, value, category='default'):
def set_nick_value(self, nick, key, value, namespace='default'):
"""Sets the value for a given key to be associated with the nick."""
nick = Identifier(nick)
value = json.dumps(value, ensure_ascii=False)
@ -85,7 +85,7 @@ class SpiceDB(object):
try:
result = session.query(NickValues) \
.filter(NickValues.nick_id == nick_id) \
.filter(NickValues.category == category)\
.filter(NickValues.namespace == namespace)\
.filter(NickValues.key == key) \
.one_or_none()
# NickValue exists, update
@ -94,7 +94,7 @@ class SpiceDB(object):
session.commit()
# DNE - Insert
else:
new_nickvalue = NickValues(nick_id=nick_id, category=category, key=key, value=value)
new_nickvalue = NickValues(nick_id=nick_id, namespace=namespace, key=key, value=value)
session.add(new_nickvalue)
session.commit()
except SQLAlchemyError:
@ -103,7 +103,7 @@ class SpiceDB(object):
finally:
session.close()
def get_nick_value(self, nick, key, category='default'):
def get_nick_value(self, nick, key, namespace='default'):
"""Retrieves the value for a given key associated with a nick."""
nick = Identifier(nick)
session = self.ssession()
@ -111,7 +111,7 @@ class SpiceDB(object):
result = session.query(NickValues) \
.filter(Nicknames.nick_id == NickValues.nick_id) \
.filter(Nicknames.slug == nick.lower()) \
.filter(NickValues.category == category)\
.filter(NickValues.namespace == namespace)\
.filter(NickValues.key == key) \
.one_or_none()
if result is not None:
@ -123,7 +123,7 @@ class SpiceDB(object):
finally:
session.close()
def delete_nick_value(self, nick, key, category='default'):
def delete_nick_value(self, nick, key, namespace='default'):
"""Deletes the value for a given key to be associated with the nick."""
nick = Identifier(nick)
nick_id = self.get_nick_id(nick)
@ -131,7 +131,7 @@ class SpiceDB(object):
try:
result = session.query(NickValues) \
.filter(NickValues.nick_id == nick_id) \
.filter(NickValues.category == category)\
.filter(NickValues.namespace == namespace)\
.filter(NickValues.key == key) \
.one_or_none()
# NickValue exists, delete
@ -144,7 +144,7 @@ class SpiceDB(object):
finally:
session.close()
def adjust_nick_value(self, nick, key, value, category='default'):
def adjust_nick_value(self, nick, key, value, namespace='default'):
"""Sets the value for a given key to be associated with the nick."""
nick = Identifier(nick)
value = json.dumps(value, ensure_ascii=False)
@ -153,7 +153,7 @@ class SpiceDB(object):
try:
result = session.query(NickValues) \
.filter(NickValues.nick_id == nick_id) \
.filter(NickValues.category == category)\
.filter(NickValues.namespace == namespace)\
.filter(NickValues.key == key) \
.one_or_none()
# NickValue exists, update
@ -162,7 +162,7 @@ class SpiceDB(object):
session.commit()
# DNE - Insert
else:
new_nickvalue = NickValues(nick_id=nick_id, category=category, key=key, value=float(value))
new_nickvalue = NickValues(nick_id=nick_id, namespace=namespace, key=key, value=float(value))
session.add(new_nickvalue)
session.commit()
except SQLAlchemyError:
@ -171,7 +171,7 @@ class SpiceDB(object):
finally:
session.close()
def adjust_nick_list(self, nick, key, entries, adjustmentdirection, category='default'):
def adjust_nick_list(self, nick, key, entries, adjustmentdirection, namespace='default'):
"""Sets the value for a given key to be associated with the nick."""
nick = Identifier(nick)
if not isinstance(entries, list):
@ -182,7 +182,7 @@ class SpiceDB(object):
try:
result = session.query(NickValues) \
.filter(NickValues.nick_id == nick_id) \
.filter(NickValues.category == category)\
.filter(NickValues.namespace == namespace)\
.filter(NickValues.key == key) \
.one_or_none()
# NickValue exists, update
@ -207,7 +207,7 @@ class SpiceDB(object):
for entry in entries:
while entry in values:
values.remove(entry)
new_nickvalue = NickValues(nick_id=nick_id, category=category, key=key, value=values)
new_nickvalue = NickValues(nick_id=nick_id, namespace=namespace, key=key, value=values)
session.add(new_nickvalue)
session.commit()
except SQLAlchemyError:
@ -218,7 +218,7 @@ class SpiceDB(object):
# CHANNEL FUNCTIONS
def set_channel_value(self, channel, key, value, category='default'):
def set_channel_value(self, channel, key, value, namespace='default'):
"""Sets the value for a given key to be associated with the channel."""
channel = Identifier(channel).lower()
value = json.dumps(value, ensure_ascii=False)
@ -226,7 +226,7 @@ class SpiceDB(object):
try:
result = session.query(ChannelValues) \
.filter(ChannelValues.channel == channel)\
.filter(ChannelValues.category == category)\
.filter(ChannelValues.namespace == namespace)\
.filter(ChannelValues.key == key) \
.one_or_none()
# ChannelValue exists, update
@ -235,7 +235,7 @@ class SpiceDB(object):
session.commit()
# DNE - Insert
else:
new_channelvalue = ChannelValues(channel=channel, category=category, key=key, value=value)
new_channelvalue = ChannelValues(channel=channel, namespace=namespace, key=key, value=value)
session.add(new_channelvalue)
session.commit()
except SQLAlchemyError:
@ -244,14 +244,14 @@ class SpiceDB(object):
finally:
session.close()
def get_channel_value(self, channel, key, category='default'):
def get_channel_value(self, channel, key, namespace='default'):
"""Retrieves the value for a given key associated with a channel."""
channel = Identifier(channel).lower()
session = self.ssession()
try:
result = session.query(ChannelValues) \
.filter(ChannelValues.channel == channel)\
.filter(ChannelValues.category == category)\
.filter(ChannelValues.namespace == namespace)\
.filter(ChannelValues.key == key) \
.one_or_none()
if result is not None:
@ -263,14 +263,14 @@ class SpiceDB(object):
finally:
session.close()
def delete_channel_value(self, channel, key, category='default'):
def delete_channel_value(self, channel, key, namespace='default'):
"""Sets the value for a given key to be associated with the channel."""
channel = Identifier(channel).lower()
session = self.ssession()
try:
result = session.query(ChannelValues) \
.filter(ChannelValues.channel == channel)\
.filter(ChannelValues.category == category)\
.filter(ChannelValues.namespace == namespace)\
.filter(ChannelValues.key == key) \
.one_or_none()
# ChannelValue exists, delete
@ -283,7 +283,7 @@ class SpiceDB(object):
finally:
session.close()
def adjust_channel_value(self, channel, key, value, category='default'):
def adjust_channel_value(self, channel, key, value, namespace='default'):
"""Sets the value for a given key to be associated with the channel."""
channel = Identifier(channel).lower()
value = json.dumps(value, ensure_ascii=False)
@ -291,7 +291,7 @@ class SpiceDB(object):
try:
result = session.query(ChannelValues) \
.filter(ChannelValues.channel == channel)\
.filter(ChannelValues.category == category)\
.filter(ChannelValues.namespace == namespace)\
.filter(ChannelValues.key == key) \
.one_or_none()
# ChannelValue exists, update
@ -300,7 +300,7 @@ class SpiceDB(object):
session.commit()
# DNE - Insert
else:
new_channelvalue = ChannelValues(channel=channel, category=category, key=key, value=float(value))
new_channelvalue = ChannelValues(channel=channel, namespace=namespace, key=key, value=float(value))
session.add(new_channelvalue)
session.commit()
except SQLAlchemyError:
@ -309,7 +309,7 @@ class SpiceDB(object):
finally:
session.close()
def adjust_channel_list(self, channel, key, entries, adjustmentdirection, category='default'):
def adjust_channel_list(self, channel, key, entries, adjustmentdirection, namespace='default'):
"""Sets the value for a given key to be associated with the channel."""
channel = Identifier(channel).lower()
if not isinstance(entries, list):
@ -319,7 +319,7 @@ class SpiceDB(object):
try:
result = session.query(ChannelValues) \
.filter(ChannelValues.channel == channel)\
.filter(ChannelValues.category == category)\
.filter(ChannelValues.namespace == namespace)\
.filter(ChannelValues.key == key) \
.one_or_none()
# ChannelValue exists, update
@ -344,7 +344,7 @@ class SpiceDB(object):
for entry in entries:
while entry in values:
values.remove(entry)
new_channelvalue = ChannelValues(channel=channel, category=category, key=key, value=values)
new_channelvalue = ChannelValues(channel=channel, namespace=namespace, key=key, value=values)
session.add(new_channelvalue)
session.commit()
except SQLAlchemyError:
@ -355,7 +355,7 @@ class SpiceDB(object):
# PLUGIN FUNCTIONS
def set_plugin_value(self, plugin, key, value, category='default'):
def set_plugin_value(self, plugin, key, value, namespace='default'):
"""Sets the value for a given key to be associated with the plugin."""
plugin = Identifier(plugin).lower()
value = json.dumps(value, ensure_ascii=False)
@ -363,7 +363,7 @@ class SpiceDB(object):
try:
result = session.query(PluginValues) \
.filter(PluginValues.plugin == plugin)\
.filter(PluginValues.category == category)\
.filter(PluginValues.namespace == namespace)\
.filter(PluginValues.key == key) \
.one_or_none()
# PluginValues exists, update
@ -372,7 +372,7 @@ class SpiceDB(object):
session.commit()
# DNE - Insert
else:
new_pluginvalue = PluginValues(plugin=plugin, category=category, key=key, value=value)
new_pluginvalue = PluginValues(plugin=plugin, namespace=namespace, key=key, value=value)
session.add(new_pluginvalue)
session.commit()
except SQLAlchemyError:
@ -381,14 +381,14 @@ class SpiceDB(object):
finally:
session.close()
def get_plugin_value(self, plugin, key, category='default'):
def get_plugin_value(self, plugin, key, namespace='default'):
"""Retrieves the value for a given key associated with a plugin."""
plugin = Identifier(plugin).lower()
session = self.ssession()
try:
result = session.query(PluginValues) \
.filter(PluginValues.plugin == plugin)\
.filter(PluginValues.category == category)\
.filter(PluginValues.namespace == namespace)\
.filter(PluginValues.key == key) \
.one_or_none()
if result is not None:
@ -400,14 +400,14 @@ class SpiceDB(object):
finally:
session.close()
def delete_plugin_value(self, plugin, key, category='default'):
def delete_plugin_value(self, plugin, key, namespace='default'):
"""Deletes the value for a given key to be associated with the plugin."""
plugin = Identifier(plugin).lower()
session = self.ssession()
try:
result = session.query(PluginValues) \
.filter(PluginValues.plugin == plugin)\
.filter(PluginValues.category == category)\
.filter(PluginValues.namespace == namespace)\
.filter(PluginValues.key == key) \
.one_or_none()
# PluginValues exists, delete
@ -420,7 +420,7 @@ class SpiceDB(object):
finally:
session.close()
def adjust_plugin_value(self, plugin, key, value, category='default'):
def adjust_plugin_value(self, plugin, key, value, namespace='default'):
"""Sets the value for a given key to be associated with the plugin."""
plugin = Identifier(plugin).lower()
value = json.dumps(value, ensure_ascii=False)
@ -428,7 +428,7 @@ class SpiceDB(object):
try:
result = session.query(PluginValues) \
.filter(PluginValues.plugin == plugin)\
.filter(PluginValues.category == category)\
.filter(PluginValues.namespace == namespace)\
.filter(PluginValues.key == key) \
.one_or_none()
# ChannelValue exists, update
@ -437,7 +437,7 @@ class SpiceDB(object):
session.commit()
# DNE - Insert
else:
new_pluginvalue = PluginValues(plugin=plugin, category=category, key=key, value=float(value))
new_pluginvalue = PluginValues(plugin=plugin, namespace=namespace, key=key, value=float(value))
session.add(new_pluginvalue)
session.commit()
except SQLAlchemyError:
@ -446,7 +446,7 @@ class SpiceDB(object):
finally:
session.close()
def adjust_plugin_list(self, plugin, key, entries, adjustmentdirection, category='default'):
def adjust_plugin_list(self, plugin, key, entries, adjustmentdirection, namespace='default'):
"""Sets the value for a given key to be associated with the plugin."""
plugin = Identifier(plugin).lower()
if not isinstance(entries, list):
@ -456,7 +456,7 @@ class SpiceDB(object):
try:
result = session.query(PluginValues) \
.filter(PluginValues.plugin == plugin)\
.filter(PluginValues.category == category)\
.filter(PluginValues.namespace == namespace)\
.filter(PluginValues.key == key) \
.one_or_none()
# ChannelValue exists, update
@ -481,7 +481,7 @@ class SpiceDB(object):
for entry in entries:
while entry in values:
values.remove(entry)
new_pluginvalue = PluginValues(plugin=plugin, category=category, key=key, value=values)
new_pluginvalue = PluginValues(plugin=plugin, namespace=namespace, key=key, value=values)
session.add(new_pluginvalue)
session.commit()
except SQLAlchemyError:
@ -522,71 +522,71 @@ class BotDatabase():
"""Nick"""
def get_nick_value(self, nick, key, category='default'):
return self.db.get_nick_value(nick, key, category)
def get_nick_value(self, nick, key, namespace='default'):
return self.db.get_nick_value(nick, key, namespace)
def set_nick_value(self, nick, key, value, category='default'):
return self.db.set_nick_value(nick, key, value, category)
def set_nick_value(self, nick, key, value, namespace='default'):
return self.db.set_nick_value(nick, key, value, namespace)
def delete_nick_value(self, nick, key, category='default'):
return self.db.delete_nick_value(nick, key, category)
def delete_nick_value(self, nick, key, namespace='default'):
return self.db.delete_nick_value(nick, key, namespace)
def adjust_nick_value(self, nick, key, value, category='default'):
return self.db.adjust_nick_value(nick, key, value, category)
def adjust_nick_value(self, nick, key, value, namespace='default'):
return self.db.adjust_nick_value(nick, key, value, namespace)
def adjust_nick_list(self, nick, key, entries, adjustmentdirection, category='default'):
return self.db.adjust_nick_list(nick, key, entries, adjustmentdirection, category)
def adjust_nick_list(self, nick, key, entries, adjustmentdirection, namespace='default'):
return self.db.adjust_nick_list(nick, key, entries, adjustmentdirection, namespace)
"""Bot"""
def get_bot_value(self, key, category='default'):
return self.db.get_nick_value(botconfig.nick, key, category)
def get_bot_value(self, key, namespace='default'):
return self.db.get_nick_value(botconfig.nick, key, namespace)
def set_bot_value(self, key, value, category='default'):
return self.db.set_nick_value(botconfig.nick, key, value, category)
def set_bot_value(self, key, value, namespace='default'):
return self.db.set_nick_value(botconfig.nick, key, value, namespace)
def delete_bot_value(self, key, category='default'):
return self.db.delete_nick_value(botconfig.nick, key, category)
def delete_bot_value(self, key, namespace='default'):
return self.db.delete_nick_value(botconfig.nick, key, namespace)
def adjust_bot_value(self, key, value, category='default'):
return self.db.adjust_nick_value(botconfig.nick, key, value, category)
def adjust_bot_value(self, key, value, namespace='default'):
return self.db.adjust_nick_value(botconfig.nick, key, value, namespace)
def adjust_bot_list(self, key, entries, adjustmentdirection, category='default'):
return self.db.adjust_nick_list(botconfig.nick, key, entries, adjustmentdirection, category)
def adjust_bot_list(self, key, entries, adjustmentdirection, namespace='default'):
return self.db.adjust_nick_list(botconfig.nick, key, entries, adjustmentdirection, namespace)
"""Channels"""
def get_channel_value(self, channel, key, category='default'):
return self.db.get_channel_value(channel, key, category)
def get_channel_value(self, channel, key, namespace='default'):
return self.db.get_channel_value(channel, key, namespace)
def set_channel_value(self, channel, key, value, category='default'):
return self.db.set_channel_value(channel, key, value, category)
def set_channel_value(self, channel, key, value, namespace='default'):
return self.db.set_channel_value(channel, key, value, namespace)
def delete_channel_value(self, channel, key, category='default'):
return self.db.delete_channel_value(channel, key, category)
def delete_channel_value(self, channel, key, namespace='default'):
return self.db.delete_channel_value(channel, key, namespace)
def adjust_channel_value(self, channel, key, value, category='default'):
return self.db.adjust_channel_value(channel, key, value, category)
def adjust_channel_value(self, channel, key, value, namespace='default'):
return self.db.adjust_channel_value(channel, key, value, namespace)
def adjust_channel_list(self, nick, key, entries, adjustmentdirection, category='default'):
return self.db.adjust_channel_list(nick, key, entries, adjustmentdirection, category)
def adjust_channel_list(self, nick, key, entries, adjustmentdirection, namespace='default'):
return self.db.adjust_channel_list(nick, key, entries, adjustmentdirection, namespace)
"""Plugins"""
def get_plugin_value(self, plugin, key, category='default'):
return self.db.get_plugin_value(plugin, key, category)
def get_plugin_value(self, plugin, key, namespace='default'):
return self.db.get_plugin_value(plugin, key, namespace)
def set_plugin_value(self, plugin, key, value, category='default'):
return self.db.set_plugin_value(plugin, key, value, category)
def set_plugin_value(self, plugin, key, value, namespace='default'):
return self.db.set_plugin_value(plugin, key, value, namespace)
def delete_plugin_value(self, plugin, key, category='default'):
return self.db.delete_plugin_value(plugin, key, category)
def delete_plugin_value(self, plugin, key, namespace='default'):
return self.db.delete_plugin_value(plugin, key, namespace)
def adjust_plugin_value(self, plugin, key, value, category='default'):
return self.db.adjust_plugin_value(plugin, key, value, category)
def adjust_plugin_value(self, plugin, key, value, namespace='default'):
return self.db.adjust_plugin_value(plugin, key, value, namespace)
def adjust_plugin_list(self, nick, key, entries, adjustmentdirection, category='default'):
return self.db.adjust_plugin_list(nick, key, entries, adjustmentdirection, category)
def adjust_plugin_list(self, nick, key, entries, adjustmentdirection, namespace='default'):
return self.db.adjust_plugin_list(nick, key, entries, adjustmentdirection, namespace)
db = BotDatabase()