jhove-service 1.0.3 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/LICENSE.rdoc +1 -1
- data/README.rdoc +3 -0
- data/bin/console +9 -0
- data/bin/jhove-README-1st.txt +2 -225
- data/bin/jhove-apps-1.14.6.jar +0 -0
- data/bin/jhove.conf +11 -2
- data/bin/jhoveToolkit.sh +35 -3
- data/lib/jhove_service.rb +36 -15
- metadata +25 -42
- data/bin/JhoveApp.jar +0 -0
- data/bin/jhove-README-conf.txt +0 -63
- data/bin/jhoveToolkit.jar +0 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: d1422e93ce5a6f16d9582ee9aa74e818415717f8
|
4
|
+
data.tar.gz: d484c7740c2adf9b716abe1f5fa297fec1148665
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: d97605cf406b47cf9bca37fa1828b9c7fe03c6e30f124206ed2d96076d547dfc8b892fc6a384ef0f6678d0218313c89c998d2f457ef42861c113faa66fc1ade1
|
7
|
+
data.tar.gz: bf4ce1ef96d65ad07194e3f064b79e1f73d055d41ecce31d831b99ee2188a706dae81858b21e90e0902c3dcb7c30e860c263d7da83efcb398356dc5d3d60efe2
|
data/LICENSE.rdoc
CHANGED
data/README.rdoc
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
{<img src="https://travis-ci.org/sul-dlss/jhove-service.svg?branch=master" alt="Build Status" />}[https://travis-ci.org/sul-dlss/jhove-service]
|
2
|
+
|
1
3
|
= jhove-service
|
2
4
|
|
3
5
|
Require the following:
|
@@ -23,6 +25,7 @@ for more details
|
|
23
25
|
- <b>1.0.1</b> Updated to use new sul-gems server and new lyberteam-gems-devel utility
|
24
26
|
- <b>1.0.2</b> Fixed negative indentation problem for empty elements( e.g. <elem/>)
|
25
27
|
- <b>1.0.3</b> Upgraded bin/jhoveApp.jar to copy from Jhove 1.9 release
|
28
|
+
|
26
29
|
== Copyright
|
27
30
|
|
28
31
|
Copyright (c) 2013 Stanford University Library. See LICENSE for details.
|
data/bin/console
ADDED
data/bin/jhove-README-1st.txt
CHANGED
@@ -1,225 +1,2 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
JHOVE is made available under the GNU Lesser General Public License (LGPL;
|
4
|
-
see the file LICENSE for details)
|
5
|
-
|
6
|
-
Rev. 1.2, 2009-02-10
|
7
|
-
|
8
|
-
JHOVE (the JSTOR/Harvard Object Validation Environment, pronounced "jhove")
|
9
|
-
is an extensible software framework for performing format identification,
|
10
|
-
validation, and characterization of digital objects.
|
11
|
-
|
12
|
-
o Format identification is the process of determining the format to which a
|
13
|
-
digital object conforms: "I have a digital object; what format is it?"
|
14
|
-
o Format validation is the process of determining the level of compliance of a
|
15
|
-
digital object to the specification for its purported format: "I have an
|
16
|
-
object purportedly of format F; is it?"
|
17
|
-
o Format characterization is the process of determing the format-specific
|
18
|
-
significant properties of an object of a given format: "I have an object of
|
19
|
-
format F; what are its salient properties?"
|
20
|
-
|
21
|
-
These actions are frequently necessary during routine operation of digital
|
22
|
-
repositories and for digital preservation activities.
|
23
|
-
|
24
|
-
The output from JHOVE is controlled by output handlers. JHOVE uses an
|
25
|
-
extensible plug-in architecture; it can be configured at the time of its
|
26
|
-
invocation to include whatever specific format modules and output handlers
|
27
|
-
that are desired. The initial release of JHOVE includes modules for
|
28
|
-
arbitrary byte streams, ASCII and UTF-8 encoded text, AIFF and WAVE audio,
|
29
|
-
GIF, JPEG, JPEG 2000, TIFF, and PDF; and text and XML output handlers.
|
30
|
-
|
31
|
-
The JHOVE project is a collaboration of JSTOR and the Harvard University
|
32
|
-
Library. Development of JHOVE was funded in part by the Andrew W. Mellon
|
33
|
-
Foundation. JHOVE is made available under the GNU Lesser General Public
|
34
|
-
License (LGPL; see the file LICENSE for details).
|
35
|
-
|
36
|
-
REQUIREMENTS
|
37
|
-
|
38
|
-
1. Java J2SE 1.4
|
39
|
-
(JHOVE was originally implemented using the Sun J2SE SDK 1.4.1 and has
|
40
|
-
been tested to work with 1.4.2 <http://java.sun.com/j2se/1.4.2/>)
|
41
|
-
|
42
|
-
2. If you would like to compile the JHOVE source code, then
|
43
|
-
Apache Ant, a Java-based build tool <http://ant.apache.org/> is necessary.
|
44
|
-
Note that the JAVA_HOME environment variable must be set appropriately for
|
45
|
-
Ant to work properly.
|
46
|
-
(JHOVE was implemented and tested using Ant 1.5.1.)
|
47
|
-
|
48
|
-
DISTRIBUTION
|
49
|
-
|
50
|
-
The JHOVE distribution package includes:
|
51
|
-
|
52
|
-
jhove/ # JHOVE home directory
|
53
|
-
COPYING # GNU Lesser General Public License
|
54
|
-
LICENSE # JHOVE license information
|
55
|
-
README
|
56
|
-
RELEASENOTES # JHOVE release notes
|
57
|
-
bin/
|
58
|
-
jhove.jar # JHOVE API package
|
59
|
-
jhove-handler.jar # Standard output handler package
|
60
|
-
jhove-module.jar # Standard module package
|
61
|
-
JhoveApp.jar # JHOVE command line application
|
62
|
-
JhoveView.jar # JHOVE with Swing GUI front-end
|
63
|
-
build.xml # Ant configuration file
|
64
|
-
classes/
|
65
|
-
build.xml # Ant configuration file
|
66
|
-
edu/ ... # JHOVE API packages
|
67
|
-
ADump.* # AIFF dump utility class
|
68
|
-
GDump.* # GIF dump utility class
|
69
|
-
Jhove.* # JHOVE main class
|
70
|
-
JDump.* # JPEG dump utility class
|
71
|
-
J2Dump.* # JPEG 2000 dump utility class
|
72
|
-
PDump.* # PDF dump utility class
|
73
|
-
TDump.* # TIFF dump utility class
|
74
|
-
UserHome.* # user.home property utility class
|
75
|
-
WDump.* # WAVE dump utility class
|
76
|
-
conf/
|
77
|
-
jhove.conf # JHOVE configuration file
|
78
|
-
jhove.xsd # JHOVE output schema
|
79
|
-
jhoveConfig.xsd # JHOVE configuration file schema
|
80
|
-
doc/
|
81
|
-
*.html # API documentation
|
82
|
-
...
|
83
|
-
examples/ # Sample files
|
84
|
-
ascii/ ...
|
85
|
-
gif/ ...
|
86
|
-
jpeg/ ...
|
87
|
-
jpeg2000/ ...
|
88
|
-
pdf/ ...
|
89
|
-
tiff/ ...
|
90
|
-
utf-8/ ...
|
91
|
-
adump* # AIFF dump Bourne shell driver
|
92
|
-
adump.bat* # AIFF dump DOS shell driver script
|
93
|
-
gdump* # GIF dump Bourne shell driver
|
94
|
-
gdump.bat* # GIF dump DOS shell driver script
|
95
|
-
jdump* # JPEG dump Bourne shell driver
|
96
|
-
jdump.bat* # JPEG dump DOS shell driver script
|
97
|
-
j2dump* # JPEG 2000 dump Bourne shell driver
|
98
|
-
j2dump.bat* # JPEG 2000 dump DOS shell driver
|
99
|
-
jhove.tmpl* # Template for JHOVE Bourne shell driver script
|
100
|
-
jhove_bat.tmpl* # Template for JHOVE DOS shell driver script
|
101
|
-
pdump* # PDF dump Bourne shell driver
|
102
|
-
pdump.bat* # PDF dump DOS shell driver script
|
103
|
-
tdump* # TIFF dump Bourne shell driver
|
104
|
-
tdump.bat* # TIFF dump DOS shell driver script
|
105
|
-
userhome* # user.home Bourne shell driver
|
106
|
-
userhome.bat* # user.home DOS shell driver script
|
107
|
-
wdump* # WAVE dump Bourne shell driver
|
108
|
-
wdump.bat* # WAVE dump DOS shell driver script
|
109
|
-
|
110
|
-
INSTALLATION
|
111
|
-
|
112
|
-
Edit the configuration file, jhove/conf/jhove.conf, and set the absolute
|
113
|
-
pathname of the JHOVE home directory and the temporary directory (in which
|
114
|
-
temporary files are created):
|
115
|
-
|
116
|
-
<jhoveHome>jhove-home-directory</jhoveHome>
|
117
|
-
<tempDirectory>temporary-directory</tempDirectory>
|
118
|
-
|
119
|
-
The JHOVE home directory is the top-most directory in the distribution TAR
|
120
|
-
or ZIP file. On Unix systems, "/var/tmp" is an appropriate temporary
|
121
|
-
directory; on Windows, "C:\Temp". For example, if the distribution TAR
|
122
|
-
file is disaggregated on a Unix system in the directory "/users/stephen/
|
123
|
-
projects", then the configuration file should read:
|
124
|
-
|
125
|
-
<jhoveHome>/users/stephen/projects/jhove</jhoveHome>
|
126
|
-
<tempDirectory>/var/tmp</jhoveHome>
|
127
|
-
|
128
|
-
In the JHOVE home directory, copy the JHOVE Bourne shell driver script
|
129
|
-
template, "jhove.tmpl", to "jhove" (or the equivalent Windows shell
|
130
|
-
script, "jhove_bat.tmpl" to "jhove.bat"), and set the
|
131
|
-
JHOVE home directory, Java home directory, and Java interpreter:
|
132
|
-
|
133
|
-
JHOVE_HOME=jhove-home-directory
|
134
|
-
JAVA_HOME=java-home-directory
|
135
|
-
JAVA=java-interpreter
|
136
|
-
|
137
|
-
The JAVA_HOME property should provide the absolute pathname of the Java
|
138
|
-
runtime or SDK installation; JAVA should provide the absolute pathname of the
|
139
|
-
Java interpreter. For example:
|
140
|
-
|
141
|
-
JHOVE_HOME=/users/stephen/projects/jhove
|
142
|
-
JAVA_HOME=/usr/local/j2re1.4.1_02
|
143
|
-
JAVA=$JAVA_HOME/bin/java
|
144
|
-
|
145
|
-
In the DOS shell driver script, jhove.bat, the equivalent three
|
146
|
-
variables are:
|
147
|
-
|
148
|
-
SET JHOVE_HOME=jhove-home-directory
|
149
|
-
SET JAVA_HOME=java-home-directory
|
150
|
-
SET JAVA=%JAVA_HOME%\bin\java
|
151
|
-
|
152
|
-
For example:
|
153
|
-
|
154
|
-
SET JHOVE_HOME="C:\Program Files\jhove"
|
155
|
-
SET JAVA_HOME="C:\Program Files\java\j2re1.4.1_02"
|
156
|
-
SET JAVA=%JAVA_HOME%\bin\java
|
157
|
-
|
158
|
-
The quotation marks are necessary because of the embedded space characters.
|
159
|
-
On Windows platforms it may also be necessary to add the Java bin subdirectory
|
160
|
-
to the System PATH environment variable:
|
161
|
-
|
162
|
-
PATH=C:\Program Files\java\j2re1.4.1_02\bin;...
|
163
|
-
|
164
|
-
(For information on setting a Windows environment variable, consult your local
|
165
|
-
documentation or system administrator.)
|
166
|
-
|
167
|
-
USAGE
|
168
|
-
|
169
|
-
java Jhove [-c config] [-m module] [-h handler] [-e encoding] [-H handler]
|
170
|
-
[-o output] [-x saxclass] [-t tempdir] [-b bufsize]
|
171
|
-
[-l loglevel] [[-krs] dir-file-or-uri [...]]
|
172
|
-
|
173
|
-
where -c config Configuration file pathname
|
174
|
-
-m module Module name
|
175
|
-
-h handler Output handler name (defaults to TEXT)
|
176
|
-
-e encoding Character encoding used by output handler (defaults to UTF-8)
|
177
|
-
-H handler About handler name
|
178
|
-
-o output Output file pathname (defaults to standard output)
|
179
|
-
-x saxclass SAX parser class (defaults to J2SE 1.4 default)
|
180
|
-
-t tempdir Temporary directory in which to create temporary files
|
181
|
-
-b bufsize Buffer size for buffered I/O (defaults to J2SE 1.4 default)
|
182
|
-
-l loglevel Logging level
|
183
|
-
-k Calculate CRC32, MD5, and SHA-1 checksums
|
184
|
-
-r Display raw data flags, not textual equivalents
|
185
|
-
-s Format identification based on internal signatures only
|
186
|
-
dir-file-or-uri Directory or file pathname or URI of formated content
|
187
|
-
stream
|
188
|
-
|
189
|
-
All named modules and output handlers must be found on the Java CLASSPATH at
|
190
|
-
the time of invocation. The JHOVE driver script, jhove/jhove, automatically
|
191
|
-
sets the CLASSPATH and invokes the Jhove main class:
|
192
|
-
|
193
|
-
jhove [-c config] [-m module] [-h handler] [-e encoding] [-H handler]
|
194
|
-
[-o output] [-x saxclass] [-t tempdir] [-b bufsize] [-l loglevel]
|
195
|
-
[[-krs] dir-file-or-uri [...]]
|
196
|
-
|
197
|
-
The following additional programs are available, primarily for testing
|
198
|
-
and debugging purposes. They display a minimally processed, human-readable
|
199
|
-
version of the contents of AIFF, GIF, JPEG, JPEG 2000, PDF, TIFF, and WAVE
|
200
|
-
files:
|
201
|
-
|
202
|
-
java ADump aiff-file
|
203
|
-
java GDump gif-file
|
204
|
-
java JDump jpeg-file
|
205
|
-
java J2Dump jpeg2000-file
|
206
|
-
java PDump pdf-file
|
207
|
-
java TDump tiff-file
|
208
|
-
java WDump wave-file
|
209
|
-
|
210
|
-
For convenience, the following driver scripts are also available:
|
211
|
-
|
212
|
-
adump aiff-file
|
213
|
-
gdump gif-file
|
214
|
-
jdump jpeg-file
|
215
|
-
j2dump jpeg2000-file
|
216
|
-
pdump pdf-file
|
217
|
-
tdump tiff-file
|
218
|
-
wdump wave-file
|
219
|
-
|
220
|
-
The JHOVE Swing-based GUI interface can be invoked from a command shell from
|
221
|
-
the jhove/bin sub-directory:
|
222
|
-
|
223
|
-
java -jar JhoveView.jar -c <configFile>
|
224
|
-
|
225
|
-
where <configFile> is the pathname of the JHOVE configuration file.
|
1
|
+
http://jhove.openpreservation.org/getting-started/
|
2
|
+
http://jhove.openpreservation.org/documentation/
|
Binary file
|
data/bin/jhove.conf
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
-
<jhoveConfig version="1.
|
2
|
+
<jhoveConfig version="1.0"
|
3
3
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
4
4
|
xmlns="http://hul.harvard.edu/ois/xml/ns/jhove/jhoveConfig"
|
5
5
|
xsi:schemaLocation="http://hul.harvard.edu/ois/xml/ns/jhove/jhoveConfig
|
@@ -19,6 +19,9 @@
|
|
19
19
|
<module>
|
20
20
|
<class>edu.harvard.hul.ois.jhove.module.PdfModule</class>
|
21
21
|
</module>
|
22
|
+
<module>
|
23
|
+
<class>com.mcgath.jhove.module.PngModule</class>
|
24
|
+
</module>
|
22
25
|
<module>
|
23
26
|
<class>edu.harvard.hul.ois.jhove.module.Jpeg2000Module</class>
|
24
27
|
</module>
|
@@ -33,10 +36,17 @@
|
|
33
36
|
</module>
|
34
37
|
<module>
|
35
38
|
<class>edu.harvard.hul.ois.jhove.module.XmlModule</class>
|
39
|
+
<param>schema=http://www.example.com/schema;/home/schemas/exampleschema.xsd</param>
|
36
40
|
</module>
|
37
41
|
<module>
|
38
42
|
<class>edu.harvard.hul.ois.jhove.module.HtmlModule</class>
|
39
43
|
</module>
|
44
|
+
<module>
|
45
|
+
<class>edu.harvard.hul.ois.jhove.module.WarcModule</class>
|
46
|
+
</module>
|
47
|
+
<module>
|
48
|
+
<class>edu.harvard.hul.ois.jhove.module.GzipModule</class>
|
49
|
+
</module>
|
40
50
|
<module>
|
41
51
|
<class>edu.harvard.hul.ois.jhove.module.AsciiModule</class>
|
42
52
|
</module>
|
@@ -46,5 +56,4 @@
|
|
46
56
|
<outputHandler>
|
47
57
|
<class>edu.harvard.hul.ois.jhove.handler.XmlHandler</class>
|
48
58
|
</outputHandler>
|
49
|
-
|
50
59
|
</jhoveConfig>
|
data/bin/jhoveToolkit.sh
CHANGED
@@ -1,11 +1,43 @@
|
|
1
1
|
#!/bin/sh
|
2
2
|
|
3
|
+
########################################################################
|
4
|
+
# JHOVE - JSTOR/Harvard Object Validation Environment
|
5
|
+
# Copyright 2003-2005 by JSTOR and the President and Fellows of Harvard College
|
6
|
+
# JHOVE is made available under the GNU General Public License (see the
|
7
|
+
# file LICENSE for details)
|
8
|
+
#
|
9
|
+
# Usage: jhove [-c config] [-m module] [-h handler] [-e encoding] [-H handler]
|
10
|
+
# [-o output] [-x saxclass] [-t tempdir] [-b bufsize]
|
11
|
+
# [-l loglevel] [[-krs] dir-file-or-uri [...]]
|
12
|
+
#
|
13
|
+
# where -c config Configuration file pathname
|
14
|
+
# -m module Module name
|
15
|
+
# -h handler Output handler name (defaults to TEXT)
|
16
|
+
# -e encoding Character encoding of output handler (defaults to UTF-8)
|
17
|
+
# -H handler About handler name
|
18
|
+
# -o output Output file pathname (defaults to standard output)
|
19
|
+
# -x saxclass SAX parser class (defaults to J2SE 1.4 default)
|
20
|
+
# -t tempdir Temporary directory in which to create temporary files
|
21
|
+
# -b bufsize Buffer size for buffered I/O (defaults to J2SE 1.4 default)
|
22
|
+
# -k Calculate CRC32, MD5, and SHA-1 checksums
|
23
|
+
# -r Display raw data flags, not textual equivalents
|
24
|
+
# -s Format identification based on internal signatures only
|
25
|
+
# dir-file-or-uri Directory, file pathname or URI of formatted content
|
26
|
+
#
|
27
|
+
# CHANGE for JHOVE 1.8:
|
28
|
+
# You no longer have to figure out where JAVA_HOME is; that's the
|
29
|
+
# operating system's job. If the OS tells you it can't find Java,
|
30
|
+
# adjust your shell's path or revert to the old way (commented out).
|
31
|
+
# Configuration constants:
|
32
|
+
|
3
33
|
JHOVE_HOME=`dirname $0`
|
34
|
+
JHOVE_VERSION=1.14.6
|
35
|
+
|
4
36
|
export JHOVE_HOME
|
5
37
|
JAVA_HOME=/etc/alternatives/jre
|
6
38
|
JAVA=/usr/bin/java
|
7
39
|
|
8
|
-
CP=${JHOVE_HOME}/
|
40
|
+
CP=${JHOVE_HOME}/jhove-apps-${JHOVE_VERSION}.jar:${EXTRA_JARS}
|
9
41
|
|
10
42
|
# Retrieve a copy of all command line arguments to pass to the application.
|
11
43
|
# Since looping over the positional parameters is such a common thing to do in scripts,
|
@@ -14,10 +46,10 @@ CP=${JHOVE_HOME}/jhoveToolkit.jar:${JHOVE_HOME}/JhoveApp.jar
|
|
14
46
|
# for arg in "$@".
|
15
47
|
# The double-quoted "$@" is special magic that causes each parameter to be used as a single word
|
16
48
|
|
17
|
-
ARGS=""
|
49
|
+
ARGS="-c ${JHOVE_HOME}/jhove.conf"
|
18
50
|
for ARG do
|
19
51
|
ARGS="$ARGS $ARG"
|
20
52
|
done
|
21
53
|
|
22
54
|
# Set the CLASSPATH and invoke the Java loader.
|
23
|
-
${JAVA} -Xms128M -Xmx3000M -classpath $CP $ARGS
|
55
|
+
${JAVA} -Xms128M -Xmx3000M -classpath $CP Jhove $ARGS
|
data/lib/jhove_service.rb
CHANGED
@@ -34,25 +34,46 @@ require 'stringio'
|
|
34
34
|
# @param fileset_file [Pathname,String] the pathname of the file listing which files should be processed. If nil, process all files.
|
35
35
|
# @return [String] Run JHOVE to characterize all content files, returning the output file path
|
36
36
|
def run_jhove(content_dir, fileset_file=nil)
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
37
|
+
raise "Content #{content_dir} not found" unless File.directory? content_dir
|
38
|
+
if fileset_file.nil? # a simple directory gets called directly
|
39
|
+
exec_command(get_jhove_command(content_dir))
|
40
|
+
else # a filelist gets run one by one, jhove cannot do this out of the box, so we need to run jhove file by file and then assemble the results ourselves into a single XML
|
41
|
+
raise "File list #{fileset_file} not found" unless File.exists? fileset_file
|
42
|
+
files = File.new(fileset_file).readlines
|
43
|
+
raise "File list #{fileset_file} empty" if files.size == 0
|
44
|
+
combined_xml_output = ""
|
45
|
+
jhove_output_xml_ng = Nokogiri::XML('')
|
46
|
+
files.each_with_index do |filename,i| # generate jhove output for each file in a separate xml file
|
47
|
+
full_path_to_file = File.join(content_dir,filename.strip)
|
48
|
+
output_file = @target_pathname.join("jhove_output_#{i}.xml")
|
49
|
+
exec_command(get_jhove_command(full_path_to_file,output_file))
|
50
|
+
jhove_output_xml_ng = File.open(output_file) { |f| Nokogiri::XML(f) }
|
51
|
+
combined_xml_output += jhove_output_xml_ng.css("//repInfo").to_xml # build up an XML string with all output
|
52
|
+
output_file.delete
|
53
|
+
end
|
54
|
+
jhove_output_xml_ng.root.children.each {|n| n.remove} # use of the files we built up above, strip all the children to ge the root jhove node
|
55
|
+
jhove_output_xml_ng.root << combined_xml_output # now add the combined xml for all files
|
56
|
+
File.write(jhove_output, jhove_output_xml_ng.to_xml)
|
41
57
|
end
|
42
58
|
jhove_output.to_s
|
43
59
|
end
|
44
60
|
|
45
|
-
# @param
|
46
|
-
# @
|
61
|
+
# @param command [String] the command to execute on the command line
|
62
|
+
# @return [String] exitcode, or raised exception if there is a problem
|
63
|
+
def exec_command(command)
|
64
|
+
`#{command}`
|
65
|
+
exitcode = $?.exitstatus
|
66
|
+
raise "Error when running JHOVE #{command}" if (exitcode != 0)
|
67
|
+
exitcode
|
68
|
+
end
|
69
|
+
|
70
|
+
# @param content [Pathname,String] the directory path or filename containing the folder or file to be analyzed by JHOVE
|
71
|
+
# @param output_file [Pathname,String] the output file to write the XML to, defaults to filename specified in jhove_output
|
47
72
|
# @return [String] The jhove-toolkit command to be exectuted in a system call
|
48
|
-
def get_jhove_command(
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
args = "edu.stanford.sulair.jhove.JhoveFileset #{content_dir.to_s} #{fileset_file.to_s}"
|
53
|
-
end
|
54
|
-
jhove_script = @bin_pathname.join('jhoveToolkit.sh').to_s
|
55
|
-
jhove_cmd = "#{jhove_script} #{args} > #{jhove_output.to_s}"
|
73
|
+
def get_jhove_command(content,output_file = jhove_output)
|
74
|
+
args = "-h xml -o \"#{output_file}\" \\\"#{content}"
|
75
|
+
jhove_script = @bin_pathname.join('jhoveToolkit.sh')
|
76
|
+
jhove_cmd = "#{jhove_script} #{args}"
|
56
77
|
jhove_cmd
|
57
78
|
end
|
58
79
|
|
@@ -91,4 +112,4 @@ require 'stringio'
|
|
91
112
|
tech_md_output.delete if tech_md_output.exist?
|
92
113
|
end
|
93
114
|
|
94
|
-
end
|
115
|
+
end
|
metadata
CHANGED
@@ -1,157 +1,140 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jhove-service
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
5
|
-
prerelease:
|
4
|
+
version: 1.1.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Richard Anderson
|
8
|
+
- Peter Mangiafico
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2017-03-22 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: nokogiri
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
17
|
requirements:
|
19
|
-
- -
|
18
|
+
- - ">="
|
20
19
|
- !ruby/object:Gem::Version
|
21
20
|
version: 1.4.3.1
|
22
21
|
type: :runtime
|
23
22
|
prerelease: false
|
24
23
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
24
|
requirements:
|
27
|
-
- -
|
25
|
+
- - ">="
|
28
26
|
- !ruby/object:Gem::Version
|
29
27
|
version: 1.4.3.1
|
30
28
|
- !ruby/object:Gem::Dependency
|
31
29
|
name: equivalent-xml
|
32
30
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
31
|
requirements:
|
35
|
-
- -
|
32
|
+
- - ">="
|
36
33
|
- !ruby/object:Gem::Version
|
37
34
|
version: 0.2.2
|
38
35
|
type: :development
|
39
36
|
prerelease: false
|
40
37
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
38
|
requirements:
|
43
|
-
- -
|
39
|
+
- - ">="
|
44
40
|
- !ruby/object:Gem::Version
|
45
41
|
version: 0.2.2
|
46
42
|
- !ruby/object:Gem::Dependency
|
47
43
|
name: rake
|
48
44
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
45
|
requirements:
|
51
|
-
- -
|
46
|
+
- - ">="
|
52
47
|
- !ruby/object:Gem::Version
|
53
48
|
version: 0.8.7
|
54
49
|
type: :development
|
55
50
|
prerelease: false
|
56
51
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
52
|
requirements:
|
59
|
-
- -
|
53
|
+
- - ">="
|
60
54
|
- !ruby/object:Gem::Version
|
61
55
|
version: 0.8.7
|
62
56
|
- !ruby/object:Gem::Dependency
|
63
57
|
name: rdoc
|
64
58
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
59
|
requirements:
|
67
|
-
- -
|
60
|
+
- - ">="
|
68
61
|
- !ruby/object:Gem::Version
|
69
62
|
version: '0'
|
70
63
|
type: :development
|
71
64
|
prerelease: false
|
72
65
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
66
|
requirements:
|
75
|
-
- -
|
67
|
+
- - ">="
|
76
68
|
- !ruby/object:Gem::Version
|
77
69
|
version: '0'
|
78
70
|
- !ruby/object:Gem::Dependency
|
79
71
|
name: rspec
|
80
72
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
73
|
requirements:
|
83
|
-
- -
|
74
|
+
- - ">="
|
84
75
|
- !ruby/object:Gem::Version
|
85
76
|
version: '0'
|
86
77
|
type: :development
|
87
78
|
prerelease: false
|
88
79
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
80
|
requirements:
|
91
|
-
- -
|
81
|
+
- - ">="
|
92
82
|
- !ruby/object:Gem::Version
|
93
83
|
version: '0'
|
94
84
|
- !ruby/object:Gem::Dependency
|
95
85
|
name: yard
|
96
86
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
87
|
requirements:
|
99
|
-
- -
|
88
|
+
- - ">="
|
100
89
|
- !ruby/object:Gem::Version
|
101
90
|
version: '0'
|
102
91
|
type: :development
|
103
92
|
prerelease: false
|
104
93
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
94
|
requirements:
|
107
|
-
- -
|
95
|
+
- - ">="
|
108
96
|
- !ruby/object:Gem::Version
|
109
97
|
version: '0'
|
110
98
|
description: Generates JHOVE output and/or technicalMetadata
|
111
99
|
email:
|
112
100
|
- rnanders@stanford.edu
|
101
|
+
- petucket@stanford.edu
|
113
102
|
executables: []
|
114
103
|
extensions: []
|
115
104
|
extra_rdoc_files: []
|
116
105
|
files:
|
106
|
+
- LICENSE.rdoc
|
107
|
+
- README.rdoc
|
108
|
+
- bin/console
|
117
109
|
- bin/extension-mimetype.conf
|
118
110
|
- bin/jhove-README-1st.txt
|
119
|
-
- bin/jhove-
|
111
|
+
- bin/jhove-apps-1.14.6.jar
|
120
112
|
- bin/jhove.conf
|
121
|
-
- bin/JhoveApp.jar
|
122
|
-
- bin/jhoveToolkit.jar
|
123
113
|
- bin/jhoveToolkit.sh
|
124
114
|
- lib/jhove_service.rb
|
125
115
|
- lib/jhove_technical_metadata.rb
|
126
116
|
- lib/tasks/yard.rake
|
127
|
-
- LICENSE.rdoc
|
128
|
-
- README.rdoc
|
129
117
|
homepage:
|
130
118
|
licenses: []
|
119
|
+
metadata: {}
|
131
120
|
post_install_message:
|
132
121
|
rdoc_options: []
|
133
122
|
require_paths:
|
134
123
|
- lib
|
135
124
|
required_ruby_version: !ruby/object:Gem::Requirement
|
136
|
-
none: false
|
137
125
|
requirements:
|
138
|
-
- -
|
126
|
+
- - ">="
|
139
127
|
- !ruby/object:Gem::Version
|
140
128
|
version: '0'
|
141
|
-
segments:
|
142
|
-
- 0
|
143
|
-
hash: 4252808025718583470
|
144
129
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
145
|
-
none: false
|
146
130
|
requirements:
|
147
|
-
- -
|
131
|
+
- - ">="
|
148
132
|
- !ruby/object:Gem::Version
|
149
133
|
version: 1.3.6
|
150
134
|
requirements: []
|
151
135
|
rubyforge_project:
|
152
|
-
rubygems_version:
|
136
|
+
rubygems_version: 2.6.11
|
153
137
|
signing_key:
|
154
|
-
specification_version:
|
138
|
+
specification_version: 4
|
155
139
|
summary: Generates JHOVE output and/or technicalMetadata
|
156
140
|
test_files: []
|
157
|
-
has_rdoc:
|
data/bin/JhoveApp.jar
DELETED
Binary file
|
data/bin/jhove-README-conf.txt
DELETED
@@ -1,63 +0,0 @@
|
|
1
|
-
JHOVE - JSTOR/Harvard Object Validation Environment
|
2
|
-
Copyright 2003-2007 by JSTOR and the President and Fellows of Harvard College
|
3
|
-
JHOVE is made available under the GNU General Public License (see the file
|
4
|
-
LICENSE for details)
|
5
|
-
|
6
|
-
Rev. 2007-08-30
|
7
|
-
|
8
|
-
Edit the configuration file, jhove.conf, and set the JHOVE home
|
9
|
-
directory:
|
10
|
-
|
11
|
-
<jhoveHome>jhove-home-directory</jhoveHome>
|
12
|
-
|
13
|
-
and temporary directory:
|
14
|
-
|
15
|
-
<tempDirectory>temporary-directory</tempDirectory>
|
16
|
-
|
17
|
-
On most Unix systems, a reasonable temporary directory is "/var/tmp";
|
18
|
-
on Windows, "C:\temp".
|
19
|
-
|
20
|
-
The optional
|
21
|
-
|
22
|
-
<bufferSize>buffer-size</bufferSize>
|
23
|
-
|
24
|
-
element defines the buffer size used for buffer I/O operations.
|
25
|
-
|
26
|
-
The optional
|
27
|
-
|
28
|
-
<mixVersion>1.0</mixVersion>
|
29
|
-
|
30
|
-
element specifies that the XML output handler should conform to the
|
31
|
-
MIX 1.0 schema. The default behavior is for handler output to conform
|
32
|
-
to the MIX 0.2 schema.
|
33
|
-
|
34
|
-
The optional
|
35
|
-
|
36
|
-
<sigBytes>n</sigBytes>
|
37
|
-
|
38
|
-
element specifies that JHOVE modules will look for format signatures
|
39
|
-
in the first <n> bytes of the file. The default value is 1024.
|
40
|
-
|
41
|
-
All class names must be fully qualified with their package name:
|
42
|
-
|
43
|
-
<module>
|
44
|
-
<class>fully-package-qualified-class-name</class>
|
45
|
-
<init>optional-initialization-argument</init>
|
46
|
-
<param>optional-invocation-argument</param>
|
47
|
-
</module>
|
48
|
-
|
49
|
-
The optional <init> argument is passed to the module once at the time
|
50
|
-
its class is instantiated. See module-specific documentation for a
|
51
|
-
description of any initialization options.
|
52
|
-
|
53
|
-
The optional <param> argument is passed to the module every time it is
|
54
|
-
invoked. See module-specific documentation for a description of any
|
55
|
-
invocation options.
|
56
|
-
|
57
|
-
The order in which format modules are defined is important; when
|
58
|
-
performing a format identification operation, JHOVE will search for a
|
59
|
-
matching module in the order in which the modules are defined in the
|
60
|
-
configuration file. In general, the modules for more generic formats
|
61
|
-
should come later in the list. For example, the standard module ASCII
|
62
|
-
should be defined before the UTF-8 module, since all ASCII objects
|
63
|
-
are, by definition, UTF-8 objects, but not vice versa.
|
data/bin/jhoveToolkit.jar
DELETED
Binary file
|