Changes between Version 2 and Version 3 of refactoring_harvesters


Ignore:
Timestamp:
Mar 28, 2011, 2:31:45 AM (13 years ago)
Author:
jbaillagou
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • refactoring_harvesters

    v2 v3  
    3434We try to think this new model as generic as it could be in order to be easily extended by any new harvester.
    3535
    36 This new model uses specifics tables in the database to store information about harvesters (HarvestingTask, HarvestingTaskResults...).
     36This new model uses specifics tables in the database to store information about harvesters (HarvestingTask, HarvestingTaskResult...).
     37
     38A few more details on these tables:
     39HarvestingTask, HarvestingTaskGroup, HarvestingTaskCategory:
     40This table may store relevant information about an harvesting task.
     41The tables HarvestingTaskGroup and HarvestingTaskCategory are used to apply categories and privilieges to harvested metadata.
     42
     43HarvestingTaskResult:
     44Each harvesting result is stored in a dedicated table and may be displayed in an history table.
     45A mechanism can also be implemented to store the last N results (relevant).
     46
     47HarvestingTaskConfiguration:
     48Specific properties and values for a harvesting. Indeed, some harvesters have specific values for configuration. These ones will be stored in that table.
    3749
    3850For now, we did a new interface based on ExtJs only for the OAI PMH harvester and we only move this harvester to the new model, there is some work to move all harvesters and to get them working into the trunk.
     
    5062        recurrentPeriod     int,
    5163        lastRun   varchar(24),
    52         backup     varchar(32),
    5364        status     varchar(32)    not null,
    54         isSynchronization   char(1)        default 'n' not null,
    5565        isIncremental  char(1)        default 'n' not null,
    5666        categoryid int not null,
     67        logo varchar(32), //TBD with Logo manager
    5768       
    5869        primary key(id),
     
    6172       
    6273        unique(uuid)
     74  );
     75
     76CREATE 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
     87CREATE 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)
    6396  );
    6497