Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / clr / src / BCL / System / Security / Policy / ApplicationDirectory.cs / 1305376 / ApplicationDirectory.cs
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
// ApplicationDirectory.cs
//
// [....]
//
// ApplicationDirectory is an evidence type representing the directory the assembly
// was loaded from.
//
namespace System.Security.Policy {
using System;
using System.IO;
using System.Security.Util;
using System.Collections;
using System.Diagnostics.Contracts;
[Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class ApplicationDirectory : EvidenceBase
{
private URLString m_appDirectory;
public ApplicationDirectory( String name )
{
if (name == null)
throw new ArgumentNullException( "name" );
Contract.EndContractBlock();
m_appDirectory = new URLString( name );
}
private ApplicationDirectory(URLString appDirectory)
{
Contract.Assert(appDirectory != null);
m_appDirectory = appDirectory;
}
public String Directory
{
get
{
return m_appDirectory.ToString();
}
}
public override bool Equals(Object o)
{
ApplicationDirectory other = o as ApplicationDirectory;
if (other == null)
{
return false;
}
return m_appDirectory.Equals(other.m_appDirectory);
}
public override int GetHashCode()
{
return this.m_appDirectory.GetHashCode();
}
public override EvidenceBase Clone()
{
return new ApplicationDirectory(m_appDirectory);
}
public Object Copy()
{
return Clone();
}
internal SecurityElement ToXml()
{
SecurityElement root = new SecurityElement( "System.Security.Policy.ApplicationDirectory" );
// If you hit this assert then most likely you are trying to change the name of this class.
// This is ok as long as you change the hard coded string above and change the assert below.
Contract.Assert( this.GetType().FullName.Equals( "System.Security.Policy.ApplicationDirectory" ), "Class name changed!" );
root.AddAttribute( "version", "1" );
if (m_appDirectory != null)
root.AddChild( new SecurityElement( "Directory", m_appDirectory.ToString() ) );
return root;
}
public override String ToString()
{
return ToXml().ToString();
}
}
}
// 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
- ClockController.cs
- WhitespaceRuleLookup.cs
- DeleteMemberBinder.cs
- FunctionMappingTranslator.cs
- SecurityPermission.cs
- XmlSecureResolver.cs
- ControlBuilder.cs
- StorageAssociationTypeMapping.cs
- MimeMultiPart.cs
- ComPlusContractBehavior.cs
- TcpProcessProtocolHandler.cs
- WindowVisualStateTracker.cs
- NavigationProgressEventArgs.cs
- BinaryParser.cs
- XPathDescendantIterator.cs
- DbConnectionPoolIdentity.cs
- PointAnimationBase.cs
- AutomationEvent.cs
- DockPanel.cs
- DiscreteKeyFrames.cs
- QueryContinueDragEvent.cs
- BeginStoryboard.cs
- TextAdaptor.cs
- XmlSchemaSimpleContentExtension.cs
- MatrixCamera.cs
- ScrollProviderWrapper.cs
- ContentOperations.cs
- OutputCacheModule.cs
- AssemblyInfo.cs
- ToolbarAUtomationPeer.cs
- SchemaImporterExtensionsSection.cs
- TypeValidationEventArgs.cs
- RSAOAEPKeyExchangeDeformatter.cs
- DataControlFieldCollection.cs
- HtmlDocument.cs
- ActivityPreviewDesigner.cs
- PixelShader.cs
- UInt16Storage.cs
- XhtmlBasicValidatorAdapter.cs
- OleStrCAMarshaler.cs
- SafePEFileHandle.cs
- SqlFacetAttribute.cs
- ResXFileRef.cs
- FormView.cs
- CurrentChangedEventManager.cs
- SafeRightsManagementPubHandle.cs
- WindowsStatic.cs
- ToolTip.cs
- XPathEmptyIterator.cs
- NativeMethods.cs
- DocumentPageView.cs
- AndCondition.cs
- DateTimeFormat.cs
- XhtmlCssHandler.cs
- ClientApiGenerator.cs
- DocumentAutomationPeer.cs
- BinaryCommonClasses.cs
- CanonicalFontFamilyReference.cs
- QilXmlReader.cs
- XsdDataContractImporter.cs
- TextFormatter.cs
- SplitterPanel.cs
- PackageRelationshipSelector.cs
- SecUtil.cs
- SymbolPair.cs
- CodeCommentStatement.cs
- ProcessInfo.cs
- AsnEncodedData.cs
- HyperLinkStyle.cs
- WindowsListViewGroupHelper.cs
- SpecularMaterial.cs
- ConvertersCollection.cs
- HwndSourceParameters.cs
- MultipartContentParser.cs
- KoreanLunisolarCalendar.cs
- Int32CollectionConverter.cs
- HtmlControl.cs
- SizeChangedEventArgs.cs
- TrackingParticipant.cs
- CommonEndpointBehaviorElement.cs
- PersonalizationDictionary.cs
- BamlRecordWriter.cs
- LogLogRecordHeader.cs
- DataDocumentXPathNavigator.cs
- SettingsBase.cs
- DesignerTransactionCloseEvent.cs
- AutoFocusStyle.xaml.cs
- XPathNodePointer.cs
- PropertyPath.cs
- XmlWhitespace.cs
- HttpWriter.cs
- Registry.cs
- ContextProperty.cs
- GACMembershipCondition.cs
- MappingSource.cs
- Constants.cs
- DataGridItemEventArgs.cs
- COM2ComponentEditor.cs
- ResourceExpressionBuilder.cs
- XmlDataLoader.cs