public CalendarPropertyCompositeList(ICalendarPropertyList propertyList, string propertyName) { m_PropertyList = propertyList; m_PropertyName = propertyName; propertyList.ItemAdded += new EventHandler <ObjectEventArgs <ICalendarProperty> >(properties_ItemAdded); propertyList.ItemRemoved += new EventHandler <ObjectEventArgs <ICalendarProperty> >(properties_ItemRemoved); }
public CalendarPropertyListInstance(ObjectInstance prototype, ICalendarPropertyList calendarPropertyList) : this(prototype) { if (calendarPropertyList == null) { throw new ArgumentNullException("calendarPropertyList"); } m_calendarPropertyList = calendarPropertyList; }
/// <summary> /// Initializes this instance. /// </summary> private void Initialize( ) { _properties = new CalendarPropertyList(this, true); }
public static void MapCustomProperties2To1(ICalendarPropertyList sourceList, GenericComObjectWrapper <UserProperties> userPropertiesWrapper, bool mapAllCustomProperties, PropertyMapping[] mappings, IEntityMappingLogger logger, ILog s_logger) { var alreadyMappedOutlookProperties = new HashSet <string>(); foreach (var mapping in mappings) { var prop = sourceList.FirstOrDefault(p => p.Name == mapping.DavProperty); if (prop != null) { try { alreadyMappedOutlookProperties.Add(mapping.OutlookProperty); using (var userProperty = GenericComObjectWrapper.Create(userPropertiesWrapper.Inner.Find(mapping.OutlookProperty))) { if (userProperty.Inner != null) { userProperty.Inner.Value = prop.Value; } else { using (var newUserProperty = GenericComObjectWrapper.Create(userPropertiesWrapper.Inner.Add(mapping.OutlookProperty, OlUserPropertyType.olText, true))) { newUserProperty.Inner.Value = prop.Value; } } } } catch (COMException ex) { s_logger.Warn("Can't set UserProperty of Item!", ex); logger.LogMappingWarning("Can't set UserProperty of Item!", ex); } } } if (mapAllCustomProperties) { foreach (var prop in sourceList.Where(p => p.Name.StartsWith("X-CALDAVSYNCHRONIZER-"))) { var outlookProperty = prop.Name.Replace("X-CALDAVSYNCHRONIZER-", ""); if (!alreadyMappedOutlookProperties.Contains(outlookProperty)) { try { using (var userProperty = GenericComObjectWrapper.Create(userPropertiesWrapper.Inner.Find(outlookProperty))) { if (userProperty.Inner != null) { userProperty.Inner.Value = prop.Value; } else { using (var newUserProperty = GenericComObjectWrapper.Create(userPropertiesWrapper.Inner.Add(outlookProperty, OlUserPropertyType.olText, true))) { newUserProperty.Inner.Value = prop.Value; } } } } catch (COMException ex) { s_logger.Warn("Can't set UserProperty of Item!", ex); logger.LogMappingWarning("Can't set UserProperty of Item!", ex); } } } } }
public static void MapCustomProperties1To2(GenericComObjectWrapper <UserProperties> userPropertiesWrapper, ICalendarPropertyList targetProperties, bool mapAllCustomProperties, PropertyMapping[] mappings, IEntityMappingLogger logger, ILog s_logger) { if (userPropertiesWrapper.Inner != null && userPropertiesWrapper.Inner.Count > 0) { foreach (var prop in userPropertiesWrapper.Inner.ToSafeEnumerable <UserProperty>()) { try { if (prop.Value != null && !string.IsNullOrEmpty(prop.Value.ToString()) && (prop.Type == OlUserPropertyType.olText)) { var foundMapping = mappings.FirstOrDefault(m => m.OutlookProperty == prop.Name); if (foundMapping != null) { targetProperties.Add(new CalendarProperty(foundMapping.DavProperty, prop.Value.ToString())); } else if (mapAllCustomProperties) { targetProperties.Add(new CalendarProperty("X-CALDAVSYNCHRONIZER-" + prop.Name, prop.Value.ToString())); } } } catch (COMException ex) { s_logger.Warn("Can't access UserProperty of Item!", ex); logger.LogMappingWarning("Can't access UserProperty of Item!", ex); } } } }
public CalendarPropertyCompositeListEnumerator(ICalendarPropertyList propertyList, string propertyName) { m_PropertyList = propertyList; m_PropertyName = propertyName; }
public static void MapCustomProperties2To1 (ICalendarPropertyList sourceList, GenericComObjectWrapper<UserProperties> userPropertiesWrapper, bool mapAllCustomProperties, PropertyMapping[] mappings, IEntityMappingLogger logger, ILog s_logger) { var alreadyMappedOutlookProperties = new HashSet<string>(); foreach (var mapping in mappings) { var prop = sourceList.FirstOrDefault (p => p.Name == mapping.DavProperty); if (prop != null) { try { alreadyMappedOutlookProperties.Add(mapping.OutlookProperty); using (var userProperty = GenericComObjectWrapper.Create (userPropertiesWrapper.Inner.Find (mapping.OutlookProperty))) { if (userProperty.Inner != null) { userProperty.Inner.Value = prop.Value; } else { using (var newUserProperty = GenericComObjectWrapper.Create (userPropertiesWrapper.Inner.Add (mapping.OutlookProperty, OlUserPropertyType.olText, true))) { newUserProperty.Inner.Value = prop.Value; } } } } catch (COMException ex) { s_logger.Warn ("Can't set UserProperty of Item!", ex); logger.LogMappingWarning ("Can't set UserProperty of Item!", ex); } } } if (mapAllCustomProperties) { foreach (var prop in sourceList.Where(p => p.Name.StartsWith("X-CALDAVSYNCHRONIZER-"))) { var outlookProperty = prop.Name.Replace("X-CALDAVSYNCHRONIZER-", ""); if (!alreadyMappedOutlookProperties.Contains(outlookProperty)) { try { using (var userProperty = GenericComObjectWrapper.Create(userPropertiesWrapper.Inner.Find(outlookProperty))) { if (userProperty.Inner != null) { userProperty.Inner.Value = prop.Value; } else { using (var newUserProperty = GenericComObjectWrapper.Create(userPropertiesWrapper.Inner.Add(outlookProperty, OlUserPropertyType.olText, true))) { newUserProperty.Inner.Value = prop.Value; } } } } catch (COMException ex) { s_logger.Warn("Can't set UserProperty of Item!", ex); logger.LogMappingWarning("Can't set UserProperty of Item!", ex); } } } } }
public static void MapCustomProperties1To2 (GenericComObjectWrapper<UserProperties> userPropertiesWrapper, ICalendarPropertyList targetProperties, bool mapAllCustomProperties, PropertyMapping[] mappings, IEntityMappingLogger logger, ILog s_logger) { if (userPropertiesWrapper.Inner != null && userPropertiesWrapper.Inner.Count > 0) { foreach (var prop in userPropertiesWrapper.Inner.ToSafeEnumerable<UserProperty>()) { try { if (prop.Value != null && !string.IsNullOrEmpty (prop.Value.ToString()) && (prop.Type == OlUserPropertyType.olText)) { var foundMapping = mappings.FirstOrDefault (m => m.OutlookProperty == prop.Name); if (foundMapping != null) { targetProperties.Add (new CalendarProperty (foundMapping.DavProperty, prop.Value.ToString())); } else if (mapAllCustomProperties) { targetProperties.Add (new CalendarProperty ("X-CALDAVSYNCHRONIZER-" + prop.Name, prop.Value.ToString())); } } } catch (COMException ex) { s_logger.Warn ("Can't access UserProperty of Item!", ex); logger.LogMappingWarning ("Can't access UserProperty of Item!", ex); } } } }