Code:
/ 4.0 / 4.0 / untmp / 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. /// ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DefaultExpressionVisitor.cs
- CellPartitioner.cs
- EditingMode.cs
- XPathNavigatorKeyComparer.cs
- Zone.cs
- CustomValidator.cs
- XslAst.cs
- TextTabProperties.cs
- CalendarDay.cs
- MailDefinition.cs
- MultiDataTrigger.cs
- RuntimeConfigLKG.cs
- CodeDomConfigurationHandler.cs
- TypeNameConverter.cs
- PassportIdentity.cs
- OrderedDictionary.cs
- DropAnimation.xaml.cs
- CollectionViewProxy.cs
- FlowDecisionLabelFeature.cs
- ThreadExceptionDialog.cs
- XmlNodeChangedEventArgs.cs
- WindowsSpinner.cs
- UITypeEditor.cs
- XmlChildEnumerator.cs
- SinglePageViewer.cs
- DataGridViewCellCollection.cs
- ImageField.cs
- IOException.cs
- InternalControlCollection.cs
- NativeRecognizer.cs
- FakeModelItemImpl.cs
- XomlCompilerParameters.cs
- SimpleType.cs
- PriorityBindingExpression.cs
- FlowDocumentReaderAutomationPeer.cs
- DictionaryBase.cs
- Model3DGroup.cs
- FlowDocumentView.cs
- BitmapEffectGroup.cs
- SamlAttributeStatement.cs
- FixUpCollection.cs
- PrintPreviewControl.cs
- XPathDocument.cs
- Stream.cs
- ResourceReader.cs
- EmptyElement.cs
- WinCategoryAttribute.cs
- Quaternion.cs
- WebPartsPersonalization.cs
- TemplateField.cs
- AssociationEndMember.cs
- SystemIPGlobalProperties.cs
- Tokenizer.cs
- WebAdminConfigurationHelper.cs
- RelationshipFixer.cs
- LayoutManager.cs
- XPathNodeInfoAtom.cs
- ScriptingWebServicesSectionGroup.cs
- CurrentChangingEventArgs.cs
- ItemsControl.cs
- SqlBinder.cs
- MenuAdapter.cs
- FirewallWrapper.cs
- ZipIOBlockManager.cs
- DiagnosticsConfiguration.cs
- ExpressionBinding.cs
- Cursors.cs
- WorkflowInvoker.cs
- clipboard.cs
- BamlTreeNode.cs
- QilTernary.cs
- DTCTransactionManager.cs
- LogExtentCollection.cs
- CompositeDataBoundControl.cs
- ProcessHostFactoryHelper.cs
- IntAverageAggregationOperator.cs
- FormatterServices.cs
- DirectionalAction.cs
- CommonDialog.cs
- SharedUtils.cs
- Column.cs
- QueryStringParameter.cs
- smtpconnection.cs
- DataSourceGroupCollection.cs
- WindowsGraphics2.cs
- SemanticResultKey.cs
- AssemblyCollection.cs
- TraceUtils.cs
- ToolStripPanelRow.cs
- DataError.cs
- DataGridTableCollection.cs
- IPGlobalProperties.cs
- FormatterConverter.cs
- XmlSerializationReader.cs
- NotImplementedException.cs
- GlyphTypeface.cs
- PropertyPath.cs
- SettingsAttributes.cs
- FormatSettings.cs
- ChannelServices.cs