diff --git a/src/xproc/recursive-directory-list.xpl b/src/xproc/recursive-directory-list.xpl new file mode 100644 index 0000000..b0859f2 --- /dev/null +++ b/src/xproc/recursive-directory-list.xpl @@ -0,0 +1,92 @@ + + + + + + + + + http://xproc.org/library/recursive-directory-list.xpl + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/xproc/trove-proxy-harvester.xpl b/src/xproc/trove-proxy-harvester.xpl index 18358ac..198f1f6 100644 --- a/src/xproc/trove-proxy-harvester.xpl +++ b/src/xproc/trove-proxy-harvester.xpl @@ -5,9 +5,12 @@ xmlns:z="https://github.com/Conal-Tuohy/XProc-Z" xmlns:t="https://github.com/Conal-Tuohy/TroveProxy" xmlns:file="http://exproc.org/proposed/steps/file" + xmlns:l="http://xproc.org/library" xmlns:init-parameters="tag:conaltuohy.com,2015:webapp-init-parameters"> + + - + - + + + + + + + + + + + + - - + + + + + + - - - + + + + + - - - - - - - - - - - + + - - + - + + - + - + - - - + - @@ -162,9 +161,6 @@ - @@ -226,20 +222,27 @@ - + - + - + - + + + + + + + + @@ -252,9 +255,10 @@ status="starting" started="{current-dateTime()}" last-updated="{current-dateTime()}" - requests="0" + requests-made="0" > - + + @@ -270,7 +274,7 @@ - + @@ -307,8 +311,17 @@ - + + + + + + + The input port provides the http request that caused this harvest to run a single iteration; + if this iteration has not completed the harvest then the request will be returned to XProc-Z's, + bounce off the "trampoline" and cause the pipeline to run again. + The output port produces a sequence of two documents: @@ -318,11 +331,9 @@ Expected input: - + - - @@ -336,27 +347,15 @@ 'created: ', /harvest/@started, ', ', 'last updated: ', /harvest/@last-updated, ', ', 'status: ', /harvest/@status, ', ', - 'requests issued: ', /harvest/@requests + 'requests issued: ', /harvest/@requests-made ) "/> - - - - - - - harvest was already complete - - - - - - - - + + + @@ -370,7 +369,7 @@ - + @@ -405,14 +404,64 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Zip file created + + + + + + + + + + + + harvest was already complete + + + + + - + @@ -425,7 +474,7 @@ "/> @@ -452,7 +501,7 @@ remove the downloaded URL, add any new 'next' or 'section' links from the downloaded resource --> - + - + - + @@ -479,13 +528,13 @@ - - + + - + - + @@ -495,14 +544,14 @@ - - + + - + @@ -557,7 +606,7 @@ - + + + + The output port produces a sequence of two documents: + a which is notionally returned to the client, though XProc-Z will discard it unread + a to be handled internally by XProc-Z to actually continue the harvest + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/xproc/zip.xpl b/src/xproc/zip.xpl new file mode 100644 index 0000000..5e85cdb --- /dev/null +++ b/src/xproc/zip.xpl @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/xslt/harvester/convert-directory-list-to-zip-manifest.xsl b/src/xslt/harvester/convert-directory-list-to-zip-manifest.xsl new file mode 100644 index 0000000..01e36af --- /dev/null +++ b/src/xslt/harvester/convert-directory-list-to-zip-manifest.xsl @@ -0,0 +1,15 @@ + + + + + + + + + + + + diff --git a/src/xslt/harvester/convert-zip-entry-to-http-request.xsl b/src/xslt/harvester/convert-zip-entry-to-http-request.xsl new file mode 100644 index 0000000..9b7ca70 --- /dev/null +++ b/src/xslt/harvester/convert-zip-entry-to-http-request.xsl @@ -0,0 +1,9 @@ + + + + + +