36 | | This new model uses specifics tables in the database to store information about harvesters (HarvestingTask, HarvestingTaskResults...). |
| 36 | This new model uses specifics tables in the database to store information about harvesters (HarvestingTask, HarvestingTaskResult...). |
| 37 | |
| 38 | A few more details on these tables: |
| 39 | HarvestingTask, HarvestingTaskGroup, HarvestingTaskCategory: |
| 40 | This table may store relevant information about an harvesting task. |
| 41 | The tables HarvestingTaskGroup and HarvestingTaskCategory are used to apply categories and privilieges to harvested metadata. |
| 42 | |
| 43 | HarvestingTaskResult: |
| 44 | Each harvesting result is stored in a dedicated table and may be displayed in an history table. |
| 45 | A mechanism can also be implemented to store the last N results (relevant). |
| 46 | |
| 47 | HarvestingTaskConfiguration: |
| 48 | Specific properties and values for a harvesting. Indeed, some harvesters have specific values for configuration. These ones will be stored in that table. |
| 74 | ); |
| 75 | |
| 76 | CREATE TABLE HarvestingTaskGroup |
| 77 | ( |
| 78 | harvestingTaskId int, |
| 79 | groupId int, |
| 80 | |
| 81 | primary key(harvestingTaskId, groupId), |
| 82 | |
| 83 | foreign key(harvestingTaskId) references HarvestingTask(id), |
| 84 | foreign key(groupId) references Groups(id) |
| 85 | ); |
| 86 | |
| 87 | CREATE TABLE HarvestingTaskCategory |
| 88 | ( |
| 89 | harvestingTaskId int, |
| 90 | categoryId int, |
| 91 | |
| 92 | primary key(harvestingTaskId, categoryId), |
| 93 | |
| 94 | foreign key(harvestingTaskId) references HarvestingTask(id), |
| 95 | foreign key(categoryId) references Categories(id) |