Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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
- CommonProperties.cs
- DebugView.cs
- DbgCompiler.cs
- IDictionary.cs
- FieldBuilder.cs
- Point4DConverter.cs
- BamlRecords.cs
- ItemAutomationPeer.cs
- GatewayIPAddressInformationCollection.cs
- EndEvent.cs
- KeyFrames.cs
- ZoneLinkButton.cs
- FormViewDesigner.cs
- SqlDataSourceCommandEventArgs.cs
- ExclusiveTcpListener.cs
- WriteLine.cs
- CheckBox.cs
- XmlSchemaImport.cs
- StatusBar.cs
- Image.cs
- LogLogRecordHeader.cs
- Int32CollectionValueSerializer.cs
- Timer.cs
- CollectionConverter.cs
- RMEnrollmentPage1.cs
- DataSourceControlBuilder.cs
- ScrollableControl.cs
- XXXInfos.cs
- ClientScriptManager.cs
- CodeNamespaceImportCollection.cs
- PropertyEntry.cs
- SecurityTokenSpecification.cs
- StreamUpgradeProvider.cs
- DataGridViewTopLeftHeaderCell.cs
- FaultFormatter.cs
- JoinElimination.cs
- MessageBox.cs
- StylusDownEventArgs.cs
- WorkingDirectoryEditor.cs
- _ProxyChain.cs
- AccessDataSource.cs
- ReadOnlyDictionary.cs
- ClientType.cs
- SecurityTokenRequirement.cs
- DesignerActionService.cs
- BaseContextMenu.cs
- DataRowChangeEvent.cs
- DbDataAdapter.cs
- EntityDataSourceValidationException.cs
- XhtmlBasicLiteralTextAdapter.cs
- DoubleLinkList.cs
- CommonObjectSecurity.cs
- PlaceHolder.cs
- CodeDirectoryCompiler.cs
- TreeViewCancelEvent.cs
- CryptoConfig.cs
- EntityDataSourceState.cs
- ClientType.cs
- ValidationHelper.cs
- ComEventsHelper.cs
- EventProviderWriter.cs
- Rect3D.cs
- FixUpCollection.cs
- FlatButtonAppearance.cs
- DataViewManager.cs
- recordstatescratchpad.cs
- ElementAction.cs
- SqlCacheDependencyDatabase.cs
- CrossContextChannel.cs
- BamlResourceContent.cs
- ApplicationFileCodeDomTreeGenerator.cs
- CharacterShapingProperties.cs
- IssuanceTokenProviderBase.cs
- SimpleFileLog.cs
- ConnectionProviderAttribute.cs
- CustomTypeDescriptor.cs
- PersonalizablePropertyEntry.cs
- ProviderCollection.cs
- CLSCompliantAttribute.cs
- System.Data_BID.cs
- TreeView.cs
- NamedPipeTransportSecurityElement.cs
- Symbol.cs
- OleDbParameter.cs
- SafeCryptContextHandle.cs
- TemplateControlBuildProvider.cs
- ToolBarPanel.cs
- GridViewColumnCollectionChangedEventArgs.cs
- PathGeometry.cs
- HttpHeaderCollection.cs
- DataSetMappper.cs
- ModuleElement.cs
- EntityDataSourceEntitySetNameItem.cs
- MatrixAnimationUsingKeyFrames.cs
- EventPrivateKey.cs
- TypeDefinition.cs
- ParentControlDesigner.cs
- TablePatternIdentifiers.cs
- WebConfigurationHostFileChange.cs
- CachedBitmap.cs