public PSMSchemaClass(Project p, Guid g, PSMSchema schema) : base(p, g) { schema.Roots.Add(this); this.Schema = schema; schema.RegisterPSMSchemaClass(this); }
public override void FillCopy(IExolutioCloneable copyComponent, ProjectVersion projectVersion, ElementCopiesMap createdCopies) { base.FillCopy(copyComponent, projectVersion, createdCopies); PSMSchema copyPSMSchema = (PSMSchema)copyComponent; copyPSMSchema.SetProjectVersion(projectVersion); if (PSMSchemaClass != null) { PSMSchemaClass psmSchemaClass = PSMSchemaClass.CreateTypedCopy(projectVersion, createdCopies); copyPSMSchema.RegisterPSMSchemaClass(psmSchemaClass); } this.CopyCollection(PSMClasses, copyPSMSchema.PSMClasses, projectVersion, createdCopies); this.CopyCollection(PSMAssociations, copyPSMSchema.PSMAssociations, projectVersion, createdCopies); this.CopyCollection(PSMContentModels, copyPSMSchema.PSMContentModels, projectVersion, createdCopies); this.CopyRefCollection(PSMAttributes, copyPSMSchema.PSMAttributes, projectVersion, createdCopies); this.CopyRefCollection(Roots, copyPSMSchema.Roots, projectVersion, createdCopies); }