private void OnSetKeyValue(ExtendedPropertyInfo extendedProperty, object extendee, object value) { if (extendee != null && value != null && !this.keylookupDictionary.Contains(value)) { this.keylookupDictionary.Add(value, extendee); } }
private object OnGetKeyValue(ExtendedPropertyInfo extendedProperty, object extendee) { DictionaryEntry?nullable = null; if (extendedProperty.SerializationManager.WorkflowMarkupStack[typeof(DictionaryEntry)] != null) { nullable = new DictionaryEntry?((DictionaryEntry)extendedProperty.SerializationManager.WorkflowMarkupStack[typeof(DictionaryEntry)]); } if (nullable.HasValue && (nullable.Value.Value == extendee)) { return(nullable.Value.Key); } return(null); }
internal override ExtendedPropertyInfo[] GetExtendedProperties(WorkflowMarkupSerializationManager manager, object extendee) { List<ExtendedPropertyInfo> list = new List<ExtendedPropertyInfo>(); DictionaryEntry? nullable = null; if (manager.WorkflowMarkupStack[typeof(DictionaryEntry)] != null) { nullable = new DictionaryEntry?((DictionaryEntry) manager.WorkflowMarkupStack[typeof(DictionaryEntry)]); } if (this.deserializingDictionary || (nullable.HasValue && (nullable.Value.Value == extendee))) { ExtendedPropertyInfo item = new ExtendedPropertyInfo(typeof(DictionaryEntry).GetProperty("Key", BindingFlags.Public | BindingFlags.Instance), new GetValueHandler(this.OnGetKeyValue), new SetValueHandler(this.OnSetKeyValue), new GetQualifiedNameHandler(this.OnGetXmlQualifiedName), manager); list.Add(item); } return list.ToArray(); }
internal override ExtendedPropertyInfo[] GetExtendedProperties(WorkflowMarkupSerializationManager manager, object extendee) { List <ExtendedPropertyInfo> list = new List <ExtendedPropertyInfo>(); DictionaryEntry? nullable = null; if (manager.WorkflowMarkupStack[typeof(DictionaryEntry)] != null) { nullable = new DictionaryEntry?((DictionaryEntry)manager.WorkflowMarkupStack[typeof(DictionaryEntry)]); } if (this.deserializingDictionary || (nullable.HasValue && (nullable.Value.Value == extendee))) { ExtendedPropertyInfo item = new ExtendedPropertyInfo(typeof(DictionaryEntry).GetProperty("Key", BindingFlags.Public | BindingFlags.Instance), new GetValueHandler(this.OnGetKeyValue), new SetValueHandler(this.OnSetKeyValue), new GetQualifiedNameHandler(this.OnGetXmlQualifiedName), manager); list.Add(item); } return(list.ToArray()); }
internal static bool IsExtendedProperty(WorkflowMarkupSerializationManager manager, IList <PropertyInfo> propInfos, XmlQualifiedName xmlQualifiedName) { foreach (PropertyInfo info in propInfos) { ExtendedPropertyInfo info2 = info as ExtendedPropertyInfo; if (info2 != null) { string prefix = string.Empty; XmlQualifiedName name = info2.GetXmlQualifiedName(manager, out prefix); if (name.Name.Equals(xmlQualifiedName.Name, StringComparison.Ordinal) && name.Namespace.Equals(xmlQualifiedName.Namespace, StringComparison.Ordinal)) { return(true); } } } return(false); }
private object OnGetKeyValue(ExtendedPropertyInfo extendedProperty, object extendee) { DictionaryEntry?entry = null; if (extendedProperty.SerializationManager.WorkflowMarkupStack[typeof(DictionaryEntry)] != null) { entry = (DictionaryEntry)extendedProperty.SerializationManager.WorkflowMarkupStack[typeof(DictionaryEntry)]; } else { Debug.Assert(false, "Dictionary Entry not found in the WorkflowMarkupStack"); } if (entry.HasValue && entry.Value.Value == extendee) { return(entry.Value.Key); } return(null); }
internal static bool IsExtendedProperty(WorkflowMarkupSerializationManager manager, IList <PropertyInfo> propInfos, XmlQualifiedName xmlQualifiedName) { foreach (PropertyInfo propInfo in propInfos) { ExtendedPropertyInfo extendedProperty = propInfo as ExtendedPropertyInfo; if (extendedProperty == null) { continue; } string prefix = String.Empty; XmlQualifiedName qualifiedPropertyName = extendedProperty.GetXmlQualifiedName(manager, out prefix); if (qualifiedPropertyName.Name.Equals(xmlQualifiedName.Name, StringComparison.Ordinal) && qualifiedPropertyName.Namespace.Equals(xmlQualifiedName.Namespace, StringComparison.Ordinal)) { return(true); } } return(false); }
internal override ExtendedPropertyInfo[] GetExtendedProperties(WorkflowMarkupSerializationManager manager, object extendee) { List <ExtendedPropertyInfo> extendedProperties = new List <ExtendedPropertyInfo>(); DictionaryEntry? entry = null; if (manager.WorkflowMarkupStack[typeof(DictionaryEntry)] != null) { entry = (DictionaryEntry)manager.WorkflowMarkupStack[typeof(DictionaryEntry)]; } if (this.deserializingDictionary || (entry.HasValue && entry.Value.Value == extendee)) { ExtendedPropertyInfo extendedProperty = new ExtendedPropertyInfo(typeof(DictionaryEntry).GetProperty("Key", BindingFlags.Public | BindingFlags.Instance), new GetValueHandler(OnGetKeyValue), new SetValueHandler(OnSetKeyValue), new GetQualifiedNameHandler(OnGetXmlQualifiedName), manager); extendedProperties.Add(extendedProperty); } return(extendedProperties.ToArray()); }
private object OnGetRuntimeNameValue(ExtendedPropertyInfo extendedProperty, object extendee) { return extendedProperty.RealPropertyInfo.GetValue(extendee, null); }
private XmlQualifiedName OnGetXmlQualifiedName(ExtendedPropertyInfo extendedProperty, WorkflowMarkupSerializationManager manager, out string prefix) { prefix = "x"; return new XmlQualifiedName(extendedProperty.Name, "http://schemas.microsoft.com/winfx/2006/xaml"); }
private void OnSetKeyValue(ExtendedPropertyInfo extendedProperty, object extendee, object value) { if (((extendee != null) && (value != null)) && !this.keylookupDictionary.Contains(value)) { this.keylookupDictionary.Add(value, extendee); } }
internal override ExtendedPropertyInfo[] GetExtendedProperties(WorkflowMarkupSerializationManager manager, object extendee) { List<ExtendedPropertyInfo> extendedProperties = new List<ExtendedPropertyInfo>(); DictionaryEntry? entry = null; if (manager.WorkflowMarkupStack[typeof(DictionaryEntry)] != null) entry = (DictionaryEntry)manager.WorkflowMarkupStack[typeof(DictionaryEntry)]; if (this.deserializingDictionary || (entry.HasValue && entry.Value.Value == extendee)) { ExtendedPropertyInfo extendedProperty = new ExtendedPropertyInfo(typeof(DictionaryEntry).GetProperty("Key", BindingFlags.Public | BindingFlags.Instance), new GetValueHandler(OnGetKeyValue), new SetValueHandler(OnSetKeyValue), new GetQualifiedNameHandler(OnGetXmlQualifiedName), manager); extendedProperties.Add(extendedProperty); } return extendedProperties.ToArray(); }
private object OnGetKeyValue(ExtendedPropertyInfo extendedProperty, object extendee) { DictionaryEntry? nullable = null; if (extendedProperty.SerializationManager.WorkflowMarkupStack[typeof(DictionaryEntry)] != null) { nullable = new DictionaryEntry?((DictionaryEntry) extendedProperty.SerializationManager.WorkflowMarkupStack[typeof(DictionaryEntry)]); } if (nullable.HasValue && (nullable.Value.Value == extendee)) { return nullable.Value.Key; } return null; }
private XmlQualifiedName OnGetXmlQualifiedName(ExtendedPropertyInfo extendedProperty, WorkflowMarkupSerializationManager manager, out string prefix) { prefix = StandardXomlKeys.Definitions_XmlNs_Prefix; return(new XmlQualifiedName(extendedProperty.Name, StandardXomlKeys.Definitions_XmlNs)); }
private object OnGetKeyValue(ExtendedPropertyInfo extendedProperty, object extendee) { DictionaryEntry? entry = null; if (extendedProperty.SerializationManager.WorkflowMarkupStack[typeof(DictionaryEntry)] != null) entry = (DictionaryEntry)extendedProperty.SerializationManager.WorkflowMarkupStack[typeof(DictionaryEntry)]; else Debug.Assert(false, "Dictionary Entry not found in the WorkflowMarkupStack"); if (entry.HasValue && entry.Value.Value == extendee) return entry.Value.Key; return null; }
private XmlQualifiedName OnGetXmlQualifiedName(ExtendedPropertyInfo extendedProperty, WorkflowMarkupSerializationManager manager, out string prefix) { prefix = StandardXomlKeys.Definitions_XmlNs_Prefix; return new XmlQualifiedName(extendedProperty.Name, StandardXomlKeys.Definitions_XmlNs); }
private void OnSetRuntimeNameValue(ExtendedPropertyInfo extendedProperty, object extendee, object value) { if (extendee != null && value != null) extendedProperty.RealPropertyInfo.SetValue(extendee, value, null); }
private XmlQualifiedName OnGetXmlQualifiedName(ExtendedPropertyInfo extendedProperty, WorkflowMarkupSerializationManager manager, out string prefix) { prefix = "x"; return(new XmlQualifiedName(extendedProperty.Name, "http://schemas.microsoft.com/winfx/2006/xaml")); }