common-utils.lua: remove metadata object managers

This commit is contained in:
Ashok Sidipotu
2023-03-03 18:28:31 +05:30
committed by Julian Bouzas
parent ab6a3393e6
commit 80554fe1c7
2 changed files with 24 additions and 9 deletions

View File

@@ -54,13 +54,22 @@ function cutils.getDefaultNode (properties, target_direction)
return default_nodes:call ("get-default-node", target_media_class) return default_nodes:call ("get-default-node", target_media_class)
end end
cutils.source_plugin = nil
cutils.object_managers = {}
cutils.default_metadata_om = ObjectManager { function cutils.get_object_manager (name)
Interest { cutils.source_plugin = cutils.source_plugin or
type = "metadata", Plugin.find ("standard-event-source")
cutils.object_managers [name] = cutils.object_managers [name] or
cutils.source_plugin:call ("get-object-manager", name)
return cutils.object_managers [name]
end
function cutils.get_default_metadata_object ()
return cutils.get_object_manager ("metadata"):lookup {
Constraint { "metadata.name", "=", "default" }, Constraint { "metadata.name", "=", "default" },
} }
} end
function cutils.evaluateRulesApplyProperties (properties, name) function cutils.evaluateRulesApplyProperties (properties, name)
local matched, mprops = Conf.apply_rules (name, properties) local matched, mprops = Conf.apply_rules (name, properties)
@@ -133,6 +142,5 @@ function cutils.storeAfterTimeout (state, state_table)
end) end)
end end
cutils.default_metadata_om:activate ()
return cutils return cutils

View File

@@ -68,7 +68,7 @@ SimpleEventHook {
end end
-- configure default device. -- configure default device.
u.metadata:set (0, key, "Spa:String:JSON", Json.Object { ["name"] = name }:get_data ()) u.default_metadata:set(0, key, "Spa:String:JSON", Json.Object { ["name"] = name }:get_data())
end end
end end
}:register () }:register ()
@@ -86,12 +86,19 @@ function u.restartPlugin (name)
u.script_tester_plugin:call ("restart-plugin", name) u.script_tester_plugin:call ("restart-plugin", name)
end end
u.metadata = cu.default_metadata_om:lookup () u.default_metadata = cu.get_object_manager ("metadata"):lookup {
assert (u.metadata ~= nil) Constraint { "metadata.name", "=", "default" },
}
assert (u.default_metadata ~= nil)
u.settings_metadata = cu.get_object_manager ("metadata"):lookup {
Constraint { "metadata.name", "=", "sm-settings" },
}
assert (u.settings_metadata ~= nil)
-- update the defined target for stream session item in metadata. -- update the defined target for stream session item in metadata.
function u.setTargetInMetadata (prop, target_node_name) function u.setTargetInMetadata (prop, target_node_name)
u.metadata:set (u.lnkbls ["stream-node"].properties ["node.id"], prop, u.default_metadata:set (u.lnkbls ["stream-node"].properties ["node.id"], prop,
"Spa:Id", u.lnkbls [target_node_name].properties ["node.id"]) "Spa:Id", u.lnkbls [target_node_name].properties ["node.id"])
end end