mirror of
https://github.com/SpiceBot/SpiceBot.git
synced 2026-11-10 21:50:59 -05:00
indexkey
This commit is contained in:
parent
b2622736fe
commit
53f2d2e040
@ -28,7 +28,7 @@ class PluginValues(BASE):
|
||||
"""
|
||||
__tablename__ = 'plugin_values'
|
||||
plugin = Column(String(255), primary_key=True)
|
||||
sortingkey = Column(String(255), index=True)
|
||||
indexkey = Column(String(255), index=True)
|
||||
key = Column(String(255), primary_key=True)
|
||||
value = Column(String(255))
|
||||
|
||||
@ -39,7 +39,7 @@ class NickValues(BASE):
|
||||
"""
|
||||
__tablename__ = 'nick_values'
|
||||
nick_id = Column(Integer, ForeignKey('nick_ids.nick_id'), primary_key=True)
|
||||
sortingkey = Column(String(255), index=True)
|
||||
indexkey = Column(String(255), index=True)
|
||||
key = Column(String(255), primary_key=True)
|
||||
value = Column(String(255))
|
||||
|
||||
@ -50,7 +50,7 @@ class ChannelValues(BASE):
|
||||
"""
|
||||
__tablename__ = 'channel_values'
|
||||
channel = Column(String(255), primary_key=True)
|
||||
sortingkey = Column(String(255), index=True)
|
||||
indexkey = Column(String(255), index=True)
|
||||
key = Column(String(255), primary_key=True)
|
||||
value = Column(String(255))
|
||||
|
||||
@ -59,7 +59,7 @@ class SpiceDB(object):
|
||||
|
||||
# NICK FUNCTIONS
|
||||
|
||||
def set_nick_value(self, nick, key, value, sortingkey='unsorted'):
|
||||
def set_nick_value(self, nick, key, value, indexkey='unsorted'):
|
||||
"""Sets the value for a given key to be associated with the nick."""
|
||||
nick = Identifier(nick)
|
||||
value = json.dumps(value, ensure_ascii=False)
|
||||
@ -68,7 +68,7 @@ class SpiceDB(object):
|
||||
try:
|
||||
result = session.query(NickValues) \
|
||||
.filter(NickValues.nick_id == nick_id) \
|
||||
.filter(NickValues.sortingkey == sortingkey) \
|
||||
.filter(NickValues.indexkey == indexkey) \
|
||||
.filter(NickValues.key == key) \
|
||||
.one_or_none()
|
||||
# NickValue exists, update
|
||||
@ -77,7 +77,7 @@ class SpiceDB(object):
|
||||
session.commit()
|
||||
# DNE - Insert
|
||||
else:
|
||||
new_nickvalue = NickValues(nick_id=nick_id, sortingkey=sortingkey, key=key, value=value)
|
||||
new_nickvalue = NickValues(nick_id=nick_id, indexkey=indexkey, key=key, value=value)
|
||||
session.add(new_nickvalue)
|
||||
session.commit()
|
||||
except SQLAlchemyError:
|
||||
@ -86,7 +86,7 @@ class SpiceDB(object):
|
||||
finally:
|
||||
session.close()
|
||||
|
||||
def get_nick_value(self, nick, key, sortingkey='unsorted'):
|
||||
def get_nick_value(self, nick, key, indexkey='unsorted'):
|
||||
"""Retrieves the value for a given key associated with a nick."""
|
||||
nick = Identifier(nick)
|
||||
session = self.ssession()
|
||||
@ -94,7 +94,7 @@ class SpiceDB(object):
|
||||
result = session.query(NickValues) \
|
||||
.filter(Nicknames.nick_id == NickValues.nick_id) \
|
||||
.filter(Nicknames.slug == nick.lower()) \
|
||||
.filter(NickValues.sortingkey == sortingkey) \
|
||||
.filter(NickValues.indexkey == indexkey) \
|
||||
.filter(NickValues.key == key) \
|
||||
.one_or_none()
|
||||
if result is not None:
|
||||
@ -106,7 +106,7 @@ class SpiceDB(object):
|
||||
finally:
|
||||
session.close()
|
||||
|
||||
def delete_nick_value(self, nick, key, sortingkey='unsorted'):
|
||||
def delete_nick_value(self, nick, key, indexkey='unsorted'):
|
||||
"""Deletes the value for a given key to be associated with the nick."""
|
||||
nick = Identifier(nick)
|
||||
nick_id = self.get_nick_id(nick)
|
||||
@ -114,7 +114,7 @@ class SpiceDB(object):
|
||||
try:
|
||||
result = session.query(NickValues) \
|
||||
.filter(NickValues.nick_id == nick_id) \
|
||||
.filter(NickValues.sortingkey == sortingkey) \
|
||||
.filter(NickValues.indexkey == indexkey) \
|
||||
.filter(NickValues.key == key) \
|
||||
.one_or_none()
|
||||
# NickValue exists, delete
|
||||
@ -127,7 +127,7 @@ class SpiceDB(object):
|
||||
finally:
|
||||
session.close()
|
||||
|
||||
def adjust_nick_value(self, nick, key, value, sortingkey='unsorted'):
|
||||
def adjust_nick_value(self, nick, key, value, indexkey='unsorted'):
|
||||
"""Sets the value for a given key to be associated with the nick."""
|
||||
nick = Identifier(nick)
|
||||
value = json.dumps(value, ensure_ascii=False)
|
||||
@ -136,7 +136,7 @@ class SpiceDB(object):
|
||||
try:
|
||||
result = session.query(NickValues) \
|
||||
.filter(NickValues.nick_id == nick_id) \
|
||||
.filter(NickValues.sortingkey == sortingkey) \
|
||||
.filter(NickValues.indexkey == indexkey) \
|
||||
.filter(NickValues.key == key) \
|
||||
.one_or_none()
|
||||
# NickValue exists, update
|
||||
@ -145,7 +145,7 @@ class SpiceDB(object):
|
||||
session.commit()
|
||||
# DNE - Insert
|
||||
else:
|
||||
new_nickvalue = NickValues(nick_id=nick_id, sortingkey=sortingkey, key=key, value=value)
|
||||
new_nickvalue = NickValues(nick_id=nick_id, indexkey=indexkey, key=key, value=value)
|
||||
session.add(new_nickvalue)
|
||||
session.commit()
|
||||
except SQLAlchemyError:
|
||||
@ -156,7 +156,7 @@ class SpiceDB(object):
|
||||
|
||||
# CHANNEL FUNCTIONS
|
||||
|
||||
def set_channel_value(self, channel, key, value, sortingkey='unsorted'):
|
||||
def set_channel_value(self, channel, key, value, indexkey='unsorted'):
|
||||
"""Sets the value for a given key to be associated with the channel."""
|
||||
channel = Identifier(channel).lower()
|
||||
value = json.dumps(value, ensure_ascii=False)
|
||||
@ -164,7 +164,7 @@ class SpiceDB(object):
|
||||
try:
|
||||
result = session.query(ChannelValues) \
|
||||
.filter(ChannelValues.channel == channel)\
|
||||
.filter(ChannelValues.sortingkey == sortingkey) \
|
||||
.filter(ChannelValues.indexkey == indexkey) \
|
||||
.filter(ChannelValues.key == key) \
|
||||
.one_or_none()
|
||||
# ChannelValue exists, update
|
||||
@ -173,7 +173,7 @@ class SpiceDB(object):
|
||||
session.commit()
|
||||
# DNE - Insert
|
||||
else:
|
||||
new_channelvalue = ChannelValues(channel=channel, sortingkey=sortingkey, key=key, value=value)
|
||||
new_channelvalue = ChannelValues(channel=channel, indexkey=indexkey, key=key, value=value)
|
||||
session.add(new_channelvalue)
|
||||
session.commit()
|
||||
except SQLAlchemyError:
|
||||
@ -182,14 +182,14 @@ class SpiceDB(object):
|
||||
finally:
|
||||
session.close()
|
||||
|
||||
def get_channel_value(self, channel, key, sortingkey='unsorted'):
|
||||
def get_channel_value(self, channel, key, indexkey='unsorted'):
|
||||
"""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.sortingkey == sortingkey) \
|
||||
.filter(ChannelValues.indexkey == indexkey) \
|
||||
.filter(ChannelValues.key == key) \
|
||||
.one_or_none()
|
||||
if result is not None:
|
||||
@ -201,14 +201,14 @@ class SpiceDB(object):
|
||||
finally:
|
||||
session.close()
|
||||
|
||||
def delete_channel_value(self, channel, key, sortingkey='unsorted'):
|
||||
def delete_channel_value(self, channel, key, indexkey='unsorted'):
|
||||
"""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.sortingkey == sortingkey) \
|
||||
.filter(ChannelValues.indexkey == indexkey) \
|
||||
.filter(ChannelValues.key == key) \
|
||||
.one_or_none()
|
||||
# ChannelValue exists, delete
|
||||
@ -221,7 +221,7 @@ class SpiceDB(object):
|
||||
finally:
|
||||
session.close()
|
||||
|
||||
def adjust_channel_value(self, channel, key, value, sortingkey='unsorted'):
|
||||
def adjust_channel_value(self, channel, key, value, indexkey='unsorted'):
|
||||
"""Sets the value for a given key to be associated with the channel."""
|
||||
channel = Identifier(channel).lower()
|
||||
value = json.dumps(value, ensure_ascii=False)
|
||||
@ -229,7 +229,7 @@ class SpiceDB(object):
|
||||
try:
|
||||
result = session.query(ChannelValues) \
|
||||
.filter(ChannelValues.channel == channel)\
|
||||
.filter(ChannelValues.sortingkey == sortingkey) \
|
||||
.filter(ChannelValues.indexkey == indexkey) \
|
||||
.filter(ChannelValues.key == key) \
|
||||
.one_or_none()
|
||||
# ChannelValue exists, update
|
||||
@ -238,7 +238,7 @@ class SpiceDB(object):
|
||||
session.commit()
|
||||
# DNE - Insert
|
||||
else:
|
||||
new_channelvalue = ChannelValues(channel=channel, sortingkey=sortingkey, key=key, value=value)
|
||||
new_channelvalue = ChannelValues(channel=channel, indexkey=indexkey, key=key, value=value)
|
||||
session.add(new_channelvalue)
|
||||
session.commit()
|
||||
except SQLAlchemyError:
|
||||
@ -249,27 +249,27 @@ class SpiceDB(object):
|
||||
|
||||
# NICK AND CHANNEL FUNCTIONS
|
||||
|
||||
def get_nick_or_channel_value(self, name, key, sortingkey='unsorted'):
|
||||
def get_nick_or_channel_value(self, name, key, indexkey='unsorted'):
|
||||
"""Gets the value `key` associated to the nick or channel `name`."""
|
||||
name = Identifier(name)
|
||||
if name.is_nick():
|
||||
return self.get_nick_value(name, key, sortingkey)
|
||||
return self.get_nick_value(name, key, indexkey)
|
||||
else:
|
||||
return self.get_channel_value(name, key, sortingkey)
|
||||
return self.get_channel_value(name, key, indexkey)
|
||||
|
||||
def get_preferred_value(self, names, key, sortingkey='unsorted'):
|
||||
def get_preferred_value(self, names, key, indexkey='unsorted'):
|
||||
"""Gets the value for the first name which has it set.
|
||||
|
||||
`names` is a list of channel and/or user names. Returns None if none of
|
||||
the names have the key set."""
|
||||
for name in names:
|
||||
value = self.get_nick_or_channel_value(name, key, sortingkey)
|
||||
value = self.get_nick_or_channel_value(name, key, indexkey)
|
||||
if value is not None:
|
||||
return value
|
||||
|
||||
# PLUGIN FUNCTIONS
|
||||
|
||||
def set_plugin_value(self, plugin, key, value, sortingkey='unsorted'):
|
||||
def set_plugin_value(self, plugin, key, value, indexkey='unsorted'):
|
||||
"""Sets the value for a given key to be associated with the plugin."""
|
||||
plugin = Identifier(plugin).lower()
|
||||
value = json.dumps(value, ensure_ascii=False)
|
||||
@ -277,7 +277,7 @@ class SpiceDB(object):
|
||||
try:
|
||||
result = session.query(PluginValues) \
|
||||
.filter(PluginValues.plugin == plugin)\
|
||||
.filter(PluginValues.sortingkey == sortingkey) \
|
||||
.filter(PluginValues.indexkey == indexkey) \
|
||||
.filter(PluginValues.key == key) \
|
||||
.one_or_none()
|
||||
# PluginValues exists, update
|
||||
@ -286,7 +286,7 @@ class SpiceDB(object):
|
||||
session.commit()
|
||||
# DNE - Insert
|
||||
else:
|
||||
new_pluginvalue = PluginValues(plugin=plugin, sortingkey=sortingkey, key=key, value=value)
|
||||
new_pluginvalue = PluginValues(plugin=plugin, indexkey=indexkey, key=key, value=value)
|
||||
session.add(new_pluginvalue)
|
||||
session.commit()
|
||||
except SQLAlchemyError:
|
||||
@ -295,14 +295,14 @@ class SpiceDB(object):
|
||||
finally:
|
||||
session.close()
|
||||
|
||||
def get_plugin_value(self, plugin, key, sortingkey='unsorted'):
|
||||
def get_plugin_value(self, plugin, key, indexkey='unsorted'):
|
||||
"""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.sortingkey == sortingkey) \
|
||||
.filter(PluginValues.indexkey == indexkey) \
|
||||
.filter(PluginValues.key == key) \
|
||||
.one_or_none()
|
||||
if result is not None:
|
||||
@ -314,7 +314,7 @@ class SpiceDB(object):
|
||||
finally:
|
||||
session.close()
|
||||
|
||||
def adjust_plugin_value(self, plugin, key, value, sortingkey='unsorted'):
|
||||
def adjust_plugin_value(self, plugin, key, value, indexkey='unsorted'):
|
||||
"""Sets the value for a given key to be associated with the plugin."""
|
||||
plugin = Identifier(plugin).lower()
|
||||
value = json.dumps(value, ensure_ascii=False)
|
||||
@ -322,7 +322,7 @@ class SpiceDB(object):
|
||||
try:
|
||||
result = session.query(PluginValues) \
|
||||
.filter(PluginValues.plugin == plugin)\
|
||||
.filter(PluginValues.sortingkey == sortingkey) \
|
||||
.filter(PluginValues.indexkey == indexkey) \
|
||||
.filter(PluginValues.key == key) \
|
||||
.one_or_none()
|
||||
# ChannelValue exists, update
|
||||
@ -331,7 +331,7 @@ class SpiceDB(object):
|
||||
session.commit()
|
||||
# DNE - Insert
|
||||
else:
|
||||
new_pluginvalue = PluginValues(plugin=plugin, sortingkey=sortingkey, key=key, value=value)
|
||||
new_pluginvalue = PluginValues(plugin=plugin, indexkey=indexkey, key=key, value=value)
|
||||
session.add(new_pluginvalue)
|
||||
session.commit()
|
||||
except SQLAlchemyError:
|
||||
@ -340,14 +340,14 @@ class SpiceDB(object):
|
||||
finally:
|
||||
session.close()
|
||||
|
||||
def delete_plugin_value(self, plugin, key, sortingkey='unsorted'):
|
||||
def delete_plugin_value(self, plugin, key, indexkey='unsorted'):
|
||||
"""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.sortingkey == sortingkey) \
|
||||
.filter(PluginValues.indexkey == indexkey) \
|
||||
.filter(PluginValues.key == key) \
|
||||
.one_or_none()
|
||||
# PluginValues exists, delete
|
||||
|
||||
Loading…
Reference in New Issue
Block a user