示例#1
0
        /// <summary>
        /// Writes a collection of format view definitions to XML file
        /// </summary>
        /// <param name="typeDefinitions">collection of PSTypeDefinition</param>
        /// <param name="filepath">path to XML file</param>
        /// <param name="cmdlet">cmdlet from which this si used</param>
        /// <param name="force">true - to force write the file</param>
        /// <param name="writeScriptBlock">true - to export scriptblocks</param>
        /// <param name="noclobber">true - do not overwrite the file</param>
        /// <param name="isLiteralPath">true - bypass wildcard expansion on the file name</param>
        internal static void WriteToPs1Xml(PSCmdlet cmdlet, List <ExtendedTypeDefinition> typeDefinitions,
                                           string filepath, bool force, bool noclobber, bool writeScriptBlock, bool isLiteralPath)
        {
            StreamWriter streamWriter;
            FileStream   fileStream;
            FileInfo     fileInfo;

            PathUtils.MasterStreamOpen(cmdlet, filepath, "ascii", true, false, force, noclobber,
                                       out fileStream, out streamWriter, out fileInfo, isLiteralPath);

            try
            {
                using (XmlWriter xmlWriter = XmlWriter.Create(streamWriter))
                {
                    var writer = new FormatXmlWriter
                    {
                        _writer            = xmlWriter,
                        _exportScriptBlock = writeScriptBlock
                    };
                    writer.WriteToXml(typeDefinitions);
                }
            }
            finally
            {
                streamWriter.Dispose();
                fileStream.Dispose();
            }
        }
示例#2
0
        /// <summary>
        /// Writes a collection of format view definitions to XML file
        /// </summary>
        /// <param name="typeDefinitions">collection of PSTypeDefinition</param>
        /// <param name="filepath">path to XML file</param>
        /// <param name="cmdlet">cmdlet from which this si used</param>
        /// <param name="force">true - to force write the file</param>
        /// <param name="writeScriptBlock">true - to export scriptblocks</param>
        /// <param name="noclobber">true - do not overwrite the file</param>
        /// <param name="isLiteralPath">true - bypass wildcard expansion on the file name</param>
        internal static void WriteToPs1Xml(PSCmdlet cmdlet, List<ExtendedTypeDefinition> typeDefinitions,
            string filepath, bool force, bool noclobber, bool writeScriptBlock, bool isLiteralPath)
        {
            StreamWriter streamWriter;
            FileStream fileStream;
            FileInfo fileInfo;
            PathUtils.MasterStreamOpen(cmdlet, filepath, "ascii", true, false, force, noclobber,
                out fileStream, out streamWriter, out fileInfo, isLiteralPath);

            try
            {
                using (XmlWriter xmlWriter = XmlWriter.Create(streamWriter))
                {
                    var writer = new FormatXmlWriter
                    {
                        _writer = xmlWriter,
                        _exportScriptBlock = writeScriptBlock
                    };
                    writer.WriteToXml(typeDefinitions);
                }
            }
            finally
            {
                streamWriter.Dispose();
                fileStream.Dispose();
            }
        }
示例#3
0
        internal static void WriteToXml(XmlWriter writer, IEnumerable <ExtendedTypeDefinition> typeDefinitions, bool writeScriptBlock)
        {
            var formatXmlWriter = new FormatXmlWriter {
                _exportScriptBlock = writeScriptBlock, _writer = writer
            };

            formatXmlWriter.WriteToXml(typeDefinitions);
        }
 internal override void WriteToXml(FormatXmlWriter writer)
 {
     writer.WriteTableControl(this);
 }
示例#5
0
 /// <summary>
 /// writes out the formatting directives from the
 /// collection to the specified XML file
 /// </summary>
 protected override void EndProcessing()
 {
     FormatXmlWriter.WriteToPs1Xml(this, _typeDefinitions, _filepath, _force, _noclobber, _includescriptblock, _isLiteralPath);
 }
示例#6
0
 internal static void WriteToXml(XmlWriter writer, IEnumerable<ExtendedTypeDefinition> typeDefinitions, bool writeScriptBlock)
 {
     var formatXmlWriter = new FormatXmlWriter { _exportScriptBlock = writeScriptBlock, _writer = writer };
     formatXmlWriter.WriteToXml(typeDefinitions);
 }