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
- XmlNodeChangedEventManager.cs
- FixedDSBuilder.cs
- QilReplaceVisitor.cs
- ConsumerConnectionPoint.cs
- SupportingTokenListenerFactory.cs
- MediaPlayer.cs
- SqlUtils.cs
- Compensate.cs
- SessionStateItemCollection.cs
- TimeSpanConverter.cs
- MenuItemStyleCollectionEditor.cs
- XpsResourcePolicy.cs
- ViewCellRelation.cs
- SafePointer.cs
- TextServicesLoader.cs
- ClientSettingsSection.cs
- TableDesigner.cs
- InternalsVisibleToAttribute.cs
- TextContainerChangedEventArgs.cs
- SplitContainer.cs
- NullableDoubleAverageAggregationOperator.cs
- DurationConverter.cs
- SHA384.cs
- DrawingCollection.cs
- TraceSection.cs
- SQLByte.cs
- StreamGeometryContext.cs
- SystemThemeKey.cs
- ActivityExecutorDelegateInfo.cs
- CodeSnippetExpression.cs
- HttpModuleCollection.cs
- OutputCacheModule.cs
- WorkflowPrinting.cs
- ParentUndoUnit.cs
- LayoutUtils.cs
- DataGridColumnCollection.cs
- AlignmentXValidation.cs
- WindowsRichEdit.cs
- AlphaSortedEnumConverter.cs
- CodeCatchClauseCollection.cs
- ReceiveDesigner.xaml.cs
- TypeCodeDomSerializer.cs
- VirtualizingPanel.cs
- UIHelper.cs
- TemplateField.cs
- HyperLinkDesigner.cs
- CqlParser.cs
- CacheMode.cs
- PasswordBoxAutomationPeer.cs
- PeerToPeerException.cs
- rsa.cs
- ParallelTimeline.cs
- OdbcFactory.cs
- RootProfilePropertySettingsCollection.cs
- DesignOnlyAttribute.cs
- StylusPointPropertyUnit.cs
- DesignerValidationSummaryAdapter.cs
- PositiveTimeSpanValidatorAttribute.cs
- DataGridViewColumnCollectionDialog.cs
- BufferedGraphicsContext.cs
- EmptyCollection.cs
- PriorityBinding.cs
- TemplateControl.cs
- SystemWebExtensionsSectionGroup.cs
- EmptyStringExpandableObjectConverter.cs
- SqlCommandBuilder.cs
- IIS7UserPrincipal.cs
- EntityDataSourceColumn.cs
- TextFormattingConverter.cs
- OracleBoolean.cs
- ControlParameter.cs
- AnnotationDocumentPaginator.cs
- EntityCommandDefinition.cs
- NameValueSectionHandler.cs
- MissingMethodException.cs
- LineBreakRecord.cs
- HyperLinkColumn.cs
- DataServiceException.cs
- WsdlWriter.cs
- _TLSstream.cs
- MultipleViewPatternIdentifiers.cs
- GenericXmlSecurityToken.cs
- StaticExtension.cs
- MeasurementDCInfo.cs
- ExpandedWrapper.cs
- EmptyEnumerable.cs
- TcpSocketManager.cs
- HebrewNumber.cs
- DropDownHolder.cs
- UITypeEditor.cs
- RemoteWebConfigurationHost.cs
- XmlSchemaParticle.cs
- Error.cs
- BamlTreeNode.cs
- CodeSnippetTypeMember.cs
- WebException.cs
- PerformanceCounter.cs
- basevalidator.cs
- DataObjectMethodAttribute.cs
- BackgroundWorker.cs