Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // 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; } } } // 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
- Int32Storage.cs
- AdPostCacheSubstitution.cs
- SchemaExporter.cs
- RecommendedAsConfigurableAttribute.cs
- ClientSettingsSection.cs
- PlainXmlSerializer.cs
- NullToBooleanConverter.cs
- OdbcCommandBuilder.cs
- ScrollItemPattern.cs
- Misc.cs
- EntityTypeEmitter.cs
- WmlLiteralTextAdapter.cs
- AspCompat.cs
- ResourceProviderFactory.cs
- SelectionGlyph.cs
- RubberbandSelector.cs
- PathSegment.cs
- EventHandlingScope.cs
- Certificate.cs
- TimelineCollection.cs
- CompositeActivityDesigner.cs
- TypeBuilder.cs
- ServiceHostFactory.cs
- MessageBuffer.cs
- EntityViewContainer.cs
- IgnoreDataMemberAttribute.cs
- FamilyMapCollection.cs
- PreservationFileWriter.cs
- ContainerControl.cs
- XmlAtomicValue.cs
- HttpRequest.cs
- CharEntityEncoderFallback.cs
- ColorMap.cs
- XamlPoint3DCollectionSerializer.cs
- coordinatorfactory.cs
- TimeSpanSecondsConverter.cs
- Menu.cs
- StrokeNodeData.cs
- PasswordTextNavigator.cs
- HttpHandlerAction.cs
- FilteredReadOnlyMetadataCollection.cs
- SolidColorBrush.cs
- IMembershipProvider.cs
- NameNode.cs
- LocalizationParserHooks.cs
- Table.cs
- IsolatedStorageSecurityState.cs
- GreenMethods.cs
- CodeValidator.cs
- DbConnectionOptions.cs
- ConfigurationSectionGroup.cs
- Int32Rect.cs
- JsonQueryStringConverter.cs
- InProcStateClientManager.cs
- SchemaSetCompiler.cs
- ParserStack.cs
- Process.cs
- SendReply.cs
- TableRow.cs
- SystemColors.cs
- TableProviderWrapper.cs
- MatrixTransform3D.cs
- Point3DAnimationBase.cs
- ImageAttributes.cs
- FileLoadException.cs
- COM2IDispatchConverter.cs
- Selection.cs
- RightsManagementPermission.cs
- TdsParser.cs
- InputMethodStateChangeEventArgs.cs
- EntityDataSourceViewSchema.cs
- PropertyMap.cs
- GridErrorDlg.cs
- ReliableInputConnection.cs
- TreeNodeCollection.cs
- ApplicationActivator.cs
- DependencyPropertyKey.cs
- ScriptResourceHandler.cs
- BinaryUtilClasses.cs
- xsdvalidator.cs
- Duration.cs
- CodeDelegateInvokeExpression.cs
- FilterableData.cs
- WorkflowServiceNamespace.cs
- Lazy.cs
- EventEntry.cs
- WebBrowserNavigatedEventHandler.cs
- DataBoundLiteralControl.cs
- CultureInfoConverter.cs
- SkipStoryboardToFill.cs
- SqlCacheDependencyDatabase.cs
- MetadataItem_Static.cs
- ListItemParagraph.cs
- UnicastIPAddressInformationCollection.cs
- AlignmentYValidation.cs
- CompositeDataBoundControl.cs
- VirtualizingPanel.cs
- HttpClientCertificate.cs
- COSERVERINFO.cs
- StyleModeStack.cs