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
- DataPagerField.cs
- MLangCodePageEncoding.cs
- SystemTcpStatistics.cs
- DesignerCategoryAttribute.cs
- GridItem.cs
- EntityViewGenerator.cs
- SimpleExpression.cs
- SdlChannelSink.cs
- Int64Converter.cs
- SizeF.cs
- OleDbInfoMessageEvent.cs
- XamlReader.cs
- Section.cs
- SqlBuilder.cs
- ISFTagAndGuidCache.cs
- HtmlFormParameterReader.cs
- LayoutTableCell.cs
- LineServicesCallbacks.cs
- CodeMemberMethod.cs
- AssemblyNameProxy.cs
- RelatedImageListAttribute.cs
- DataFormat.cs
- SqlTriggerContext.cs
- ArraySegment.cs
- StrokeCollection2.cs
- ArglessEventHandlerProxy.cs
- LocatorBase.cs
- XmlSerializationGeneratedCode.cs
- ItemCheckedEvent.cs
- VScrollBar.cs
- DbProviderConfigurationHandler.cs
- DecimalAnimation.cs
- SizeAnimation.cs
- XmlFormatWriterGenerator.cs
- RsaSecurityKey.cs
- EntityDataSourceDesignerHelper.cs
- Pair.cs
- DeferredTextReference.cs
- StateMachine.cs
- ImageFormatConverter.cs
- Int32RectValueSerializer.cs
- UnsafeNetInfoNativeMethods.cs
- ListViewHitTestInfo.cs
- QueryOptionExpression.cs
- TransformGroup.cs
- DataGridViewSelectedColumnCollection.cs
- EventLogException.cs
- UriWriter.cs
- SwitchCase.cs
- AdPostCacheSubstitution.cs
- cookie.cs
- BindingNavigatorDesigner.cs
- Win32MouseDevice.cs
- ButtonFieldBase.cs
- TypedTableBase.cs
- ToolStripLocationCancelEventArgs.cs
- SelectionEditor.cs
- LinearGradientBrush.cs
- EventInfo.cs
- MSAAEventDispatcher.cs
- TreeNodeSelectionProcessor.cs
- ScrollChrome.cs
- SQLSingleStorage.cs
- EncryptedType.cs
- IPEndPoint.cs
- TypeBuilder.cs
- NativeMethodsOther.cs
- XsltInput.cs
- EpmHelper.cs
- DispatchWrapper.cs
- NameNode.cs
- FacetChecker.cs
- ConfigurationStrings.cs
- MouseCaptureWithinProperty.cs
- MSAAWinEventWrap.cs
- CatalogZoneBase.cs
- BuildProviderCollection.cs
- SizeF.cs
- PngBitmapDecoder.cs
- MultipleViewPatternIdentifiers.cs
- IQueryable.cs
- TextBlock.cs
- ExpressionBindings.cs
- EventData.cs
- GroupLabel.cs
- VerificationAttribute.cs
- SettingsPropertyValue.cs
- ObjectDataSourceMethodEventArgs.cs
- EncryptedReference.cs
- SecureConversationSecurityTokenParameters.cs
- ListControl.cs
- ProfileBuildProvider.cs
- DefaultValueMapping.cs
- SiteMap.cs
- ReadOnlyTernaryTree.cs
- GrowingArray.cs
- GPStream.cs
- returneventsaver.cs
- Fx.cs
- PropertyPathWorker.cs