public ResultSetQueryCommand <InstanceMetadata> CreateGetMetadataCommand(IStudyId study) { TableKey studyTable = SchemaProvider.GetTableInfo(StorageDbSchemaProvider.StudyTableName); TableKey sourceTable = SchemaProvider.GetTableInfo(StorageDbSchemaProvider.ObjectInstanceTableName); QueryBuilder queryBuilder = CreateQueryBuilder( ); ColumnInfo metaDataColumn = SchemaProvider.GetColumn(sourceTable.Name, StorageDbSchemaProvider.MetadataTable.MetadataColumn); ProcessSelectStudy(study, queryBuilder, studyTable, sourceTable); queryBuilder.ProcessColumn(sourceTable, metaDataColumn, null, null); return(new ResultSetQueryCommand <InstanceMetadata> (CreateCommand(queryBuilder.GetQueryText(sourceTable)), sourceTable, new string [] { metaDataColumn.ToString( ) }, CreateMetadata)); }
public SingleResultQueryCommand <InstanceMetadata> CreateGetMetadataCommand(IObjectId instance) { TableKey studyTable = SchemaProvider.GetTableInfo(StorageDbSchemaProvider.StudyTableName); TableKey seriesTable = SchemaProvider.GetTableInfo(StorageDbSchemaProvider.SeriesTableName); TableKey instanceTable = SchemaProvider.GetTableInfo(StorageDbSchemaProvider.ObjectInstanceTableName); QueryBuilder queryBuilder = CreateQueryBuilder( ); ColumnInfo metadataColumn = SchemaProvider.GetColumn(instanceTable.Name, StorageDbSchemaProvider.MetadataTable.MetadataColumn); ProcessSelectStudy(instance, queryBuilder, studyTable, instanceTable); ProcessSelectSeries(instance, queryBuilder, seriesTable, instanceTable); ProcessSelectObjectInstance(instance, queryBuilder, instanceTable, instanceTable); queryBuilder.ProcessColumn(instanceTable, metadataColumn); return(new SingleResultQueryCommand <InstanceMetadata> (CreateCommand(queryBuilder.GetQueryText(instanceTable)), instanceTable, metadataColumn.ToString( ), CreateMetadata)); }