Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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
- RoleManagerSection.cs
- MimeObjectFactory.cs
- WhitespaceRuleReader.cs
- DbTransaction.cs
- DataControlExtensions.cs
- PrintingPermission.cs
- RSAPKCS1KeyExchangeDeformatter.cs
- SqlUdtInfo.cs
- ResetableIterator.cs
- SharedUtils.cs
- UIElement3D.cs
- PropertyMapper.cs
- ScrollItemPattern.cs
- Decoder.cs
- ReferencedAssembly.cs
- ReadOnlyAttribute.cs
- WebRequestModuleElement.cs
- AlignmentYValidation.cs
- RouteCollection.cs
- GroupBoxRenderer.cs
- Model3D.cs
- SegmentInfo.cs
- AdornerDecorator.cs
- BinaryObjectReader.cs
- ErrorFormatterPage.cs
- ObjectContext.cs
- ToolTipAutomationPeer.cs
- CompilerErrorCollection.cs
- ConfigDefinitionUpdates.cs
- RecordsAffectedEventArgs.cs
- X509Certificate2Collection.cs
- RowParagraph.cs
- WmlValidatorAdapter.cs
- ISSmlParser.cs
- ClientBuildManager.cs
- Sorting.cs
- HttpCacheVary.cs
- SchemaHelper.cs
- FontCacheLogic.cs
- PasswordDeriveBytes.cs
- TargetInvocationException.cs
- ParsedAttributeCollection.cs
- filewebrequest.cs
- XPathParser.cs
- SafeEventHandle.cs
- SecurityHeaderElementInferenceEngine.cs
- XmlBinaryWriterSession.cs
- XmlSchemaProviderAttribute.cs
- PropertyItemInternal.cs
- SqlDataSourceCommandEventArgs.cs
- TextTreePropertyUndoUnit.cs
- XmlSortKeyAccumulator.cs
- DesignerActionUIService.cs
- StartUpEventArgs.cs
- UnaryExpression.cs
- AssertUtility.cs
- SystemIPGlobalProperties.cs
- FrameworkTemplate.cs
- DBBindings.cs
- RegexStringValidator.cs
- XmlByteStreamWriter.cs
- ObjectViewEntityCollectionData.cs
- SaveCardRequest.cs
- CharacterMetricsDictionary.cs
- GrammarBuilderRuleRef.cs
- BrushValueSerializer.cs
- TreeNode.cs
- BinaryWriter.cs
- InfoCardArgumentException.cs
- AssertFilter.cs
- ListSourceHelper.cs
- BinaryFormatter.cs
- QueryStatement.cs
- AppModelKnownContentFactory.cs
- RadialGradientBrush.cs
- GlyphRunDrawing.cs
- BamlVersionHeader.cs
- SortExpressionBuilder.cs
- HighContrastHelper.cs
- DbgUtil.cs
- ColorAnimationUsingKeyFrames.cs
- TypeConstant.cs
- SeekStoryboard.cs
- JavascriptCallbackMessageInspector.cs
- BitmapMetadata.cs
- WebPartManagerInternals.cs
- DBConnectionString.cs
- EmissiveMaterial.cs
- DataGridColumnHeaderAutomationPeer.cs
- SqlConnection.cs
- ListViewItemCollectionEditor.cs
- HyperLinkStyle.cs
- DbConnectionInternal.cs
- HybridCollection.cs
- TypeReference.cs
- EventLogPermissionEntryCollection.cs
- PageThemeBuildProvider.cs
- TrackingProfileDeserializationException.cs
- Queue.cs
- Int32RectValueSerializer.cs