Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / IdentityModel / System / IdentityModel / XmlUtil.cs / 1305376 / XmlUtil.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.IdentityModel { using System.Xml; using System.Diagnostics; static class XmlUtil { public const string XmlNs = "http://www.w3.org/XML/1998/namespace"; public const string XmlNsNs = "http://www.w3.org/2000/xmlns/"; //public static string GetXmlLangAttribute(XmlReader reader) //{ // string xmlLang = null; // if (reader.MoveToAttribute("lang", XmlNs)) // { // xmlLang = reader.Value; // reader.MoveToElement(); // } // if (xmlLang == null) // throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new XmlException(SR.GetString(SR.XmlLangAttributeMissing))); // return xmlLang; //} //public static void ReadContentAsQName(XmlReader reader, out string localName, out string ns) //{ // ParseQName(reader, reader.ReadContentAsString(), out localName, out ns); //} public static bool IsWhitespace(char ch) { return (ch == ' ' || ch == '\t' || ch == '\r' || ch == '\n'); } public static string TrimEnd(string s) { int i; for (i = s.Length; i > 0 && IsWhitespace(s[i - 1]); i--) ; if (i != s.Length) { return s.Substring(0, i); } return s; } public static string TrimStart(string s) { int i; for (i = 0; i < s.Length && IsWhitespace(s[i]); i++) ; if (i != 0) { return s.Substring(i); } return s; } public static string Trim(string s) { int i; for (i = 0; i < s.Length && IsWhitespace(s[i]); i++); if (i >= s.Length) { return string.Empty; } int j; for (j = s.Length; j > 0 && IsWhitespace(s[j - 1]); j--); DiagnosticUtility.DebugAssert(j > i, "Logic error in XmlUtil.Trim()."); if (i != 0 || j != s.Length) { return s.Substring(i, j - i); } return s; } //public static void ParseQName(XmlReader reader, string qname, out string localName, out string ns) //{ // int index = qname.IndexOf(':'); // string prefix; // if (index < 0) // { // prefix = ""; // localName = TrimStart(TrimEnd(qname)); // } // else // { // if (index == qname.Length - 1) // throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new XmlException(SR.GetString(SR.InvalidXmlQualifiedName, qname))); // prefix = TrimStart(qname.Substring(0, index)); // localName = TrimEnd(qname.Substring(index + 1)); // } // ns = reader.LookupNamespace(prefix); // if (ns == null) // throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new XmlException(SR.GetString(SR.UnboundPrefixInQName, qname))); //} } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.IdentityModel { using System.Xml; using System.Diagnostics; static class XmlUtil { public const string XmlNs = "http://www.w3.org/XML/1998/namespace"; public const string XmlNsNs = "http://www.w3.org/2000/xmlns/"; //public static string GetXmlLangAttribute(XmlReader reader) //{ // string xmlLang = null; // if (reader.MoveToAttribute("lang", XmlNs)) // { // xmlLang = reader.Value; // reader.MoveToElement(); // } // if (xmlLang == null) // throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new XmlException(SR.GetString(SR.XmlLangAttributeMissing))); // return xmlLang; //} //public static void ReadContentAsQName(XmlReader reader, out string localName, out string ns) //{ // ParseQName(reader, reader.ReadContentAsString(), out localName, out ns); //} public static bool IsWhitespace(char ch) { return (ch == ' ' || ch == '\t' || ch == '\r' || ch == '\n'); } public static string TrimEnd(string s) { int i; for (i = s.Length; i > 0 && IsWhitespace(s[i - 1]); i--) ; if (i != s.Length) { return s.Substring(0, i); } return s; } public static string TrimStart(string s) { int i; for (i = 0; i < s.Length && IsWhitespace(s[i]); i++) ; if (i != 0) { return s.Substring(i); } return s; } public static string Trim(string s) { int i; for (i = 0; i < s.Length && IsWhitespace(s[i]); i++); if (i >= s.Length) { return string.Empty; } int j; for (j = s.Length; j > 0 && IsWhitespace(s[j - 1]); j--); DiagnosticUtility.DebugAssert(j > i, "Logic error in XmlUtil.Trim()."); if (i != 0 || j != s.Length) { return s.Substring(i, j - i); } return s; } //public static void ParseQName(XmlReader reader, string qname, out string localName, out string ns) //{ // int index = qname.IndexOf(':'); // string prefix; // if (index < 0) // { // prefix = ""; // localName = TrimStart(TrimEnd(qname)); // } // else // { // if (index == qname.Length - 1) // throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new XmlException(SR.GetString(SR.InvalidXmlQualifiedName, qname))); // prefix = TrimStart(qname.Substring(0, index)); // localName = TrimEnd(qname.Substring(index + 1)); // } // ns = reader.LookupNamespace(prefix); // if (ns == null) // throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new XmlException(SR.GetString(SR.UnboundPrefixInQName, qname))); //} } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ObjectDataSource.cs
- SimpleLine.cs
- ExpressionDumper.cs
- HttpConfigurationSystem.cs
- AppDomainFactory.cs
- PixelFormats.cs
- TraceEventCache.cs
- TableFieldsEditor.cs
- DashStyles.cs
- AnimationClockResource.cs
- XPathNodeInfoAtom.cs
- AudioSignalProblemOccurredEventArgs.cs
- OleDbRowUpdatingEvent.cs
- baseaxisquery.cs
- embossbitmapeffect.cs
- CodeParameterDeclarationExpression.cs
- QueryPageSettingsEventArgs.cs
- VisualSerializer.cs
- ConfigXmlSignificantWhitespace.cs
- ComboBoxHelper.cs
- SQLBinary.cs
- SqlMetaData.cs
- OrderByBuilder.cs
- HttpResponse.cs
- HttpResponseInternalWrapper.cs
- ParameterModifier.cs
- StrokeCollection2.cs
- LinqTreeNodeEvaluator.cs
- ItemsChangedEventArgs.cs
- DbXmlEnabledProviderManifest.cs
- VScrollBar.cs
- SEHException.cs
- LineServicesCallbacks.cs
- _DynamicWinsockMethods.cs
- IsolatedStoragePermission.cs
- MsmqActivation.cs
- HtmlControl.cs
- Compiler.cs
- HoistedLocals.cs
- CustomTypeDescriptor.cs
- XmlArrayItemAttributes.cs
- CursorConverter.cs
- EpmCustomContentDeSerializer.cs
- DBConnection.cs
- StaticTextPointer.cs
- RuntimeEnvironment.cs
- ResolveNameEventArgs.cs
- ClientTargetCollection.cs
- _StreamFramer.cs
- AnonymousIdentificationModule.cs
- DBAsyncResult.cs
- CryptoKeySecurity.cs
- Opcode.cs
- ManagementNamedValueCollection.cs
- DateTimePicker.cs
- GradientSpreadMethodValidation.cs
- MutexSecurity.cs
- MimeXmlReflector.cs
- FailedToStartupUIException.cs
- JulianCalendar.cs
- DmlSqlGenerator.cs
- MarkupObject.cs
- AtomEntry.cs
- MetadataCache.cs
- PrintDialog.cs
- CodeSnippetExpression.cs
- SqlConnectionManager.cs
- DetailsViewActionList.cs
- AssemblyNameUtility.cs
- SrgsItemList.cs
- Int32Animation.cs
- TemplatedWizardStep.cs
- DesignBindingPropertyDescriptor.cs
- ObjectSecurity.cs
- JpegBitmapDecoder.cs
- WindowsRebar.cs
- ListViewHitTestInfo.cs
- SID.cs
- StylusTip.cs
- ObjectPersistData.cs
- LogicalExpr.cs
- WorkItem.cs
- DesignerAdapterAttribute.cs
- CookieProtection.cs
- PhotoPrintingIntent.cs
- ConstructorNeedsTagAttribute.cs
- TextTreeDeleteContentUndoUnit.cs
- ObjectDataSourceView.cs
- HttpAsyncResult.cs
- FixedSOMContainer.cs
- FileClassifier.cs
- PKCS1MaskGenerationMethod.cs
- XmlSchemaInferenceException.cs
- MemberInfoSerializationHolder.cs
- ListViewDeletedEventArgs.cs
- OutputCacheSettings.cs
- ResourceReferenceExpressionConverter.cs
- ModifierKeysValueSerializer.cs
- FactoryGenerator.cs
- XmlAttributes.cs