Code:
/ DotNET / DotNET / 8.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
- ToolStripPanelCell.cs
- TcpSocketManager.cs
- GlobalizationSection.cs
- FormViewActionList.cs
- GenericAuthenticationEventArgs.cs
- SRGSCompiler.cs
- SecurityMode.cs
- MultiTrigger.cs
- TextLineResult.cs
- GridEntry.cs
- Choices.cs
- Directory.cs
- UnionCqlBlock.cs
- ReferenceEqualityComparer.cs
- ExpanderAutomationPeer.cs
- SqlCacheDependencyDatabase.cs
- WebMessageEncodingElement.cs
- ActivityExecutionContextCollection.cs
- TriState.cs
- BitmapEffectInputConnector.cs
- PropertyItemInternal.cs
- NumericUpDownAccelerationCollection.cs
- SqlMetaData.cs
- ClientRoleProvider.cs
- columnmapkeybuilder.cs
- Encoding.cs
- DataGrid.cs
- odbcmetadatacollectionnames.cs
- QuotedPrintableStream.cs
- Point3DKeyFrameCollection.cs
- ServiceModelInstallComponent.cs
- XmlSchema.cs
- TypeUtil.cs
- UniqueIdentifierService.cs
- CellParagraph.cs
- PackagingUtilities.cs
- SyndicationDeserializer.cs
- SizeAnimation.cs
- AnnotationAdorner.cs
- XmlUrlEditor.cs
- RuleInfoComparer.cs
- DataGridClipboardHelper.cs
- CodeDirectiveCollection.cs
- TextTreeInsertElementUndoUnit.cs
- HashCryptoHandle.cs
- TextSimpleMarkerProperties.cs
- DataGridViewCellToolTipTextNeededEventArgs.cs
- NumberSubstitution.cs
- SchemaTypeEmitter.cs
- FontUnitConverter.cs
- BoolExpressionVisitors.cs
- SizeChangedEventArgs.cs
- Win32.cs
- MouseDevice.cs
- AutomationPatternInfo.cs
- BindingValueChangedEventArgs.cs
- TreeNode.cs
- DataGridCaption.cs
- UnknownBitmapEncoder.cs
- SerializationFieldInfo.cs
- HtmlControl.cs
- ICspAsymmetricAlgorithm.cs
- WorkflowRuntime.cs
- TriggerBase.cs
- Executor.cs
- UrlRoutingHandler.cs
- PrintEvent.cs
- DbMetaDataColumnNames.cs
- MenuBase.cs
- ToolStripStatusLabel.cs
- WebBrowserBase.cs
- WsatProxy.cs
- StateMachineSubscription.cs
- GridViewRow.cs
- BindingCompleteEventArgs.cs
- WorkflowRuntimeBehavior.cs
- MeshGeometry3D.cs
- DescendantQuery.cs
- ComplexTypeEmitter.cs
- Mutex.cs
- PerformanceCounterPermissionAttribute.cs
- SqlGenericUtil.cs
- HttpCapabilitiesEvaluator.cs
- SpStreamWrapper.cs
- SystemParameters.cs
- CanExecuteRoutedEventArgs.cs
- Point3DConverter.cs
- DataGridViewRowCollection.cs
- SvcMapFileLoader.cs
- UriTemplateCompoundPathSegment.cs
- Hashtable.cs
- IsolatedStoragePermission.cs
- ECDsa.cs
- SqlWebEventProvider.cs
- Int32CAMarshaler.cs
- StructuredTypeEmitter.cs
- NamespaceQuery.cs
- TableHeaderCell.cs
- TypedRowGenerator.cs
- ContainerFilterService.cs