Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Services / Monitoring / system / Diagnosticts / EventLogEntryCollection.cs / 1305376 / 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 EventLogInternal log; internal EventLogEntryCollection(EventLogInternal 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
- ReliableReplySessionChannel.cs
- SystemIPv4InterfaceProperties.cs
- TypeDelegator.cs
- StickyNoteAnnotations.cs
- WebPartConnectionsConfigureVerb.cs
- listviewsubitemcollectioneditor.cs
- SQLInt32.cs
- HexParser.cs
- PeerInvitationResponse.cs
- DataGridViewRowHeightInfoNeededEventArgs.cs
- DataGridViewCellFormattingEventArgs.cs
- WorkflowEventArgs.cs
- httpstaticobjectscollection.cs
- VectorConverter.cs
- PerformanceCounterManager.cs
- SettingsSection.cs
- XDeferredAxisSource.cs
- PersistNameAttribute.cs
- HitTestFilterBehavior.cs
- XmlSchemaInferenceException.cs
- Color.cs
- WS2007FederationHttpBinding.cs
- Subset.cs
- AdRotator.cs
- ReferentialConstraint.cs
- XmlRawWriterWrapper.cs
- InputReferenceExpression.cs
- RijndaelManagedTransform.cs
- AddInController.cs
- SoapIncludeAttribute.cs
- MobileListItemCollection.cs
- ChangeDirector.cs
- HashJoinQueryOperatorEnumerator.cs
- PackagingUtilities.cs
- RealizationDrawingContextWalker.cs
- SchemaManager.cs
- MouseBinding.cs
- DtcInterfaces.cs
- RoutedEventHandlerInfo.cs
- GridItemCollection.cs
- WebEvents.cs
- PermissionAttributes.cs
- UserControlCodeDomTreeGenerator.cs
- SecurityKeyIdentifierClause.cs
- ListViewHitTestInfo.cs
- SmtpSpecifiedPickupDirectoryElement.cs
- BlobPersonalizationState.cs
- Int64AnimationBase.cs
- XmlChildNodes.cs
- Cursors.cs
- ToolStrip.cs
- SafeEventHandle.cs
- GeometryCollection.cs
- Stack.cs
- FileUtil.cs
- CacheEntry.cs
- WorkflowApplicationUnhandledExceptionEventArgs.cs
- PathGradientBrush.cs
- WindowsBrush.cs
- CopyAction.cs
- MetadataPropertyCollection.cs
- GcSettings.cs
- WebPartDisplayModeEventArgs.cs
- ReadOnlyTernaryTree.cs
- SecurityChannelFactory.cs
- TextSegment.cs
- ListViewInsertionMark.cs
- MouseEvent.cs
- ButtonChrome.cs
- WorkerRequest.cs
- NullableLongAverageAggregationOperator.cs
- RayHitTestParameters.cs
- WebPartDisplayModeEventArgs.cs
- TreeViewEvent.cs
- Repeater.cs
- StatusBar.cs
- OracleInternalConnection.cs
- CatalogPart.cs
- TypeConverterValueSerializer.cs
- DesignerCommandAdapter.cs
- DiagnosticsElement.cs
- WebPartHelpVerb.cs
- _PooledStream.cs
- ObjectKeyFrameCollection.cs
- ComplexType.cs
- _HeaderInfo.cs
- EventMappingSettings.cs
- WebPageTraceListener.cs
- XmlLinkedNode.cs
- localization.cs
- ObjectViewListener.cs
- OdbcCommand.cs
- ProfileEventArgs.cs
- CryptoApi.cs
- WsatTransactionInfo.cs
- ChineseLunisolarCalendar.cs
- PerformanceCounterPermissionAttribute.cs
- ResourceBinder.cs
- HttpFileCollection.cs
- RotateTransform3D.cs