// Token: 0x0600146B RID: 5227 RVA: 0x00076140 File Offset: 0x00074340 public override void CopyFrom(IProperty srcRootProperty) { IPropertyContainer propertyContainer = srcRootProperty as IPropertyContainer; if (propertyContainer == null) { throw new ArgumentNullException("srcPropertyContainer"); } propertyContainer.SetCopyDestination(this); foreach (IProperty property in propertyContainer.Children) { XsoProperty xsoProperty = this.GetPropBySchemaLinkId(property.SchemaLinkId) as XsoProperty; if (xsoProperty.Type != PropertyType.ReadOnly && xsoProperty.State != PropertyState.NotSupported) { if (xsoProperty is IDataObjectGeneratorContainer) { ((IDataObjectGeneratorContainer)xsoProperty).SchemaState = this.schemaState; ((IDataObjectGeneratorContainer)property).SchemaState = ((IDataObjectGeneratorContainer)propertyContainer).SchemaState; } xsoProperty.CopyFrom(property); } } foreach (IProperty property2 in propertyContainer.Children) { XsoProperty xsoProperty2 = this.GetPropBySchemaLinkId(property2.SchemaLinkId) as XsoProperty; if (xsoProperty2 != null && xsoProperty2.Type != PropertyType.ReadOnly && xsoProperty2.State != PropertyState.NotSupported && xsoProperty2.PostProcessingDelegate != null) { xsoProperty2.PostProcessingDelegate(property2, this.Children); xsoProperty2.PostProcessingDelegate = null; } } }
// Token: 0x06001461 RID: 5217 RVA: 0x00075EBC File Offset: 0x000740BC public XsoDataObject(IList <IProperty> propertyFromSchemaLinkId, IXsoDataObjectGenerator schemaState, QueryFilter supportedClassFilter) { if (propertyFromSchemaLinkId == null) { throw new ArgumentNullException("propertyFromSchemaLinkId"); } int num = 0; foreach (IProperty property in propertyFromSchemaLinkId) { XsoProperty xsoProperty = (XsoProperty)property; PropertyDefinition[] array = xsoProperty.GetPrefetchProperties(); if (array != null) { num += xsoProperty.GetPrefetchProperties().Length; } } this.prefetchProperties = new PropertyDefinition[num]; int num2 = 0; foreach (IProperty property2 in propertyFromSchemaLinkId) { XsoProperty xsoProperty2 = (XsoProperty)property2; PropertyDefinition[] array2 = xsoProperty2.GetPrefetchProperties(); if (array2 != null) { array2.CopyTo(this.prefetchProperties, num2); num2 += array2.Length; } } this.propertyFromSchemaLinkId = propertyFromSchemaLinkId; this.schemaState = schemaState; this.supportedClassFilter = supportedClassFilter; }
// Token: 0x06001466 RID: 5222 RVA: 0x00075FE4 File Offset: 0x000741E4 public void Bind(object item) { this.areChildPropertyStatesSet = false; foreach (IProperty property in this.propertyFromSchemaLinkId) { XsoProperty xsoProperty = (XsoProperty)property; xsoProperty.Bind((StoreObject)item); } }
// Token: 0x0600146A RID: 5226 RVA: 0x000760E4 File Offset: 0x000742E4 public void SetCopyDestination(IPropertyContainer dstPropertyContainer) { if (!this.areChildPropertyStatesSet) { foreach (IProperty property in this.propertyFromSchemaLinkId) { XsoProperty xsoProperty = (XsoProperty)property; xsoProperty.ComputePropertyState(); } } }
// Token: 0x06001467 RID: 5223 RVA: 0x00076044 File Offset: 0x00074244 public override void Unbind() { try { this.areChildPropertyStatesSet = false; foreach (IProperty property in this.propertyFromSchemaLinkId) { XsoProperty xsoProperty = (XsoProperty)property; xsoProperty.Unbind(); } } finally { base.Unbind(); } }
// Token: 0x060013A1 RID: 5025 RVA: 0x00070F9C File Offset: 0x0006F19C public void SetChangedProperties(PropertyDefinition[] changedProperties) { if (changedProperties == null) { return; } if (changedProperties != SyncCollection.ReadFlagChangedOnly) { throw new ArgumentException("The only acceptable value for changedProperties is SyncCollection.ReadFlagChangedOnly", "changedProperties"); } foreach (IProperty property in this.propertyFromSchemaLinkId) { XsoProperty xsoProperty = (XsoProperty)property; if (xsoProperty.StorePropertyDefinition == changedProperties[0]) { this.propertyList[0].State = PropertyState.Modified; this.propertyList[0].SchemaLinkId = xsoProperty.SchemaLinkId; break; } } }
// Token: 0x0600146C RID: 5228 RVA: 0x0007628C File Offset: 0x0007448C public void SetChangedProperties(PropertyDefinition[] changedProperties) { if (changedProperties == null) { return; } this.areChildPropertyStatesSet = true; for (int i = 0; i < changedProperties.Length; i++) { foreach (IProperty property in this.propertyFromSchemaLinkId) { XsoProperty xsoProperty = (XsoProperty)property; if (xsoProperty.StorePropertyDefinition == changedProperties[i]) { xsoProperty.State = PropertyState.Modified; } else { xsoProperty.State = PropertyState.Unmodified; } } } }