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
- SerializationEventsCache.cs
- SendMessageContent.cs
- DirectoryInfo.cs
- ZipIOCentralDirectoryBlock.cs
- QueryComponents.cs
- CheckBoxPopupAdapter.cs
- EntityDataSourceChangingEventArgs.cs
- PrefixHandle.cs
- RawAppCommandInputReport.cs
- CSharpCodeProvider.cs
- ParameterExpression.cs
- FacetChecker.cs
- TransactionException.cs
- MessageDescription.cs
- EventLogPermission.cs
- DefaultValueTypeConverter.cs
- ClientEndpointLoader.cs
- FixedSchema.cs
- Button.cs
- CreateUserErrorEventArgs.cs
- PrintPreviewDialog.cs
- TransportChannelFactory.cs
- SemanticValue.cs
- Item.cs
- login.cs
- QEncodedStream.cs
- ActiveXContainer.cs
- SafeArrayTypeMismatchException.cs
- XmlCodeExporter.cs
- HtmlInputFile.cs
- PreservationFileReader.cs
- ActivationArguments.cs
- DataSetSchema.cs
- EntityCollection.cs
- SessionEndingEventArgs.cs
- PrintDocument.cs
- SqlFunctions.cs
- XmlSerializerFactory.cs
- InputLanguageProfileNotifySink.cs
- FontResourceCache.cs
- XsltSettings.cs
- DataGridViewAutoSizeColumnModeEventArgs.cs
- COM2Enum.cs
- DocumentXPathNavigator.cs
- PersianCalendar.cs
- Array.cs
- ClientTargetSection.cs
- ContextBase.cs
- SchemaDeclBase.cs
- OraclePermission.cs
- WindowsMenu.cs
- ListViewHitTestInfo.cs
- XmlCustomFormatter.cs
- CompiledRegexRunnerFactory.cs
- ValidationException.cs
- CalendarDay.cs
- OdbcRowUpdatingEvent.cs
- Stream.cs
- MsmqIntegrationBindingElement.cs
- SchemaInfo.cs
- Funcletizer.cs
- XmlFormatReaderGenerator.cs
- ListenerElementsCollection.cs
- TileBrush.cs
- SkinIDTypeConverter.cs
- ConfigUtil.cs
- RegexInterpreter.cs
- ColumnResult.cs
- ImageMap.cs
- UnrecognizedPolicyAssertionElement.cs
- CacheDependency.cs
- DBCommandBuilder.cs
- ClientRolePrincipal.cs
- SlotInfo.cs
- mediaeventargs.cs
- _ConnectStream.cs
- XmlDataImplementation.cs
- DbConnectionStringBuilder.cs
- UnmanagedMemoryStream.cs
- AsymmetricSignatureDeformatter.cs
- FlowLayout.cs
- FilteredXmlReader.cs
- MetadataItemCollectionFactory.cs
- ListViewInsertEventArgs.cs
- SingleAnimationUsingKeyFrames.cs
- BuildDependencySet.cs
- ItemContainerPattern.cs
- WebPartsSection.cs
- _CommandStream.cs
- DeadCharTextComposition.cs
- BinaryMessageFormatter.cs
- ZipIOModeEnforcingStream.cs
- CreateDataSourceDialog.cs
- FloaterParaClient.cs
- InteropAutomationProvider.cs
- Bitmap.cs
- FontStretch.cs
- ColorBlend.cs
- CodeTypeReference.cs
- TextSimpleMarkerProperties.cs