protected void ApplyMetadata(SessionTemplateGeneratorParameters parameters) { // Create graphs for all assets in the session EnsureGraphs(parameters); // Then apply metadata from each asset item to the graph foreach (var package in parameters.Session.LocalPackages) { foreach (var asset in package.Assets) { var graph = graphContainer.TryGetGraph(asset.Id) ?? graphContainer.InitializeAsset(asset, parameters.Logger); var overrides = asset.YamlMetadata.RetrieveMetadata(AssetObjectSerializerBackend.OverrideDictionaryKey); if (graph != null && overrides != null) { graph.RefreshBase(); AssetPropertyGraph.ApplyOverrides(graph.RootNode, overrides); } } } }