Exemple #1
0
        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);
                    }
                }
            }
        }