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
- WebPartDeleteVerb.cs
- ZipIORawDataFileBlock.cs
- MemberHolder.cs
- CustomDictionarySources.cs
- ObjectStateEntryDbUpdatableDataRecord.cs
- EncryptedPackage.cs
- ISO2022Encoding.cs
- FormsAuthenticationModule.cs
- SafeFileMappingHandle.cs
- ElementNotAvailableException.cs
- MsmqTransportReceiveParameters.cs
- ScriptControlManager.cs
- ProviderBase.cs
- XPathScanner.cs
- TypeSystemProvider.cs
- Errors.cs
- CssStyleCollection.cs
- OdbcDataAdapter.cs
- path.cs
- DateTimeConverter.cs
- LinkButton.cs
- CodeNamespaceImport.cs
- SID.cs
- InvokePattern.cs
- TextEditorContextMenu.cs
- HttpResponse.cs
- MobileControlDesigner.cs
- TraceData.cs
- HandlerBase.cs
- ProfileSettingsCollection.cs
- ApplicationId.cs
- StaticTextPointer.cs
- EventKeyword.cs
- ResourceManagerWrapper.cs
- GroupDescription.cs
- AspNetHostingPermission.cs
- Int64AnimationUsingKeyFrames.cs
- EntityProviderServices.cs
- DependsOnAttribute.cs
- DomainLiteralReader.cs
- GridViewRow.cs
- ExpandSegment.cs
- Viewport3DAutomationPeer.cs
- MaskedTextBoxTextEditorDropDown.cs
- DataSourceSelectArguments.cs
- ChangeInterceptorAttribute.cs
- counter.cs
- DataGridViewBand.cs
- RealProxy.cs
- WindowsListViewGroupHelper.cs
- behaviorssection.cs
- SafeRegistryHandle.cs
- FilterElement.cs
- HostingEnvironmentWrapper.cs
- RawKeyboardInputReport.cs
- TemplateKey.cs
- XmlSiteMapProvider.cs
- BuildProviderUtils.cs
- ProcessHostConfigUtils.cs
- ZipIORawDataFileBlock.cs
- ControlPersister.cs
- VirtualPath.cs
- FileRecordSequence.cs
- PageAdapter.cs
- ProxyWebPartConnectionCollection.cs
- DetailsViewPageEventArgs.cs
- RoleService.cs
- TraceHwndHost.cs
- ModelFunctionTypeElement.cs
- SessionEndingEventArgs.cs
- TypeUsageBuilder.cs
- RegexCharClass.cs
- StatusBarPanel.cs
- ProxyGenerationError.cs
- DefaultBinder.cs
- WithParamAction.cs
- InheritanceAttribute.cs
- ScalarRestriction.cs
- HtmlInputRadioButton.cs
- ChangeNode.cs
- SQLBinaryStorage.cs
- ToolStripContentPanel.cs
- UndirectedGraph.cs
- QueryExpr.cs
- AuthorizationRule.cs
- Decorator.cs
- SoapMessage.cs
- propertyentry.cs
- TableSectionStyle.cs
- VectorCollectionConverter.cs
- ConfigurationElementCollection.cs
- datacache.cs
- Site.cs
- DataBoundLiteralControl.cs
- ColorMap.cs
- TemplateBindingExpressionConverter.cs
- AgileSafeNativeMemoryHandle.cs
- WebPartCancelEventArgs.cs
- HttpCachePolicyElement.cs
- ServiceHttpModule.cs