Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / 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; } } } }/// Resets the state of the enumeration. /// ///
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- QueryStatement.cs
- MobileControl.cs
- SQLBinary.cs
- WebSysDescriptionAttribute.cs
- DesignSurfaceServiceContainer.cs
- RegexMatchCollection.cs
- ToolStripDropDownButton.cs
- dataSvcMapFileLoader.cs
- ReflectPropertyDescriptor.cs
- IndexedGlyphRun.cs
- ResourceContainer.cs
- WebPartManagerDesigner.cs
- NegotiationTokenAuthenticatorStateCache.cs
- LiteralControl.cs
- DataGridViewButtonCell.cs
- StaticContext.cs
- SafeCryptoHandles.cs
- RadioButtonPopupAdapter.cs
- SubpageParagraph.cs
- CapabilitiesAssignment.cs
- Double.cs
- KeyValueConfigurationElement.cs
- QuotedPrintableStream.cs
- DatagridviewDisplayedBandsData.cs
- IntSecurity.cs
- FlowNode.cs
- PasswordPropertyTextAttribute.cs
- PrivilegedConfigurationManager.cs
- DocumentViewerHelper.cs
- ISO2022Encoding.cs
- PageThemeCodeDomTreeGenerator.cs
- entityreference_tresulttype.cs
- ExtensibleClassFactory.cs
- DataControlLinkButton.cs
- RootNamespaceAttribute.cs
- DataGridViewBindingCompleteEventArgs.cs
- MenuItemCollection.cs
- EpmCustomContentSerializer.cs
- View.cs
- PreProcessor.cs
- InputBindingCollection.cs
- BooleanProjectedSlot.cs
- SafeFileHandle.cs
- ErrorFormatter.cs
- TcpProcessProtocolHandler.cs
- SqlClientFactory.cs
- BaseTemplatedMobileComponentEditor.cs
- WebServiceMethodData.cs
- HitTestWithGeometryDrawingContextWalker.cs
- Unit.cs
- CompilationLock.cs
- XmlNavigatorStack.cs
- SecureStringHasher.cs
- KeySpline.cs
- TextModifierScope.cs
- SQLMembershipProvider.cs
- PassportAuthenticationModule.cs
- ToolboxItemSnapLineBehavior.cs
- BooleanKeyFrameCollection.cs
- ValidationError.cs
- RemoteEndpointMessageProperty.cs
- MailDefinition.cs
- TcpAppDomainProtocolHandler.cs
- PropertyEmitterBase.cs
- HMACMD5.cs
- OdbcParameter.cs
- TimeoutException.cs
- Completion.cs
- CompoundFileIOPermission.cs
- DESCryptoServiceProvider.cs
- Light.cs
- CryptoStream.cs
- EpmContentSerializer.cs
- FormatterConverter.cs
- SqlParameterCollection.cs
- CacheEntry.cs
- BufferedGraphicsManager.cs
- ThemeDirectoryCompiler.cs
- grammarelement.cs
- StylusButton.cs
- ApplicationBuildProvider.cs
- Convert.cs
- MetabaseServerConfig.cs
- AuthenticationSection.cs
- ExceptionCollection.cs
- MimeBasePart.cs
- EmbeddedMailObjectCollectionEditor.cs
- Popup.cs
- SqlFormatter.cs
- MemoryFailPoint.cs
- TraceHandler.cs
- RtfFormatStack.cs
- QuotedStringFormatReader.cs
- XmlNavigatorStack.cs
- ObjectDataSourceDisposingEventArgs.cs
- SEHException.cs
- TargetException.cs
- StateMachineDesignerPaint.cs
- SmiMetaData.cs
- DataDocumentXPathNavigator.cs