Irene
2016年8月12日星期五
Read the docs
These days, I finished the document for the MediCurator.
Below is the link:
http://medicurator.readthedocs.io/en/latest/
2016年8月10日星期三
Document and fix the bug
This week, I wrote the document and fix the bug.
Details at
Download only what is new
https://bitbucket.org/BMI/medicurator/issues/6/download-only-what-is-new-when-attempting
The document:
https://bitbucket.org/BMI/medicurator/issues/5/medicurator-readthedocs-documentation
Fix the hard code the API_key
https://bitbucket.org/BMI/medicurator/issues/7/avoid-the-need-to-hard-code-the-api-key
2016年7月31日星期日
Research on Medicurator Supporting Dicomweb
I have done some research on the dicomweb. It can apply to MediCurator. The dicomweb has three levels - study, series and instance. I can query it level by level and inherit it to Medicurator like TCIA. The user only need to add the Url of the server, it can work. And I can use the function of retrieve to download the images. So the Madicurator can implement via it. However, I only find a serverhttp://www.dicomserver.co.uk/DICOMRS.html on which the dicomweb has implemented while the retrieve function didn't finished. So I can not experiment with retrieve function. In conclusion, Medicurator can use the dicomweb without too much modification.
2016年7月26日星期二
MediCurator Refactor and Add the Duplicate Detect
This week, I refactor the MediCurator into the three modules,
- medicurator-core for the core medicurator stuff.
- medicurator-server for the API.
- medicurator-client for the web app.
So that , I can avoid the dependencies conflicts.
And I add the near Duplicate Detect function to the web app and APIs.
http://localhost:4567/duplicateSets?replicasetID1=***&replicasetID2=***
http://localhost:4567/duplicateSets?replicasetID1=***&replicasetID2=***
This makes the functions completely.
What's more, I write some scripts which make user to run my project easier.
Building
./compile.sh
Run webapp
./run_servlet.sh
Run Restful API
./run_api.sh
Building
./compile.sh
Run webapp
./run_servlet.sh
Run Restful API
./run_api.sh
2016年7月20日星期三
Restful API and Delete - Download Workflow
Restful API and Delete - Download Workflow
First, this week, I implement the Restful API.
As shown in the README, it concludes the following
API:
http://localhost:4567/signup?username=***&password=***
http://localhost:4567/login?username=***&password=***
http://localhost:4567/getReplicaSets?userid=***
http://localhost:4567/createReplicaSets?userid=***&replicaName=***
http://localhost:4567/getDataSets?replicasetID=***
http://localhost:4567/addDataSet?replicasetID=***&datasetID=***
http://localhost:4567/removeDataSet?replicasetID=***&datasetID=***
http://localhost:4567/getRootDataSets http://localhost:4567/getSubsets?datasetID=***
http://localhost:4567/downloadDataSets?datasetID=***
http://localhost:4567/downloadOneDataSets?datasetID=***
http://localhost:4567/deleteDataSets?datasetID=***
http://localhost:4567/deleteOneDataSet?datasetID=***
API:
http://localhost:4567/signup?username=***&password=***
http://localhost:4567/login?username=***&password=***
http://localhost:4567/getReplicaSets?userid=***
http://localhost:4567/createReplicaSets?userid=***&replicaName=***
http://localhost:4567/getDataSets?replicasetID=***
http://localhost:4567/addDataSet?replicasetID=***&datasetID=***
http://localhost:4567/removeDataSet?replicasetID=***&datasetID=***
http://localhost:4567/getRootDataSets http://localhost:4567/getSubsets?datasetID=***
http://localhost:4567/downloadDataSets?datasetID=***
http://localhost:4567/downloadOneDataSets?datasetID=***
http://localhost:4567/deleteDataSets?datasetID=***
http://localhost:4567/deleteOneDataSet?datasetID=***
And there is
http://localhost:4567/duplicateSets?replicasetID1=***&replicasetID2=***
http://localhost:4567/duplicateSets?replicasetID1=***&replicasetID2=***
This is to be done.
The second thing I have done is fix the Delete - Download Workflow. Now Medicurator can support the function that the user download and delete and download again.
I implement this by taking the meaning of "remove" and "delete" apart. Remove means to move the dataset out of the replicaset and "delete" means delete directly which can download again.
2016年7月13日星期三
Implement Local File Source
This week, I implement the medicurator for Local file source.
Through my test, it proves to have been working well. The test local file is under the path:medicurator/target/classes/image
It can be downloaded through the web application written last week.
The downloaded file is now stored at medicurator/target/classes/local.test
The path can be changed in Constant.java
Afterwards, I will finish the complete workflow on downloaded tracking to solve the delete problem. I think I should implement a delete invoke function so that when the user's delete behavior through the website or the delete message sent from the duplicate detect, it will invoke the function.
2016年7月6日星期三
Hdfs Apply to Medicurator
This week, I apply Hdfs to Medicurator.
As we all know, the hadoop distributed file system(HDFS) is a distributed file system designed to run on commodity hardware. HDFS is highly fault-tolerant and is designed to be deploved on low-cost hardware. Hdfs provides high throughput access to application data and is suitable for applications that have large data sets.
To make medicurator easier to deal with the high throughput, I decide to use the Hdfs. I inherit the class Storage and make the already existed LocalStorage become HdfsStorage. In order to realize this, I mainly use the API, referred https://hadoop.apache.org/docs/r2.6.1/api/overview-summary.html.
After my test, it works well. I only run this on my single computer, to make this run on the cluster, there still has some work to do.
To add, the consumer can choose the localStorage or the hdfsStorage according to their peference by changing the STORAGE (hdfs/local) in Constants.java. To use HDFS, the user should config HDFS_URI and HDFS_BASEDIR in Constants.java.For example, HDFS_URI = "hdfs://localhost:9000/" and HDFS_BASEDIR = "/user/xxx/medicurator/"
Source code and More information
https://bitbucket.org/BMI/medicurator
订阅:
博文 (Atom)