This commit is contained in:
@@ -13,14 +13,23 @@ function shared.StinkyCache.Init()
|
||||
---@param name string
|
||||
local function AskCommander(name)
|
||||
if Heimdall_Data.config.stinkyCache.debug then
|
||||
print(string.format("[%s] Asking commander %s about %s", ModuleName,
|
||||
Heimdall_Data.config.stinkyCache.commander, name))
|
||||
print(
|
||||
string.format(
|
||||
"[%s] Asking commander %s about %s",
|
||||
ModuleName,
|
||||
Heimdall_Data.config.stinkyCache.commander,
|
||||
name
|
||||
)
|
||||
)
|
||||
end
|
||||
local messageParts = { "isstinky", name }
|
||||
local message = table.concat(messageParts, "|")
|
||||
SendAddonMessage(Heimdall_Data.config.addonPrefix,
|
||||
message, "WHISPER",
|
||||
Heimdall_Data.config.stinkyCache.commander)
|
||||
SendAddonMessage(
|
||||
Heimdall_Data.config.addonPrefix,
|
||||
message,
|
||||
"WHISPER",
|
||||
Heimdall_Data.config.stinkyCache.commander
|
||||
)
|
||||
return
|
||||
end
|
||||
|
||||
@@ -29,20 +38,24 @@ function shared.StinkyCache.Init()
|
||||
addonMessageFrame:SetScript("OnEvent", function(self, event, msg, sender, ...)
|
||||
if sender == Heimdall_Data.config.stinkyCache.commander then
|
||||
if Heimdall_Data.config.stinkyCache.debug then
|
||||
print(string.format("[%s] Received stinky from commander %s: %s", ModuleName,
|
||||
Heimdall_Data.config.stinkyCache.commander, msg))
|
||||
print(
|
||||
string.format(
|
||||
"[%s] Received stinky from commander %s: %s",
|
||||
ModuleName,
|
||||
Heimdall_Data.config.stinkyCache.commander,
|
||||
msg
|
||||
)
|
||||
)
|
||||
end
|
||||
local name, value = {strsplit("|", msg)}
|
||||
local name, value = { strsplit("|", msg) }
|
||||
shared.stinkyCache.stinkies[name] = { value = value, timestamp = time() }
|
||||
else
|
||||
if Heimdall_Data.config.stinkyCache.debug then
|
||||
print(string.format("[%s] Received stinky from non-commander %s: %s", ModuleName, sender, msg))
|
||||
end
|
||||
local parts = {strsplit("|", msg)}
|
||||
local parts = { strsplit("|", msg) }
|
||||
local command, name = parts[1], parts[2]
|
||||
if parts[1] == "isstinky" then
|
||||
local res = Heimdall_Data.config.stinkies[parts[2]]
|
||||
end
|
||||
if parts[1] == "isstinky" then local res = Heimdall_Data.config.stinkies[parts[2]] end
|
||||
end
|
||||
end)
|
||||
|
||||
@@ -50,11 +63,9 @@ function shared.StinkyCache.Init()
|
||||
__index = function(self, key)
|
||||
local value = rawget(self, key)
|
||||
local now = GetTime()
|
||||
if value == nil or now - value.timestamp > Heimdall_Data.config.stinkyCache.ttl then
|
||||
AskCommander(key)
|
||||
end
|
||||
if value == nil or now - value.timestamp > Heimdall_Data.config.stinkyCache.ttl then AskCommander(key) end
|
||||
return rawget(self, key)
|
||||
end
|
||||
end,
|
||||
})
|
||||
print("[Heimdall] StinkyCache module loaded")
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user