OpenXDS Cleanup er en virkelig simpel standard-NSP komponent, der udover status og statistik-forespørgsler kun understøtter en enkelt operation - "start oprydning".

Formål

Komponentens formål er at fjerne dokumenter fra OpenXDS repository'et, der ikke længere findes metadata for i registry'et. 

Komponenten indlæser derfor dokument-id'er fra filer genereret af det job, der sletter metadata fra det tilknyttede XDS registry.

Virkemåde

Operationen 'start oprydning'

  • lister filerne i det konfigurerede bibliotek
  • frasorterer filnavne, der ender på "*.handled"
  • indlæser indholdet af filerne, der indeholder et dokument-id på hver linje
  • logger eventuelle dokument-id'er, der ikke findes i databasen (og derfor ikke kan slettes)
  • sletter dokumenter med matchende dokument-id'er
  • logger id'erne på de slettede dokumenter


Lag

Komponenten er inddelt i følgende lag:

Servlet

Servlet-laget ligger i pakken dk.sds.nsp.openxds.cleanup.ws og er ansvarlig for at håndtere requests - status-requests håndteres alene i servletten, mens statistik og start-kald delegeres til service-laget.

Service

Service-laget ligger i pakken dk.sds.nsp.openxds.cleanup.service og er ansvarlig for at

  • svare på statistik-forespørgsler
  • sikre, at oprydningsjob kun startes, hvis det ikke allerede kører
  • kontrollere, om forespurgte dokument-id'er til sletning findes i database-laget
  • slette forespurgte eksisterende dokument-id'er fra database-laget
  • logge sletningerne

Database

Database-laget ligger i pakken dk.sds.nsp.openxds.cleanup.db.

Her foregår opslag og sletning i databasen via datasourcen.


  • No labels