Code:
/ 4.0 / 4.0 / 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. /// ///// 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
- ContractBase.cs
- Scanner.cs
- InputDevice.cs
- LocalizableAttribute.cs
- OutputWindow.cs
- HostProtectionPermission.cs
- FloaterParaClient.cs
- UncommonField.cs
- XmlSchemaSimpleContentExtension.cs
- SettingsProperty.cs
- TextComposition.cs
- CompositeActivityDesigner.cs
- _SafeNetHandles.cs
- EventLogEntry.cs
- SoapSchemaExporter.cs
- ToolStripDropDownDesigner.cs
- DataListItemCollection.cs
- DrawingImage.cs
- ListDictionaryInternal.cs
- XmlDomTextWriter.cs
- _NegoState.cs
- DecimalConstantAttribute.cs
- ObjectDataSourceDisposingEventArgs.cs
- ScriptResourceHandler.cs
- GridItemPattern.cs
- SeverityFilter.cs
- DefaultTraceListener.cs
- TableAutomationPeer.cs
- ConcatQueryOperator.cs
- BaseResourcesBuildProvider.cs
- ExtendedPropertyCollection.cs
- SerializationIncompleteException.cs
- CorrelationKey.cs
- Accessible.cs
- IsolatedStorageFilePermission.cs
- OptimizerPatterns.cs
- ImageSource.cs
- RichTextBoxDesigner.cs
- ParallelActivityDesigner.cs
- CacheAxisQuery.cs
- VectorAnimationBase.cs
- ScrollProviderWrapper.cs
- XmlSchemaSimpleContentRestriction.cs
- Rotation3DKeyFrameCollection.cs
- HtmlGenericControl.cs
- ProtocolsConfiguration.cs
- SchemaNames.cs
- AppDomainManager.cs
- SpecularMaterial.cs
- SolidColorBrush.cs
- GridViewColumnCollectionChangedEventArgs.cs
- CodeSubDirectoriesCollection.cs
- BitConverter.cs
- CharacterMetrics.cs
- ParameterModifier.cs
- HybridObjectCache.cs
- ResXResourceSet.cs
- ClientBuildManager.cs
- TreeIterator.cs
- XmlElementCollection.cs
- ObjectMemberMapping.cs
- Roles.cs
- SmiGettersStream.cs
- PropertyDescriptorCollection.cs
- AutomationPatternInfo.cs
- DependencyProperty.cs
- X509ScopedServiceCertificateElementCollection.cs
- ViewStateModeByIdAttribute.cs
- XmlCharacterData.cs
- DataGridToolTip.cs
- EnumValAlphaComparer.cs
- InkCollectionBehavior.cs
- MultitargetingHelpers.cs
- FullTrustAssembliesSection.cs
- Pen.cs
- HMACSHA384.cs
- IgnoreDeviceFilterElement.cs
- XPathNodeIterator.cs
- ServerIdentity.cs
- LoginName.cs
- Html32TextWriter.cs
- GridView.cs
- WebPartConnectionsCancelEventArgs.cs
- MultiSelectRootGridEntry.cs
- TypographyProperties.cs
- TreeNodeCollection.cs
- HttpProfileBase.cs
- TypePresenter.xaml.cs
- DataSourceProvider.cs
- WindowsScrollBarBits.cs
- ContentHostHelper.cs
- FindProgressChangedEventArgs.cs
- ISessionStateStore.cs
- SafeArrayRankMismatchException.cs
- EnglishPluralizationService.cs
- TdsParserStateObject.cs
- HMAC.cs
- BoundColumn.cs
- RoleGroupCollection.cs
- EntityWithKeyStrategy.cs