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
- DBPropSet.cs
- PresentationSource.cs
- Keyboard.cs
- DropDownList.cs
- InkSerializer.cs
- TransactedReceiveScope.cs
- RangeBaseAutomationPeer.cs
- PageParser.cs
- UrlAuthFailedErrorFormatter.cs
- MethodCallConverter.cs
- WsatAdminException.cs
- SetStoryboardSpeedRatio.cs
- RemotingConfiguration.cs
- XmlObjectSerializerWriteContextComplex.cs
- SocketPermission.cs
- GrammarBuilderRuleRef.cs
- DateTimeFormatInfo.cs
- WindowsToolbarItemAsMenuItem.cs
- GPPOINTF.cs
- FileUtil.cs
- HtmlControlPersistable.cs
- HwndSource.cs
- TdsParserHelperClasses.cs
- DataGridTextBoxColumn.cs
- PartitionResolver.cs
- FormViewPagerRow.cs
- ConstructorArgumentAttribute.cs
- GetCertificateRequest.cs
- TreeIterators.cs
- HitTestWithPointDrawingContextWalker.cs
- XmlAttributeAttribute.cs
- Point3DConverter.cs
- MouseBinding.cs
- XhtmlTextWriter.cs
- XmlSubtreeReader.cs
- ZipIOLocalFileBlock.cs
- CapiNative.cs
- ServiceHostingEnvironmentSection.cs
- SafeHandles.cs
- BinarySerializer.cs
- PointHitTestResult.cs
- TemplateField.cs
- ExtendedPropertyCollection.cs
- SystemEvents.cs
- RTTypeWrapper.cs
- Evaluator.cs
- ColorMatrix.cs
- RegexParser.cs
- SchemaNames.cs
- SortExpressionBuilder.cs
- BrowserInteropHelper.cs
- FullTextState.cs
- FormsAuthenticationConfiguration.cs
- SmtpTransport.cs
- SchemaImporterExtensionElement.cs
- DSGeneratorProblem.cs
- CodeExpressionCollection.cs
- Delay.cs
- CompressEmulationStream.cs
- ObjectItemLoadingSessionData.cs
- PagerSettings.cs
- SubtreeProcessor.cs
- JournalEntry.cs
- MouseGestureConverter.cs
- HtmlInputHidden.cs
- MenuItemAutomationPeer.cs
- ImageIndexConverter.cs
- QilChoice.cs
- Completion.cs
- View.cs
- TreeNodeStyleCollectionEditor.cs
- TextViewBase.cs
- Message.cs
- BrowserCapabilitiesCodeGenerator.cs
- Visual3D.cs
- FrameworkContentElement.cs
- StructuredProperty.cs
- HtmlProps.cs
- CustomSignedXml.cs
- RenderDataDrawingContext.cs
- XmlNodeList.cs
- basecomparevalidator.cs
- AsymmetricKeyExchangeFormatter.cs
- XmlValueConverter.cs
- Focus.cs
- Byte.cs
- BitmapEffect.cs
- ParentUndoUnit.cs
- IgnoreFlushAndCloseStream.cs
- ILGenerator.cs
- PropertyTab.cs
- ToolboxItemWrapper.cs
- ItemMap.cs
- ControlBuilder.cs
- AttributeSetAction.cs
- DrawingDrawingContext.cs
- URI.cs
- XmlReaderSettings.cs
- WeakHashtable.cs
- ChildChangedEventArgs.cs