Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.Activities / System / Activities / Handle.cs / 1305376 / Handle.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.Activities { using System; using System.Runtime; using System.Runtime.Serialization; [DataContract] public abstract class Handle { [DataMember(EmitDefaultValue = false)] ActivityInstance owner; // We check uninitialized because it should be false more often [DataMember(EmitDefaultValue = false)] bool isUninitialized; protected Handle() { this.isUninitialized = true; } public ActivityInstance Owner { get { return this.owner; } } public string ExecutionPropertyName { get { return this.GetType().FullName; } } [DataMember(EmitDefaultValue = false)] internal bool CanBeRemovedWithExecutingChildren { get; set; } internal bool IsInitialized { get { return !this.isUninitialized; } } internal static string GetPropertyName(Type handleType) { Fx.Assert(TypeHelper.AreTypesCompatible(handleType, typeof(Handle)), "must pass in a Handle-based type here"); return handleType.FullName; } internal void Initialize(HandleInitializationContext context) { this.owner = context.OwningActivityInstance; this.isUninitialized = false; OnInitialize(context); } internal void Reinitialize(ActivityInstance owner) { this.owner = owner; } internal void Uninitialize(HandleInitializationContext context) { OnUninitialize(context); this.isUninitialized = true; } protected virtual void OnInitialize(HandleInitializationContext context) { } protected virtual void OnUninitialize(HandleInitializationContext context) { } protected void ThrowIfUninitialized() { if (this.isUninitialized) { throw FxTrace.Exception.AsError(new InvalidOperationException(SR.HandleNotInitialized)); } } } } // 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
- EntityDataSourceSelectingEventArgs.cs
- SystemIcons.cs
- XmlSchemaCollection.cs
- ReceiveDesigner.xaml.cs
- XsltArgumentList.cs
- TextComposition.cs
- XmlObjectSerializerWriteContext.cs
- X509Chain.cs
- OleDbConnectionFactory.cs
- XmlSchemaSubstitutionGroup.cs
- Base64Decoder.cs
- CustomWebEventKey.cs
- XmlComment.cs
- RecognitionResult.cs
- DataServiceProcessingPipeline.cs
- BaseTemplateBuildProvider.cs
- WaitForChangedResult.cs
- ManifestBasedResourceGroveler.cs
- XmlMapping.cs
- CodeExpressionCollection.cs
- MenuAutoFormat.cs
- Effect.cs
- TextCompositionManager.cs
- LinkUtilities.cs
- WSFederationHttpSecurity.cs
- XmlDataSource.cs
- SqlDataAdapter.cs
- Matrix.cs
- LeaseManager.cs
- QueryRewriter.cs
- MailHeaderInfo.cs
- StructuredTypeEmitter.cs
- LabelDesigner.cs
- SystemMulticastIPAddressInformation.cs
- CharacterMetricsDictionary.cs
- DocumentViewerAutomationPeer.cs
- IDataContractSurrogate.cs
- TransactionTable.cs
- CodeRegionDirective.cs
- MulticastNotSupportedException.cs
- DataChangedEventManager.cs
- DataGridViewColumnConverter.cs
- DataGridViewCellStyleEditor.cs
- ExceptionWrapper.cs
- MetadataArtifactLoaderCompositeFile.cs
- BaseDataListComponentEditor.cs
- SqlInternalConnection.cs
- Calendar.cs
- DynamicPropertyHolder.cs
- ResXBuildProvider.cs
- MonitoringDescriptionAttribute.cs
- CLSCompliantAttribute.cs
- Code.cs
- StylusPointPropertyUnit.cs
- TypedTableGenerator.cs
- WebPartEditorCancelVerb.cs
- RootDesignerSerializerAttribute.cs
- MailMessage.cs
- LineMetrics.cs
- NativeObjectSecurity.cs
- AspProxy.cs
- ListViewAutomationPeer.cs
- log.cs
- AssociatedControlConverter.cs
- Vector.cs
- x509store.cs
- UnknownWrapper.cs
- ToolStripItemImageRenderEventArgs.cs
- NamespaceInfo.cs
- LassoHelper.cs
- TreeNodeCollection.cs
- DataGridViewSelectedCellCollection.cs
- TreeNodeStyleCollection.cs
- IdentifierCollection.cs
- RefreshResponseInfo.cs
- Vector3DAnimationUsingKeyFrames.cs
- ArgumentNullException.cs
- FileRecordSequenceHelper.cs
- Parameter.cs
- WebEventCodes.cs
- UserPersonalizationStateInfo.cs
- ConditionalAttribute.cs
- FixedSOMTableCell.cs
- AddInEnvironment.cs
- FrameworkRichTextComposition.cs
- ActivityTypeDesigner.xaml.cs
- WeakRefEnumerator.cs
- DesignerSerializerAttribute.cs
- EnumerableRowCollection.cs
- PrivacyNoticeBindingElementImporter.cs
- _SafeNetHandles.cs
- ImageListImage.cs
- MimeParameter.cs
- StringStorage.cs
- AutomationPropertyInfo.cs
- TextBoxAutoCompleteSourceConverter.cs
- WpfPayload.cs
- Regex.cs
- RequestDescription.cs
- NativeMethods.cs