Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / Services / Monitoring / system / Diagnosticts / EventLogEntryCollection.cs / 1 / 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 EventLog log; internal EventLogEntryCollection(EventLog 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. /// ///// 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 EventLog log; internal EventLogEntryCollection(EventLog 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
- FontConverter.cs
- WindowsStartMenu.cs
- HyperLinkStyle.cs
- ProfileSettingsCollection.cs
- _ConnectStream.cs
- RegularExpressionValidator.cs
- Header.cs
- CodeTypeConstructor.cs
- OracleCommand.cs
- UnsafeNativeMethods.cs
- BrowserDefinitionCollection.cs
- COAUTHINFO.cs
- BitStack.cs
- BufferedGraphics.cs
- KoreanLunisolarCalendar.cs
- DatePicker.cs
- RtfControls.cs
- SpecularMaterial.cs
- ProtocolsConfiguration.cs
- ReturnEventArgs.cs
- MessageLoggingFilterTraceRecord.cs
- BaseParaClient.cs
- ListViewTableRow.cs
- DoubleAnimationUsingKeyFrames.cs
- ViewCellSlot.cs
- Quack.cs
- DataGridHeaderBorder.cs
- WinEventTracker.cs
- ContextMenu.cs
- ConfigurationErrorsException.cs
- ClientSettingsSection.cs
- XmlILStorageConverter.cs
- ConfigurationProperty.cs
- SapiRecoContext.cs
- UDPClient.cs
- PolicyLevel.cs
- PlatformCulture.cs
- ScriptBehaviorDescriptor.cs
- TraceUtils.cs
- BitVector32.cs
- SqlNodeTypeOperators.cs
- Substitution.cs
- SystemIPv4InterfaceProperties.cs
- TrackingDataItem.cs
- ItemsChangedEventArgs.cs
- BindingExpression.cs
- NextPreviousPagerField.cs
- Serializer.cs
- PerfCounterSection.cs
- EndOfStreamException.cs
- PrinterSettings.cs
- ActiveDocumentEvent.cs
- ColumnHeaderConverter.cs
- ImmutableObjectAttribute.cs
- MouseEvent.cs
- HierarchicalDataBoundControl.cs
- NativeCppClassAttribute.cs
- Polygon.cs
- ReturnEventArgs.cs
- SqlUtil.cs
- IndexedGlyphRun.cs
- AudioStateChangedEventArgs.cs
- CachedTypeface.cs
- FileReservationCollection.cs
- ImportCatalogPart.cs
- PrinterUnitConvert.cs
- HttpModuleAction.cs
- ValuePatternIdentifiers.cs
- StatusBarDrawItemEvent.cs
- ZoneIdentityPermission.cs
- VirtualPathProvider.cs
- FreezableCollection.cs
- OdbcDataAdapter.cs
- ResourcePermissionBase.cs
- RC2CryptoServiceProvider.cs
- TogglePatternIdentifiers.cs
- DataGridViewControlCollection.cs
- Literal.cs
- AngleUtil.cs
- SizeAnimationClockResource.cs
- UnicodeEncoding.cs
- PerfService.cs
- SchemaEntity.cs
- DockPanel.cs
- HttpProxyTransportBindingElement.cs
- XmlILOptimizerVisitor.cs
- KnownTypesProvider.cs
- UriTemplateHelpers.cs
- DesignSurfaceCollection.cs
- TdsParserStaticMethods.cs
- SubMenuStyle.cs
- OrderedDictionary.cs
- CodeObjectCreateExpression.cs
- ToolTipAutomationPeer.cs
- InternalSafeNativeMethods.cs
- MenuItemCollectionEditor.cs
- WebPartConnectionsCancelVerb.cs
- SqlNodeTypeOperators.cs
- DiscoveryEndpoint.cs
- IFormattable.cs