Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / clr / src / BCL / System / Security / PermissionSetEnumerator.cs / 1 / PermissionSetEnumerator.cs
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
namespace System.Security
{
//PermissionSetEnumerator.cs
using System;
using System.Collections;
using TokenBasedSetEnumerator = System.Security.Util.TokenBasedSetEnumerator;
using TokenBasedSet = System.Security.Util.TokenBasedSet;
internal class PermissionSetEnumerator : IEnumerator
{
PermissionSetEnumeratorInternal enm;
public Object Current
{
get
{
return enm.Current;
}
}
public bool MoveNext()
{
return enm.MoveNext();
}
public void Reset()
{
enm.Reset();
}
internal PermissionSetEnumerator(PermissionSet permSet)
{
enm = new PermissionSetEnumeratorInternal(permSet);
}
}
internal struct PermissionSetEnumeratorInternal
{
private PermissionSet m_permSet;
private TokenBasedSetEnumerator enm;
public Object Current
{
get
{
return enm.Current;
}
}
internal PermissionSetEnumeratorInternal(PermissionSet permSet)
{
m_permSet = permSet;
enm = new TokenBasedSetEnumerator(permSet.m_permSet);
}
public int GetCurrentIndex()
{
return enm.Index;
}
public void Reset()
{
enm.Reset();
}
public bool MoveNext()
{
while (enm.MoveNext())
{
Object obj = enm.Current;
IPermission perm = obj as IPermission;
if (perm != null)
{
enm.Current = perm;
return true;
}
SecurityElement elem = obj as SecurityElement;
if (elem != null)
{
perm = m_permSet.CreatePermission(elem, enm.Index);
if (perm != null)
{
enm.Current = perm;
return true;
}
}
}
return false;
}
}
}
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- RightsManagementEncryptionTransform.cs
- DataGridViewCellLinkedList.cs
- ElementUtil.cs
- altserialization.cs
- TraceLevelStore.cs
- SoapTransportImporter.cs
- SqlUserDefinedAggregateAttribute.cs
- OleDbParameter.cs
- SqlCacheDependencySection.cs
- ThreadAbortException.cs
- DomainUpDown.cs
- OledbConnectionStringbuilder.cs
- CharacterMetricsDictionary.cs
- InternalException.cs
- IconEditor.cs
- XamlTypeMapper.cs
- Comparer.cs
- Options.cs
- XmlException.cs
- EntityDataSourceDataSelection.cs
- ToolStripPanelSelectionBehavior.cs
- SortKey.cs
- BaseCodeDomTreeGenerator.cs
- ProgressChangedEventArgs.cs
- RightsManagementEncryptedStream.cs
- XmlDataSourceView.cs
- IconConverter.cs
- StateDesigner.Helpers.cs
- Pick.cs
- XsdDuration.cs
- XPathCompiler.cs
- METAHEADER.cs
- PolyLineSegment.cs
- CatalogZone.cs
- HttpDateParse.cs
- PeerNameRegistration.cs
- EnterpriseServicesHelper.cs
- ExtensionQuery.cs
- HebrewCalendar.cs
- x509utils.cs
- OrderedDictionary.cs
- ManagementDateTime.cs
- DesignerSerializerAttribute.cs
- DataGridViewColumnConverter.cs
- GridProviderWrapper.cs
- StatusBarAutomationPeer.cs
- SamlConditions.cs
- ServiceBusyException.cs
- RequestDescription.cs
- Pen.cs
- DragStartedEventArgs.cs
- LabelLiteral.cs
- CodeGen.cs
- RequestBringIntoViewEventArgs.cs
- x509utils.cs
- SystemNetHelpers.cs
- DataBoundControlHelper.cs
- NetCodeGroup.cs
- SqlMethodCallConverter.cs
- DataGridViewCellStateChangedEventArgs.cs
- Activity.cs
- FixedSOMTable.cs
- SafeCryptoHandles.cs
- ToolTipService.cs
- ContextMenuService.cs
- SqlParameter.cs
- SafeSecurityHelper.cs
- TranslateTransform.cs
- WorkflowApplicationAbortedException.cs
- ConstructorArgumentAttribute.cs
- ObservableCollection.cs
- FrameworkEventSource.cs
- SoapSchemaImporter.cs
- UniformGrid.cs
- ObjectHandle.cs
- QuaternionAnimation.cs
- ClickablePoint.cs
- Rotation3D.cs
- XmlSchemaGroupRef.cs
- HtmlTableCellCollection.cs
- CustomValidator.cs
- SecuritySessionSecurityTokenProvider.cs
- HtmlElementCollection.cs
- RSAPKCS1KeyExchangeFormatter.cs
- PagePropertiesChangingEventArgs.cs
- DetailsViewModeEventArgs.cs
- SiteIdentityPermission.cs
- Int16AnimationUsingKeyFrames.cs
- UnknownBitmapDecoder.cs
- XmlSchemaSubstitutionGroup.cs
- UnSafeCharBuffer.cs
- CustomAttribute.cs
- PromptStyle.cs
- ApplicationInterop.cs
- HttpListenerPrefixCollection.cs
- StreamWithDictionary.cs
- FileInfo.cs
- ErasingStroke.cs
- DynamicILGenerator.cs
- GACIdentityPermission.cs