public override void WriteStartDocument (Encoding encoding, StandaloneType standalone) { #if docent if (standalone == StandaloneType.NONE) writer.WriteStartDocument (); else writer.WriteStartDocument (standalone == StandaloneType.YES); #else string standaloneStr = ""; switch (standalone) { case StandaloneType.YES: standaloneStr = " standalone=\"yes\""; break; case StandaloneType.NO: standaloneStr = " standalone=\"no\""; break; } if (encoding == null) writer.WriteProcessingInstruction ("xml", "version=\"1.0\"" + standaloneStr); else writer.WriteProcessingInstruction ("xml", "version=\"1.0\" encoding=\"" + encoding.WebName + "\"" + standaloneStr); #endif }
public override void WriteStartDocument(Encoding encoding, StandaloneType standalone) { #if docent if (standalone == StandaloneType.NONE) { writer.WriteStartDocument(); } else { writer.WriteStartDocument(standalone == StandaloneType.YES); } #else string standaloneStr = ""; switch (standalone) { case StandaloneType.YES: standaloneStr = " standalone=\"yes\""; break; case StandaloneType.NO: standaloneStr = " standalone=\"no\""; break; } if (encoding == null) { writer.WriteProcessingInstruction("xml", "version=\"1.0\"" + standaloneStr); } else { writer.WriteProcessingInstruction("xml", "version=\"1.0\" encoding=\"" + encoding.WebName + "\"" + standaloneStr); } #endif }
public override void WriteStartDocument(Encoding encoding, StandaloneType standalone) { string text = string.Empty; if (standalone != StandaloneType.YES) { if (standalone == StandaloneType.NO) { text = " standalone=\"no\""; } } else { text = " standalone=\"yes\""; } if (encoding == null) { this.writer.WriteProcessingInstruction("xml", "version=\"1.0\"" + text); } else { this.writer.WriteProcessingInstruction("xml", "version=\"1.0\" encoding=\"" + encoding.WebName + "\"" + text); } }
private void ProcessAttribute (XPathNavigator nav) { // skip attributes from non-default namespace if (nav.NamespaceURI != string.Empty) { return; } string value = nav.Value; switch (nav.LocalName) { case "cdata-section-elements": if (value.Length > 0) { cdSectsList.AddRange (XslNameUtil.FromListString (value, nav)); } break; case "method": if (value.Length == 0) { break; } switch (value) { case "xml": method = OutputMethod.XML; break; case "html": omitXmlDeclaration = true; method = OutputMethod.HTML; break; case "text": omitXmlDeclaration = true; method = OutputMethod.Text; break; default: method = OutputMethod.Custom; customMethod = XslNameUtil.FromString (value, nav); if (customMethod.Namespace == String.Empty) { IXmlLineInfo li = nav as IXmlLineInfo; throw new XsltCompileException (new ArgumentException ( "Invalid output method value: '" + value + "'. It" + " must be either 'xml' or 'html' or 'text' or QName."), nav.BaseURI, li != null ? li.LineNumber : 0, li != null ? li.LinePosition : 0); } break; } break; case "version": if (value.Length > 0) { this.version = value; } break; case "encoding": if (value.Length > 0) { try { this.encoding = System.Text.Encoding.GetEncoding (value); } catch (ArgumentException) { // MS.NET just leaves the default encoding when encoding is unknown } catch (NotSupportedException) { // Workaround for a bug in System.Text, it throws invalid exception } } break; case "standalone": switch (value) { case "yes": this.standalone = StandaloneType.YES; break; case "no": this.standalone = StandaloneType.NO; break; default: if (stylesheetVersion != "1.0") break; IXmlLineInfo li = nav as IXmlLineInfo; throw new XsltCompileException (new XsltException ( "'" + value + "' is an invalid value for 'standalone'" + " attribute.", (Exception) null), nav.BaseURI, li != null ? li.LineNumber : 0, li != null ? li.LinePosition : 0); } break; case "doctype-public": this.doctypePublic = value; break; case "doctype-system": this.doctypeSystem = value; break; case "media-type": if (value.Length > 0) { this.mediaType = value; } break; case "omit-xml-declaration": switch (value) { case "yes": this.omitXmlDeclaration = true; break; case "no": this.omitXmlDeclaration = false; break; default: if (stylesheetVersion != "1.0") break; IXmlLineInfo li = nav as IXmlLineInfo; throw new XsltCompileException (new XsltException ( "'" + value + "' is an invalid value for 'omit-xml-declaration'" + " attribute.", (Exception) null), nav.BaseURI, li != null ? li.LineNumber : 0, li != null ? li.LinePosition : 0); } break; case "indent": indent = value; if (stylesheetVersion != "1.0") break; switch (value) { case "yes": case "no": break; default: switch (method) { case OutputMethod.Custom: break; default: throw new XsltCompileException (String.Format ("Unexpected 'indent' attribute value in 'output' element: '{0}'", value), null, nav); } break; } break; default: if (stylesheetVersion != "1.0") break; IXmlLineInfo xli = nav as IXmlLineInfo; throw new XsltCompileException (new XsltException ( "'" + nav.LocalName + "' is an invalid attribute for 'output'" + " element.", (Exception) null), nav.BaseURI, xli != null ? xli.LineNumber : 0, xli != null ? xli.LinePosition : 0); } }
private void ProcessAttribute(XPathNavigator nav) { // skip attributes from non-default namespace if (nav.NamespaceURI != string.Empty) { return; } string value = nav.Value; switch (nav.LocalName) { case "cdata-section-elements": if (value.Length > 0) { cdSectsList.AddRange(XslNameUtil.FromListString(value, nav)); } break; case "method": if (value.Length == 0) { break; } switch (value) { case "xml": method = OutputMethod.XML; break; case "html": omitXmlDeclaration = true; method = OutputMethod.HTML; break; case "text": omitXmlDeclaration = true; method = OutputMethod.Text; break; default: method = OutputMethod.Custom; customMethod = XslNameUtil.FromString(value, nav); if (customMethod.Namespace == String.Empty) { IXmlLineInfo li = nav as IXmlLineInfo; throw new XsltCompileException(new ArgumentException( "Invalid output method value: '" + value + "'. It" + " must be either 'xml' or 'html' or 'text' or QName."), nav.BaseURI, li != null ? li.LineNumber : 0, li != null ? li.LinePosition : 0); } break; } break; case "version": if (value.Length > 0) { this.version = value; } break; case "encoding": if (value.Length > 0) { try { this.encoding = System.Text.Encoding.GetEncoding(value); } catch (ArgumentException) { // MS.NET just leaves the default encoding when encoding is unknown } catch (NotSupportedException) { // Workaround for a bug in System.Text, it throws invalid exception } } break; case "standalone": switch (value) { case "yes": this.standalone = StandaloneType.YES; break; case "no": this.standalone = StandaloneType.NO; break; default: if (stylesheetVersion != "1.0") { break; } IXmlLineInfo li = nav as IXmlLineInfo; throw new XsltCompileException(new XsltException( "'" + value + "' is an invalid value for 'standalone'" + " attribute.", (Exception)null), nav.BaseURI, li != null ? li.LineNumber : 0, li != null ? li.LinePosition : 0); } break; case "doctype-public": this.doctypePublic = value; break; case "doctype-system": this.doctypeSystem = value; break; case "media-type": if (value.Length > 0) { this.mediaType = value; } break; case "omit-xml-declaration": switch (value) { case "yes": this.omitXmlDeclaration = true; break; case "no": this.omitXmlDeclaration = false; break; default: if (stylesheetVersion != "1.0") { break; } IXmlLineInfo li = nav as IXmlLineInfo; throw new XsltCompileException(new XsltException( "'" + value + "' is an invalid value for 'omit-xml-declaration'" + " attribute.", (Exception)null), nav.BaseURI, li != null ? li.LineNumber : 0, li != null ? li.LinePosition : 0); } break; case "indent": indent = value; if (stylesheetVersion != "1.0") { break; } switch (value) { case "yes": case "no": break; default: switch (method) { case OutputMethod.Custom: break; default: throw new XsltCompileException(String.Format("Unexpected 'indent' attribute value in 'output' element: '{0}'", value), null, nav); } break; } break; default: if (stylesheetVersion != "1.0") { break; } IXmlLineInfo xli = nav as IXmlLineInfo; throw new XsltCompileException(new XsltException( "'" + nav.LocalName + "' is an invalid attribute for 'output'" + " element.", (Exception)null), nav.BaseURI, xli != null ? xli.LineNumber : 0, xli != null ? xli.LinePosition : 0); } }
public override void WriteStartDocument(Encoding encoding, StandaloneType standalone) { }
internal static Standalone Create(StandaloneType type,string arguments,bool log = false) { Standalone executable = new Standalone(); switch(type) { case StandaloneType.Calibration: executable.StartInfo = new ProcessStartInfo() { FileName = CalibrationExe, Arguments = arguments, WorkingDirectory = CalibrationWorkingDir, UseShellExecute = false, RedirectStandardOutput = true, RedirectStandardError = true, CreateNoWindow = true }; break; case StandaloneType.Reconstruction: var workingdir = Path.GetDirectoryName(ReconstructionExe); executable.StartInfo = new ProcessStartInfo() { FileName = ReconstructionExe, WorkingDirectory = workingdir, //Arguments = workingdir + " " + arguments, Arguments = arguments + DefaultReconstructionParameters, UseShellExecute = false, RedirectStandardOutput = true, RedirectStandardError = true, //CreateNoWindow = true }; break; case StandaloneType.Synchronization: executable.StartInfo = new ProcessStartInfo() { FileName = SynchronizationExe, Arguments = arguments, UseShellExecute = false, RedirectStandardOutput = true, RedirectStandardError = true, CreateNoWindow = true }; break; // case StandaloneType.Evaluation: // break; case StandaloneType.None: default: break; } if(log) { executable.IsLogging = true; executable.logger = new StreamWriter(Path.Combine(arguments.Split(new string[]{" "},StringSplitOptions.RemoveEmptyEntries)[1],LogFile)); executable.process.OutputDataReceived += (sender, e) => { executable.logger.WriteLine(e.Data); Console.Standalone.Log(e.Data); }; executable.process.ErrorDataReceived += (sender, e) => { executable.logger.WriteLine(e.Data); Console.Standalone.Error(e.Data); }; } return executable; }
public abstract void WriteStartDocument(Encoding encoding, StandaloneType standalone);
private void ProcessAttribute(XPathNavigator nav) { if (nav.NamespaceURI != string.Empty) { return; } string value = nav.Value; string localName = nav.LocalName; switch (localName) { case "cdata-section-elements": if (value.Length > 0) { this.cdSectsList.AddRange(XslNameUtil.FromListString(value, nav)); } return; case "method": { if (value.Length == 0) { return; } string text = value; switch (text) { case "xml": this.method = OutputMethod.XML; goto IL_269; case "html": this.omitXmlDeclaration = true; this.method = OutputMethod.HTML; goto IL_269; case "text": this.omitXmlDeclaration = true; this.method = OutputMethod.Text; goto IL_269; } this.method = OutputMethod.Custom; this.customMethod = XslNameUtil.FromString(value, nav); if (this.customMethod.Namespace == string.Empty) { IXmlLineInfo xmlLineInfo = nav as IXmlLineInfo; throw new XsltCompileException(new ArgumentException("Invalid output method value: '" + value + "'. It must be either 'xml' or 'html' or 'text' or QName."), nav.BaseURI, (xmlLineInfo == null) ? 0 : xmlLineInfo.LineNumber, (xmlLineInfo == null) ? 0 : xmlLineInfo.LinePosition); } IL_269: return; } case "version": if (value.Length > 0) { this.version = value; } return; case "encoding": if (value.Length > 0) { try { this.encoding = Encoding.GetEncoding(value); } catch (ArgumentException) { } catch (NotSupportedException) { } } return; case "standalone": { string text = value; if (text != null) { if (XslOutput.< > f__switch$map20 == null) { XslOutput.< > f__switch$map20 = new Dictionary <string, int>(2) { { "yes", 0 }, { "no", 1 } }; } int num2; if (XslOutput.< > f__switch$map20.TryGetValue(text, out num2)) { if (num2 == 0) { this.standalone = StandaloneType.YES; goto IL_397; } if (num2 == 1) { this.standalone = StandaloneType.NO; goto IL_397; } } } if (!(this.stylesheetVersion != "1.0")) { IXmlLineInfo xmlLineInfo2 = nav as IXmlLineInfo; throw new XsltCompileException(new XsltException("'" + value + "' is an invalid value for 'standalone' attribute.", null), nav.BaseURI, (xmlLineInfo2 == null) ? 0 : xmlLineInfo2.LineNumber, (xmlLineInfo2 == null) ? 0 : xmlLineInfo2.LinePosition); } IL_397: return; } case "doctype-public": this.doctypePublic = value; return; case "doctype-system": this.doctypeSystem = value; return; case "media-type": if (value.Length > 0) { this.mediaType = value; } return; case "omit-xml-declaration": { string text = value; if (text != null) { if (XslOutput.< > f__switch$map21 == null) { XslOutput.< > f__switch$map21 = new Dictionary <string, int>(2) { { "yes", 0 }, { "no", 1 } }; } int num2; if (XslOutput.< > f__switch$map21.TryGetValue(text, out num2)) { if (num2 == 0) { this.omitXmlDeclaration = true; goto IL_4AF; } if (num2 == 1) { this.omitXmlDeclaration = false; goto IL_4AF; } } } if (!(this.stylesheetVersion != "1.0")) { IXmlLineInfo xmlLineInfo3 = nav as IXmlLineInfo; throw new XsltCompileException(new XsltException("'" + value + "' is an invalid value for 'omit-xml-declaration' attribute.", null), nav.BaseURI, (xmlLineInfo3 == null) ? 0 : xmlLineInfo3.LineNumber, (xmlLineInfo3 == null) ? 0 : xmlLineInfo3.LinePosition); } IL_4AF: return; } case "indent": { this.indent = value; if (this.stylesheetVersion != "1.0") { return; } string text = value; if (text != null) { if (XslOutput.< > f__switch$map22 == null) { XslOutput.< > f__switch$map22 = new Dictionary <string, int>(2) { { "yes", 0 }, { "no", 0 } }; } int num2; if (XslOutput.< > f__switch$map22.TryGetValue(text, out num2)) { if (num2 == 0) { goto IL_568; } } } OutputMethod outputMethod = this.method; if (outputMethod != OutputMethod.Custom) { throw new XsltCompileException(string.Format("Unexpected 'indent' attribute value in 'output' element: '{0}'", value), null, nav); } IL_568: return; } } if (!(this.stylesheetVersion != "1.0")) { IXmlLineInfo xmlLineInfo4 = nav as IXmlLineInfo; throw new XsltCompileException(new XsltException("'" + nav.LocalName + "' is an invalid attribute for 'output' element.", null), nav.BaseURI, (xmlLineInfo4 == null) ? 0 : xmlLineInfo4.LineNumber, (xmlLineInfo4 == null) ? 0 : xmlLineInfo4.LinePosition); } }
public override void WriteStartDocument (Encoding encoding, StandaloneType standalone) { // do nothing }
public abstract void WriteStartDocument (Encoding encoding, StandaloneType standalone);