Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / RunTime / Tracking / TrackingCondition.cs / 1305376 / TrackingCondition.cs
using System; using System.Collections; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Text; using System.Xml; using System.Xml.Schema; using System.IO; using System.Reflection; using System.Diagnostics; using System.Runtime.Serialization; using System.Security.Permissions; using System.Globalization; //using System.Workflow.Activities; using System.Workflow.ComponentModel; using System.Workflow.Runtime; using System.Workflow.Runtime.Hosting; using Hosting = System.Workflow.Runtime.Hosting; namespace System.Workflow.Runtime.Tracking { [Serializable] public abstract class TrackingCondition { #region Properties public abstract string Value { get; set; } public abstract string Member { get; set; } public abstract ComparisonOperator Operator { get; set; } #endregion #region Internal Abstract Match Methods internal abstract bool Match(object obj); #endregion } ////// Describes critieria that is used constrain locations. /// [Serializable] public class ActivityTrackingCondition : TrackingCondition { #region Private Data Members private string _property; private string _val; private ComparisonOperator _op = ComparisonOperator.Equals; #endregion #region Constructors ////// Default constructor /// public ActivityTrackingCondition() { } ////// Constuct with a list of property names and a value. /// /// "." delineated list of property names. /// Value for the condition. ///Throws ArgumentNullException, ArgumentException. public ActivityTrackingCondition(string member, string value) { // // value can be null but the propery name(s) cannot if (null == member) throw new ArgumentNullException("member"); _property = member; SetValue(value); } #endregion #region Properties public override string Value { get { return _val; } set { SetValue(value); } } public override string Member { get { return _property; } set { _property = value; } } public override ComparisonOperator Operator { get { return _op; } set { _op = value; } } #endregion #region Internal Methods internal override bool Match(object obj) { if (null == obj) throw new ArgumentNullException("obj"); object o = PropertyHelper.GetProperty(_property, obj); if (ComparisonOperator.Equals == _op) { if (null == o) return (null == _val); else return (0 == string.Compare(o.ToString(), _val, StringComparison.Ordinal)); } else { if (null == o) return (null != _val); else return (0 != string.Compare(o.ToString(), _val, StringComparison.Ordinal)); } } #endregion #region Private Methods private void SetValue(string value) { _val = value; } #endregion } public enum ComparisonOperator { Equals = 0, NotEquals = 1, } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- InternalBase.cs
- DocumentScope.cs
- Cursor.cs
- DelegateHelpers.cs
- Invariant.cs
- FontSourceCollection.cs
- TextTreeInsertElementUndoUnit.cs
- cookiecontainer.cs
- PrivilegeNotHeldException.cs
- RegexBoyerMoore.cs
- InvalidTimeZoneException.cs
- SeekableReadStream.cs
- TextUtf8RawTextWriter.cs
- ConnectionConsumerAttribute.cs
- webeventbuffer.cs
- TextServicesContext.cs
- CfgArc.cs
- MetafileHeader.cs
- DataAccessor.cs
- TimeZone.cs
- CapacityStreamGeometryContext.cs
- ListenDesigner.cs
- RolePrincipal.cs
- BooleanAnimationBase.cs
- XmlIlTypeHelper.cs
- RecordsAffectedEventArgs.cs
- NonBatchDirectoryCompiler.cs
- XmlSchemaAppInfo.cs
- NativeMethods.cs
- InfiniteIntConverter.cs
- FieldNameLookup.cs
- RenderDataDrawingContext.cs
- UnsafeNativeMethods.cs
- ExtendedProtectionPolicy.cs
- PathFigureCollectionConverter.cs
- PreProcessor.cs
- DataGridClipboardHelper.cs
- ByteStream.cs
- DataGridViewColumnEventArgs.cs
- Socket.cs
- GridLength.cs
- DataSourceCacheDurationConverter.cs
- AutoCompleteStringCollection.cs
- GACIdentityPermission.cs
- RectValueSerializer.cs
- LinkArea.cs
- ExpressionContext.cs
- XmlILOptimizerVisitor.cs
- UnsignedPublishLicense.cs
- ApplicationException.cs
- PathNode.cs
- XmlSiteMapProvider.cs
- LocatorPartList.cs
- ScriptReferenceBase.cs
- AdvancedBindingEditor.cs
- MetadataWorkspace.cs
- panel.cs
- ProtocolElement.cs
- ASCIIEncoding.cs
- ColorEditor.cs
- Expander.cs
- SerializationStore.cs
- XmlSchemaInclude.cs
- IResourceProvider.cs
- AppSettings.cs
- httpserverutility.cs
- UInt32Storage.cs
- ProfileSection.cs
- DependencyObjectType.cs
- VisualBrush.cs
- BitmapEffectDrawingContextState.cs
- DescendantQuery.cs
- MaskedTextBox.cs
- DecoderFallback.cs
- ParseNumbers.cs
- StandardMenuStripVerb.cs
- WindowInteropHelper.cs
- TTSEvent.cs
- XmlLangPropertyAttribute.cs
- MatrixConverter.cs
- FixedSOMContainer.cs
- InvalidateEvent.cs
- baseaxisquery.cs
- TextInfo.cs
- Expression.cs
- WebConfigurationManager.cs
- DataIdProcessor.cs
- NameObjectCollectionBase.cs
- EnvelopedPkcs7.cs
- ShaperBuffers.cs
- _DigestClient.cs
- CodeValidator.cs
- cookiecollection.cs
- SQLBinary.cs
- Statements.cs
- GeneralTransform2DTo3D.cs
- Nullable.cs
- QilStrConcat.cs
- ColorIndependentAnimationStorage.cs
- FixedPageStructure.cs