Updated select module and refined message retrieval process in RMASS definitions
This commit is contained in:
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,10 +1,15 @@
|
||||
import json
|
||||
|
||||
def buildOutput(response, action, outputs):
|
||||
#if select_data != "not applied":
|
||||
#response_data = select_data
|
||||
#else:
|
||||
#response_data = response.json()
|
||||
if hasattr(action, "outputs"):
|
||||
response_data = response.json()
|
||||
try:
|
||||
response_data = response.json()
|
||||
except AttributeError:
|
||||
response_data = json.loads(response)
|
||||
response_objects = [response_data]
|
||||
|
||||
while response_objects:
|
||||
|
||||
@@ -5,12 +5,14 @@ def recursiveSet(definition, outputs):
|
||||
for item in outputs[definition.recursiveset["source"]]:
|
||||
outputs[definition.recursiveset["outputlabel"]] = item
|
||||
#outputs["recursive"] = item
|
||||
print("DEBUGGING recursiveset item")
|
||||
print(outputs[definition.recursiveset["outputlabel"]])
|
||||
|
||||
for job in recursiveset:
|
||||
outputs, response = buildAction(job, outputs)
|
||||
|
||||
print(outputs["profile"])
|
||||
print(outputs["messages"])
|
||||
#print(outputs["profile"])
|
||||
#print(outputs["messages"])
|
||||
return outputs
|
||||
|
||||
from core.execution.action.action import buildAction
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import json
|
||||
import sqlite3
|
||||
|
||||
def buildSave(action, outputs):
|
||||
if hasattr(action, "savedata"):
|
||||
@@ -11,6 +12,27 @@ def buildSave(action, outputs):
|
||||
json.dump(save_data, save_file)
|
||||
|
||||
print(f"Data saved by {action.name} to {action.savepath}")
|
||||
|
||||
database = sqlite3.connect("savedata/rmmanager.db")
|
||||
for key, value in save_data.items():
|
||||
database.execute("""
|
||||
CREATE TABLE IF NOT EXISTS output_test (
|
||||
dictionary TEXT NOT NULL UNIQUE,
|
||||
value TEXT NOT NULL UNIQUE
|
||||
)
|
||||
""")
|
||||
|
||||
database.execute("""
|
||||
INSERT INTO output_test(dictionary, value)
|
||||
VALUES (?, ?)
|
||||
ON CONFLICT (dictionary)
|
||||
DO UPDATE SET value = excluded.value
|
||||
""", (key, value)
|
||||
)
|
||||
|
||||
database.commit()
|
||||
database.close()
|
||||
|
||||
return outputs
|
||||
|
||||
def loadSave(action, outputs):
|
||||
@@ -23,3 +45,21 @@ def loadSave(action, outputs):
|
||||
|
||||
print(f"Data loaded by {action.name} from {action.savepath}")
|
||||
return outputs
|
||||
|
||||
def buildSave2(action, outputs):
|
||||
|
||||
database.execute("""
|
||||
CREATE TABLE IF NOT EXISTS message_mapping (
|
||||
rmass_message_id INTEGER PRIMARY KEY,
|
||||
matrix_event_id TEXT NOT NULL UNIQUE
|
||||
)
|
||||
""")
|
||||
database = sqlite3.connect("rmmanager.db")
|
||||
|
||||
database.execute(
|
||||
"INSERT INTO message_mapping VALUES (?, ?)",
|
||||
(action.savedata[savename], outputs["event_id"])
|
||||
)
|
||||
|
||||
database.commit()
|
||||
database.close()
|
||||
@@ -24,11 +24,15 @@ def buildSelect(action, outputs):
|
||||
if include_match and exclude_match:
|
||||
select_data.append(item)
|
||||
|
||||
outputs[action.select["source"]] = select_data
|
||||
#print(select_data)
|
||||
#outputs[{action.select["source"]}] = select_data
|
||||
outputs[action.alias] = select_data
|
||||
|
||||
print("DEBUGGING", action.alias)
|
||||
print(outputs[action.alias])
|
||||
|
||||
return select_data, action, outputs
|
||||
except: (KeyError, TypeError)
|
||||
except (KeyError, TypeError):
|
||||
print("Error in selection")
|
||||
#select_data = ["no selection"]
|
||||
return select_data, action, outputs
|
||||
|
||||
|
||||
Reference in New Issue
Block a user