Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ ///// Resets the state of the enumeration. /// ///// 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; } } } } // 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
- Operators.cs
- _SingleItemRequestCache.cs
- PointCollection.cs
- RecognizedWordUnit.cs
- ReachPageContentSerializer.cs
- BindingManagerDataErrorEventArgs.cs
- BaseTemplateCodeDomTreeGenerator.cs
- BaseTemplateParser.cs
- OdbcConnectionFactory.cs
- EntityDataSourceState.cs
- ChannelDispatcher.cs
- XslTransform.cs
- Sentence.cs
- ColumnMapCopier.cs
- PlainXmlSerializer.cs
- RtfNavigator.cs
- XmlJsonWriter.cs
- DoubleAnimationBase.cs
- UnmanagedHandle.cs
- TagPrefixCollection.cs
- MsmqInputChannelBase.cs
- StorageMappingFragment.cs
- StateDesigner.TransitionInfo.cs
- TypeConverterAttribute.cs
- InvalidPrinterException.cs
- DataGridViewTopLeftHeaderCell.cs
- AncestorChangedEventArgs.cs
- TextTreeUndo.cs
- FontWeight.cs
- TypeBuilder.cs
- RangeValueProviderWrapper.cs
- XmlNamespaceDeclarationsAttribute.cs
- DataSetUtil.cs
- SynchronizingStream.cs
- GPRECT.cs
- documentsequencetextcontainer.cs
- FixedSchema.cs
- HttpRawResponse.cs
- FatalException.cs
- CodeAttributeDeclarationCollection.cs
- ForwardPositionQuery.cs
- PeerContact.cs
- WebBrowserProgressChangedEventHandler.cs
- FrameworkTextComposition.cs
- SafeRightsManagementSessionHandle.cs
- Parallel.cs
- rsa.cs
- XmlSerializerOperationBehavior.cs
- EntityClassGenerator.cs
- JumpList.cs
- PerformanceCounterLib.cs
- MailDefinitionBodyFileNameEditor.cs
- ClrPerspective.cs
- ChoiceConverter.cs
- CustomValidator.cs
- Message.cs
- TextTreeText.cs
- IdentityNotMappedException.cs
- UntypedNullExpression.cs
- RectangleF.cs
- InternalControlCollection.cs
- EventSinkHelperWriter.cs
- IndexedEnumerable.cs
- NetSectionGroup.cs
- IdentityHolder.cs
- SQLGuidStorage.cs
- ListenerElementsCollection.cs
- SocketAddress.cs
- CSharpCodeProvider.cs
- OptionalMessageQuery.cs
- LinkGrep.cs
- AnnotationHelper.cs
- WebBrowserHelper.cs
- SharedPerformanceCounter.cs
- Models.cs
- ScrollViewer.cs
- RangeBase.cs
- ExpressionHelper.cs
- UseAttributeSetsAction.cs
- OperationInvokerTrace.cs
- HtmlPhoneCallAdapter.cs
- MetadataArtifactLoaderCompositeFile.cs
- GB18030Encoding.cs
- NamespaceImport.cs
- OrderedDictionary.cs
- safesecurityhelperavalon.cs
- ElementUtil.cs
- IDReferencePropertyAttribute.cs
- CodeMethodReturnStatement.cs
- Clause.cs
- StylusOverProperty.cs
- ScrollBar.cs
- AppSettingsExpressionBuilder.cs
- StorageInfo.cs
- SQLInt16Storage.cs
- panel.cs
- ObjectQueryState.cs
- ObjectConverter.cs
- DefaultBindingPropertyAttribute.cs
- RegexStringValidatorAttribute.cs