withAttributes method
Implementation
ProgramQuery withAttributes() {
final programAttribute = Repository<ProgramTrackedEntityAttribute>(
database: database as Database);
final Column? relationColumn = programAttribute.columns.firstWhere(
(column) =>
column.relation?.referencedEntity?.tableName == this.tableName);
if (relationColumn != null) {
ColumnRelation relation = ColumnRelation(
referencedColumn: relationColumn.relation?.attributeName,
attributeName: 'programTrackedEntityAttributes',
primaryKey: this.primaryKey?.name,
relationType: RelationType.OneToMany,
referencedEntity: Entity.getEntityDefinition(
AnnotationReflectable.reflectType(ProgramTrackedEntityAttribute)
as ClassMirror),
referencedEntityColumns: Entity.getEntityColumns(
AnnotationReflectable.reflectType(ProgramTrackedEntityAttribute)
as ClassMirror,
false));
this.relations.add(relation);
}
return this;
}