Imported Upstream version 4.0.0~alpha1

Former-commit-id: 806294f5ded97629b74c85c09952f2a74fe182d9
This commit is contained in:
Jo Shields
2015-04-07 09:35:12 +01:00
parent 283343f570
commit 3c1f479b9d
22469 changed files with 2931443 additions and 869343 deletions

View File

@@ -0,0 +1,65 @@
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Configuration;
using System.Runtime;
using System.Activities.Tracking;
using System.Diagnostics.CodeAnalysis;
[Fx.Tag.XamlVisible(false)]
public class ActivityScheduledQueryElement : TrackingQueryElement
{
ConfigurationPropertyCollection properties;
protected override ConfigurationPropertyCollection Properties
{
get
{
if (this.properties == null)
{
ConfigurationPropertyCollection properties = base.Properties;
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.ActivityName, typeof(System.String), "*", null, new System.Configuration.StringValidator(1, 2147483647, null), System.Configuration.ConfigurationPropertyOptions.IsKey));
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.ChildActivityName, typeof(System.String), "*", null, new System.Configuration.StringValidator(1, 2147483647, null), System.Configuration.ConfigurationPropertyOptions.IsKey));
this.properties = properties;
}
return this.properties;
}
}
[SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationValidatorAttributeRule,
MessageId = "System.ServiceModel.Activities.Tracking.Configuration.ActivityScheduledQueryElement.ChildActivityName",
Justification = "StringValidator verifies minimum size")]
[ConfigurationProperty(TrackingConfigurationStrings.ActivityName, IsKey = true,
DefaultValue = TrackingConfigurationStrings.StarWildcard)]
[StringValidator(MinLength = 1)]
public string ActivityName
{
get { return (string)base[TrackingConfigurationStrings.ActivityName]; }
set { base[TrackingConfigurationStrings.ActivityName] = value; }
}
[SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationValidatorAttributeRule,
MessageId = "System.ServiceModel.Activities.Tracking.Configuration.ActivityScheduledQueryElement.ChildActivityName",
Justification = "StringValidator verifies minimum size")]
[ConfigurationProperty(TrackingConfigurationStrings.ChildActivityName, IsKey = true,
DefaultValue = TrackingConfigurationStrings.StarWildcard)]
[StringValidator(MinLength = 1)]
public string ChildActivityName
{
get { return (string)base[TrackingConfigurationStrings.ChildActivityName]; }
set { base[TrackingConfigurationStrings.ChildActivityName] = value; }
}
protected override TrackingQuery NewTrackingQuery()
{
return new ActivityScheduledQuery
{
ActivityName = this.ActivityName,
ChildActivityName = this.ChildActivityName
};
}
}
}

View File

@@ -0,0 +1,21 @@
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Runtime;
using System.Configuration;
[Fx.Tag.XamlVisible(false)]
[ConfigurationCollection(typeof(ActivityScheduledQueryElement),
CollectionType = ConfigurationElementCollectionType.BasicMap,
AddItemName = TrackingConfigurationStrings.ActivityScheduledQuery)]
public class ActivityScheduledQueryElementCollection : TrackingConfigurationCollection<ActivityScheduledQueryElement>
{
protected override string ElementName
{
get { return TrackingConfigurationStrings.ActivityScheduledQuery; }
}
}
}

View File

@@ -0,0 +1,95 @@
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Configuration;
using System.Runtime;
using System.Activities.Tracking;
using System.Diagnostics.CodeAnalysis;
[Fx.Tag.XamlVisible(false)]
public class ActivityStateQueryElement : TrackingQueryElement
{
ConfigurationPropertyCollection properties;
protected override ConfigurationPropertyCollection Properties
{
get
{
if (this.properties == null)
{
ConfigurationPropertyCollection properties = base.Properties;
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.ActivityName, typeof(System.String), "*", null, new System.Configuration.StringValidator(1, 2147483647, null), System.Configuration.ConfigurationPropertyOptions.IsKey));
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.States, typeof(System.ServiceModel.Activities.Tracking.Configuration.StateElementCollection), null, null, null, System.Configuration.ConfigurationPropertyOptions.None));
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.VariableQueries, typeof(System.ServiceModel.Activities.Tracking.Configuration.VariableElementCollection), null, null, null, System.Configuration.ConfigurationPropertyOptions.None));
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.ArgumentQueries, typeof(System.ServiceModel.Activities.Tracking.Configuration.ArgumentElementCollection), null, null, null, System.Configuration.ConfigurationPropertyOptions.None));
this.properties = properties;
}
return this.properties;
}
}
[SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationValidatorAttributeRule,
MessageId = "System.ServiceModel.Activities.Tracking.Configuration.ActivityQueryElementBase.ActivityName",
Justification = "StringValidator verifies minimum size")]
[ConfigurationProperty(TrackingConfigurationStrings.ActivityName, IsKey = true,
DefaultValue = TrackingConfigurationStrings.StarWildcard)]
[StringValidator(MinLength = 1)]
public string ActivityName
{
get { return (string)base[TrackingConfigurationStrings.ActivityName]; }
set { base[TrackingConfigurationStrings.ActivityName] = value; }
}
[ConfigurationProperty(TrackingConfigurationStrings.States)]
public StateElementCollection States
{
get { return (StateElementCollection)base[TrackingConfigurationStrings.States]; }
}
[ConfigurationProperty(TrackingConfigurationStrings.VariableQueries)]
public VariableElementCollection Variables
{
get
{
return (VariableElementCollection)base[TrackingConfigurationStrings.VariableQueries];
}
}
[ConfigurationProperty(TrackingConfigurationStrings.ArgumentQueries)]
public ArgumentElementCollection Arguments
{
get
{
return (ArgumentElementCollection)base[TrackingConfigurationStrings.ArgumentQueries];
}
}
protected override TrackingQuery NewTrackingQuery()
{
ActivityStateQuery query = new ActivityStateQuery()
{
ActivityName = this.ActivityName
};
foreach (StateElement stateElement in this.States)
{
query.States.Add(stateElement.Name);
}
foreach (VariableElement variableQueryElement in this.Variables)
{
query.Variables.Add(variableQueryElement.Name);
}
foreach (ArgumentElement argumentQueryElement in this.Arguments)
{
query.Arguments.Add(argumentQueryElement.Name);
}
return query;
}
}
}

View File

@@ -0,0 +1,21 @@
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Runtime;
using System.Configuration;
[Fx.Tag.XamlVisible(false)]
[ConfigurationCollection(typeof(ActivityStateQueryElement),
CollectionType = ConfigurationElementCollectionType.BasicMap,
AddItemName = TrackingConfigurationStrings.ActivityQuery)]
public class ActivityStateQueryElementCollection : TrackingConfigurationCollection<ActivityStateQueryElement>
{
protected override string ElementName
{
get { return TrackingConfigurationStrings.ActivityQuery; }
}
}
}

View File

@@ -0,0 +1,60 @@
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Configuration;
using System.Runtime;
using System.Diagnostics.CodeAnalysis;
[Fx.Tag.XamlVisible(false)]
public class AnnotationElement : TrackingConfigurationElement
{
ConfigurationPropertyCollection properties;
protected override ConfigurationPropertyCollection Properties
{
get
{
if (this.properties == null)
{
ConfigurationPropertyCollection properties = new ConfigurationPropertyCollection();
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.Name, typeof(System.String), string.Empty, null, new System.Configuration.StringValidator(0, 2147483647, null), System.Configuration.ConfigurationPropertyOptions.IsRequired | System.Configuration.ConfigurationPropertyOptions.IsKey));
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.Value, typeof(System.String), string.Empty, null, new System.Configuration.StringValidator(0, 2147483647, null), System.Configuration.ConfigurationPropertyOptions.IsRequired));
this.properties = properties;
}
return this.properties;
}
}
[SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationPropertyAttributeRule,
Justification = "This property is defined by the base class to compute unique key.")]
public override object ElementKey
{
get { return this.Name; }
}
[ConfigurationProperty(TrackingConfigurationStrings.Name, IsKey = true, IsRequired = true)]
[StringValidator(MinLength = 0)]
[SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationValidatorAttributeRule,
MessageId = "System.ServiceModel.Activities.Tracking.Configuration.AnnotationElement.Name",
Justification = "StringValidator verifies minimum size")]
public string Name
{
get { return (string)base[TrackingConfigurationStrings.Name]; }
set { base[TrackingConfigurationStrings.Name] = value; }
}
[ConfigurationProperty(TrackingConfigurationStrings.Value, IsRequired = true)]
[StringValidator(MinLength = 0)]
[SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationValidatorAttributeRule,
MessageId = "System.ServiceModel.Activities.Tracking.Configuration.AnnotationElement.Value",
Justification = "StringValidator verifies minimum size")]
public string Value
{
get { return (string)base[TrackingConfigurationStrings.Value]; }
set { base[TrackingConfigurationStrings.Value] = value; }
}
}
}

View File

@@ -0,0 +1,21 @@
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Runtime;
using System.Configuration;
[Fx.Tag.XamlVisible(false)]
[ConfigurationCollection(typeof(AnnotationElement),
CollectionType = ConfigurationElementCollectionType.BasicMap,
AddItemName = TrackingConfigurationStrings.Annotation)]
public class AnnotationElementCollection : TrackingConfigurationCollection<AnnotationElement>
{
protected override string ElementName
{
get { return TrackingConfigurationStrings.Annotation; }
}
}
}

View File

@@ -0,0 +1,49 @@
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Configuration;
using System.Activities.Tracking;
using System.Runtime;
using System.Diagnostics.CodeAnalysis;
[Fx.Tag.XamlVisible(false)]
public class ArgumentElement : TrackingConfigurationElement
{
ConfigurationPropertyCollection properties;
protected override ConfigurationPropertyCollection Properties
{
get
{
if (this.properties == null)
{
ConfigurationPropertyCollection properties = new ConfigurationPropertyCollection();
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.Name, typeof(System.String), string.Empty, null, new System.Configuration.StringValidator(0, 2147483647, null), System.Configuration.ConfigurationPropertyOptions.IsRequired | System.Configuration.ConfigurationPropertyOptions.IsKey));
this.properties = properties;
}
return this.properties;
}
}
[SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationPropertyAttributeRule,
Justification = "This property is defined by the base class to compute unique key.")]
public override object ElementKey
{
get { return this.Name; }
}
[ConfigurationProperty(TrackingConfigurationStrings.Name, IsKey = true, IsRequired = true)]
[StringValidator(MinLength = 0)]
[SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationValidatorAttributeRule,
MessageId = "System.ServiceModel.Activities.Tracking.Configuration.ArgumentElement.Name",
Justification = "StringValidator verifies minimum size")]
public string Name
{
get { return (string)base[TrackingConfigurationStrings.Name]; }
set { base[TrackingConfigurationStrings.Name] = value; }
}
}
}

View File

@@ -0,0 +1,21 @@
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Runtime;
using System.Configuration;
[Fx.Tag.XamlVisible(false)]
[ConfigurationCollection(typeof(ArgumentElement),
CollectionType = ConfigurationElementCollectionType.BasicMap,
AddItemName = TrackingConfigurationStrings.ArgumentQuery)]
public class ArgumentElementCollection : TrackingConfigurationCollection<ArgumentElement>
{
protected override string ElementName
{
get { return TrackingConfigurationStrings.ArgumentQuery; }
}
}
}

View File

@@ -0,0 +1,51 @@
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Configuration;
using System.Runtime;
using System.Activities.Tracking;
using System.Diagnostics.CodeAnalysis;
[Fx.Tag.XamlVisible(false)]
public class BookmarkResumptionQueryElement : TrackingQueryElement
{
ConfigurationPropertyCollection properties;
protected override ConfigurationPropertyCollection Properties
{
get
{
if (this.properties == null)
{
ConfigurationPropertyCollection properties = base.Properties;
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.Name, typeof(System.String), "*", null, new System.Configuration.StringValidator(0, 2147483647, null), System.Configuration.ConfigurationPropertyOptions.IsKey));
this.properties = properties;
}
return this.properties;
}
}
[ConfigurationProperty(TrackingConfigurationStrings.Name, IsKey = true,
DefaultValue = TrackingConfigurationStrings.StarWildcard)]
[StringValidator(MinLength = 0)]
[SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationValidatorAttributeRule,
MessageId = "System.ServiceModel.Activities.Tracking.Configuration.BookmarkResumptionQueryElement.Name",
Justification = "StringValidator verifies minimum size")]
public string Name
{
get { return (string)base[TrackingConfigurationStrings.Name]; }
set { base[TrackingConfigurationStrings.Name] = value; }
}
protected override TrackingQuery NewTrackingQuery()
{
return new BookmarkResumptionQuery
{
Name = this.Name
};
}
}
}

View File

@@ -0,0 +1,21 @@
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Runtime;
using System.Configuration;
[Fx.Tag.XamlVisible(false)]
[ConfigurationCollection(typeof(BookmarkResumptionQueryElement),
CollectionType = ConfigurationElementCollectionType.BasicMap,
AddItemName = TrackingConfigurationStrings.BookmarkResumptionQuery)]
public class BookmarkResumptionQueryElementCollection : TrackingConfigurationCollection<BookmarkResumptionQueryElement>
{
protected override string ElementName
{
get { return TrackingConfigurationStrings.BookmarkResumptionQuery; }
}
}
}

View File

@@ -0,0 +1,65 @@
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Configuration;
using System.Runtime;
using System.Activities.Tracking;
using System.Diagnostics.CodeAnalysis;
[Fx.Tag.XamlVisible(false)]
public class CancelRequestedQueryElement : TrackingQueryElement
{
ConfigurationPropertyCollection properties;
protected override ConfigurationPropertyCollection Properties
{
get
{
if (this.properties == null)
{
ConfigurationPropertyCollection properties = base.Properties;
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.ActivityName, typeof(System.String), "*", null, new System.Configuration.StringValidator(1, 2147483647, null), System.Configuration.ConfigurationPropertyOptions.IsKey));
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.ChildActivityName, typeof(System.String), "*", null, new System.Configuration.StringValidator(1, 2147483647, null), System.Configuration.ConfigurationPropertyOptions.None));
this.properties = properties;
}
return this.properties;
}
}
[SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationValidatorAttributeRule,
MessageId = "System.ServiceModel.Activities.Tracking.Configuration.ActivityScheduledQueryElement.ChildActivityName",
Justification = "StringValidator verifies minimum size")]
[ConfigurationProperty(TrackingConfigurationStrings.ActivityName, IsKey = true,
DefaultValue = TrackingConfigurationStrings.StarWildcard)]
[StringValidator(MinLength = 1)]
public string ActivityName
{
get { return (string)base[TrackingConfigurationStrings.ActivityName]; }
set { base[TrackingConfigurationStrings.ActivityName] = value; }
}
[ConfigurationProperty(TrackingConfigurationStrings.ChildActivityName,
DefaultValue = TrackingConfigurationStrings.StarWildcard)]
[SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationValidatorAttributeRule,
MessageId = "System.ServiceModel.Activities.Tracking.Configuration.CancelRequestedQueryElement.ChildActivityName",
Justification = "StringValidator verifies minimum size")]
[StringValidator(MinLength = 1)]
public string ChildActivityName
{
get { return (string)base[TrackingConfigurationStrings.ChildActivityName]; }
set { base[TrackingConfigurationStrings.ChildActivityName] = value; }
}
protected override TrackingQuery NewTrackingQuery()
{
return new CancelRequestedQuery
{
ActivityName = this.ActivityName,
ChildActivityName = this.ChildActivityName
};
}
}
}

View File

@@ -0,0 +1,21 @@
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Runtime;
using System.Configuration;
[Fx.Tag.XamlVisible(false)]
[ConfigurationCollection(typeof(CancelRequestedQueryElement),
CollectionType = ConfigurationElementCollectionType.BasicMap,
AddItemName = TrackingConfigurationStrings.CancelRequestedQuery)]
public class CancelRequestedQueryElementCollection : TrackingConfigurationCollection<CancelRequestedQueryElement>
{
protected override string ElementName
{
get { return TrackingConfigurationStrings.CancelRequestedQuery; }
}
}
}

View File

@@ -0,0 +1,65 @@
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Configuration;
using System.Runtime;
using System.Activities.Tracking;
using System.Diagnostics.CodeAnalysis;
[Fx.Tag.XamlVisible(false)]
public class CustomTrackingQueryElement : TrackingQueryElement
{
ConfigurationPropertyCollection properties;
protected override ConfigurationPropertyCollection Properties
{
get
{
if (this.properties == null)
{
ConfigurationPropertyCollection properties = base.Properties;
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.Name, typeof(System.String), "*", null, new System.Configuration.StringValidator(0, 2147483647, null), System.Configuration.ConfigurationPropertyOptions.IsKey));
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.ActivityName, typeof(System.String), "*", null, new System.Configuration.StringValidator(1, 2147483647, null), System.Configuration.ConfigurationPropertyOptions.IsKey));
this.properties = properties;
}
return this.properties;
}
}
[ConfigurationProperty(TrackingConfigurationStrings.Name, IsKey = true,
DefaultValue = TrackingConfigurationStrings.StarWildcard)]
[StringValidator(MinLength = 0)]
[SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationValidatorAttributeRule,
MessageId = "System.ServiceModel.Activities.Tracking.Configuration.UserTrackingQueryElement.Name",
Justification = "StringValidator verifies minimum size")]
public string Name
{
get { return (string)base[TrackingConfigurationStrings.Name]; }
set { base[TrackingConfigurationStrings.Name] = value; }
}
[ConfigurationProperty(TrackingConfigurationStrings.ActivityName, IsKey = true,
DefaultValue = TrackingConfigurationStrings.StarWildcard)]
[StringValidator(MinLength = 1)]
[SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationValidatorAttributeRule,
MessageId = "System.ServiceModel.Activities.Tracking.Configuration.UserTrackingQueryElement.ActivityName",
Justification = "StringValidator verifies minimum size")]
public string ActivityName
{
get { return (string)base[TrackingConfigurationStrings.ActivityName]; }
set { base[TrackingConfigurationStrings.ActivityName] = value; }
}
protected override TrackingQuery NewTrackingQuery()
{
return new CustomTrackingQuery
{
Name = this.Name,
ActivityName = this.ActivityName
};
}
}
}

View File

@@ -0,0 +1,21 @@
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Runtime;
using System.Configuration;
[Fx.Tag.XamlVisible(false)]
[ConfigurationCollection(typeof(CustomTrackingQueryElement),
CollectionType = ConfigurationElementCollectionType.BasicMap,
AddItemName = TrackingConfigurationStrings.CustomTrackingQuery)]
public class CustomTrackingQueryElementCollection : TrackingConfigurationCollection<CustomTrackingQueryElement>
{
protected override string ElementName
{
get { return TrackingConfigurationStrings.CustomTrackingQuery; }
}
}
}

View File

@@ -0,0 +1,67 @@
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Configuration;
using System.Runtime;
using System.Activities.Tracking;
using System.Diagnostics.CodeAnalysis;
[Fx.Tag.XamlVisible(false)]
public class FaultPropagationQueryElement : TrackingQueryElement
{
ConfigurationPropertyCollection properties;
protected override ConfigurationPropertyCollection Properties
{
get
{
if (this.properties == null)
{
ConfigurationPropertyCollection properties = base.Properties;
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.FaultSourceActivityName, typeof(System.String), "*", null, new System.Configuration.StringValidator(1, 2147483647, null), System.Configuration.ConfigurationPropertyOptions.IsKey));
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.FaultHandlerActivityName, typeof(System.String), "*", null, new System.Configuration.StringValidator(1, 2147483647, null), System.Configuration.ConfigurationPropertyOptions.IsKey));
this.properties = properties;
}
return this.properties;
}
}
[SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationValidatorAttributeRule,
MessageId = "System.ServiceModel.Activities.Tracking.Configuration.ActivityScheduledQueryElement.ChildActivityName",
Justification = "StringValidator verifies minimum size")]
[ConfigurationProperty(TrackingConfigurationStrings.FaultSourceActivityName, IsKey = true,
DefaultValue = TrackingConfigurationStrings.StarWildcard)]
[StringValidator(MinLength = 1)]
public string FaultSourceActivityName
{
get { return (string)base[TrackingConfigurationStrings.FaultSourceActivityName]; }
set { base[TrackingConfigurationStrings.FaultSourceActivityName] = value; }
}
[ConfigurationProperty(TrackingConfigurationStrings.FaultHandlerActivityName, IsKey = true,
DefaultValue = TrackingConfigurationStrings.StarWildcard)]
[StringValidator(MinLength = 1)]
[SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationValidatorAttributeRule,
MessageId = "System.ServiceModel.Activities.Tracking.Configuration.FaultPropagationQueryElement.FaultHandlerActivityName",
Justification = "StringValidator verifies minimum size")]
public string FaultHandlerActivityName
{
get { return (string)base[TrackingConfigurationStrings.FaultHandlerActivityName]; }
set { base[TrackingConfigurationStrings.FaultHandlerActivityName] = value; }
}
protected override TrackingQuery NewTrackingQuery()
{
FaultPropagationQuery query = new FaultPropagationQuery
{
FaultSourceActivityName = this.FaultSourceActivityName,
FaultHandlerActivityName = this.FaultHandlerActivityName
};
return query;
}
}
}

View File

@@ -0,0 +1,21 @@
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Runtime;
using System.Configuration;
[Fx.Tag.XamlVisible(false)]
[ConfigurationCollection(typeof(FaultPropagationQueryElement),
CollectionType = ConfigurationElementCollectionType.BasicMap,
AddItemName = TrackingConfigurationStrings.FaultPropagationQuery)]
public class FaultPropagationQueryElementCollection : TrackingConfigurationCollection<FaultPropagationQueryElement>
{
protected override string ElementName
{
get { return TrackingConfigurationStrings.FaultPropagationQuery; }
}
}
}

View File

@@ -0,0 +1,17 @@
//------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Activities.Tracking;
static class ImplementationVisibilityHelper
{
public static bool IsDefined(ImplementationVisibility value)
{
return value == ImplementationVisibility.All || value == ImplementationVisibility.RootScope;
}
}
}

View File

@@ -0,0 +1,70 @@
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Configuration;
using System.Runtime;
using System.Diagnostics.CodeAnalysis;
using System.ServiceModel.Configuration;
using System.Activities.Tracking;
using System.ServiceModel.Activities.Configuration;
[Fx.Tag.XamlVisible(false)]
public class ProfileElement : TrackingConfigurationElement
{
ConfigurationPropertyCollection properties;
protected override ConfigurationPropertyCollection Properties
{
get
{
if (this.properties == null)
{
ConfigurationPropertyCollection properties = new ConfigurationPropertyCollection();
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.Name, typeof(System.String), string.Empty, null, new System.Configuration.StringValidator(0, 2147483647, null), System.Configuration.ConfigurationPropertyOptions.IsRequired | System.Configuration.ConfigurationPropertyOptions.IsKey));
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.ImplementationVisibility, typeof(System.Activities.Tracking.ImplementationVisibility), System.Activities.Tracking.ImplementationVisibility.RootScope, null, new System.ServiceModel.Activities.Configuration.ServiceModelActivitiesEnumValidator(typeof(System.ServiceModel.Activities.Tracking.Configuration.ImplementationVisibilityHelper)), System.Configuration.ConfigurationPropertyOptions.None));
properties.Add(new ConfigurationProperty("", typeof(System.ServiceModel.Activities.Tracking.Configuration.ProfileWorkflowElementCollection), null, null, null, System.Configuration.ConfigurationPropertyOptions.IsDefaultCollection));
this.properties = properties;
}
return this.properties;
}
}
[SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationPropertyAttributeRule,
Justification = "This property is defined by the base class to compute unique key.")]
public override object ElementKey
{
get { return this.Name; }
}
[ConfigurationProperty(TrackingConfigurationStrings.Name, IsKey = true, IsRequired = true)]
[StringValidator(MinLength = 0)]
[SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationValidatorAttributeRule,
MessageId = "System.ServiceModel.Activities.Tracking.Configuration.ProfileElement.Name",
Justification = "StringValidator verifies minimum size")]
public string Name
{
get { return (string)base[TrackingConfigurationStrings.Name]; }
set { base[TrackingConfigurationStrings.Name] = value; }
}
[ConfigurationProperty(TrackingConfigurationStrings.ImplementationVisibility, DefaultValue = ImplementationVisibility.RootScope)]
[ServiceModelActivitiesEnumValidator(typeof(ImplementationVisibilityHelper))]
public ImplementationVisibility ImplementationVisibility
{
get { return (ImplementationVisibility)base[TrackingConfigurationStrings.ImplementationVisibility]; }
set { base[TrackingConfigurationStrings.ImplementationVisibility] = value; }
}
[ConfigurationProperty("", IsDefaultCollection = true)]
public ProfileWorkflowElementCollection Workflows
{
get
{
return (ProfileWorkflowElementCollection)base[""];
}
}
}
}

View File

@@ -0,0 +1,30 @@
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Configuration;
using System.Runtime;
[ConfigurationCollection(typeof(ProfileElement),
AddItemName = TrackingConfigurationStrings.TrackingProfile,
RemoveItemName = TrackingConfigurationStrings.Remove,
ClearItemsName = TrackingConfigurationStrings.Clear)]
[Fx.Tag.XamlVisible(false)]
public sealed class ProfileElementCollection : TrackingConfigurationCollection<ProfileElement>
{
internal ProfileElementCollection()
: base()
{
this.AddElementName = TrackingConfigurationStrings.TrackingProfile;
this.RemoveElementName = TrackingConfigurationStrings.Remove;
this.ClearElementName = TrackingConfigurationStrings.Clear;
}
public override ConfigurationElementCollectionType CollectionType
{
get { return ConfigurationElementCollectionType.AddRemoveClearMap; }
}
}
}

View File

@@ -0,0 +1,156 @@
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Activities.Tracking.Configuration
{
using System.Configuration;
using System.Collections.ObjectModel;
using System.Runtime;
using System.Activities.Tracking;
using System.Diagnostics.CodeAnalysis;
[Fx.Tag.XamlVisible(false)]
public class ProfileWorkflowElement : TrackingConfigurationElement
{
ConfigurationPropertyCollection properties;
protected override ConfigurationPropertyCollection Properties
{
get
{
if (this.properties == null)
{
ConfigurationPropertyCollection properties = new ConfigurationPropertyCollection();
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.ActivityDefinitionId, typeof(System.String), "*", null, new System.Configuration.StringValidator(1, 2147483647, null), System.Configuration.ConfigurationPropertyOptions.IsKey));
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.WorkflowInstanceQueries, typeof(System.ServiceModel.Activities.Tracking.Configuration.WorkflowInstanceQueryElementCollection), null, null, null, System.Configuration.ConfigurationPropertyOptions.None));
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.ActivityQueries, typeof(System.ServiceModel.Activities.Tracking.Configuration.ActivityStateQueryElementCollection), null, null, null, System.Configuration.ConfigurationPropertyOptions.None));
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.ActivityScheduledQueries, typeof(System.ServiceModel.Activities.Tracking.Configuration.ActivityScheduledQueryElementCollection), null, null, null, System.Configuration.ConfigurationPropertyOptions.None));
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.CancelRequestedQueries, typeof(System.ServiceModel.Activities.Tracking.Configuration.CancelRequestedQueryElementCollection), null, null, null, System.Configuration.ConfigurationPropertyOptions.None));
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.FaultPropagationQueries, typeof(System.ServiceModel.Activities.Tracking.Configuration.FaultPropagationQueryElementCollection), null, null, null, System.Configuration.ConfigurationPropertyOptions.None));
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.BookmarkResumptionQueries, typeof(System.ServiceModel.Activities.Tracking.Configuration.BookmarkResumptionQueryElementCollection), null, null, null, System.Configuration.ConfigurationPropertyOptions.None));
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.CustomTrackingQueries, typeof(System.ServiceModel.Activities.Tracking.Configuration.CustomTrackingQueryElementCollection), null, null, null, System.Configuration.ConfigurationPropertyOptions.None));
properties.Add(new ConfigurationProperty(TrackingConfigurationStrings.StateMachineStateQueries, typeof(System.ServiceModel.Activities.Tracking.Configuration.StateMachineStateQueryElementCollection), null, null, null, System.Configuration.ConfigurationPropertyOptions.None));
this.properties = properties;
}
return this.properties;
}
}
[SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationPropertyAttributeRule,
Justification = "This property is defined by the base class to compute unique key.")]
public override object ElementKey
{
get { return this.ActivityDefinitionId; }
}
[ConfigurationProperty(TrackingConfigurationStrings.ActivityDefinitionId, IsKey = true,
DefaultValue = TrackingConfigurationStrings.StarWildcard)]
[StringValidator(MinLength = 1)]
[SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationValidatorAttributeRule,
MessageId = "System.ServiceModel.Activities.Tracking.Configuration.ProfileWorkflowElement.ActivityDefinitionId",
Justification = "StringValidator verifies minimum size")]
public string ActivityDefinitionId
{
get { return (string)base[TrackingConfigurationStrings.ActivityDefinitionId]; }
set { base[TrackingConfigurationStrings.ActivityDefinitionId] = value; }
}
[ConfigurationProperty(TrackingConfigurationStrings.WorkflowInstanceQueries)]
public WorkflowInstanceQueryElementCollection WorkflowInstanceQueries
{
get
{
return (WorkflowInstanceQueryElementCollection)
base[TrackingConfigurationStrings.WorkflowInstanceQueries];
}
}
[ConfigurationProperty(TrackingConfigurationStrings.ActivityQueries)]
public ActivityStateQueryElementCollection ActivityStateQueries
{
get { return (ActivityStateQueryElementCollection)base[TrackingConfigurationStrings.ActivityQueries]; }
}
[ConfigurationProperty(TrackingConfigurationStrings.ActivityScheduledQueries)]
public ActivityScheduledQueryElementCollection ActivityScheduledQueries
{
get
{
return (ActivityScheduledQueryElementCollection)
base[TrackingConfigurationStrings.ActivityScheduledQueries];
}
}
[ConfigurationProperty(TrackingConfigurationStrings.CancelRequestedQueries)]
public CancelRequestedQueryElementCollection CancelRequestedQueries
{
get
{
return (CancelRequestedQueryElementCollection)
base[TrackingConfigurationStrings.CancelRequestedQueries];
}
}
[ConfigurationProperty(TrackingConfigurationStrings.FaultPropagationQueries)]
public FaultPropagationQueryElementCollection FaultPropagationQueries
{
get
{
return (FaultPropagationQueryElementCollection)
base[TrackingConfigurationStrings.FaultPropagationQueries];
}
}
[ConfigurationProperty(TrackingConfigurationStrings.BookmarkResumptionQueries)]
public BookmarkResumptionQueryElementCollection BookmarkResumptionQueries
{
get
{
return (BookmarkResumptionQueryElementCollection)
base[TrackingConfigurationStrings.BookmarkResumptionQueries];
}
}
[ConfigurationProperty(TrackingConfigurationStrings.CustomTrackingQueries)]
public CustomTrackingQueryElementCollection CustomTrackingQueries
{
get
{
return (CustomTrackingQueryElementCollection)
base[TrackingConfigurationStrings.CustomTrackingQueries];
}
}
[ConfigurationProperty(TrackingConfigurationStrings.StateMachineStateQueries)]
public StateMachineStateQueryElementCollection StateMachineStateQueries
{
get
{
return (StateMachineStateQueryElementCollection)
base[TrackingConfigurationStrings.StateMachineStateQueries];
}
}
internal void AddQueries(Collection<TrackingQuery> queries)
{
AddQueryCollection(queries, this.WorkflowInstanceQueries);
AddQueryCollection(queries, this.ActivityStateQueries);
AddQueryCollection(queries, this.ActivityScheduledQueries);
AddQueryCollection(queries, this.CancelRequestedQueries);
AddQueryCollection(queries, this.FaultPropagationQueries);
AddQueryCollection(queries, this.BookmarkResumptionQueries);
AddQueryCollection(queries, this.CustomTrackingQueries);
AddQueryCollection(queries, this.StateMachineStateQueries);
}
static void AddQueryCollection(Collection<TrackingQuery> queries, ConfigurationElementCollection elements)
{
foreach (TrackingQueryElement queryElement in elements)
{
queries.Add(queryElement.CreateTrackingQuery());
}
}
}
}

Some files were not shown because too many files have changed in this diff Show More