Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- IPGlobalProperties.cs
- MethodRental.cs
- InvalidCommandTreeException.cs
- SelectionRange.cs
- ScrollViewerAutomationPeer.cs
- Html32TextWriter.cs
- ContractHandle.cs
- XmlElementAttribute.cs
- RuntimeConfig.cs
- WizardStepBase.cs
- OlePropertyStructs.cs
- DataRowView.cs
- SettingsContext.cs
- FocusManager.cs
- InvokeFunc.cs
- ServiceBusyException.cs
- CodeLabeledStatement.cs
- ApplicationDirectoryMembershipCondition.cs
- SqlConnection.cs
- SmtpCommands.cs
- DocumentPage.cs
- HotCommands.cs
- Int32Storage.cs
- MonthChangedEventArgs.cs
- TagMapCollection.cs
- Latin1Encoding.cs
- HitTestResult.cs
- WebPartUtil.cs
- ServicesUtilities.cs
- ClientBuildManager.cs
- WorkflowApplication.cs
- KnownColorTable.cs
- BitmapMetadataEnumerator.cs
- PropertyGeneratedEventArgs.cs
- InlineUIContainer.cs
- ComponentManagerBroker.cs
- ErrorBehavior.cs
- ViewGenerator.cs
- ZipFileInfo.cs
- ConfigurationStrings.cs
- EnumMemberAttribute.cs
- XmlComment.cs
- Soap12ServerProtocol.cs
- Query.cs
- AnnotationResource.cs
- MessageBox.cs
- OneOfElement.cs
- FrameworkObject.cs
- SafeCryptContextHandle.cs
- PersonalizationStateInfo.cs
- TransformerInfo.cs
- EntityModelSchemaGenerator.cs
- SmiConnection.cs
- Pair.cs
- DataControlField.cs
- ToolStripGripRenderEventArgs.cs
- XmlIlGenerator.cs
- MediaTimeline.cs
- ChtmlSelectionListAdapter.cs
- HeaderedItemsControl.cs
- AbsoluteQuery.cs
- ToolStripOverflow.cs
- WorkItem.cs
- DrawTreeNodeEventArgs.cs
- QueryExpr.cs
- LoadRetryHandler.cs
- SerializationSectionGroup.cs
- WS2007FederationHttpBindingCollectionElement.cs
- DetailsViewUpdateEventArgs.cs
- ObjectDisposedException.cs
- MexTcpBindingElement.cs
- SystemWebExtensionsSectionGroup.cs
- ObjectDataSourceMethodEditor.cs
- CollectionViewGroupRoot.cs
- SHA384Managed.cs
- WebContext.cs
- ClassDataContract.cs
- SamlDoNotCacheCondition.cs
- BrowserCapabilitiesCodeGenerator.cs
- CategoryAttribute.cs
- XamlInt32CollectionSerializer.cs
- UserControlCodeDomTreeGenerator.cs
- Guid.cs
- TextEditorContextMenu.cs
- WebColorConverter.cs
- Point.cs
- RowSpanVector.cs
- RestHandler.cs
- ConfigErrorGlyph.cs
- ManualResetEvent.cs
- TextFormatterContext.cs
- StickyNote.cs
- AspNetHostingPermission.cs
- StatusBarDrawItemEvent.cs
- PermissionListSet.cs
- PageMediaSize.cs
- FramingFormat.cs
- Drawing.cs
- EntitySetDataBindingList.cs
- TagNameToTypeMapper.cs