public virtual bool DeleteSeries(ISeriesId series) { long seriesKey = GetSeriesKey(DataAdapter, series); return(DataAdapter.CreateDeleteSeriesCommand(seriesKey).Execute( )); }
public virtual IEnumerable <InstanceMetadata> GetSeriesMetadata(ISeriesId series) { var command = DataAdapter.CreateGetMetadataCommand(series); command.Execute( ); return(command.Result); //return GetInstanceMetadata ( DataAdapter, command ) ; }
private void DeleteMediaLocations(ISeriesId series) { var seriesMeta = DataAccess.GetSeriesMetadata(series); if (null != seriesMeta) { foreach (var objectMetaRaw in seriesMeta) { DeleteMediaLocations(objectMetaRaw); } } }
protected virtual long GetSeriesKey(ObjectArchieveDataAdapter adapter, ISeriesId series) { var cmd = adapter.CreateSelectSeriesKeyCommand(series); if (cmd.Execute( )) { return(cmd.Result); } else { throw new DCloudNotFoundException("series is not found."); } }
public virtual IDataAdapterCommand <long> CreateSelectSeriesKeyCommand(ISeriesId series) { TableKey studyTable = SchemaProvider.GetTableInfo(StorageDbSchemaProvider.StudyTableName); TableKey seriesTable = SchemaProvider.GetTableInfo(StorageDbSchemaProvider.SeriesTableName); QueryBuilder queryBuilder = CreateQueryBuilder( ); ProcessSelectStudy(series, queryBuilder, studyTable, seriesTable); ProcessSelectSeries(series, queryBuilder, seriesTable, seriesTable); return(new SingleResultQueryCommand <long> (CreateCommand(queryBuilder.GetQueryText(seriesTable)), seriesTable.Name, seriesTable.KeyColumn.Name)); }
public HttpResponseMessage GetInstances(IStudyId studyId, ISeriesId seriesId, IObjectId sopUid) { IEnumerable <DicomDataset> instances = QueryInstances(studyId, seriesId, sopUid); OHIFViewerModel result = GetOHIFModel(instances, studyId); HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.OK); response.Content = new StringContent(result.ToJson(true)); response.Content.Headers.ContentType = new MediaTypeHeaderValue("application/json"); return(response); }
public virtual IDataAdapterCommand <long> CreateSelectSeriesKeyCommand(ISeriesId series) { TableKey studyTable = SchemaProvider.GetTableInfo(StorageDbSchemaProvider.StudyTableName); TableKey seriesTable = SchemaProvider.GetTableInfo(StorageDbSchemaProvider.SeriesTableName); QueryBuilder queryBuilder = CreateQueryBuilder( ); SingleValueMatching uidMatching = new SingleValueMatching( ); queryBuilder.ProcessColumn(seriesTable, studyTable.ModelKeyColumns [0], uidMatching, new string[] { series.StudyInstanceUID }); queryBuilder.ProcessColumn(seriesTable, seriesTable.ModelKeyColumns [0], uidMatching, new string[] { series.SeriesInstanceUID }); return(new SingleResultQueryCommand <long> (CreateCommand(queryBuilder.GetQueryText(seriesTable)), seriesTable.Name, seriesTable.KeyColumn.Name)); }
protected virtual void ProcessSelectSeries ( ISeriesId series, QueryBuilder queryBuilder, TableKey seriesTable, TableKey sourceTable ) { SingleValueMatching uidMatching = new SingleValueMatching( ); queryBuilder.ProcessColumn(sourceTable, seriesTable.ModelKeyColumns [0], uidMatching, new string[] { series.SeriesInstanceUID }); }
public ResultSetQueryCommand <InstanceMetadata> CreateGetMetadataCommand(ISeriesId series) { TableKey studyTable = SchemaProvider.GetTableInfo(StorageDbSchemaProvider.StudyTableName); TableKey seriesTable = SchemaProvider.GetTableInfo(StorageDbSchemaProvider.SeriesTableName); TableKey sourceTable = SchemaProvider.GetTableInfo(StorageDbSchemaProvider.ObjectInstanceTableName); QueryBuilder queryBuilder = CreateQueryBuilder( ); SingleValueMatching uidMatching = new SingleValueMatching( ); ColumnInfo metadataColumn = SchemaProvider.GetColumn(sourceTable.Name, StorageDbSchemaProvider.MetadataTable.MetadataColumn); queryBuilder.ProcessColumn(sourceTable, seriesTable.ModelKeyColumns[0], uidMatching, new string[] { series.SeriesInstanceUID }); queryBuilder.ProcessColumn(sourceTable, studyTable.ModelKeyColumns[0], uidMatching, new string[] { series.StudyInstanceUID }); queryBuilder.ProcessColumn(sourceTable, metadataColumn); return(new ResultSetQueryCommand <InstanceMetadata> (CreateCommand(queryBuilder.GetQueryText(sourceTable)), sourceTable, new string [] { metadataColumn.ToString( ) }, CreateMetadata)); }
public ResultSetQueryCommand <InstanceMetadata> CreateGetMetadataCommand(ISeriesId series) { TableKey studyTable = SchemaProvider.GetTableInfo(StorageDbSchemaProvider.StudyTableName); TableKey seriesTable = SchemaProvider.GetTableInfo(StorageDbSchemaProvider.SeriesTableName); TableKey sourceTable = SchemaProvider.GetTableInfo(StorageDbSchemaProvider.ObjectInstanceTableName); QueryBuilder queryBuilder = CreateQueryBuilder( ); ColumnInfo metadataColumn = SchemaProvider.GetColumn(sourceTable.Name, StorageDbSchemaProvider.MetadataTable.MetadataColumn); ProcessSelectStudy(series, queryBuilder, studyTable, sourceTable); ProcessSelectSeries(series, queryBuilder, seriesTable, sourceTable); queryBuilder.ProcessColumn(sourceTable, metadataColumn); return(new ResultSetQueryCommand <InstanceMetadata> (CreateCommand(queryBuilder.GetQueryText(sourceTable)), sourceTable, new string [] { metadataColumn.ToString( ) }, CreateMetadata)); }
public ObjectId(ISeriesId series) { StudyInstanceUID = series.StudyInstanceUID; SeriesInstanceUID = series.SeriesInstanceUID; }
protected virtual IQueryOptions GetQueryOptions(IStudyId studyId, ISeriesId seriesId, IObjectId sopId) { return(CreateNewQueryOptions()); }
protected virtual IEnumerable <DicomDataset> QueryInstances(IStudyId studyId, ISeriesId seriesId, IObjectId sopId) { DicomDataset ds = new DicomDataset() { AutoValidate = false }; ds.Add(Dicom.DicomTag.StudyInstanceUID, studyId.StudyInstanceUID); ds.Add(DicomTag.SeriesInstanceUID, seriesId.SeriesInstanceUID); ds.Add(DicomTag.PatientID, ""); ds.Add(DicomTag.PatientName, ""); ds.Add(DicomTag.SeriesDescription, ""); ds.Add(DicomTag.SOPInstanceUID, sopId.SOPInstanceUID); ds.Add(DicomTag.NumberOfFrames, ""); return(QueryService.FindObjectInstances(ds, GetQueryOptions(studyId, seriesId, sopId))); }