hydra-core 5.0.0.pre14 → 5.0.0.pre15

Sign up to get free protection for your applications and to get access to all the features.
data/hydra-core.gemspec CHANGED
@@ -20,9 +20,9 @@ Gem::Specification.new do |gem|
20
20
 
21
21
 
22
22
  gem.add_dependency "rails", '~>3.2.3'
23
- gem.add_dependency "blacklight", '~> 4.0.0.pre7'
23
+ gem.add_dependency "blacklight", '~> 4.0.0.rc1'
24
24
  gem.add_dependency "devise"
25
- gem.add_dependency "active-fedora", '~> 5.0.0.rc4'
25
+ gem.add_dependency "active-fedora", '~> 5.0.0.rc5'
26
26
  gem.add_dependency 'RedCloth', '=4.2.9'
27
27
  gem.add_dependency 'block_helpers'
28
28
  gem.add_dependency 'sanitize'
@@ -111,7 +111,7 @@ EOF
111
111
  "\n # Extend Blacklight::Catalog with Hydra behaviors (primarily editing)." +
112
112
  "\n include Hydra::Controller::ControllerBehavior\n" +
113
113
  "\n # These before_filters apply the hydra access controls" +
114
- "\n before_filter :enforce_access_controls" +
114
+ "\n before_filter :enforce_show_permissions, :only=>:show" +
115
115
  "\n # This applies appropriate access controls to all solr queries" +
116
116
  "\n CatalogController.solr_search_params_logic << :add_access_controls_to_solr_params" +
117
117
  "\n # This filters out objects that you want to exclude from search results, like FileAssets" +
@@ -1,38 +1,53 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <server xmlns="http://www.fedora.info/definitions/1/0/config/" class="org.fcrepo.server.BasicServer">
3
- <param name="repositoryName" value="Fedora Repository">
4
- <comment>Defines a human readable name for the Fedora server; default is
5
- Fedora Repository.</comment>
6
- </param>
7
- <param name="adminEmailList" value="bob@example.org sally@example.org">
8
- <comment>Defines one or more email addresses for server administrators;
9
- list is space delimited.</comment>
3
+ <param name="datastreamExtensionMappingSource" value="mime-to-extensions.xml">
4
+ <comment>Source of mappings from MIMETYPE to file extension</comment>
10
5
  </param>
11
- <param name="fedoraServerPort" value="8983">
12
- <comment>Defines the port number on which the Fedora server runs;
13
- default is 8080.</comment>
6
+ <param name="datastreamExtensionMappingId" value="ifmissing">
7
+ <comment>Controls filename extension mapping when the datastream ID is used
8
+ as the source of the filename. Values are as above.</comment>
14
9
  </param>
15
- <param name="fedoraShutdownPort" value="8005">
16
- <comment>Defines the port number used to shutdown the Fedora sever;
17
- default is 8005.</comment>
10
+ <param name="httpClientMaxConnectionsPerHost" value="5">
11
+ <comment>Maximum number of Fedora http client connections allowed to a given host.</comment>
18
12
  </param>
19
- <param name="fedoraRedirectPort" value="8443">
20
- <comment>Defines the redirect port of the Fedora sever; default is 8443.</comment>
13
+ <param name="httpClientSocketTimeoutSecs" value="120">
14
+ <comment>Number of seconds Fedora http client will wait for data coming across an
15
+ established http connection.</comment>
21
16
  </param>
22
17
  <param name="fedoraServerHost" value="localhost">
23
18
  <comment>Defines the host name for the Fedora server, as seen from the
24
19
  outside world.</comment>
25
20
  </param>
26
- <param name="fedoraAppServerContext" value="fedora">
27
- <comment>Defines the context name for the Fedora server within the
28
- application server. If set to eg &quot;myfedora&quot; the URL for Fedora will result
29
- in http[s]://fedoraServerHost[:fedoraServerPort]/myfedora.</comment>
21
+ <param name="datastreamExtensionMappingLabel" value="always">
22
+ <comment>Controls filename extension mapping when the datastream label is used
23
+ as the source of the filename. Values are always: always generate an extension
24
+ based on the MIMETYPE, using the default extension if none can be determined;
25
+ ifmissing: generate an extension if the filename obtained from the source does not
26
+ already contain one (again returning the default if there is no MIMETYPE-to-extension
27
+ mapping is found); never: never generate an extension, use the filename from the source
28
+ as-is</comment>
30
29
  </param>
31
- <param name="datastreamExpirationLimit" value="300">
32
- <comment>Controls the size of the datastream mediation hash by removing
33
- entries outside the specified threshold. The value is specified in
34
- seconds. Note this value must be greater than the limit specified for
35
- the datastreamMediationLimit.</comment>
30
+ <param name="httpClientMaxFollowRedirects" value="3">
31
+ <comment>Maximun number of redirects the Fedora http client will follow (only if
32
+ httpClientFollowRedirects is set to true.)</comment>
33
+ </param>
34
+ <param name="httpClientUserAgent" value="Fedora">
35
+ <comment>The value to be set for the User-Agent HTTP request header.</comment>
36
+ </param>
37
+ <param name="httpClientMaxTotalConnections" value="5">
38
+ <comment>Maximum number of total Fedora http client connections allowed at once.</comment>
39
+ </param>
40
+ <param name="datastreamFilenameSource" value="rels label id">
41
+ <comment>determines the source of the filename generated when download=true
42
+ on a datastream dissemination. Value is space separated list of label: use the datastream label;
43
+ id: use the datastream ID; rels: use the value defined in RELS-INT. Each
44
+ source is checked in order, and the first containing a value is used. Omit
45
+ any of the sources if that source is never to be used. If no sources are to be used,
46
+ and just the default filename and extension below are to be used, specify &quot; &quot;.</comment>
47
+ </param>
48
+ <param name="adminEmailList" value="bob@example.org sally@example.org">
49
+ <comment>Defines one or more email addresses for server administrators;
50
+ list is space delimited.</comment>
36
51
  </param>
37
52
  <param name="datastreamMediationLimit" value="5000">
38
53
  <comment>Determines the time interval in which external mechanisms must
@@ -42,6 +57,22 @@
42
57
  this value must be less than the limit specified for the
43
58
  datastreamExpirationLimit.</comment>
44
59
  </param>
60
+ <param name="fedoraServerPort" value="8983">
61
+ <comment>Defines the port number on which the Fedora server runs;
62
+ default is 8080.</comment>
63
+ </param>
64
+ <param name="fedoraRedirectPort" value="8443">
65
+ <comment>Defines the redirect port of the Fedora sever; default is 8443.</comment>
66
+ </param>
67
+ <param name="httpClientFollowRedirects" value="true">
68
+ <comment>Should the Fedora http client follow redirects?</comment>
69
+ </param>
70
+ <param name="datastreamExtensionMappingDefault" value="never">
71
+ <comment>Controls filename extension mapping when no filename can be determined from
72
+ the sources listed in datastreamFilenameSource. Values are always: always generate an extension
73
+ based on the MIMETYPE (using the default if no appropriate mapping is specified);
74
+ never: never generate an extension.</comment>
75
+ </param>
45
76
  <param name="datastreamContentDispositionInlineEnabled" value="true">
46
77
  <comment>determines if a content-disposition header specifying &quot;inline&quot; and
47
78
  a filename is added to the response for the REST API getDatastreamDissemination
@@ -51,85 +82,52 @@
51
82
  have it provided when download=true is specified, in which case the content disposition
52
83
  of &quot;attachment&quot; will be used; which is generally supported.</comment>
53
84
  </param>
54
- <param name="datastreamFilenameSource" value="rels label id">
55
- <comment>determines the source of the filename generated when download=true
56
- on a datastream dissemination. Value is space separated list of label: use the datastream label;
57
- id: use the datastream ID; rels: use the value defined in RELS-INT. Each
58
- source is checked in order, and the first containing a value is used. Omit
59
- any of the sources if that source is never to be used. If no sources are to be used,
60
- and just the default filename and extension below are to be used, specify &quot; &quot;.</comment>
61
- </param>
62
- <param name="datastreamExtensionMappingLabel" value="always">
63
- <comment>Controls filename extension mapping when the datastream label is used
64
- as the source of the filename. Values are always: always generate an extension
65
- based on the MIMETYPE, using the default extension if none can be determined;
66
- ifmissing: generate an extension if the filename obtained from the source does not
67
- already contain one (again returning the default if there is no MIMETYPE-to-extension
68
- mapping is found); never: never generate an extension, use the filename from the source
69
- as-is</comment>
70
- </param>
71
- <param name="datastreamExtensionMappingId" value="ifmissing">
72
- <comment>Controls filename extension mapping when the datastream ID is used
73
- as the source of the filename. Values are as above.</comment>
85
+ <param name="fedoraAppServerContext" value="fedora">
86
+ <comment>Defines the context name for the Fedora server within the
87
+ application server. If set to eg &quot;myfedora&quot; the URL for Fedora will result
88
+ in http[s]://fedoraServerHost[:fedoraServerPort]/myfedora.</comment>
74
89
  </param>
75
- <param name="datastreamExtensionMappingRels" value="never">
76
- <comment>Controls filename extension mapping when RELS-INT is used
77
- as the source of the filename. Values are as above.</comment>
90
+ <param name="fedoraShutdownPort" value="8005">
91
+ <comment>Defines the port number used to shutdown the Fedora sever;
92
+ default is 8005.</comment>
78
93
  </param>
79
- <param name="datastreamExtensionMappingDefault" value="never">
80
- <comment>Controls filename extension mapping when no filename can be determined from
81
- the sources listed in datastreamFilenameSource. Values are always: always generate an extension
82
- based on the MIMETYPE (using the default if no appropriate mapping is specified);
83
- never: never generate an extension.</comment>
94
+ <param name="datastreamDefaultExtension" value="bin">
95
+ <comment>Extension to use when none can be determined from mappings</comment>
84
96
  </param>
85
97
  <param name="datastreamDefaultFilename" value="download">
86
98
  <comment>Filename to use for datastream downloads when none can be determined from the
87
99
  sources listed in datastreamFilenameSource.</comment>
88
100
  </param>
89
- <param name="datastreamDefaultExtension" value="bin">
90
- <comment>Extension to use when none can be determined from mappings</comment>
101
+ <param name="datastreamExpirationLimit" value="300">
102
+ <comment>Controls the size of the datastream mediation hash by removing
103
+ entries outside the specified threshold. The value is specified in
104
+ seconds. Note this value must be greater than the limit specified for
105
+ the datastreamMediationLimit.</comment>
91
106
  </param>
92
- <param name="datastreamExtensionMappingSource" value="mime-to-extensions.xml">
93
- <comment>Source of mappings from MIMETYPE to file extension</comment>
107
+ <param name="datastreamExtensionMappingRels" value="never">
108
+ <comment>Controls filename extension mapping when RELS-INT is used
109
+ as the source of the filename. Values are as above.</comment>
94
110
  </param>
95
111
  <param name="httpClientTimeoutSecs" value="20">
96
112
  <comment>Number of seconds Fedora http client will wait for a connection before timing
97
113
  out.</comment>
98
114
  </param>
99
- <param name="httpClientSocketTimeoutSecs" value="120">
100
- <comment>Number of seconds Fedora http client will wait for data coming across an
101
- established http connection.</comment>
102
- </param>
103
- <param name="httpClientMaxConnectionsPerHost" value="5">
104
- <comment>Maximum number of Fedora http client connections allowed to a given host.</comment>
105
- </param>
106
- <param name="httpClientMaxTotalConnections" value="5">
107
- <comment>Maximum number of total Fedora http client connections allowed at once.</comment>
108
- </param>
109
- <param name="httpClientFollowRedirects" value="true">
110
- <comment>Should the Fedora http client follow redirects?</comment>
111
- </param>
112
- <param name="httpClientMaxFollowRedirects" value="3">
113
- <comment>Maximun number of redirects the Fedora http client will follow (only if
114
- httpClientFollowRedirects is set to true.)</comment>
115
- </param>
116
- <param name="httpClientUserAgent" value="Fedora">
117
- <comment>The value to be set for the User-Agent HTTP request header.</comment>
115
+ <param name="repositoryName" value="Fedora Repository">
116
+ <comment>Defines a human readable name for the Fedora server; default is
117
+ Fedora Repository.</comment>
118
118
  </param>
119
- <module role="org.fcrepo.server.storage.lowlevel.ILowlevelStorage" class="org.fcrepo.server.storage.lowlevel.akubra.AkubraLowlevelStorageModule">
120
- </module>
121
119
  <module role="org.fcrepo.server.security.Authorization" class="org.fcrepo.server.security.DefaultAuthorization">
122
120
  <comment>Builds and manages Fedora's authorization structure.</comment>
123
- <param name="REPOSITORY-POLICIES-DIRECTORY" value="data/fedora-xacml-policies/repository-policies" isFilePath="true"/>
124
121
  <param name="REPOSITORY-POLICY-GUITOOL-POLICIES-DIRECTORY" value="data/fedora-xacml-policies/repository-policies-generated-by-policyguitool" isFilePath="true">
125
122
  <comment>This parameter is for future use.</comment>
126
123
  </param>
127
- <param name="XACML-COMBINING-ALGORITHM" value="com.sun.xacml.combine.OrderedDenyOverridesPolicyAlg"/>
128
- <param name="ENFORCE-MODE" value="permit-all-requests"/>
129
124
  <param name="POLICY-SCHEMA-PATH" value="xsd/cs-xacml-schema-policy-01.xsd"/>
130
- <param name="VALIDATE-REPOSITORY-POLICIES" value="true"/>
131
- <param name="VALIDATE-OBJECT-POLICIES-FROM-FILE" value="false"/>
125
+ <param name="ENFORCE-MODE" value="permit-all-requests"/>
132
126
  <param name="VALIDATE-OBJECT-POLICIES-FROM-DATASTREAM" value="false"/>
127
+ <param name="XACML-COMBINING-ALGORITHM" value="com.sun.xacml.combine.OrderedDenyOverridesPolicyAlg"/>
128
+ <param name="VALIDATE-OBJECT-POLICIES-FROM-FILE" value="false"/>
129
+ <param name="VALIDATE-REPOSITORY-POLICIES" value="true"/>
130
+ <param name="REPOSITORY-POLICIES-DIRECTORY" value="data/fedora-xacml-policies/repository-policies" isFilePath="true"/>
133
131
  </module>
134
132
  <module role="org.fcrepo.server.security.BackendSecurity" class="org.fcrepo.server.security.DefaultBackendSecurity">
135
133
  <comment>Description: Interface to the backend service security
@@ -138,28 +136,43 @@
138
136
  This file is located in the distribution in
139
137
  $FEDORA_HOME/dist/server/config/beSecurity.xml. The configuration file
140
138
  is read once at server startup.</comment>
141
- <param name="beSecurity_validation" value="false">
142
- <comment>Controls whether beSecurity config file is validated
143
- against the beSecurityDescription schema. The default is
144
- &quot;false&quot;. Valid values are &quot;true&quot; or
145
- &quot;false&quot;.</comment>
146
- </param>
147
139
  <param name="beSecurity_char_encoding" value="utf-8">
148
140
  <comment>The character encoding used for the beSecurity
149
141
  configuration file. The default is &quot;utf-8&quot;. The value
150
142
  specified must correspond to the character encoding used in the
151
143
  beSecurity configuration file.</comment>
152
144
  </param>
145
+ <param name="beSecurity_validation" value="false">
146
+ <comment>Controls whether beSecurity config file is validated
147
+ against the beSecurityDescription schema. The default is
148
+ &quot;false&quot;. Valid values are &quot;true&quot; or
149
+ &quot;false&quot;.</comment>
150
+ </param>
153
151
  </module>
154
152
  <module role="org.fcrepo.server.storage.DOManager" class="org.fcrepo.server.storage.DefaultDOManager">
155
153
  <comment>The interface to the storage subsystem. This provides
156
154
  context-appropriate DOReaders and DOWriters for reflecting on and
157
155
  writing to the objects stored in the repository. It also provides
158
156
  methods for reflecting on the contents of the repository as a whole..</comment>
159
- <param name="pidNamespace" value="changeme">
160
- <comment>This is the namespace id for pids of newly-created objects.
161
- This should be unique for a repository. It can be from 1 to 17
162
- characters, and may only contain A-Z, a-z, 0-9, &apos;.&apos;, or &apos;-&apos; (dash).</comment>
157
+ <param name="defaultDCControlGroup" value="X">
158
+ <comment>The control group to use for the system-generated DC datastream
159
+ if no DC datastream is present on ingest. Must be &quot;X&quot; or &quot;M&quot;.</comment>
160
+ </param>
161
+ <param name="gSearchPassword" value="examplePassword">
162
+ <comment>The associated password for accessing the REST endpoint
163
+ of the Fedora Generic Search service. This parameter is only
164
+ required if GSearchDOManager is used, and the service requires
165
+ authentication.</comment>
166
+ </param>
167
+ <param name="storageCharacterEncoding" value="UTF-8">
168
+ <comment>If the serialization format is text-based, this is the
169
+ character encoding that should be used. Default is UTF-8.</comment>
170
+ </param>
171
+ <param name="gSearchUsername" value="exampleUsername">
172
+ <comment>The username for accessing the REST endpoint of the
173
+ Fedora Generic Search service. This parameter is only required if
174
+ GSearchDOManager is used, and the service requires
175
+ authentication.</comment>
163
176
  </param>
164
177
  <param name="storagePool" value="localDerbyPool">
165
178
  <comment>The named connection pool from which read/write database
@@ -167,36 +180,28 @@
167
180
  ConnectionPoolManager module). Default is the default provided by the
168
181
  ConnectionPoolManager.</comment>
169
182
  </param>
170
- <param name="storageCharacterEncoding" value="UTF-8">
171
- <comment>If the serialization format is text-based, this is the
172
- character encoding that should be used. Default is UTF-8.</comment>
183
+ <param name="fedoraStorageHintProvider" value="org.fcrepo.server.storage.NullStorageHintsProvider">
184
+ <comment>Hints are gathered and passed to the underline storage systems (only Akubra for now).
185
+ These are meta data or contextual information about object or datastream to be added or updated.
186
+ The default implementation is NullStorageHintsProvider; it provides no hints. You you can implement
187
+ your own FedoraStorageHintProvider and drop your implementation to the $CATALINA_HOME/webapps/fedora/WEB_INF/classes
188
+ directory (unpackaged), or the $CATALINA_HOME/webapps/fedora/WEB_INF/lib director (packaged).</comment>
173
189
  </param>
174
- <param name="defaultExportFormat" value="info:fedora/fedora-system:FOXML-1.1"/>
175
- <param name="defaultDCControlGroup" value="X">
176
- <comment>The control group to use for the system-generated DC datastream
177
- if no DC datastream is present on ingest. Must be &quot;X&quot; or &quot;M&quot;.</comment>
190
+ <param name="gSearchRESTURL" value="http://localhost:8080/fedoragsearch/rest">
191
+ <comment>The REST endpoint of the Fedora Generic Search service.
192
+ This parameter is only required if GSearchDOManager is
193
+ used.</comment>
178
194
  </param>
195
+ <param name="defaultExportFormat" value="info:fedora/fedora-system:FOXML-1.1"/>
179
196
  <param name="defaultRELSControlGroup" value="X">
180
197
  <comment>The control group to use for system-generated RELS-EXT and
181
198
  RELS-INT datastreams where these are not already present when
182
199
  adding relationships via addRelationship. Must be &quot;X&quot; or &quot;M&quot;.</comment>
183
200
  </param>
184
- <param name="gSearchRESTURL" value="http://localhost:8983/fedoragsearch/rest">
185
- <comment>The REST endpoint of the Fedora Generic Search service.
186
- This parameter is only required if GSearchDOManager is
187
- used.</comment>
188
- </param>
189
- <param name="gSearchUsername" value="exampleUsername">
190
- <comment>The username for accessing the REST endpoint of the
191
- Fedora Generic Search service. This parameter is only required if
192
- GSearchDOManager is used, and the service requires
193
- authentication.</comment>
194
- </param>
195
- <param name="gSearchPassword" value="examplePassword">
196
- <comment>The associated password for accessing the REST endpoint
197
- of the Fedora Generic Search service. This parameter is only
198
- required if GSearchDOManager is used, and the service requires
199
- authentication.</comment>
201
+ <param name="pidNamespace" value="changeme">
202
+ <comment>This is the namespace id for pids of newly-created objects.
203
+ This should be unique for a repository. It can be from 1 to 17
204
+ characters, and may only contain A-Z, a-z, 0-9, &apos;.&apos;, or &apos;-&apos; (dash).</comment>
200
205
  </param>
201
206
  </module>
202
207
  <module role="org.fcrepo.server.management.Management" class="org.fcrepo.server.management.ManagementModule">
@@ -205,18 +210,6 @@
205
210
  - how the service is exposed
206
211
  - how bytestreams and java types might be marshalled/demarshalled over the wire
207
212
  - how the storage subsystem is implemented.</comment>
208
- <param name="decorator1" value="org.fcrepo.server.messaging.NotificationInvocationHandler"/>
209
- <param name="autoChecksum" value="false">
210
- <comment>Controls whether a checksum is automatically computed for
211
- every datastream as the datastream is added to the repository. This
212
- will allow the integrity of datastream contents to be periodically
213
- checked to insure the object is not corrupted.</comment>
214
- </param>
215
- <param name="checksumAlgorithm" value="MD5">
216
- <comment>Specifies which checksumming algorithm is to be used when
217
- automatically computing checksums as specified by the above
218
- parameter. Valid values are: MD5 SHA-1 SHA-256 SHA-384 SHA-512.</comment>
219
- </param>
220
213
  <param name="purgeDelayInMillis" value="60000">
221
214
  <comment>Optional, default is 60000 (1 minute).
222
215
  This specifies the amount of time between checks to remove
@@ -224,11 +217,23 @@
224
217
  each check, old files whose age exceeds uploadStorageMinutes
225
218
  will be removed.</comment>
226
219
  </param>
220
+ <param name="decorator1" value="org.fcrepo.server.messaging.NotificationInvocationHandler"/>
221
+ <param name="checksumAlgorithm" value="MD5">
222
+ <comment>Specifies which checksumming algorithm is to be used when
223
+ automatically computing checksums as specified by the above
224
+ parameter. Valid values are: MD5 SHA-1 SHA-256 SHA-384 SHA-512.</comment>
225
+ </param>
227
226
  <param name="uploadStorageMinutes" value="5">
228
227
  <comment>Optional, default is 5.
229
228
  This specifies the minimum amount of time that each uploaded
230
229
  file should be kept in temporary storage.</comment>
231
230
  </param>
231
+ <param name="autoChecksum" value="false">
232
+ <comment>Controls whether a checksum is automatically computed for
233
+ every datastream as the datastream is added to the repository. This
234
+ will allow the integrity of datastream contents to be periodically
235
+ checked to insure the object is not corrupted.</comment>
236
+ </param>
232
237
  </module>
233
238
  <module role="org.fcrepo.server.access.Access" class="org.fcrepo.server.access.DefaultAccess">
234
239
  <comment>Description: The access subsystem. This implements the methods
@@ -306,18 +311,16 @@
306
311
  </module>
307
312
  <module role="org.fcrepo.server.search.FieldSearch" class="org.fcrepo.server.search.FieldSearchSQLModule">
308
313
  <comment>Supports the API-A simpleSearch and advancedSearch methods.</comment>
309
- <param name="maxResults" value="100">
310
- <comment>(required, must be &gt; 0)
311
- The maximum number of records to
312
- return as the result of a search. Even if a client requests more
313
- results at a time, this is the cutoff value.</comment>
314
- </param>
315
- <param name="maxSecondsPerSession" value="500">
316
- <comment>(required, must be &gt; 0)
317
- The maximum number of seconds that the server guarantees subsequent
318
- search results may be obtained. This is only used in cases where the
319
- number of results is greater than maxResults (as specified by the
320
- server [above] or the client [in the search request]).</comment>
314
+ <param name="indexDCFields" value="true">
315
+ <comment>(optional, default is true) Whether the content of the DC
316
+ datastream should be examined and the contents indexed, for each object.
317
+ You may wish to save time and space by disabling DC field indexing,
318
+ particularly if you have an external search service (such as Fedora
319
+ Generic Search) that already fulfills this need.
320
+ Note: If you change this value on a Fedora repository that has been
321
+ running for some time, you will need to perform a SQL rebuild using the
322
+ Fedora Rebuilder tool if you want to change objects that have already
323
+ been ingested.</comment>
321
324
  </param>
322
325
  <param name="connectionPool" value="localDerbyPool">
323
326
  <comment>(optional) To make unspecified, comment out or delete the
@@ -336,16 +339,18 @@
336
339
  and make sure you have a connectionPool large enough to accomodate
337
340
  your users.</comment>
338
341
  </param>
339
- <param name="indexDCFields" value="true">
340
- <comment>(optional, default is true) Whether the content of the DC
341
- datastream should be examined and the contents indexed, for each object.
342
- You may wish to save time and space by disabling DC field indexing,
343
- particularly if you have an external search service (such as Fedora
344
- Generic Search) that already fulfills this need.
345
- Note: If you change this value on a Fedora repository that has been
346
- running for some time, you will need to perform a SQL rebuild using the
347
- Fedora Rebuilder tool if you want to change objects that have already
348
- been ingested.</comment>
342
+ <param name="maxSecondsPerSession" value="500">
343
+ <comment>(required, must be &gt; 0)
344
+ The maximum number of seconds that the server guarantees subsequent
345
+ search results may be obtained. This is only used in cases where the
346
+ number of results is greater than maxResults (as specified by the
347
+ server [above] or the client [in the search request]).</comment>
348
+ </param>
349
+ <param name="maxResults" value="100">
350
+ <comment>(required, must be &gt; 0)
351
+ The maximum number of records to
352
+ return as the result of a search. Even if a client requests more
353
+ results at a time, this is the cutoff value.</comment>
349
354
  </param>
350
355
  </module>
351
356
  <module role="org.fcrepo.server.resourceIndex.ResourceIndex" class="org.fcrepo.server.resourceIndex.ResourceIndexModule">
@@ -357,11 +362,6 @@
357
362
  WARNING: changing the level (except to 0) requires
358
363
  running the Resource Index Rebuilder.</comment>
359
364
  </param>
360
- <param name="datastore" value="localMulgaraTriplestore">
361
- <comment>(required)
362
- Name of the triplestore to use. WARNING: changing the
363
- triplestore running the Resource Index Rebuilder.</comment>
364
- </param>
365
365
  <param name="syncUpdates" value="false">
366
366
  <comment>(optional, default is false)
367
367
  Whether to flush the triple buffer before
@@ -373,6 +373,11 @@
373
373
  API-M operations (depending on the triplestore
374
374
  implementation).</comment>
375
375
  </param>
376
+ <param name="datastore" value="localMulgaraTriplestore">
377
+ <comment>(required)
378
+ Name of the triplestore to use. WARNING: changing the
379
+ triplestore running the Resource Index Rebuilder.</comment>
380
+ </param>
376
381
  <param name="alias:test" value="http://example.org/terms#">
377
382
  <comment>(optional) Aliases that can be used for queries. The param
378
383
  name of an alias starts with the string &quot;alias:&quot; and is followed by
@@ -384,30 +389,30 @@
384
389
  </module>
385
390
  <module role="org.fcrepo.oai.OAIProvider" class="org.fcrepo.server.oai.FedoraOAIProviderModule">
386
391
  <comment>Description: Exposes the repository for OAI harvesters.</comment>
387
- <param name="repositoryName" value="Your Fedora Repository Name Here"/>
388
- <param name="repositoryDomainName" value="example.org"/>
389
- <param name="adminEmails" value="oai-admin@example.org bob@example.org"/>
390
- <param name="friends" value="http://arXiv.org/oai2 http://memory.loc.gov/cgi-bin/oai2_0"/>
391
392
  <param name="maxRecords" value="100"/>
393
+ <param name="friends" value="http://arXiv.org/oai2 http://memory.loc.gov/cgi-bin/oai2_0"/>
394
+ <param name="adminEmails" value="oai-admin@example.org bob@example.org"/>
395
+ <param name="repositoryDomainName" value="example.org"/>
392
396
  <param name="maxHeaders" value="100"/>
397
+ <param name="repositoryName" value="Your Fedora Repository Name Here"/>
393
398
  </module>
394
399
  <module role="org.fcrepo.server.storage.translation.DOTranslator" class="org.fcrepo.server.storage.translation.DOTranslatorModule">
395
400
  <comment>Supports translation from DigitalObject to a stream of some
396
401
  format, and vice-versa. The parameters below specify
397
402
  serializer/deserializer classes to be used for a given format. Those
398
403
  classes must implement the DOSerializer/DODeserializer interfaces.</comment>
399
- <param name="serializer_info:fedora/fedora-system:METSFedoraExt-1.1" value="org.fcrepo.server.storage.translation.METSFedoraExt1_1DOSerializer"/>
400
- <param name="deserializer_info:fedora/fedora-system:METSFedoraExt-1.1" value="org.fcrepo.server.storage.translation.METSFedoraExt1_1DODeserializer"/>
404
+ <param name="serializer_info:fedora/fedora-system:ATOM-1.1" value="org.fcrepo.server.storage.translation.Atom1_1DOSerializer"/>
405
+ <param name="deserializer_info:fedora/fedora-system:FOXML-1.1" value="org.fcrepo.server.storage.translation.FOXML1_1DODeserializer"/>
401
406
  <param name="serializer_info:fedora/fedora-system:METSFedoraExt-1.0" value="org.fcrepo.server.storage.translation.METSFedoraExt1_0DOSerializer"/>
407
+ <param name="deserializer_info:fedora/fedora-system:METSFedoraExt-1.1" value="org.fcrepo.server.storage.translation.METSFedoraExt1_1DODeserializer"/>
408
+ <param name="serializer_info:fedora/fedora-system:METSFedoraExt-1.1" value="org.fcrepo.server.storage.translation.METSFedoraExt1_1DOSerializer"/>
402
409
  <param name="deserializer_info:fedora/fedora-system:METSFedoraExt-1.0" value="org.fcrepo.server.storage.translation.METSFedoraExt1_0DODeserializer"/>
403
- <param name="serializer_info:fedora/fedora-system:FOXML-1.1" value="org.fcrepo.server.storage.translation.FOXML1_1DOSerializer"/>
404
- <param name="deserializer_info:fedora/fedora-system:FOXML-1.1" value="org.fcrepo.server.storage.translation.FOXML1_1DODeserializer"/>
405
410
  <param name="serializer_info:fedora/fedora-system:FOXML-1.0" value="org.fcrepo.server.storage.translation.FOXML1_0DOSerializer"/>
406
- <param name="deserializer_info:fedora/fedora-system:FOXML-1.0" value="org.fcrepo.server.storage.translation.FOXML1_0DODeserializer"/>
407
- <param name="serializer_info:fedora/fedora-system:ATOM-1.1" value="org.fcrepo.server.storage.translation.Atom1_1DOSerializer"/>
411
+ <param name="deserializer_info:fedora/fedora-system:ATOMZip-1.1" value="org.fcrepo.server.storage.translation.AtomZip1_1DODeserializer"/>
412
+ <param name="serializer_info:fedora/fedora-system:FOXML-1.1" value="org.fcrepo.server.storage.translation.FOXML1_1DOSerializer"/>
408
413
  <param name="deserializer_info:fedora/fedora-system:ATOM-1.1" value="org.fcrepo.server.storage.translation.Atom1_1DODeserializer"/>
414
+ <param name="deserializer_info:fedora/fedora-system:FOXML-1.0" value="org.fcrepo.server.storage.translation.FOXML1_0DODeserializer"/>
409
415
  <param name="serializer_info:fedora/fedora-system:ATOMZip-1.1" value="org.fcrepo.server.storage.translation.AtomZip1_1DOSerializer"/>
410
- <param name="deserializer_info:fedora/fedora-system:ATOMZip-1.1" value="org.fcrepo.server.storage.translation.AtomZip1_1DODeserializer"/>
411
416
  </module>
412
417
  <module role="org.fcrepo.server.management.PIDGenerator" class="org.fcrepo.server.management.BasicPIDGenerator">
413
418
  <comment>The pid generator.</comment>
@@ -417,7 +422,7 @@
417
422
  <comment>Fedora's Java Messaging Service (JMS) Module</comment>
418
423
  <param name="enabled" value="false"/>
419
424
  <param name="java.naming.factory.initial" value="org.apache.activemq.jndi.ActiveMQInitialContextFactory"/>
420
- <param name="java.naming.provider.url" value="vm:(broker:(tcp://localhost:61616,stomp://localhost:61613))"/>
425
+ <param name="java.naming.provider.url" value="vm:(broker:(tcp://localhost:61616))"/>
421
426
  <param name="datastore1" value="apimUpdateMessages">
422
427
  <comment>A datastore representing a JMS Destination for APIM events which update the repository</comment>
423
428
  </param>
@@ -436,6 +441,28 @@
436
441
  written in Schematron language), and other programatic validation
437
442
  including referential integrity checking of existence and
438
443
  availability of distributed data and/or services.</comment>
444
+ <param name="tempDir" value="work">
445
+ <comment>(required)
446
+ This is a directory that the validation module can use as a work space, as
447
+ when it must write a temporary file.</comment>
448
+ </param>
449
+ <param name="rules_info:fedora/fedora-system:ATOM-1.1" value="schematron/atom-bogus.xml">
450
+ <comment>The local path to the Schematron Rules used for
451
+ Fedora-specific on Atom XML files.</comment>
452
+ </param>
453
+ <param name="schtron_preprocessor" value="schematron/preprocessor.xslt"/>
454
+ <param name="rules_info:fedora/fedora-system:ATOMZip-1.1" value="schematron/atom-bogus.xml">
455
+ <comment>The local path to the Schematron Rules used for
456
+ Fedora-specific on Atom Zip files.</comment>
457
+ </param>
458
+ <param name="rules_info:fedora/fedora-system:FOXML-1.1" value="schematron/foxmlRules1-1.xml">
459
+ <comment>The local path to the Schematron Rules used for
460
+ Fedora-specific validation on FOXML 1.1 XML files.</comment>
461
+ </param>
462
+ <param name="rules_info:fedora/fedora-system:FOXML-1.0" value="schematron/foxmlRules1-0.xml">
463
+ <comment>The local path to the Schematron Rules used for
464
+ Fedora-specific validation on FOXML 1.0 XML files.</comment>
465
+ </param>
439
466
  <param name="xsd_info:fedora/fedora-system:METSFedoraExt-1.1" value="xsd/mets-fedora-ext1-1.xsd">
440
467
  <comment>The local path for the Fedora-METS XML
441
468
  schema used to do XML schema validation of digital objects.</comment>
@@ -444,6 +471,10 @@
444
471
  <comment>The local path for the Fedora-METS 1.0 XML
445
472
  schema used to do XML schema validation of digital objects.</comment>
446
473
  </param>
474
+ <param name="xsd_xacml_policy1.0" value="xsd/cs-xacml-schema-policy-1.0.xsd">
475
+ <comment>The local path for the OASIS XACML XML policy schema
476
+ used to do XML schema validation of XACML policies.</comment>
477
+ </param>
447
478
  <param name="xsd_info:fedora/fedora-system:FOXML-1.1" value="xsd/foxml1-1.xsd">
448
479
  <comment>The local path for the Fedora FOXML 1.1 XML schema
449
480
  used to do XML schema validation of digital objects</comment>
@@ -456,44 +487,18 @@
456
487
  <comment>The local path for the Atom XML schema used to do XML
457
488
  schema validation of digital objects</comment>
458
489
  </param>
490
+ <param name="rules_info:fedora/fedora-system:METSFedoraExt-1.0" value="schematron/metsExtRules1-0.xml">
491
+ <comment>The local path to the Schematron Rules used for
492
+ Fedora-specific validation on Fedora-METS 1.0 XML files.</comment>
493
+ </param>
459
494
  <param name="xsd_info:fedora/fedora-system:ATOMZip-1.1" value="xsd/atom.xsd">
460
495
  <comment>The local path for the Atom XML schema used to do XML
461
496
  schema validation of digital objects</comment>
462
497
  </param>
463
- <param name="xsd_xacml_policy1.0" value="xsd/cs-xacml-schema-policy-1.0.xsd">
464
- <comment>The local path for the OASIS XACML XML policy schema
465
- used to do XML schema validation of XACML policies.</comment>
466
- </param>
467
498
  <param name="rules_info:fedora/fedora-system:METSFedoraExt-1.1" value="schematron/metsExtRules1-1.xml">
468
499
  <comment>The local path to the Schematron Rules used for
469
500
  Fedora-specific validation on Fedora-METS XML files.</comment>
470
501
  </param>
471
- <param name="rules_info:fedora/fedora-system:METSFedoraExt-1.0" value="schematron/metsExtRules1-0.xml">
472
- <comment>The local path to the Schematron Rules used for
473
- Fedora-specific validation on Fedora-METS 1.0 XML files.</comment>
474
- </param>
475
- <param name="rules_info:fedora/fedora-system:FOXML-1.1" value="schematron/foxmlRules1-1.xml">
476
- <comment>The local path to the Schematron Rules used for
477
- Fedora-specific validation on FOXML 1.1 XML files.</comment>
478
- </param>
479
- <param name="rules_info:fedora/fedora-system:FOXML-1.0" value="schematron/foxmlRules1-0.xml">
480
- <comment>The local path to the Schematron Rules used for
481
- Fedora-specific validation on FOXML 1.0 XML files.</comment>
482
- </param>
483
- <param name="rules_info:fedora/fedora-system:ATOM-1.1" value="schematron/atom-bogus.xml">
484
- <comment>The local path to the Schematron Rules used for
485
- Fedora-specific on Atom XML files.</comment>
486
- </param>
487
- <param name="rules_info:fedora/fedora-system:ATOMZip-1.1" value="schematron/atom-bogus.xml">
488
- <comment>The local path to the Schematron Rules used for
489
- Fedora-specific on Atom Zip files.</comment>
490
- </param>
491
- <param name="schtron_preprocessor" value="schematron/preprocessor.xslt"/>
492
- <param name="tempDir" value="work">
493
- <comment>(required)
494
- This is a directory that the validation module can use as a work space, as
495
- when it must write a temporary file.</comment>
496
- </param>
497
502
  </module>
498
503
  <module role="org.fcrepo.server.storage.ExternalContentManager" class="org.fcrepo.server.storage.DefaultExternalContentManager">
499
504
  <comment>This module facilitates obtaining external content via HTTP</comment>
@@ -507,24 +512,56 @@
507
512
  information regarding connection pool options, refer to the Apache
508
513
  Commons Pool API documentation at
509
514
  http://jakarta.apache.org/commons/pool/apidocs/index.html.</comment>
515
+ <param name="maxIdle" value="10">
516
+ <comment>The maximum number of idle instances in pool.</comment>
517
+ </param>
518
+ <param name="testOnBorrow" value="true">
519
+ <comment>When true objects are validated before borrowed from the
520
+ pool.</comment>
521
+ </param>
522
+ <param name="testWhileIdle" value="true">
523
+ <comment>When true, objects are validated by the idle object evictor
524
+ thread.</comment>
525
+ </param>
526
+ <param name="validationQuery" value="select 1">
527
+ <comment>The query to run when validating connections.
528
+ Connections are validated according to the testOnBorrow,
529
+ testOnReturn, and testWhileIdle configuration values.
530
+ If this is specified, it must be a SQL SELECT statement
531
+ that returns at least one row. If this is NOT specified,
532
+ validation tests will not be run.</comment>
533
+ </param>
534
+ <param name="ddlConverter" value="org.fcrepo.server.utilities.MySQLDDLConverter"/>
510
535
  <param name="dbUsername" value="fedoraAdmin">
511
536
  <comment>The database user name.</comment>
512
537
  </param>
538
+ <param name="testOnReturn" value="true">
539
+ <comment>When true, objects are validated before returned to the
540
+ pool.</comment>
541
+ </param>
542
+ <param name="maxActive" value="100">
543
+ <comment>The maximum number of active instances in pool.</comment>
544
+ </param>
513
545
  <param name="dbPassword" value="fedoraAdmin">
514
546
  <comment>The database password.</comment>
515
547
  </param>
516
548
  <param name="jdbcURL" value="jdbc:mysql://localhost/fedora3?useUnicode=true&amp;characterEncoding=UTF-8&amp;autoReconnect=true">
517
549
  <comment>The JDBC connection URL.</comment>
518
550
  </param>
519
- <param name="jdbcDriverClass" value="com.mysql.jdbc.Driver">
520
- <comment>The JDBC driver class name.</comment>
551
+ <param name="whenExhaustedAction" value="1">
552
+ <comment>Action to take when a new object is requested and the the pool has
553
+ reached maximum number of active objects. Valid values are:
554
+ 0 (fail i.e., throw Exception)
555
+ 1 (block i.e., wait until pool resources are freed)
556
+ 2 (grow i.e., increase the size of the pool).</comment>
521
557
  </param>
522
- <param name="ddlConverter" value="org.fcrepo.server.utilities.MySQLDDLConverter"/>
523
- <param name="maxActive" value="100">
524
- <comment>The maximum number of active instances in pool.</comment>
558
+ <param name="numTestsPerEvictionRun" value="3">
559
+ <comment>The number of objects to be examined on each run of idle
560
+ evictor thread (if applicable). A value less than zero indicates
561
+ that ceil(numIdle)/abs(numTestsPerEvictionRun) will be run.</comment>
525
562
  </param>
526
- <param name="maxIdle" value="10">
527
- <comment>The maximum number of idle instances in pool.</comment>
563
+ <param name="jdbcDriverClass" value="com.mysql.jdbc.Driver">
564
+ <comment>The JDBC driver class name.</comment>
528
565
  </param>
529
566
  <param name="maxWait" value="-1">
530
567
  <comment>The maximum amount of time in milliseconds the
@@ -541,46 +578,14 @@
541
578
  less than zero indicates no object will be evicted due to idle time
542
579
  alone.</comment>
543
580
  </param>
544
- <param name="numTestsPerEvictionRun" value="3">
545
- <comment>The number of objects to be examined on each run of idle
546
- evictor thread (if applicable). A value less than zero indicates
547
- that ceil(numIdle)/abs(numTestsPerEvictionRun) will be run.</comment>
548
- </param>
549
581
  <param name="timeBetweenEvictionRunsMillis" value="-1">
550
582
  <comment>The time in milliseconds to sleep between runs of the idle
551
583
  object evictor thread. A value less than zero indicates no idle
552
584
  evictor thread is run.</comment>
553
585
  </param>
554
- <param name="validationQuery" value="select 1">
555
- <comment>The query to run when validating connections.
556
- Connections are validated according to the testOnBorrow,
557
- testOnReturn, and testWhileIdle configuration values.
558
- If this is specified, it must be a SQL SELECT statement
559
- that returns at least one row. If this is NOT specified,
560
- validation tests will not be run.</comment>
561
- </param>
562
- <param name="testOnBorrow" value="true">
563
- <comment>When true objects are validated before borrowed from the
564
- pool.</comment>
565
- </param>
566
- <param name="testOnReturn" value="true">
567
- <comment>When true, objects are validated before returned to the
568
- pool.</comment>
569
- </param>
570
- <param name="testWhileIdle" value="true">
571
- <comment>When true, objects are validated by the idle object evictor
572
- thread.</comment>
573
- </param>
574
- <param name="whenExhaustedAction" value="1">
575
- <comment>Action to take when a new object is requested and the the pool has
576
- reached maximum number of active objects. Valid values are:
577
- 0 (fail i.e., throw Exception)
578
- 1 (block i.e., wait until pool resources are freed)
579
- 2 (grow i.e., increase the size of the pool).</comment>
580
- </param>
581
586
  </datastore>
582
- <datastore id="localMcKoiPool">
583
- <comment>McKoi database on localhost running on port 9157 Each
587
+ <datastore id="localDerbyPool">
588
+ <comment>Derby database on localhost running on port 1527 Each
584
589
  connection pool instance has several configuration parameter that
585
590
  can be used to tune the options for the connection pool. It is
586
591
  recommended that you not change the default values unless you are
@@ -588,28 +593,52 @@
588
593
  information regarding connection pool options, refer to the Apache
589
594
  Commons Pool API documentation at
590
595
  http://jakarta.apache.org/commons/pool/apidocs/index.html.</comment>
596
+ <param name="maxIdle" value="10">
597
+ <comment>The maximum number of idle instances in pool.</comment>
598
+ </param>
599
+ <param name="testOnBorrow" value="true">
600
+ <comment>When true objects are validated before borrowed from the
601
+ pool.</comment>
602
+ </param>
603
+ <param name="testWhileIdle" value="true">
604
+ <comment>When true, objects are validated by the idle object evictor
605
+ thread.</comment>
606
+ </param>
607
+ <param name="ddlConverter" value="org.fcrepo.server.utilities.DerbyDDLConverter"/>
591
608
  <param name="dbUsername" value="fedoraAdmin">
592
609
  <comment>The database user name.</comment>
593
610
  </param>
611
+ <param name="testOnReturn" value="true">
612
+ <comment>When true, objects are validated before returned to the
613
+ pool.</comment>
614
+ </param>
615
+ <param name="maxActive" value="100">
616
+ <comment>The maximum number of active instances in pool.</comment>
617
+ </param>
594
618
  <param name="dbPassword" value="fedoraAdmin">
595
619
  <comment>The database password.</comment>
596
620
  </param>
597
- <param name="jdbcURL" value="jdbc:mckoi://localhost:9157/">
621
+ <param name="jdbcURL" value="jdbc:derby:fedora/default/derby/fedora3;create=true">
598
622
  <comment>The JDBC connection URL.</comment>
599
623
  </param>
600
- <param name="jdbcDriverClass" value="com.mckoi.JDBCDriver">
601
- <comment>The JDBC driver class name.</comment>
624
+ <param name="whenExhaustedAction" value="1">
625
+ <comment>Action to take when a new object is requested and the the pool has
626
+ reached maximum number of active objects. Valid values are:
627
+ 0 (fail i.e., throw Exception)
628
+ 1 (block i.e., wait until pool resources are freed)
629
+ 2 (grow i.e., increase the size of the pool).</comment>
602
630
  </param>
603
- <param name="ddlConverter" value="org.fcrepo.server.utilities.McKoiDDLConverter"/>
604
- <param name="maxActive" value="100">
605
- <comment>The maximum number of active instances in pool.</comment>
631
+ <param name="numTestsPerEvictionRun" value="3">
632
+ <comment>The number of objects to be examined on each run of idle
633
+ evictor thread (if applicable). A value less than zero indicates
634
+ that ceil(numIdle)/abs(numTestsPerEvictionRun) will be run.</comment>
606
635
  </param>
607
- <param name="maxIdle" value="10">
608
- <comment>The maximum number of idle instances in pool.</comment>
636
+ <param name="jdbcDriverClass" value="org.apache.derby.jdbc.EmbeddedDriver">
637
+ <comment>The JDBC driver class name.</comment>
609
638
  </param>
610
639
  <param name="maxWait" value="-1">
611
640
  <comment>The maximum amount of time in milliseconds the
612
- borrowObject() method should wait before throwing an Exception when
641
+ borrowObject() method should wait before throwing an Exception when
613
642
  whenExhaustedAction is set to WHEN_EXHAUSTED_BLOCK. A value less
614
643
  than zero indicates block indefinitely.</comment>
615
644
  </param>
@@ -618,42 +647,18 @@
618
647
  </param>
619
648
  <param name="minEvictableIdleTimeMillis" value="1800000">
620
649
  <comment>The minimum amount of time in milliseconds an object can be
621
- idle in pool before eligible for eviction (if applicable). A value
650
+ idle in pool before eligible for eviction (if applicable). A value
622
651
  less than zero indicates no object will be evicted due to idle time
623
652
  alone.</comment>
624
653
  </param>
625
- <param name="numTestsPerEvictionRun" value="3">
626
- <comment>The number of objects to be examined on each run of idle
627
- evictor thread (if applicable). A value less than zero indicates
628
- that ceil(numIdle)/abs(numTestsPerEvictionRun) will be run.</comment>
629
- </param>
630
654
  <param name="timeBetweenEvictionRunsMillis" value="-1">
631
655
  <comment>The time in milliseconds to sleep between runs of the idle
632
- object evictor thread. A value less than zero indicates no idle
633
- evictor thread is run.</comment>
634
- </param>
635
- <param name="testOnBorrow" value="true">
636
- <comment>When true objects are validated before borrowed from the
637
- pool.</comment>
638
- </param>
639
- <param name="testOnReturn" value="true">
640
- <comment>When true, objects are validated before returned to the
641
- pool.</comment>
642
- </param>
643
- <param name="testWhileIdle" value="true">
644
- <comment>When true, objects are validated by the idle object evictor
645
- thread.</comment>
646
- </param>
647
- <param name="whenExhaustedAction" value="1">
648
- <comment>Action to take when a new object is requested and the the pool has
649
- reached maximum number of active objects. Valid values are:
650
- 0 (fail i.e., throw Exception)
651
- 1 (block i.e., wait until pool resources are freed)
652
- 2 (grow i.e., increase the size of the pool).</comment>
656
+ object evictor thread. A value less than zero indicates no idle
657
+ evictor thread is run.</comment>
653
658
  </param>
654
659
  </datastore>
655
- <datastore id="localDerbyPool">
656
- <comment>Derby database on localhost running on port 1527 Each
660
+ <datastore id="localOraclePool">
661
+ <comment>Oracle database on localhost with SID=fedora3 Each
657
662
  connection pool instance has several configuration parameter that
658
663
  can be used to tune the options for the connection pool. It is
659
664
  recommended that you not change the default values unless you are
@@ -661,97 +666,57 @@
661
666
  information regarding connection pool options, refer to the Apache
662
667
  Commons Pool API documentation at
663
668
  http://jakarta.apache.org/commons/pool/apidocs/index.html.</comment>
664
- <param name="dbUsername" value="fedoraAdmin">
665
- <comment>The database user name.</comment>
666
- </param>
667
- <param name="dbPassword" value="fedoraAdmin">
668
- <comment>The database password.</comment>
669
- </param>
670
- <param name="jdbcURL" value="jdbc:derby:fedora/default/derby/fedora3;create=true">
671
- <comment>The JDBC connection URL.</comment>
672
- </param>
673
- <param name="jdbcDriverClass" value="org.apache.derby.jdbc.EmbeddedDriver">
674
- <comment>The JDBC driver class name.</comment>
675
- </param>
676
- <param name="ddlConverter" value="org.fcrepo.server.utilities.DerbyDDLConverter"/>
677
- <param name="maxActive" value="100">
678
- <comment>The maximum number of active instances in pool.</comment>
679
- </param>
680
669
  <param name="maxIdle" value="10">
681
670
  <comment>The maximum number of idle instances in pool.</comment>
682
671
  </param>
683
- <param name="maxWait" value="-1">
684
- <comment>The maximum amount of time in milliseconds the
685
- borrowObject() method should wait before throwing an Exception when
686
- whenExhaustedAction is set to WHEN_EXHAUSTED_BLOCK. A value less
687
- than zero indicates block indefinitely.</comment>
688
- </param>
689
- <param name="minIdle" value="0">
690
- <comment>The minimum of idle instances in pool.</comment>
691
- </param>
692
- <param name="minEvictableIdleTimeMillis" value="1800000">
693
- <comment>The minimum amount of time in milliseconds an object can be
694
- idle in pool before eligible for eviction (if applicable). A value
695
- less than zero indicates no object will be evicted due to idle time
696
- alone.</comment>
697
- </param>
698
- <param name="numTestsPerEvictionRun" value="3">
699
- <comment>The number of objects to be examined on each run of idle
700
- evictor thread (if applicable). A value less than zero indicates
701
- that ceil(numIdle)/abs(numTestsPerEvictionRun) will be run.</comment>
702
- </param>
703
- <param name="timeBetweenEvictionRunsMillis" value="-1">
704
- <comment>The time in milliseconds to sleep between runs of the idle
705
- object evictor thread. A value less than zero indicates no idle
706
- evictor thread is run.</comment>
707
- </param>
708
672
  <param name="testOnBorrow" value="true">
709
673
  <comment>When true objects are validated before borrowed from the
710
- pool.</comment>
711
- </param>
712
- <param name="testOnReturn" value="true">
713
- <comment>When true, objects are validated before returned to the
714
- pool.</comment>
674
+ pool.</comment>
715
675
  </param>
716
676
  <param name="testWhileIdle" value="true">
717
677
  <comment>When true, objects are validated by the idle object evictor
718
- thread.</comment>
678
+ thread.</comment>
719
679
  </param>
720
- <param name="whenExhaustedAction" value="1">
721
- <comment>Action to take when a new object is requested and the the pool has
722
- reached maximum number of active objects. Valid values are:
723
- 0 (fail i.e., throw Exception)
724
- 1 (block i.e., wait until pool resources are freed)
725
- 2 (grow i.e., increase the size of the pool).</comment>
680
+ <param name="validationQuery" value="select &apos;validationQuery&apos; from dual">
681
+ <comment>The query to run when validating connections.
682
+ Connections are validated according to the testOnBorrow,
683
+ testOnReturn, and testWhileIdle configuration values.
684
+ If this is specified, it must be a SQL SELECT statement
685
+ that returns at least one row. If this is NOT specified,
686
+ validation tests will not be run.</comment>
726
687
  </param>
727
- </datastore>
728
- <datastore id="localOraclePool">
729
- <comment>Oracle database on localhost with SID=fedora3 Each
730
- connection pool instance has several configuration parameter that
731
- can be used to tune the options for the connection pool. It is
732
- recommended that you not change the default values unless you are
733
- trying to address a specific performance issue. For additional
734
- information regarding connection pool options, refer to the Apache
735
- Commons Pool API documentation at
736
- http://jakarta.apache.org/commons/pool/apidocs/index.html.</comment>
688
+ <param name="ddlConverter" value="org.fcrepo.server.utilities.OracleDDLConverter"/>
737
689
  <param name="dbUsername" value="fedoraAdmin">
738
690
  <comment>The database user name.</comment>
739
691
  </param>
692
+ <param name="connection.SetBigStringTryClob" value="true"/>
693
+ <param name="testOnReturn" value="true">
694
+ <comment>When true, objects are validated before returned to the
695
+ pool.</comment>
696
+ </param>
697
+ <param name="maxActive" value="100">
698
+ <comment>The maximum number of active instances in pool.</comment>
699
+ </param>
740
700
  <param name="dbPassword" value="fedoraAdmin">
741
701
  <comment>The database password.</comment>
742
702
  </param>
743
703
  <param name="jdbcURL" value="jdbc:oracle:thin:@localhost:1521:fedora3">
744
704
  <comment>The JDBC connection URL.</comment>
745
705
  </param>
746
- <param name="jdbcDriverClass" value="oracle.jdbc.OracleDriver">
747
- <comment>The JDBC driver class name.</comment>
706
+ <param name="whenExhaustedAction" value="1">
707
+ <comment>Action to take when a new object is requested and the the pool has
708
+ reached maximum number of active objects. Valid values are:
709
+ 0 (fail i.e., throw Exception)
710
+ 1 (block i.e., wait until pool resources are freed)
711
+ 2 (grow i.e., increase the size of the pool).</comment>
748
712
  </param>
749
- <param name="ddlConverter" value="org.fcrepo.server.utilities.OracleDDLConverter"/>
750
- <param name="maxActive" value="100">
751
- <comment>The maximum number of active instances in pool.</comment>
713
+ <param name="numTestsPerEvictionRun" value="3">
714
+ <comment>The number of objects to be examined on each run of idle
715
+ evictor thread (if applicable). A value less than zero indicates
716
+ that ceil(numIdle)/abs(numTestsPerEvictionRun) will be run.</comment>
752
717
  </param>
753
- <param name="maxIdle" value="10">
754
- <comment>The maximum number of idle instances in pool.</comment>
718
+ <param name="jdbcDriverClass" value="oracle.jdbc.OracleDriver">
719
+ <comment>The JDBC driver class name.</comment>
755
720
  </param>
756
721
  <param name="maxWait" value="-1">
757
722
  <comment>The maximum amount of time in milliseconds the
@@ -768,17 +733,33 @@
768
733
  less than zero indicates no object will be evicted due to idle time
769
734
  alone.</comment>
770
735
  </param>
771
- <param name="numTestsPerEvictionRun" value="3">
772
- <comment>The number of objects to be examined on each run of idle
773
- evictor thread (if applicable). A value less than zero indicates
774
- that ceil(numIdle)/abs(numTestsPerEvictionRun) will be run.</comment>
775
- </param>
776
736
  <param name="timeBetweenEvictionRunsMillis" value="-1">
777
737
  <comment>The time in milliseconds to sleep between runs of the idle
778
738
  object evictor thread. A value less than zero indicates no idle
779
739
  evictor thread is run.</comment>
780
740
  </param>
781
- <param name="validationQuery" value="select &apos;validationQuery&apos; from dual">
741
+ </datastore>
742
+ <datastore id="localPostgreSQLPool">
743
+ <comment>PostgreSQL database on localhost with db name of fedora3. Each
744
+ connection pool instance has several configuration parameter that
745
+ can be used to tune the options for the connection pool. It is
746
+ recommended that you not change the default values unless you are
747
+ trying to address a specific performance issue. For additional
748
+ information regarding connection pool options, refer to the Apache
749
+ Commons Pool API documentation at
750
+ http://jakarta.apache.org/commons/pool/apidocs/index.html.</comment>
751
+ <param name="maxIdle" value="10">
752
+ <comment>The maximum number of idle instances in pool.</comment>
753
+ </param>
754
+ <param name="testOnBorrow" value="true">
755
+ <comment>When true objects are validated before borrowed from the
756
+ pool.</comment>
757
+ </param>
758
+ <param name="testWhileIdle" value="true">
759
+ <comment>When true, objects are validated by the idle object evictor
760
+ thread.</comment>
761
+ </param>
762
+ <param name="validationQuery" value="select 1">
782
763
  <comment>The query to run when validating connections.
783
764
  Connections are validated according to the testOnBorrow,
784
765
  testOnReturn, and testWhileIdle configuration values.
@@ -786,17 +767,22 @@
786
767
  that returns at least one row. If this is NOT specified,
787
768
  validation tests will not be run.</comment>
788
769
  </param>
789
- <param name="testOnBorrow" value="true">
790
- <comment>When true objects are validated before borrowed from the
791
- pool.</comment>
770
+ <param name="ddlConverter" value="org.fcrepo.server.utilities.PostgresDDLConverter"/>
771
+ <param name="dbUsername" value="fedoraAdmin">
772
+ <comment>The database user name.</comment>
792
773
  </param>
793
774
  <param name="testOnReturn" value="true">
794
775
  <comment>When true, objects are validated before returned to the
795
776
  pool.</comment>
796
777
  </param>
797
- <param name="testWhileIdle" value="true">
798
- <comment>When true, objects are validated by the idle object evictor
799
- thread.</comment>
778
+ <param name="maxActive" value="100">
779
+ <comment>The maximum number of active instances in pool.</comment>
780
+ </param>
781
+ <param name="dbPassword" value="fedoraAdmin">
782
+ <comment>The database password.</comment>
783
+ </param>
784
+ <param name="jdbcURL" value="jdbc:postgresql:fedora3">
785
+ <comment>The JDBC connection URL.</comment>
800
786
  </param>
801
787
  <param name="whenExhaustedAction" value="1">
802
788
  <comment>Action to take when a new object is requested and the the pool has
@@ -805,36 +791,14 @@
805
791
  1 (block i.e., wait until pool resources are freed)
806
792
  2 (grow i.e., increase the size of the pool).</comment>
807
793
  </param>
808
- <param name="connection.SetBigStringTryClob" value="true"/>
809
- </datastore>
810
- <datastore id="localPostgreSQLPool">
811
- <comment>PostgreSQL database on localhost with db name of fedora3. Each
812
- connection pool instance has several configuration parameter that
813
- can be used to tune the options for the connection pool. It is
814
- recommended that you not change the default values unless you are
815
- trying to address a specific performance issue. For additional
816
- information regarding connection pool options, refer to the Apache
817
- Commons Pool API documentation at
818
- http://jakarta.apache.org/commons/pool/apidocs/index.html.</comment>
819
- <param name="dbUsername" value="fedoraAdmin">
820
- <comment>The database user name.</comment>
821
- </param>
822
- <param name="dbPassword" value="fedoraAdmin">
823
- <comment>The database password.</comment>
824
- </param>
825
- <param name="jdbcURL" value="jdbc:postgresql:fedora3">
826
- <comment>The JDBC connection URL.</comment>
794
+ <param name="numTestsPerEvictionRun" value="3">
795
+ <comment>The number of objects to be examined on each run of idle
796
+ evictor thread (if applicable). A value less than zero indicates
797
+ that ceil(numIdle)/abs(numTestsPerEvictionRun) will be run.</comment>
827
798
  </param>
828
799
  <param name="jdbcDriverClass" value="org.postgresql.Driver">
829
800
  <comment>The JDBC driver class name.</comment>
830
801
  </param>
831
- <param name="ddlConverter" value="org.fcrepo.server.utilities.PostgresDDLConverter"/>
832
- <param name="maxActive" value="100">
833
- <comment>The maximum number of active instances in pool.</comment>
834
- </param>
835
- <param name="maxIdle" value="10">
836
- <comment>The maximum number of idle instances in pool.</comment>
837
- </param>
838
802
  <param name="maxWait" value="-1">
839
803
  <comment>The maximum amount of time in milliseconds the
840
804
  borrowObject() method should wait before throwing an Exception when
@@ -850,64 +814,14 @@
850
814
  less than zero indicates no object will be evicted due to idle time
851
815
  alone.</comment>
852
816
  </param>
853
- <param name="numTestsPerEvictionRun" value="3">
854
- <comment>The number of objects to be examined on each run of idle
855
- evictor thread (if applicable). A value less than zero indicates
856
- that ceil(numIdle)/abs(numTestsPerEvictionRun) will be run.</comment>
857
- </param>
858
817
  <param name="timeBetweenEvictionRunsMillis" value="-1">
859
818
  <comment>The time in milliseconds to sleep between runs of the idle
860
819
  object evictor thread. A value less than zero indicates no idle
861
820
  evictor thread is run.</comment>
862
821
  </param>
863
- <param name="validationQuery" value="select 1">
864
- <comment>The query to run when validating connections.
865
- Connections are validated according to the testOnBorrow,
866
- testOnReturn, and testWhileIdle configuration values.
867
- If this is specified, it must be a SQL SELECT statement
868
- that returns at least one row. If this is NOT specified,
869
- validation tests will not be run.</comment>
870
- </param>
871
- <param name="testOnBorrow" value="true">
872
- <comment>When true objects are validated before borrowed from the
873
- pool.</comment>
874
- </param>
875
- <param name="testOnReturn" value="true">
876
- <comment>When true, objects are validated before returned to the
877
- pool.</comment>
878
- </param>
879
- <param name="testWhileIdle" value="true">
880
- <comment>When true, objects are validated by the idle object evictor
881
- thread.</comment>
882
- </param>
883
- <param name="whenExhaustedAction" value="1">
884
- <comment>Action to take when a new object is requested and the the pool has
885
- reached maximum number of active objects. Valid values are:
886
- 0 (fail i.e., throw Exception)
887
- 1 (block i.e., wait until pool resources are freed)
888
- 2 (grow i.e., increase the size of the pool).</comment>
889
- </param>
890
822
  </datastore>
891
823
  <datastore id="localMulgaraTriplestore">
892
824
  <comment>local Mulgara Triplestore used by the Resource Index</comment>
893
- <param name="connectorClassName" value="org.trippi.impl.mulgara.MulgaraConnector">
894
- <comment>The name of the Trippi Connector class used to communicate
895
- with the triplestore.</comment>
896
- </param>
897
- <param name="remote" value="false">
898
- <comment>Tells the connector to communicate with Mulgara in remote or
899
- local mode. If true, the host parameter must be defined. If false,
900
- the path parameter must be defined.</comment>
901
- </param>
902
- <param name="path" value="data/resourceIndex" isFilePath="true">
903
- <comment>The local path to the main triplestore directory.</comment>
904
- </param>
905
- <param name="serverName" value="fedora">
906
- <comment>The server name for rmi binding.</comment>
907
- </param>
908
- <param name="modelName" value="ri">
909
- <comment>The name of the model to use.</comment>
910
- </param>
911
825
  <param name="poolInitialSize" value="3">
912
826
  <comment>The initial size of the session pool used for queries.
913
827
  Note: A value of 0 will cause the Resource Index to operate in
@@ -915,13 +829,11 @@
915
829
  and handled in FIFO order; this will severely impair performance and
916
830
  is only intended for debugging.</comment>
917
831
  </param>
918
- <param name="poolMaxGrowth" value="-1">
919
- <comment>Maximum number of additional sessions the pool may add. If
920
- specified as -1, no limit will be placed on pool growth.</comment>
921
- </param>
922
- <param name="readOnly" value="false">
923
- <comment>Whether the triplestore should be read-only. Most Fedora
924
- repositories will set this to false.</comment>
832
+ <param name="bufferSafeCapacity" value="40000">
833
+ <comment>The maximum size the buffer can reach before being forcibly
834
+ flushed. If this threshold is reached, flushing will occur in the
835
+ foreground and the buffer will be locked for writing until it is
836
+ finished. This should be larger than autoFlushBufferSize.</comment>
925
837
  </param>
926
838
  <param name="autoCreate" value="true">
927
839
  <comment>Create the model if it doesn&apos;t already exist.
@@ -929,6 +841,11 @@
929
841
  XML schema datatyped model named &quot;xsd&quot; will also be automatically
930
842
  created.</comment>
931
843
  </param>
844
+ <param name="bufferFlushBatchSize" value="20000">
845
+ <comment>The number of updates to send to the triplestore at a time.
846
+ This should be the same size as, or smaller than
847
+ autoFlushBufferSize.</comment>
848
+ </param>
932
849
  <param name="autoTextIndex" value="false">
933
850
  <comment>Whether to propagate adds/deletes to a full-text
934
851
  [Full-Text] model automatically. While a very useful feature,
@@ -937,28 +854,43 @@
937
854
  Note that if this is true and autoCreate is true, the text model
938
855
  will also be created if it doesn&apos;t already exist.</comment>
939
856
  </param>
857
+ <param name="poolMaxGrowth" value="-1">
858
+ <comment>Maximum number of additional sessions the pool may add. If
859
+ specified as -1, no limit will be placed on pool growth.</comment>
860
+ </param>
861
+ <param name="remote" value="false">
862
+ <comment>Tells the connector to communicate with Mulgara in remote or
863
+ local mode. If true, the host parameter must be defined. If false,
864
+ the path parameter must be defined.</comment>
865
+ </param>
940
866
  <param name="autoFlushDormantSeconds" value="5">
941
867
  <comment>Seconds of buffer inactivity that will trigger an
942
868
  auto-flush. If this threshold is reached, flushing will occur in the
943
869
  background, during which time the buffer is still available for
944
870
  writing.</comment>
945
871
  </param>
872
+ <param name="serverName" value="fedora">
873
+ <comment>The server name for rmi binding.</comment>
874
+ </param>
946
875
  <param name="autoFlushBufferSize" value="20000">
947
876
  <comment>The size at which the buffer should be auto-flushed. If
948
877
  this threshold is reached, flushing will occur in the background,
949
878
  during which time the buffer is still available for
950
879
  writing.</comment>
951
880
  </param>
952
- <param name="bufferFlushBatchSize" value="20000">
953
- <comment>The number of updates to send to the triplestore at a time.
954
- This should be the same size as, or smaller than
955
- autoFlushBufferSize.</comment>
881
+ <param name="modelName" value="ri">
882
+ <comment>The name of the model to use.</comment>
956
883
  </param>
957
- <param name="bufferSafeCapacity" value="40000">
958
- <comment>The maximum size the buffer can reach before being forcibly
959
- flushed. If this threshold is reached, flushing will occur in the
960
- foreground and the buffer will be locked for writing until it is
961
- finished. This should be larger than autoFlushBufferSize.</comment>
884
+ <param name="readOnly" value="false">
885
+ <comment>Whether the triplestore should be read-only. Most Fedora
886
+ repositories will set this to false.</comment>
887
+ </param>
888
+ <param name="path" value="data/resourceIndex" isFilePath="true">
889
+ <comment>The local path to the main triplestore directory.</comment>
890
+ </param>
891
+ <param name="connectorClassName" value="org.trippi.impl.mulgara.MulgaraConnector">
892
+ <comment>The name of the Trippi Connector class used to communicate
893
+ with the triplestore.</comment>
962
894
  </param>
963
895
  </datastore>
964
896
  <datastore id="localPostgresMPTTriplestore">
@@ -979,20 +911,20 @@
979
911
  http://jdbc.postgresql.org/download.html
980
912
  and make sure it's accessible to your servlet container.
981
913
  If you're running Tomcat, putting it in common/lib/ will work.</comment>
982
- <param name="connectorClassName" value="org.trippi.impl.mpt.MPTConnector"/>
983
- <param name="ddlGenerator" value="org.nsdl.mptstore.impl.postgres.PostgresDDLGenerator"/>
984
- <param name="jdbcDriver" value="org.postgresql.Driver"/>
985
- <param name="jdbcURL" value="jdbc:postgresql://localhost/riTriples"/>
986
- <param name="username" value="fedoraAdmin"/>
987
- <param name="password" value="fedoraAdmin"/>
914
+ <param name="fetchSize" value="1000"/>
988
915
  <param name="poolInitialSize" value="3"/>
989
- <param name="poolMaxSize" value="10"/>
916
+ <param name="bufferSafeCapacity" value="2000"/>
917
+ <param name="bufferFlushBatchSize" value="1000"/>
990
918
  <param name="backslashIsEscape" value="true"/>
991
- <param name="fetchSize" value="1000"/>
992
919
  <param name="autoFlushDormantSeconds" value="5"/>
920
+ <param name="password" value="fedoraAdmin"/>
993
921
  <param name="autoFlushBufferSize" value="1000"/>
994
- <param name="bufferFlushBatchSize" value="1000"/>
995
- <param name="bufferSafeCapacity" value="2000"/>
922
+ <param name="username" value="fedoraAdmin"/>
923
+ <param name="poolMaxSize" value="10"/>
924
+ <param name="jdbcURL" value="jdbc:postgresql://localhost/riTriples"/>
925
+ <param name="ddlGenerator" value="org.nsdl.mptstore.impl.postgres.PostgresDDLGenerator"/>
926
+ <param name="connectorClassName" value="org.trippi.impl.mpt.MPTConnector"/>
927
+ <param name="jdbcDriver" value="org.postgresql.Driver"/>
996
928
  </datastore>
997
929
  <datastore id="apimUpdateMessages">
998
930
  <comment>Messaging Destination for API-M events which update the repository</comment>