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
- MessageDecoder.cs
- SizeConverter.cs
- ScopelessEnumAttribute.cs
- State.cs
- PrincipalPermissionMode.cs
- linebase.cs
- DiffuseMaterial.cs
- BamlCollectionHolder.cs
- loginstatus.cs
- FormatVersion.cs
- TimeSpanOrInfiniteValidator.cs
- View.cs
- Geometry3D.cs
- XPathConvert.cs
- TcpHostedTransportConfiguration.cs
- formatter.cs
- ClipboardData.cs
- ClientClassGenerator.cs
- DummyDataSource.cs
- NonSerializedAttribute.cs
- GPPOINT.cs
- BypassElementCollection.cs
- CustomErrorCollection.cs
- PropertyChangedEventManager.cs
- HtmlInputCheckBox.cs
- DataListAutoFormat.cs
- VarInfo.cs
- HtmlEncodedRawTextWriter.cs
- FieldMetadata.cs
- SpotLight.cs
- TextSpan.cs
- MSAANativeProvider.cs
- WCFServiceClientProxyGenerator.cs
- GenericQueueSurrogate.cs
- OpenTypeLayoutCache.cs
- cookiecollection.cs
- OleDbParameterCollection.cs
- FormViewPagerRow.cs
- UserMapPath.cs
- BuildProviderAppliesToAttribute.cs
- DbConnectionPoolGroupProviderInfo.cs
- PreProcessInputEventArgs.cs
- TextTrailingCharacterEllipsis.cs
- ValidationRuleCollection.cs
- NameScope.cs
- SoapClientProtocol.cs
- PopupControlService.cs
- OperatorExpressions.cs
- MessageDesigner.cs
- LocatorManager.cs
- XmlText.cs
- ExtentKey.cs
- WebPartVerbsEventArgs.cs
- RepeatInfo.cs
- MarkupExtensionReturnTypeAttribute.cs
- BufferedWebEventProvider.cs
- AccessDataSource.cs
- XmlSerializableReader.cs
- Math.cs
- Directory.cs
- QueryAccessibilityHelpEvent.cs
- TemplateControlParser.cs
- RegexGroupCollection.cs
- TextTrailingWordEllipsis.cs
- MultiPartWriter.cs
- FormConverter.cs
- OdbcTransaction.cs
- BindingMemberInfo.cs
- AnnotationResource.cs
- webeventbuffer.cs
- DataGridViewDataErrorEventArgs.cs
- RichTextBox.cs
- StackBuilderSink.cs
- ResourceReferenceExpression.cs
- StylusLogic.cs
- MouseActionValueSerializer.cs
- UITypeEditor.cs
- StandardOleMarshalObject.cs
- PaperSource.cs
- ScriptServiceAttribute.cs
- ServiceNameElementCollection.cs
- Metadata.cs
- CodeVariableReferenceExpression.cs
- LingerOption.cs
- MissingFieldException.cs
- ToolStripItemTextRenderEventArgs.cs
- MaskedTextProvider.cs
- TreeViewHitTestInfo.cs
- LayoutTableCell.cs
- WaitingCursor.cs
- EdmFunction.cs
- AssemblyFilter.cs
- GcSettings.cs
- Function.cs
- HwndSourceParameters.cs
- XmlChoiceIdentifierAttribute.cs
- DefaultWorkflowSchedulerService.cs
- AudioSignalProblemOccurredEventArgs.cs
- XamlToRtfParser.cs
- CharEnumerator.cs