Benutzer-Werkzeuge

Webseiten-Werkzeuge


docuteam:feeder-steps_340

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Letzte ÜberarbeitungBeide Seiten der Revision
docuteam:feeder-steps_340 [2017/10/20 14:38] – [Quality Assurance: fixity check (md5)] Andreas Nefdocuteam:feeder-steps_340 [2019/09/04 10:47] – [Submission: CreateSIPsFromFileOrFolder] penelope
Zeile 77: Zeile 77:
  
 <code> <code>
-Usage: java ch.docuteam.feeder.ingest.CreateEADFile [path/to/]SIP+Usage: java ch.docuteam.feeder.ingest.CreateEADFile [path/to/]SIP [targetFilename]
 Parameters: Parameters:
  [path/to/]SIP: name of the SIP; if not path is given, it will be expected to be in the location defined by the feeder.workbench.workdir property  [path/to/]SIP: name of the SIP; if not path is given, it will be expected to be in the location defined by the feeder.workbench.workdir property
 +        optional, name of the output file; defaults to EAD.xml within the SIP's subfolder in nthe location defined by the 'feeder.workbench.output' property
 </code> </code>
  
Zeile 101: Zeile 102:
 </code> </code>
  
-==== Ingest: remove SIP ==== 
- 
-Die Funktion SIP RemoveFromInbox löscht ein vorhandenes SIP aus der Inbox und legt dieses dann in den gegebenen Ordner ab oder löscht es sofern kein Zielordner gegeben ist.  
- 
-<code> 
-Usage: java ch.docuteam.feeder.ingest.SIPRemoveFromInbox [path/to/]SIP [targetFolder] 
-Parameters: 
- [path/to/]SIP: path of the SIP; if only the name is given, it will be expected to be in the location defined by the feeder.workbench.inbox property 
- [targetFolder]: directory where to move the SIP to; if omitted, the SIP will be deleted 
-</code> 
  
 ==== Ingest: Remove SIP from Inbox ==== ==== Ingest: Remove SIP from Inbox ====
Zeile 163: Zeile 154:
 Parameters: Parameters:
  /absolute/path/to/folder: absolute path of the folder that should be checked  /absolute/path/to/folder: absolute path of the folder that should be checked
 + maxAllowedFilePathLength: the max allowed number of characters of the canonical file path
 +</code>
 +
 +==== Quality Assurance: sip path length check ====
 +
 +Prüft die Dateipfadlängen innerhalb eines SIPs gegen einen anzugebenden Grenzwert.
 +
 +<code>
 +Usage: java ch.docuteam.feeder.qualityassurance.SIPPathLengthCheck [path/to/]SIP  maxAllowedFilePathLength
 +Parameters:
 + [path/to/]SIP: name of the SIP; if not path is given, it will be expected to be in the location defined by the feeder.workbench.work property
  maxAllowedFilePathLength: the max allowed number of characters of the canonical file path  maxAllowedFilePathLength: the max allowed number of characters of the canonical file path
 </code> </code>
Zeile 177: Zeile 179:
 </code> </code>
  
 +==== Quality Assurance: convert to safe filenames ====
 +
 +Benennt Dateien mit Spezialzeichen um. Sichere Dateinamen beinhalten nur Zeichen aus A-Z, a-z, 0-9, und "_.-".
 +
 +<code>
 +Usage: java ch.docuteam.feeder.qualityassurance.SIPConvertToSafeFileNames [path/to/]SIP
 +Parameters:
 + [path/to/]SIP: name of the SIP; if not path is given, it will be expected to be in the location defined by the feeder.workbench.work property
 +</code>
 +
 +==== Quality Assurance: delete backup files ====
 +
 +Löscht Dateien aus dem SIP die einem bestimmten Namensmuster entsprechen.
 +
 +<code>
 +Usage: java ch.docuteam.feeder.qualityassurance.SIPDeleteBackupFiles [path/to/]SIP  [filenamePattern filenamePattern ...]
 +Parameters:
 + [path/to/]SIP: name of the SIP; if not path is given, it will be expected to be in the location defined by the feeder.workbench.work property
 + [filenamePattern filenamePattern ...]: a list of filename patterns (NOT case-sensitive, '*' is wildcard, but is only allowed at the beginning or end of the pattern). Files matching any one of this patterns will be deleted
 +</code>
 ==== Quality Assurance: SIPSubmissionAgreementCheck ==== ==== Quality Assurance: SIPSubmissionAgreementCheck ====
 Prüft ob die Dateiformate mit den Vorgaben aus dem Submission Agreement übereinstimmen. Es gibt zwei Modis: im ersten Modus (removeBadFiles = false), wird jede Datei welche über keine Übereinstimmung mit dem Submission Agreement hat aufgelistet (verwendet werden hierzu die WARN log Einträge) und zudem wir dein Fehlercode ausgegeben.\\ Prüft ob die Dateiformate mit den Vorgaben aus dem Submission Agreement übereinstimmen. Es gibt zwei Modis: im ersten Modus (removeBadFiles = false), wird jede Datei welche über keine Übereinstimmung mit dem Submission Agreement hat aufgelistet (verwendet werden hierzu die WARN log Einträge) und zudem wir dein Fehlercode ausgegeben.\\
Zeile 194: Zeile 216:
  
 <code> <code>
-Usage: java ch.docuteam.feeder.qualityassurance.SIPVirusCheck [path/to/]SIP deleteInfected Parameters: +Usage: java ch.docuteam.feeder.qualityassurance.SIPVirusCheck [path/to/]SIP deleteInfected 
-[path/to/]SIP: name of the SIP; if not path is given, it will be expected to be in the location defined by the feeder.workbench.workdir property +Parameters: 
-deleteInfected: if 'true', the operation automatically removes infected files from the SIP+ [path/to/]SIP: name of the SIP; if not path is given, it will be expected to be in the location defined by the feeder.workbench.workdir property 
 + deleteInfected: if 'true', the operation automatically removes infected files from the SIP
 </code> </code>
  
Zeile 234: Zeile 257:
 Usage: java ch.docuteam.feeder.storage.DIPDeliverer['pid'|'puid'] [PID|PUID] [targetLocation] Usage: java ch.docuteam.feeder.storage.DIPDeliverer['pid'|'puid'] [PID|PUID] [targetLocation]
 Parameters: Parameters:
-  ['pid' | 'puid'] (if 'pid' then provide a fedora PID, if 'puid' then provide a pronom PUID) + ['pid' | 'puid'] (if 'pid' then provide a fedora PID, if 'puid' then provide a pronom PUID) 
-  [PID|PUID] (PID = fedora persistent unique identifier, PUID = pronom persistent unique identifier)+ [PID|PUID] (PID = fedora persistent unique identifier, PUID = pronom persistent unique identifier)
 Optional Parameters: Optional Parameters:
  [targetLocation]: Location where to save DIP.  [targetLocation]: Location where to save DIP.
Zeile 273: Zeile 296:
  [withEAD]: whether to include EAD as descriptive metadata and create a datastream in the fedora objects; defaults to false  [withEAD]: whether to include EAD as descriptive metadata and create a datastream in the fedora objects; defaults to false
 </code> </code>
 +
 +==== Storage: PID assigner ====
 +
 +Weisst allen Knoten eines SIPs eine PID ab Fedora zu.
 +
 +<code>
 +Usage: java ch.docuteam.feeder.storage.PIDAssigner [path/to/]SIP
 +Parameters:
 + [path/to/]SIP: name of the SIP. If no path is given, it will be expected to be in the location defined by the feeder.workbench.work property
 +</code>
 +
 +==== Storage: PIDListPublisher ====
 +
 +The PIDListPublisher saves/sends the file 'PIDs.txt' which results from the FOXMLIngester class to a given URL.
 +
 +<code>Usage: java ch.docuteam.feeder.storage.PIDListPublisher [path/to/]SIP receiverURL
 +Parameters:
 + [path/to/]SIP: path of the SIP; if no path is given, it will be expected to be in the location defined by the feeder.workbench.finished property
 + receiverURL: An URL in the style of { file: | mailto: }, indicating whether to put/send the list with PIDs.</code>
 +
 +==== Storage: RenameSIPasAIPforIaas ====
 +
 +The operation RenameSIPasAIPforIaas renames an SIP using the pid of the root element of the mets file as prefix. Needs 'PID' as accessorname in levels.xml.
 +
 +<code>Usage: java ch.docuteam.feeder.storage.RenameSIPasAIPforIaaS [path/to/]SIP [targetFolder]
 +Parameters:
 + [path/to/]SIP: path of the SIP; if only the name is given, it will be expected to be in the location defined by the feeder.workbench.dropbox property
 + [targetFolder]: directory where to put the AIP to; if omitted, the AIP will be copied to standard output directory '4_output'</code>
 +
 +==== Storage: UpdateExcelWithPID ====
 +
 +This class will write PIDs from an SIP's nodes into excel sheet(s). The excel
 +sheet(s) must have a column with a label of either 'identifier' or 'id' in
 +the first row. PIDs will be written into the column with the header string
 +'PID' or – if such a column is not available – into the next free column.
 +
 +<code>Usage: java ch.docuteam.feeder.storage.UpdateExcelWithPID [path/to/]SIP path/to/folder/with/excel
 +Parameters:
 + [path/to/]SIP: path to the SIP; if relative path is given, try to find it in the workbench's working directory
 + path/to/folder/with/excel: path to the excel files to be updated</code>
 +
 +==== Storage: WebgateDigitalObjectUpdater ====
 +
 +The WebgateDigitalObjectUpdater checks one or several curator databases for
 +units with digital objects and whether they should be (de-)published on a
 +given Fedora instance according to docuteamFeeder.properties.
 +It will use the FEEDER_JAVA system variable to locate configuration files.
 +
 +<code>Usage: java ch.docuteam.feeder.storage.WebgateDigitalObjectUpdater {*|db1,db2,..} [targetDirectory]
 +Parameters:
 + {*|db1,db2}: Asterisk for all databases of the given database server or comma separated list of database names (wildcards '*' are allowed)
 +Optional Parameters:
 + [targetDirectory]: The directory, where the DIPs are stored. If omitted, the given path in docuteamFeeder.properties is used
 +</code>
 +
 +====== Submission ======
 +==== Submission: AgreementsOverviewGenerator ====
 +
 +Creates a simple overview of submission agreements located in a given folder.
 +This is done by XSL transformations, for which the class looks for any
 +submission agreement files in the given directory and lists them in a simple
 +xml structure:
 +<code><safilelist>
 +  <sa_1 />
 +  <sa_2 />
 +  ...
 +  <sa_x />
 +</safilelist></code>
 +
 +<code>Usage: java ch.docuteam.feeder.submission.AgreementsOverviewGenerator agreements_directory type output_directory
 +Parameters:
 + agreements_directory: location where the collection of submission agreements can be found
 + type: one of { Hierarchy | Flat | CSV }, defining the structure of the resulting overview file
 + output_directory: target location for the created overview file, defaults to the directory, where the agreements are located (args[0])</code>
 +
 +==== Submission: CheckFolder ====
 +
 +Check if sip size and size of each file in folder and file paths within the SIP exceeds the maximal allowed provided value. \\
 +Any file or folder exceeding the maximal allowed size will be logged.
 +
 +<code>Usage: java ch.docuteam.feeder.submission.CheckFolder [/path/to/]folder maxTotalSize maxSingleFileSize maxFilePathLength
 +Parameters:
 + [/path/to/]folder: path of the folder to check; if not path is given, it will be expected to be in the location defined by the feeder.workbench.workdir property
 + maxTotalSize: the max allowed size the folder may have
 + maxSingleFileSize: the max allowed size any of the files contained by the sip
 + maxFilePathLength: the max allowed length of file paths within the folder</code>
 +
 +==== Submission: CreateSIPFromExcel ====
 +
 +Creates a SIP according to the Matterhorn METS profile, getting structure and descriptive metadata from an Excel sheet.
 +
 +Preconditions are
 +
 +  * The first excel sheet in an excel workbook is asumed to be the sheet to be read in
 +  * This sheet must have a column named ''path'' that contains all files and folders to be packed into the sip
 +  * The paths can be relativ or absolute, it is not allowed to mix relativ and absolute paths, either these are relative or absolute
 +  * A column with name levelOfDescription is expected. Only levels that exist in levels.xml are allowed
 +  * Only metadata elements defined in levels.xml for the respective level are allowed, not defined metadata elements are reported as as a warn message in logging
 +
 +<code>Usage: java ch.docuteam.feeder.submission.CreateSIPFromExcel [path/to/]Excelfile saID dssID [path/to/target/directory]
 +Parameters:
 +   [path/to/]Excelfile: name or path without file extension to the excel file; defaults to workbench/0_preparation if path is omitted
 +   saID: string that is used to reference a submission agreement
 +   dssID: string that is used to reference a data submission session within the submission agreement
 +   [path/to/target/directory]: path to the directory, where the SIP should be placed; optional, defaults to 'workbench/1_dropbox'</code>
 +
 +==== Submission: CreateSIPsFromFileOrFolder ====
 +
 +The CreateSIPsFromFileOrFolder operation will create SIPs from a given file
 +or folder. If the source is a folder, a parameter will define whether a
 +single SIP or separate SIPs for each child should be created.
 +
 +<code>Usage: java ch.docuteam.feeder.submission.CreateSIPsFromFileOrFolder source recursive saID dssID author zipped [outputDir]
 +Parameters:
 +        source: file or folder for which an SIP should be generated
 +        split: if 'true', a separate SIP will be created for each file/folder within the source (assuming the source is a folder)
 +        saID: value to use for referencing a submission agreement in the SIP
 +        dssID: value to use for referencing a data submission session of the respective submission agreement
 +        author: value to use as the creator for the SIP
 +        zipped: if 'true', create zipped SIPs
 +        [outputDir]: optional location where to put the SIPs; if omitted the property 'feeder.workbench.work' defined in the docuteamFeeder.properties will be used</code>
 +
 +==== Submission: SubmitSIPsFromFolder ====
 +
 +The SubmitSIPsFromFolder will use the given arguments for selecting SIPs in a
 +folder and submitting them to a number of workflows using the feeder
 +REST-interface.
 +
 +<code>Usage: java ch.docuteam.feeder.submission.SubmitSIPsFromFolder inbox errorbox filter feeder_url workflows user password useAbsolutePaths checkEmptyQueue [maxNumberSIPs]
 +Parameters:
 + inbox: path to the folder containing the SIPs
 + errorbox: path to the folder where to put unsuccessful SIPs
 + filter: regex filter string for the SIPs within the dropbox; put the regex expression into quotation marks!
 + feeder_url: URL pointing to the feeder main page, f.ex. http://localhost/feeder
 + workflows: comma separated list of workflows to execute on each SIP
 + user: username for feeder
 + password: password for feeder
 + useAbsolutePaths: true/false, indicating whether to submit SIPs by absolute paths or just their filenames
 + checkEmptyQueue: true/false, indicating whether to check if the queue is empty before submitting new SIPs
 + [maxNumberSIPs] (optional): maximum number of SIPs to send to feeder; if omitted, all SIPs matching the filter string will be submitted</code>
 +
 +==== Submission: WebjaxeAgreementCollector ====
 +
 +The WebjaxeAgreementCollector will look for the any submission agreements created within the
 +webjaxe editor and copy them to a given directory.
 +
 +<code>Usage: java ch.docuteam.feeder.submission.WebjaxeAgreementCollector target_directory [webjaxe_home]
 +Parameters:
 + target_directory: location where to store the submission agreements xml files
 + [webjaxe_home]: optional location of the webjaxe installation directory, usually in the webservers htdocs directory. If omitted, the environment variable $WEBJAXE_HOME will be used.</code>
 +
 +===== Util =====
 +
 +==== Util: MailSender ====
 +
 +This MailSender operation sends an email to the given recipient with optional attachments.
 +
 +<code>Usage: java ch.docuteam.feeder.util.MailSender receiver subject text [attachment1 [attachment2 [...] ] ]
 +Parameters:
 + receiver: the receiver's e-mail address(es), comma separated if several
 + subject: the mail subject
 + text: the message text
 + attachments: filepaths to attachments; if the first attachment is 'zip', all attachments will be zipped into a single attachment</code>
  

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki