Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Services / Monitoring / system / Diagnosticts / EventLogEntryCollection.cs / 1305376 / EventLogEntryCollection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Diagnostics { using System.Text; using System; using System.Collections; //Consider, V2, [....]: Is there a way to implement Contains //and IndexOf, can we live withouth this part of the ReadOnly //collection pattern? ////// public class EventLogEntryCollection : ICollection { private EventLogInternal log; internal EventLogEntryCollection(EventLogInternal log) { this.log = log; } ///[To be supplied.] ////// public int Count { get { return log.EntryCount; } } ////// Gets the number of entries in the event log /// ////// public virtual EventLogEntry this[int index] { get { return log.GetEntryAt(index); } } ////// Gets an entry in /// the event log, based on an index starting at 0. /// ////// public void CopyTo(EventLogEntry[] entries, int index) { ((ICollection)this).CopyTo((Array)entries, index); } ///[To be supplied.] ////// public IEnumerator GetEnumerator() { return new EntriesEnumerator(this); } internal EventLogEntry GetEntryAtNoThrow(int index) { return log.GetEntryAtNoThrow(index); } ///bool ICollection.IsSynchronized { get { return false; } } /// /// ICollection private interface implementation. /// ///object ICollection.SyncRoot { get { return this; } } /// /// ICollection private interface implementation. /// ///void ICollection.CopyTo(Array array, int index) { EventLogEntry[] entries = log.GetAllEntries(); Array.Copy(entries, 0, array, index, entries.Length); } /// /// private class EntriesEnumerator : IEnumerator { private EventLogEntryCollection entries; private int num = -1; private EventLogEntry cachedEntry = null; internal EntriesEnumerator(EventLogEntryCollection entries) { this.entries = entries; } ////// Holds an System.Diagnostics.EventLog.EventLogEntryCollection that /// consists of the entries in an event /// log. /// ////// public object Current { get { if (cachedEntry == null) throw new InvalidOperationException(SR.GetString(SR.NoCurrentEntry)); return cachedEntry; } } ////// Gets the entry at the current position. /// ////// public bool MoveNext() { num++; cachedEntry = entries.GetEntryAtNoThrow(num); return cachedEntry != null; } ////// Advances the enumerator to the next entry in the event log. /// ////// public void Reset() { num = -1; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007./// Resets the state of the enumeration. /// ///
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CodeGenerationManager.cs
- FrameworkRichTextComposition.cs
- BindingValueChangedEventArgs.cs
- Grid.cs
- WindowsImpersonationContext.cs
- HtmlTitle.cs
- MetaModel.cs
- IOException.cs
- Attributes.cs
- FormatException.cs
- StandardCommands.cs
- MaterialGroup.cs
- StateMachine.cs
- ICspAsymmetricAlgorithm.cs
- SessionEndingCancelEventArgs.cs
- TemplateBaseAction.cs
- linebase.cs
- BrowserCapabilitiesFactoryBase.cs
- HttpModuleAction.cs
- ContainsRowNumberChecker.cs
- ForeignKeyFactory.cs
- FileDialog_Vista.cs
- UnsafeNativeMethods.cs
- SchemaImporterExtension.cs
- DialogDivider.cs
- XmlCharCheckingWriter.cs
- UnsafeNativeMethodsTablet.cs
- MsmqOutputChannel.cs
- ConsumerConnectionPoint.cs
- TdsParserStateObject.cs
- ObjectResult.cs
- complextypematerializer.cs
- HtmlShimManager.cs
- Missing.cs
- BitmapEffectrendercontext.cs
- DeferredReference.cs
- IRCollection.cs
- SystemInformation.cs
- XpsSerializationManager.cs
- FixedTextBuilder.cs
- TypeExtension.cs
- SettingsPropertyValue.cs
- BinHexEncoder.cs
- ParserStreamGeometryContext.cs
- DataGridViewHitTestInfo.cs
- AsymmetricKeyExchangeFormatter.cs
- CompositeCollection.cs
- DataTableReaderListener.cs
- FontCacheUtil.cs
- PerformanceCounterNameAttribute.cs
- SimpleTypesSurrogate.cs
- LogicalExpr.cs
- ColumnWidthChangedEvent.cs
- EventData.cs
- NavigationWindowAutomationPeer.cs
- ApplicationBuildProvider.cs
- UnitySerializationHolder.cs
- DocumentPaginator.cs
- SqlDataSourceCommandParser.cs
- ApplicationActivator.cs
- ImmutableObjectAttribute.cs
- SpeakInfo.cs
- DesignerDataSourceView.cs
- XsdBuildProvider.cs
- QueryStringHandler.cs
- XsdCachingReader.cs
- ModifyActivitiesPropertyDescriptor.cs
- BufferBuilder.cs
- DataMemberListEditor.cs
- FixedDSBuilder.cs
- TraceSource.cs
- TextReader.cs
- HostingEnvironmentException.cs
- XPathNodeHelper.cs
- HttpListenerResponse.cs
- WindowsComboBox.cs
- ObjectDataSourceFilteringEventArgs.cs
- InputLangChangeRequestEvent.cs
- StreamGeometry.cs
- AttributeQuery.cs
- ConstraintConverter.cs
- DbConnectionPoolGroupProviderInfo.cs
- RemotingServices.cs
- TreeViewDesigner.cs
- TableLayoutPanelCellPosition.cs
- PerformanceCounterPermissionAttribute.cs
- WinEventQueueItem.cs
- _CacheStreams.cs
- TargetInvocationException.cs
- StringValidatorAttribute.cs
- TraceSource.cs
- DispatcherExceptionEventArgs.cs
- ToolStripControlHost.cs
- EventSinkHelperWriter.cs
- OSFeature.cs
- ProgramNode.cs
- PageBuildProvider.cs
- UInt16Storage.cs
- CustomAttributeFormatException.cs
- CreateUserErrorEventArgs.cs