Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / clr / src / ManagedLibraries / Security / System / Security / Cryptography / Xml / DataObject.cs / 1305376 / DataObject.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== //[....] // // // DataObject.cs // // 21 [....] 2000 // namespace System.Security.Cryptography.Xml { using System; using System.IO; using System.Xml; [System.Security.Permissions.HostProtection(MayLeakOnAbort = true)] public class DataObject { private string m_id; private string m_mimeType; private string m_encoding; private CanonicalXmlNodeList m_elData; private XmlElement m_cachedXml; // // public constructors // public DataObject () { m_cachedXml = null; m_elData = new CanonicalXmlNodeList(); } public DataObject (string id, string mimeType, string encoding, XmlElement data) { if (data == null) throw new ArgumentNullException("data"); m_id = id; m_mimeType = mimeType; m_encoding = encoding; m_elData = new CanonicalXmlNodeList(); m_elData.Add(data); m_cachedXml = null; } // // public properties // public string Id { get { return m_id; } set { m_id = value; m_cachedXml = null; } } public string MimeType { get { return m_mimeType; } set { m_mimeType = value; m_cachedXml = null; } } public string Encoding { get { return m_encoding; } set { m_encoding = value; m_cachedXml = null; } } public XmlNodeList Data { get { return m_elData; } set { if (value == null) throw new ArgumentNullException("value"); // Reset the node list m_elData = new CanonicalXmlNodeList(); foreach (XmlNode node in value) { m_elData.Add(node); } m_cachedXml = null; } } private bool CacheValid { get { return(m_cachedXml != null); } } // // public methods // public XmlElement GetXml() { if (CacheValid) return(m_cachedXml); XmlDocument document = new XmlDocument(); document.PreserveWhitespace = true; return GetXml(document); } internal XmlElement GetXml (XmlDocument document) { XmlElement objectElement = document.CreateElement("Object", SignedXml.XmlDsigNamespaceUrl); if (!String.IsNullOrEmpty(m_id)) objectElement.SetAttribute("Id", m_id); if (!String.IsNullOrEmpty(m_mimeType)) objectElement.SetAttribute("MimeType", m_mimeType); if (!String.IsNullOrEmpty(m_encoding)) objectElement.SetAttribute("Encoding", m_encoding); if (m_elData != null) { foreach (XmlNode node in m_elData) { objectElement.AppendChild(document.ImportNode(node, true)); } } return objectElement; } public void LoadXml (XmlElement value) { if (value == null) throw new ArgumentNullException("value"); m_id = Utils.GetAttribute(value, "Id", SignedXml.XmlDsigNamespaceUrl); m_mimeType = Utils.GetAttribute(value, "MimeType", SignedXml.XmlDsigNamespaceUrl); m_encoding = Utils.GetAttribute(value, "Encoding", SignedXml.XmlDsigNamespaceUrl); foreach (XmlNode node in value.ChildNodes) { m_elData.Add(node); } // Save away the cached value m_cachedXml = value; } } } // 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
- HostAdapter.cs
- AppearanceEditorPart.cs
- PriorityQueue.cs
- FactoryGenerator.cs
- QueueAccessMode.cs
- NativeMethods.cs
- IPHostEntry.cs
- StoreItemCollection.Loader.cs
- SchemaTypeEmitter.cs
- RuntimeEnvironment.cs
- AssociationType.cs
- COM2EnumConverter.cs
- RequestNavigateEventArgs.cs
- Geometry3D.cs
- DbCommandDefinition.cs
- DesignerVerb.cs
- PointConverter.cs
- XmlSchemaNotation.cs
- ContactManager.cs
- HwndStylusInputProvider.cs
- EnumMember.cs
- BasicCellRelation.cs
- LiteralTextContainerControlBuilder.cs
- FastEncoder.cs
- ChannelHandler.cs
- UInt16Converter.cs
- ResourceExpressionEditor.cs
- MimeWriter.cs
- DecoratedNameAttribute.cs
- SignatureResourcePool.cs
- ComboBox.cs
- GlyphShapingProperties.cs
- WmiInstallComponent.cs
- ReceiveActivity.cs
- StrokeSerializer.cs
- OrCondition.cs
- EntityEntry.cs
- SqlUserDefinedTypeAttribute.cs
- PrintPreviewGraphics.cs
- RemoteCryptoTokenProvider.cs
- RedirectionProxy.cs
- RowBinding.cs
- XamlBrushSerializer.cs
- ToolStripHighContrastRenderer.cs
- BaseTemplatedMobileComponentEditor.cs
- DocumentGridContextMenu.cs
- MiniConstructorInfo.cs
- SessionPageStatePersister.cs
- Inline.cs
- SubpageParaClient.cs
- PenCursorManager.cs
- CodeDomSerializerException.cs
- SatelliteContractVersionAttribute.cs
- DataStorage.cs
- MailAddressParser.cs
- ProfileManager.cs
- SqlTypeConverter.cs
- HttpListener.cs
- XmlILCommand.cs
- IssuanceLicense.cs
- SessionStateUtil.cs
- BaseUriHelper.cs
- DBSqlParserTable.cs
- CatalogPartDesigner.cs
- ContextStaticAttribute.cs
- Compiler.cs
- EncodingNLS.cs
- DataGridViewButtonColumn.cs
- SqlCaseSimplifier.cs
- DebugHandleTracker.cs
- HitTestParameters3D.cs
- DiscardableAttribute.cs
- RelationshipWrapper.cs
- objectquery_tresulttype.cs
- cookiecontainer.cs
- AdCreatedEventArgs.cs
- IOThreadScheduler.cs
- BasePattern.cs
- DataGridViewEditingControlShowingEventArgs.cs
- TextDecorationCollection.cs
- MatrixValueSerializer.cs
- CellParagraph.cs
- Control.cs
- NativeWrapper.cs
- Compiler.cs
- DispatcherFrame.cs
- DefaultAutoFieldGenerator.cs
- RuntimeVariablesExpression.cs
- TypeRestriction.cs
- PixelFormatConverter.cs
- CounterCreationDataCollection.cs
- XmlDownloadManager.cs
- MembershipPasswordException.cs
- GeometryDrawing.cs
- GenericTypeParameterBuilder.cs
- StorageEntityContainerMapping.cs
- StringBuilder.cs
- LongValidatorAttribute.cs
- PersonalizationProviderHelper.cs
- XamlWriter.cs