404
+ +Page not found
+ + +diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/404.html b/404.html new file mode 100644 index 0000000..fae69a6 --- /dev/null +++ b/404.html @@ -0,0 +1,114 @@ + + +
+ + + + +Page not found
+ + +This module is a component in the DANS Data Station Architecture.
+ +Service that manages and maintains information about deposits in a deposit area
+dd-manage-deposit { server | check }
+
+
+Service that manages and maintains information about deposits in a deposit area. A deposit area is a collection of directories +that are used to receive and process deposits. See also: deposit-directory, dd-sword2, dd-ingest-flow.
+The service has the following interfaces.
+ +See API for details.
+ positional arguments:
+ {server,check} available commands
+
+ named arguments:
+ -h, --help show this help message and exit
+ -v, --version show the application version and exit
+
+
+Currently, this project is built as an RPM package for RHEL8/Rocky8 and later. The RPM will install the binaries to
+/opt/dans.knaw.nl/dd-manage-deposit
and the configuration files to /etc/opt/dans.knaw.nl/dd-manage-deposit
.
For installation on systems that do no support RPM and/or systemd:
+/opt/dans.knaw.nl/dd-manage-deposit
./opt/dans.knaw.nl/dd-manage-deposit/bin/dd-manage-deposit server /opt/dans.knaw.nl/dd-manage-deposit/cfg/config.yml
Prerequisites:
+Steps:
+git clone https://github.com/DANS-KNAW/dd-manage-deposit.git
+cd dd-manage-deposit
+mvn clean install
+
+
+If the rpm
executable is found at /usr/local/bin/rpm
, the build profile that includes the RPM
+packaging will be activated. If rpm
is available, but at a different path, then activate it by using
+Maven's -P
switch: mvn -Pprm install
.
Alternatively, to build the tarball execute:
+mvn clean install assembly:single
+
+
+ ' + escapeHtml(summary) +'
' + noResultsText + '
'); + } +} + +function doSearch () { + var query = document.getElementById('mkdocs-search-query').value; + if (query.length > min_search_length) { + if (!window.Worker) { + displayResults(search(query)); + } else { + searchWorker.postMessage({query: query}); + } + } else { + // Clear results for short queries + displayResults([]); + } +} + +function initSearch () { + var search_input = document.getElementById('mkdocs-search-query'); + if (search_input) { + search_input.addEventListener("keyup", doSearch); + } + var term = getSearchTermFromLocation(); + if (term) { + search_input.value = term; + doSearch(); + } +} + +function onWorkerMessage (e) { + if (e.data.allowSearch) { + initSearch(); + } else if (e.data.results) { + var results = e.data.results; + displayResults(results); + } else if (e.data.config) { + min_search_length = e.data.config.min_search_length-1; + } +} + +if (!window.Worker) { + console.log('Web Worker API not supported'); + // load index in main thread + $.getScript(joinUrl(base_url, "search/worker.js")).done(function () { + console.log('Loaded worker'); + init(); + window.postMessage = function (msg) { + onWorkerMessage({data: msg}); + }; + }).fail(function (jqxhr, settings, exception) { + console.error('Could not load worker.js'); + }); +} else { + // Wrap search in a web worker + var searchWorker = new Worker(joinUrl(base_url, "search/worker.js")); + searchWorker.postMessage({init: true}); + searchWorker.onmessage = onWorkerMessage; +} diff --git a/search/search_index.json b/search/search_index.json new file mode 100644 index 0000000..7db8f7e --- /dev/null +++ b/search/search_index.json @@ -0,0 +1 @@ +{"config":{"indexing":"full","lang":["en"],"min_search_length":3,"prebuild_index":false,"separator":"[\\s\\-]+"},"docs":[{"location":"","text":"dd-manage-deposit \u00b6 Service that manages and maintains information about deposits in a deposit area SYNOPSIS \u00b6 dd-manage-deposit { server | check } DESCRIPTION \u00b6 Purpose and context \u00b6 Service that manages and maintains information about deposits in a deposit area. A deposit area is a collection of directories that are used to receive and process deposits. See also: deposit-directory , dd-sword2 , dd-ingest-flow . Interfaces \u00b6 The service has the following interfaces. Management & Report \u00b6 Protocol type : HTTP Internal or external : internal Purpose : Generating deposit reports and cleaning up the deposit area. See API for details. Deposit boxes \u00b6 Protocol type : Shared filesystem Internal or external : internal Purpose : Monitoring changes in the contents of the deposit boxes and keeping the information in the database in sync. ARGUMENTS \u00b6 positional arguments: {server,check} available commands named arguments: -h, --help show this help message and exit -v, --version show the application version and exit EXAMPLES \u00b6 INSTALLATION AND CONFIGURATION \u00b6 Currently, this project is built as an RPM package for RHEL8/Rocky8 and later. The RPM will install the binaries to /opt/dans.knaw.nl/dd-manage-deposit and the configuration files to /etc/opt/dans.knaw.nl/dd-manage-deposit . For installation on systems that do no support RPM and/or systemd: Build the tarball (see next section). Extract it to some location on your system, for example /opt/dans.knaw.nl/dd-manage-deposit . Start the service with the following command /opt/dans.knaw.nl/dd-manage-deposit/bin/dd-manage-deposit server /opt/dans.knaw.nl/dd-manage-deposit/cfg/config.yml BUILDING FROM SOURCE \u00b6 Prerequisites: Java 11 or higher Maven 3.3.3 or higher RPM Steps: git clone https://github.com/DANS-KNAW/dd-manage-deposit.git cd dd-manage-deposit mvn clean install If the rpm executable is found at /usr/local/bin/rpm , the build profile that includes the RPM packaging will be activated. If rpm is available, but at a different path, then activate it by using Maven's -P switch: mvn -Pprm install . Alternatively, to build the tarball execute: mvn clean install assembly:single","title":"Manual"},{"location":"#dd-manage-deposit","text":"Service that manages and maintains information about deposits in a deposit area","title":"dd-manage-deposit"},{"location":"#synopsis","text":"dd-manage-deposit { server | check }","title":"SYNOPSIS"},{"location":"#description","text":"","title":"DESCRIPTION"},{"location":"#purpose-and-context","text":"Service that manages and maintains information about deposits in a deposit area. A deposit area is a collection of directories that are used to receive and process deposits. See also: deposit-directory , dd-sword2 , dd-ingest-flow .","title":"Purpose and context"},{"location":"#interfaces","text":"The service has the following interfaces.","title":"Interfaces"},{"location":"#management-report","text":"Protocol type : HTTP Internal or external : internal Purpose : Generating deposit reports and cleaning up the deposit area. See API for details.","title":"Management & Report"},{"location":"#deposit-boxes","text":"Protocol type : Shared filesystem Internal or external : internal Purpose : Monitoring changes in the contents of the deposit boxes and keeping the information in the database in sync.","title":"Deposit boxes"},{"location":"#arguments","text":"positional arguments: {server,check} available commands named arguments: -h, --help show this help message and exit -v, --version show the application version and exit","title":"ARGUMENTS"},{"location":"#examples","text":"","title":"EXAMPLES"},{"location":"#installation-and-configuration","text":"Currently, this project is built as an RPM package for RHEL8/Rocky8 and later. The RPM will install the binaries to /opt/dans.knaw.nl/dd-manage-deposit and the configuration files to /etc/opt/dans.knaw.nl/dd-manage-deposit . For installation on systems that do no support RPM and/or systemd: Build the tarball (see next section). Extract it to some location on your system, for example /opt/dans.knaw.nl/dd-manage-deposit . Start the service with the following command /opt/dans.knaw.nl/dd-manage-deposit/bin/dd-manage-deposit server /opt/dans.knaw.nl/dd-manage-deposit/cfg/config.yml","title":"INSTALLATION AND CONFIGURATION"},{"location":"#building-from-source","text":"Prerequisites: Java 11 or higher Maven 3.3.3 or higher RPM Steps: git clone https://github.com/DANS-KNAW/dd-manage-deposit.git cd dd-manage-deposit mvn clean install If the rpm executable is found at /usr/local/bin/rpm , the build profile that includes the RPM packaging will be activated. If rpm is available, but at a different path, then activate it by using Maven's -P switch: mvn -Pprm install . Alternatively, to build the tarball execute: mvn clean install assembly:single","title":"BUILDING FROM SOURCE"},{"location":"arch/","text":"DANS Data Station Architecture \u00b6 This module is a component in the DANS Data Station Architecture .","title":"\u21d2 DANS Data Station Architecture"},{"location":"arch/#dans-data-station-architecture","text":"This module is a component in the DANS Data Station Architecture .","title":"DANS Data Station Architecture"},{"location":"to-api/","text":"The API is documented using the OpenAPI standard. The API definition files can be downloaded from docs/api/ or viewed in Swagger UI in a new tab .","title":"API"}]} \ No newline at end of file diff --git a/search/worker.js b/search/worker.js new file mode 100644 index 0000000..8628dbc --- /dev/null +++ b/search/worker.js @@ -0,0 +1,133 @@ +var base_path = 'function' === typeof importScripts ? '.' : '/search/'; +var allowSearch = false; +var index; +var documents = {}; +var lang = ['en']; +var data; + +function getScript(script, callback) { + console.log('Loading script: ' + script); + $.getScript(base_path + script).done(function () { + callback(); + }).fail(function (jqxhr, settings, exception) { + console.log('Error: ' + exception); + }); +} + +function getScriptsInOrder(scripts, callback) { + if (scripts.length === 0) { + callback(); + return; + } + getScript(scripts[0], function() { + getScriptsInOrder(scripts.slice(1), callback); + }); +} + +function loadScripts(urls, callback) { + if( 'function' === typeof importScripts ) { + importScripts.apply(null, urls); + callback(); + } else { + getScriptsInOrder(urls, callback); + } +} + +function onJSONLoaded () { + data = JSON.parse(this.responseText); + var scriptsToLoad = ['lunr.js']; + if (data.config && data.config.lang && data.config.lang.length) { + lang = data.config.lang; + } + if (lang.length > 1 || lang[0] !== "en") { + scriptsToLoad.push('lunr.stemmer.support.js'); + if (lang.length > 1) { + scriptsToLoad.push('lunr.multi.js'); + } + if (lang.includes("ja") || lang.includes("jp")) { + scriptsToLoad.push('tinyseg.js'); + } + for (var i=0; i < lang.length; i++) { + if (lang[i] != 'en') { + scriptsToLoad.push(['lunr', lang[i], 'js'].join('.')); + } + } + } + loadScripts(scriptsToLoad, onScriptsLoaded); +} + +function onScriptsLoaded () { + console.log('All search scripts loaded, building Lunr index...'); + if (data.config && data.config.separator && data.config.separator.length) { + lunr.tokenizer.separator = new RegExp(data.config.separator); + } + + if (data.index) { + index = lunr.Index.load(data.index); + data.docs.forEach(function (doc) { + documents[doc.location] = doc; + }); + console.log('Lunr pre-built index loaded, search ready'); + } else { + index = lunr(function () { + if (lang.length === 1 && lang[0] !== "en" && lunr[lang[0]]) { + this.use(lunr[lang[0]]); + } else if (lang.length > 1) { + this.use(lunr.multiLanguage.apply(null, lang)); // spread operator not supported in all browsers: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_operator#Browser_compatibility + } + this.field('title'); + this.field('text'); + this.ref('location'); + + for (var i=0; i < data.docs.length; i++) { + var doc = data.docs[i]; + this.add(doc); + documents[doc.location] = doc; + } + }); + console.log('Lunr index built, search ready'); + } + allowSearch = true; + postMessage({config: data.config}); + postMessage({allowSearch: allowSearch}); +} + +function init () { + var oReq = new XMLHttpRequest(); + oReq.addEventListener("load", onJSONLoaded); + var index_path = base_path + '/search_index.json'; + if( 'function' === typeof importScripts ){ + index_path = 'search_index.json'; + } + oReq.open("GET", index_path); + oReq.send(); +} + +function search (query) { + if (!allowSearch) { + console.error('Assets for search still loading'); + return; + } + + var resultDocuments = []; + var results = index.search(query); + for (var i=0; i < results.length; i++){ + var result = results[i]; + doc = documents[result.ref]; + doc.summary = doc.text.substring(0, 200); + resultDocuments.push(doc); + } + return resultDocuments; +} + +if( 'function' === typeof importScripts ) { + onmessage = function (e) { + if (e.data.init) { + init(); + } else if (e.data.query) { + postMessage({ results: search(e.data.query) }); + } else { + console.error("Worker - Unrecognized message: " + e); + } + }; +} diff --git a/sitemap.xml b/sitemap.xml new file mode 100644 index 0000000..8211b46 --- /dev/null +++ b/sitemap.xml @@ -0,0 +1,18 @@ + +>16&255,u[c++]=t>>8&255,u[c++]=255&t;2===s&&(t=n[e.charCodeAt(r)]<<2|n[e.charCodeAt(r+1)]>>4,u[c++]=255&t);1===s&&(t=n[e.charCodeAt(r)]<<10|n[e.charCodeAt(r+1)]<<4|n[e.charCodeAt(r+2)]>>2,u[c++]=t>>8&255,u[c++]=255&t);return u},t.fromByteArray=function(e){for(var t,n=e.length,o=n%3,a=[],i=16383,s=0,l=n-o;s The API is documented using the OpenAPI standard. The API definition files can be downloaded
+from 0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");return-1===r&&(r=t),[r,r===t?0:4-r%4]}function u(e,t,n){for(var o,a,i=[],s=t;ss&&(r=s-l),a=r;a>=0;a--){let r=!0;for(let n=0;n>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}const o=this.length-t;if((void 0===r||r>o)&&(r=o),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let a=!1;for(;;)switch(n){case"hex":return w(this,e,t,r);case"utf8":case"utf-8":return E(this,e,t,r);case"ascii":case"latin1":case"binary":return x(this,e,t,r);case"base64":return _(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,e,t,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},l.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const C=4096;function O(e,t,r){let n="";r=Math.min(e.length,r);for(let o=t;odocs/api/
or
+viewed in Swagger UI in a new tab.