Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.Activities / System / Activities / Tracking / TrackingRecord.cs / 1305376 / TrackingRecord.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.Activities.Tracking { using System; using System.Runtime; using System.Runtime.Serialization; using System.Diagnostics; using System.Collections.Generic; using System.Globalization; [Fx.Tag.XamlVisible(false)] [DataContract] public abstract class TrackingRecord { [DataMember(EmitDefaultValue = false)] IDictionaryannotations; static ReadOnlyDictionary readonlyEmptyAnnotations; protected TrackingRecord(Guid instanceId) { this.InstanceId = instanceId; this.EventTime = DateTime.UtcNow; this.Level = TraceLevel.Info; } protected TrackingRecord(Guid instanceId, long recordNumber) : this(instanceId) { this.RecordNumber = recordNumber; } protected TrackingRecord(TrackingRecord record) { this.InstanceId = record.InstanceId; this.RecordNumber = record.RecordNumber; this.EventTime = record.EventTime; this.Level = record.Level; if (record.HasAnnotations) { this.annotations = new ReadOnlyDictionary (record.annotations); } } [DataMember] public Guid InstanceId { get; internal set; } [DataMember] public long RecordNumber { get; internal set; } [DataMember] public DateTime EventTime { get; private set; } [DataMember] public TraceLevel Level { get; protected set; } public IDictionary Annotations { get { if (this.annotations == null) { this.annotations = ReadOnlyEmptyAnnotations; } return this.annotations; } internal set { Fx.Assert(value.IsReadOnly, "only readonly dictionary can be set for annotations"); this.annotations = value; } } static ReadOnlyDictionary ReadOnlyEmptyAnnotations { get { if (readonlyEmptyAnnotations == null) { readonlyEmptyAnnotations = new ReadOnlyDictionary (new Dictionary (0)); } return readonlyEmptyAnnotations; } } internal bool HasAnnotations { get { return (this.annotations != null && this.annotations.Count > 0); } } protected abstract internal TrackingRecord Clone(); public override string ToString() { return string.Format(CultureInfo.CurrentCulture, "InstanceId = {0}, RecordNumber = {1}, EventTime = {2}", this.InstanceId, this.RecordNumber, this.EventTime); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CompoundFileReference.cs
- HttpProcessUtility.cs
- HtmlInputSubmit.cs
- GraphicsContainer.cs
- KeyboardNavigation.cs
- XmlWrappingReader.cs
- GroupJoinQueryOperator.cs
- ServiceAuthorizationElement.cs
- SystemIPv4InterfaceProperties.cs
- MsmqBindingElementBase.cs
- BrowsableAttribute.cs
- DynamicField.cs
- RC2.cs
- SQLStringStorage.cs
- cookiecontainer.cs
- VisualBasicSettings.cs
- Control.cs
- ToolZone.cs
- DefaultClaimSet.cs
- DateTimeFormatInfoScanner.cs
- ApplicationFileParser.cs
- CodeDelegateInvokeExpression.cs
- Identity.cs
- oledbconnectionstring.cs
- PersonalizationStateInfo.cs
- DataSourceSelectArguments.cs
- IgnoreDataMemberAttribute.cs
- InkCanvasAutomationPeer.cs
- HeaderUtility.cs
- NativeMethods.cs
- Model3D.cs
- DefaultMemberAttribute.cs
- MethodResolver.cs
- ProxyHwnd.cs
- EdmPropertyAttribute.cs
- MethodRental.cs
- PowerStatus.cs
- CodeDOMProvider.cs
- WinFormsSecurity.cs
- CodeDirectionExpression.cs
- InkCanvasInnerCanvas.cs
- pingexception.cs
- SchemaNamespaceManager.cs
- SQLBinaryStorage.cs
- XmlSchemaSet.cs
- CommentGlyph.cs
- CachedBitmap.cs
- HtmlButton.cs
- TextViewSelectionProcessor.cs
- TypeInitializationException.cs
- SchemaEntity.cs
- DesignerCapabilities.cs
- InvokeAction.cs
- XmlSchemaObject.cs
- ParallelEnumerable.cs
- ObjectDataSourceSelectingEventArgs.cs
- DesignerSerializationOptionsAttribute.cs
- FileIOPermission.cs
- CodeConditionStatement.cs
- MemberInfoSerializationHolder.cs
- AssemblySettingAttributes.cs
- VersionPair.cs
- Italic.cs
- WebBrowserNavigatingEventHandler.cs
- Int32Collection.cs
- DeliveryStrategy.cs
- NotCondition.cs
- DataMemberAttribute.cs
- FormsAuthenticationUserCollection.cs
- EntityParameter.cs
- OrthographicCamera.cs
- Math.cs
- XmlSchemaAnnotated.cs
- TimerEventSubscription.cs
- DateTimeOffset.cs
- UnmanagedBitmapWrapper.cs
- WebPartHelpVerb.cs
- XomlCompilerHelpers.cs
- OleDbCommand.cs
- CompilerParameters.cs
- VSWCFServiceContractGenerator.cs
- DataKey.cs
- CodeDefaultValueExpression.cs
- ContainerFilterService.cs
- ProfileSection.cs
- ColorMap.cs
- ToolStripSplitButton.cs
- CodeValidator.cs
- TabPageDesigner.cs
- GeneratedView.cs
- VectorConverter.cs
- unitconverter.cs
- ContentTypeSettingDispatchMessageFormatter.cs
- ValidationHelper.cs
- InputProcessorProfiles.cs
- ServiceModelEnumValidatorAttribute.cs
- DragAssistanceManager.cs
- ToolStripDropDown.cs
- WorkflowRuntimeServiceElementCollection.cs
- VerbConverter.cs