EventStore.VSTools.ProjectionsProjectNode.CreateFileNode C# (CSharp) Method

CreateFileNode() public method

public CreateFileNode ( ProjectElement item ) : FileNode
item Microsoft.VisualStudio.Project.ProjectElement
return Microsoft.VisualStudio.Project.FileNode
        public override FileNode CreateFileNode(ProjectElement item)
        {
            if (item == null)
            {
                throw new ArgumentNullException("item");
            }

            var newNode = new ProjectionFileNode(this, item);

            return newNode;
        }

Usage Example

        private static void AddProjectionFileIntoProject(ProjectionsProjectNode project, ProjectionConfig config, ProjectionStatistics stats)
        {
            var name = config.Name;
            var query = config.Query;

            //create file and node
            var projectionNode = (ProjectionFileNode)project.CreateFileNode(name + ".js");
            File.WriteAllText(projectionNode.Url, query);

            //set node properties
            var nodeProps = (ProjectionFileNodeProperties) projectionNode.NodeProperties;
            nodeProps.Enabled = stats.IsEnabled;
            nodeProps.EmitEnabled = config.IsEmitEnabled;
            nodeProps.CheckpointEnabled = "continuous".Equals(stats.Mode, StringComparison.InvariantCultureIgnoreCase);

            //finally add the node into the project
            project.AddChild(projectionNode);
        }