Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.Activities / System / Activities / Runtime / BookmarkCallbackWrapper.cs / 1305376 / BookmarkCallbackWrapper.cs
//------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------------
namespace System.Activities.Runtime
{
using System;
using System.Runtime;
using System.Runtime.Serialization;
using System.Security;
[DataContract]
class BookmarkCallbackWrapper : CallbackWrapper
{
static Type bookmarkCallbackType = typeof(BookmarkCallback);
static Type[] bookmarkCallbackParameters = new Type[] { typeof(NativeActivityContext), typeof(Bookmark), typeof(object) };
public BookmarkCallbackWrapper(BookmarkCallback callback, ActivityInstance owningInstance)
: this(callback, owningInstance, BookmarkOptions.None)
{
}
public BookmarkCallbackWrapper(BookmarkCallback callback, ActivityInstance owningInstance, BookmarkOptions bookmarkOptions)
: base(callback, owningInstance)
{
Fx.Assert(callback != null || bookmarkOptions == BookmarkOptions.None, "Either we have a callback or we only allow SingleFire, Blocking bookmarks.");
this.Options = bookmarkOptions;
}
[DataMember(EmitDefaultValue = false)]
public BookmarkOptions Options
{
get;
private set;
}
[DataMember(EmitDefaultValue = false)]
public Bookmark Bookmark
{
get;
set;
}
public void Invoke(NativeActivityContext context, Bookmark bookmark, object value)
{
EnsureCallback(bookmarkCallbackType, bookmarkCallbackParameters);
BookmarkCallback bookmarkCallback = (BookmarkCallback)this.Callback;
bookmarkCallback(context, bookmark, value);
}
public ActivityExecutionWorkItem CreateWorkItem(ActivityExecutor executor, bool isExternal, Bookmark bookmark, object value)
{
if (this.IsCallbackNull)
{
return executor.CreateEmptyWorkItem(this.ActivityInstance);
}
else
{
return new BookmarkWorkItem(executor, isExternal, this, bookmark, value);
}
}
}
}
// 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
- DictionaryKeyPropertyAttribute.cs
- DataGridViewCellLinkedList.cs
- BitmapPalette.cs
- SiteMapNode.cs
- DateTimeParse.cs
- LoginName.cs
- TreeNodeClickEventArgs.cs
- Processor.cs
- SqlComparer.cs
- xamlnodes.cs
- WorkerRequest.cs
- InitializeCorrelation.cs
- RequestCachePolicyConverter.cs
- ParentUndoUnit.cs
- RoutingTable.cs
- MobileDeviceCapabilitiesSectionHandler.cs
- QuaternionAnimationUsingKeyFrames.cs
- TransformDescriptor.cs
- _AuthenticationState.cs
- UnknownWrapper.cs
- control.ime.cs
- LazyTextWriterCreator.cs
- HandlerMappingMemo.cs
- InvalidateEvent.cs
- DeferredSelectedIndexReference.cs
- wgx_sdk_version.cs
- QilXmlReader.cs
- GridViewColumnHeaderAutomationPeer.cs
- WithParamAction.cs
- SrgsSubset.cs
- Internal.cs
- ScrollViewer.cs
- ListViewGroup.cs
- CompiledQuery.cs
- KeyTime.cs
- XmlByteStreamReader.cs
- TextBox.cs
- BooleanAnimationUsingKeyFrames.cs
- CompositionTarget.cs
- ProfileGroupSettingsCollection.cs
- InvalidEnumArgumentException.cs
- DesignerOptionService.cs
- ToolStripDesignerUtils.cs
- FormsAuthenticationUserCollection.cs
- DebugHandleTracker.cs
- HeaderedContentControl.cs
- DataGridViewDataErrorEventArgs.cs
- HtmlSelect.cs
- MdiWindowListItemConverter.cs
- ClientConfigurationSystem.cs
- Documentation.cs
- WindowsGrip.cs
- XsdCachingReader.cs
- WebPartConnectionsCancelVerb.cs
- BindToObject.cs
- NativeObjectSecurity.cs
- CompiledAction.cs
- ManipulationStartingEventArgs.cs
- HttpCacheVaryByContentEncodings.cs
- VisualTransition.cs
- PrivacyNoticeElement.cs
- UiaCoreProviderApi.cs
- StringUtil.cs
- RTLAwareMessageBox.cs
- Rotation3DKeyFrameCollection.cs
- Canvas.cs
- TdsParameterSetter.cs
- ScriptManager.cs
- WindowsScroll.cs
- Util.cs
- OdbcParameter.cs
- PermissionRequestEvidence.cs
- DelegatedStream.cs
- ElapsedEventArgs.cs
- HandlerBase.cs
- WebBrowserNavigatingEventHandler.cs
- PageCodeDomTreeGenerator.cs
- X509CertificateCollection.cs
- WSHttpBindingBaseElement.cs
- RoutedEventHandlerInfo.cs
- DataGridViewToolTip.cs
- CodeMethodInvokeExpression.cs
- GridViewCancelEditEventArgs.cs
- RegistryHandle.cs
- ConnectionPointCookie.cs
- MatrixTransform3D.cs
- PropertyGeneratedEventArgs.cs
- ScheduleChanges.cs
- ProjectionCamera.cs
- MatrixTransform.cs
- RuleConditionDialog.cs
- PopupControlService.cs
- Int32Storage.cs
- TrustManagerMoreInformation.cs
- SpecialFolderEnumConverter.cs
- SlipBehavior.cs
- Int64Converter.cs
- GradientStopCollection.cs
- TextViewSelectionProcessor.cs
- MonthCalendar.cs