Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / 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; } } } }/// Resets the state of the enumeration. /// ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DataError.cs
- TypefaceCollection.cs
- TcpAppDomainProtocolHandler.cs
- HttpContext.cs
- CqlGenerator.cs
- _HeaderInfoTable.cs
- PlatformNotSupportedException.cs
- TextLineResult.cs
- HttpPostedFileBase.cs
- MgmtConfigurationRecord.cs
- UInt64Converter.cs
- FormViewCommandEventArgs.cs
- DataTableMapping.cs
- DataListItemEventArgs.cs
- Hash.cs
- WebPartManager.cs
- KeyInfo.cs
- ManagementEventArgs.cs
- Listen.cs
- X509Certificate2Collection.cs
- Shape.cs
- OptimalTextSource.cs
- TrackingLocation.cs
- LiteralControl.cs
- ObjectDataSourceEventArgs.cs
- OdbcFactory.cs
- PersistenceContext.cs
- PageAsyncTaskManager.cs
- AsymmetricAlgorithm.cs
- UpdateManifestForBrowserApplication.cs
- _NestedSingleAsyncResult.cs
- ToolStripSeparator.cs
- PenCursorManager.cs
- PageTheme.cs
- CaseInsensitiveOrdinalStringComparer.cs
- PageThemeBuildProvider.cs
- VectorCollectionConverter.cs
- AspNetSynchronizationContext.cs
- ResourceExpressionBuilder.cs
- HostingPreferredMapPath.cs
- Crc32Helper.cs
- StickyNoteAnnotations.cs
- TypeExtensionConverter.cs
- QueryStatement.cs
- XamlDesignerSerializationManager.cs
- PolyQuadraticBezierSegment.cs
- xml.cs
- DataGridViewSortCompareEventArgs.cs
- PerformanceCountersElement.cs
- ScriptResourceInfo.cs
- VisualStyleElement.cs
- _NegoState.cs
- ResourceAssociationSetEnd.cs
- DataGridCellsPresenter.cs
- SqlRowUpdatingEvent.cs
- AnnotationComponentManager.cs
- _DisconnectOverlappedAsyncResult.cs
- PerspectiveCamera.cs
- ProfileBuildProvider.cs
- StringToken.cs
- PenLineCapValidation.cs
- UserControl.cs
- EncoderFallback.cs
- NameTable.cs
- GatewayIPAddressInformationCollection.cs
- TextUtf8RawTextWriter.cs
- AmbiguousMatchException.cs
- RSAOAEPKeyExchangeFormatter.cs
- GeneralTransform.cs
- SecurityDescriptor.cs
- documentsequencetextcontainer.cs
- OdbcConnectionPoolProviderInfo.cs
- ResourceProviderFactory.cs
- ContentTextAutomationPeer.cs
- ResourceBinder.cs
- Error.cs
- ResourceContainer.cs
- SimpleNameService.cs
- Ref.cs
- TagMapInfo.cs
- XMLDiffLoader.cs
- TypeCodeDomSerializer.cs
- ContainerVisual.cs
- _WinHttpWebProxyDataBuilder.cs
- WebBrowserNavigatedEventHandler.cs
- C14NUtil.cs
- WebPartCloseVerb.cs
- OutputCacheSection.cs
- RowBinding.cs
- MultiDataTrigger.cs
- OptionUsage.cs
- TypeValidationEventArgs.cs
- BasicBrowserDialog.designer.cs
- Content.cs
- FixedPageProcessor.cs
- UIElementHelper.cs
- ToolStripMenuItemCodeDomSerializer.cs
- CodeDirectiveCollection.cs
- WebPartEditorOkVerb.cs
- WebPartConnection.cs