hydra-ezid 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/CONTRIBUTORS.md +1 -0
  4. data/Gemfile +0 -13
  5. data/{LICENSE → LICENSE.txt} +0 -0
  6. data/README.md +38 -19
  7. data/Rakefile +15 -5
  8. data/config/ezid.yml +13 -0
  9. data/config/ezid_override.yml +6 -0
  10. data/config/jetty.yml +6 -0
  11. data/hydra-ezid.gemspec +7 -8
  12. data/lib/hydra/ezid.rb +15 -4
  13. data/lib/hydra/ezid/identifiable.rb +75 -0
  14. data/lib/hydra/ezid/mint_error.rb +6 -0
  15. data/lib/hydra/ezid/version.rb +1 -1
  16. data/spec/spec_helper.rb +3 -27
  17. data/spec/units/ezid_spec.rb +105 -0
  18. metadata +26 -64
  19. data/.gitmodules +0 -4
  20. data/app/assets/images/hydra_ezid/.keep +0 -0
  21. data/app/assets/javascripts/hydra_ezid/.keep +0 -0
  22. data/app/assets/stylesheets/hydra_ezid/.keep +0 -0
  23. data/app/controllers/.keep +0 -0
  24. data/app/controllers/ezid_controller.rb +0 -3
  25. data/app/helpers/.keep +0 -0
  26. data/app/helpers/ezid_helper.rb +0 -3
  27. data/app/mailers/.keep +0 -0
  28. data/app/models/.keep +0 -0
  29. data/app/views/.keep +0 -0
  30. data/app/views/ezid/_button_to_mint_ezid.html.erb +0 -1
  31. data/config/routes.rb +0 -3
  32. data/fedora_conf/conf/development/fedora.fcfg +0 -946
  33. data/fedora_conf/conf/test/fedora.fcfg +0 -946
  34. data/gemfiles/rails3.gemfile +0 -6
  35. data/gemfiles/rails4.gemfile +0 -6
  36. data/lib/hydra-ezid.rb +0 -6
  37. data/lib/hydra/ezid/controller_behavior.rb +0 -27
  38. data/lib/hydra/ezid/model_methods.rb +0 -10
  39. data/solr_conf/conf/schema.xml +0 -372
  40. data/solr_conf/conf/solrconfig.xml +0 -164
  41. data/solr_conf/solr.xml +0 -35
  42. data/spec/controllers/ezid_controller_spec.rb +0 -4
  43. data/spec/factories.rb +0 -3
  44. data/spec/factories/.keep +0 -0
  45. data/spec/helpers/ezid_helper_spec.rb +0 -6
  46. data/spec/models/ezid_spec.rb +0 -4
  47. data/spec/support/app/models/sample.rb +0 -36
  48. data/spec/support/app/views/catalog/_sort_and_per_page.html.erb +0 -10
  49. data/spec/support/db/migrate/20111101221803_create_searches.rb +0 -16
  50. data/spec/support/lib/generators/test_app_generator.rb +0 -56
  51. data/spec/support/lib/tasks/rspec.rake +0 -8
  52. data/tasks/hydra-ezid-dev.rake +0 -68
  53. data/tasks/jetty.rake +0 -40
metadata CHANGED
@@ -1,31 +1,37 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hydra-ezid
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael J. Giarlo
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-08-06 00:00:00.000000000 Z
11
+ date: 2013-08-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: blacklight
14
+ name: activesupport
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - '>='
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: 3.2.13
20
+ - - <
21
+ - !ruby/object:Gem::Version
22
+ version: '5.0'
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
27
  - - '>='
25
28
  - !ruby/object:Gem::Version
26
- version: '0'
29
+ version: 3.2.13
30
+ - - <
31
+ - !ruby/object:Gem::Version
32
+ version: '5.0'
27
33
  - !ruby/object:Gem::Dependency
28
- name: hydra-head
34
+ name: active-fedora
29
35
  requirement: !ruby/object:Gem::Requirement
30
36
  requirements:
31
37
  - - '>='
@@ -81,7 +87,7 @@ dependencies:
81
87
  - !ruby/object:Gem::Version
82
88
  version: '0'
83
89
  - !ruby/object:Gem::Dependency
84
- name: rspec-rails
90
+ name: jettywrapper
85
91
  requirement: !ruby/object:Gem::Requirement
86
92
  requirements:
87
93
  - - '>='
@@ -95,26 +101,20 @@ dependencies:
95
101
  - !ruby/object:Gem::Version
96
102
  version: '0'
97
103
  - !ruby/object:Gem::Dependency
98
- name: sass-rails
104
+ name: rspec
99
105
  requirement: !ruby/object:Gem::Requirement
100
106
  requirements:
101
- - - <
102
- - !ruby/object:Gem::Version
103
- version: '5'
104
107
  - - '>='
105
108
  - !ruby/object:Gem::Version
106
- version: '3.2'
109
+ version: '0'
107
110
  type: :development
108
111
  prerelease: false
109
112
  version_requirements: !ruby/object:Gem::Requirement
110
113
  requirements:
111
- - - <
112
- - !ruby/object:Gem::Version
113
- version: '5'
114
114
  - - '>='
115
115
  - !ruby/object:Gem::Version
116
- version: '3.2'
117
- description: A Rails engine providing EZID services for Hydra applications
116
+ version: '0'
117
+ description: A Ruby gem providing EZID services for Hydra applications
118
118
  email:
119
119
  - leftwing@alumni.rutgers.edu
120
120
  executables: []
@@ -122,53 +122,24 @@ extensions: []
122
122
  extra_rdoc_files: []
123
123
  files:
124
124
  - .gitignore
125
- - .gitmodules
126
125
  - .travis.yml
127
126
  - CONTRIBUTING.md
128
127
  - CONTRIBUTORS.md
129
128
  - Gemfile
130
129
  - History.md
131
- - LICENSE
130
+ - LICENSE.txt
132
131
  - README.md
133
132
  - Rakefile
134
- - app/assets/images/hydra_ezid/.keep
135
- - app/assets/javascripts/hydra_ezid/.keep
136
- - app/assets/stylesheets/hydra_ezid/.keep
137
- - app/controllers/.keep
138
- - app/controllers/ezid_controller.rb
139
- - app/helpers/.keep
140
- - app/helpers/ezid_helper.rb
141
- - app/mailers/.keep
142
- - app/models/.keep
143
- - app/views/.keep
144
- - app/views/ezid/_button_to_mint_ezid.html.erb
145
- - config/routes.rb
146
- - fedora_conf/conf/development/fedora.fcfg
147
- - fedora_conf/conf/test/fedora.fcfg
148
- - gemfiles/rails3.gemfile
149
- - gemfiles/rails4.gemfile
133
+ - config/ezid.yml
134
+ - config/ezid_override.yml
135
+ - config/jetty.yml
150
136
  - hydra-ezid.gemspec
151
- - lib/hydra-ezid.rb
152
137
  - lib/hydra/ezid.rb
153
- - lib/hydra/ezid/controller_behavior.rb
154
- - lib/hydra/ezid/model_methods.rb
138
+ - lib/hydra/ezid/identifiable.rb
139
+ - lib/hydra/ezid/mint_error.rb
155
140
  - lib/hydra/ezid/version.rb
156
- - solr_conf/conf/schema.xml
157
- - solr_conf/conf/solrconfig.xml
158
- - solr_conf/solr.xml
159
- - spec/controllers/ezid_controller_spec.rb
160
- - spec/factories.rb
161
- - spec/factories/.keep
162
- - spec/helpers/ezid_helper_spec.rb
163
- - spec/models/ezid_spec.rb
164
141
  - spec/spec_helper.rb
165
- - spec/support/app/models/sample.rb
166
- - spec/support/app/views/catalog/_sort_and_per_page.html.erb
167
- - spec/support/db/migrate/20111101221803_create_searches.rb
168
- - spec/support/lib/generators/test_app_generator.rb
169
- - spec/support/lib/tasks/rspec.rake
170
- - tasks/hydra-ezid-dev.rake
171
- - tasks/jetty.rake
142
+ - spec/units/ezid_spec.rb
172
143
  homepage: https://github.com/psu-stewardship/hydra-ezid
173
144
  licenses:
174
145
  - APACHE2
@@ -192,16 +163,7 @@ rubyforge_project:
192
163
  rubygems_version: 2.0.3
193
164
  signing_key:
194
165
  specification_version: 4
195
- summary: A Rails engine providing EZID services for Hydra applications
166
+ summary: A Ruby gem providing EZID services for Hydra applications
196
167
  test_files:
197
- - spec/controllers/ezid_controller_spec.rb
198
- - spec/factories.rb
199
- - spec/factories/.keep
200
- - spec/helpers/ezid_helper_spec.rb
201
- - spec/models/ezid_spec.rb
202
168
  - spec/spec_helper.rb
203
- - spec/support/app/models/sample.rb
204
- - spec/support/app/views/catalog/_sort_and_per_page.html.erb
205
- - spec/support/db/migrate/20111101221803_create_searches.rb
206
- - spec/support/lib/generators/test_app_generator.rb
207
- - spec/support/lib/tasks/rspec.rake
169
+ - spec/units/ezid_spec.rb
@@ -1,4 +0,0 @@
1
- [submodule "jetty"]
2
- path = jetty
3
- url = git://github.com/projecthydra/hydra-jetty.git
4
- ignore = dirty
File without changes
File without changes
File without changes
File without changes
@@ -1,3 +0,0 @@
1
- class EzidController < ApplicationController
2
- include Hydra::EzidControllerBehavior
3
- end
File without changes
@@ -1,3 +0,0 @@
1
- module EzidHelper
2
- # define view helper methods here
3
- end
File without changes
File without changes
File without changes
@@ -1 +0,0 @@
1
- <%= button_to label, ezid.new_ezid_path, :method=>:get, :class=>"btn btn-primary ezid-add submits-batches", "data-behavior"=>"hydra-ezid", :id=>"hydra-ezid-add" %>
@@ -1,3 +0,0 @@
1
- Hydra::Ezid::Engine.routes.draw do
2
- resources :ezid
3
- end
@@ -1,946 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <server xmlns="http://www.fedora.info/definitions/1/0/config/" class="org.fcrepo.server.BasicServer">
3
- <param name="datastreamExtensionMappingSource" value="mime-to-extensions.xml">
4
- <comment>Source of mappings from MIMETYPE to file extension</comment>
5
- </param>
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>
9
- </param>
10
- <param name="httpClientMaxConnectionsPerHost" value="5">
11
- <comment>Maximum number of Fedora http client connections allowed to a given host.</comment>
12
- </param>
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>
16
- </param>
17
- <param name="fedoraServerHost" value="localhost">
18
- <comment>Defines the host name for the Fedora server, as seen from the
19
- outside world.</comment>
20
- </param>
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>
29
- </param>
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>
51
- </param>
52
- <param name="datastreamMediationLimit" value="5000">
53
- <comment>Determines the time interval in which external mechanisms must
54
- respond to requests by the Fedora server. The value is specified in
55
- milliseconds. The value specified should be set high enough to allow
56
- for an average response time from any single external mechanisms. Note
57
- this value must be less than the limit specified for the
58
- datastreamExpirationLimit.</comment>
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>
76
- <param name="datastreamContentDispositionInlineEnabled" value="true">
77
- <comment>determines if a content-disposition header specifying &quot;inline&quot; and
78
- a filename is added to the response for the REST API getDatastreamDissemination
79
- when no query parameter of download=true is specified. Browser support for
80
- recognising a filename in case of &quot;inline&quot; content disposition is patchy,
81
- so you may wish to disable the content disposition header in this case and only
82
- have it provided when download=true is specified, in which case the content disposition
83
- of &quot;attachment&quot; will be used; which is generally supported.</comment>
84
- </param>
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>
89
- </param>
90
- <param name="fedoraShutdownPort" value="8005">
91
- <comment>Defines the port number used to shutdown the Fedora sever;
92
- default is 8005.</comment>
93
- </param>
94
- <param name="datastreamDefaultExtension" value="bin">
95
- <comment>Extension to use when none can be determined from mappings</comment>
96
- </param>
97
- <param name="datastreamDefaultFilename" value="download">
98
- <comment>Filename to use for datastream downloads when none can be determined from the
99
- sources listed in datastreamFilenameSource.</comment>
100
- </param>
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>
106
- </param>
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>
110
- </param>
111
- <param name="httpClientTimeoutSecs" value="20">
112
- <comment>Number of seconds Fedora http client will wait for a connection before timing
113
- out.</comment>
114
- </param>
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
- </param>
119
- <module role="org.fcrepo.server.security.Authorization" class="org.fcrepo.server.security.DefaultAuthorization">
120
- <comment>Builds and manages Fedora's authorization structure.</comment>
121
- <param name="REPOSITORY-POLICY-GUITOOL-POLICIES-DIRECTORY" value="data/fedora-xacml-policies/repository-policies-generated-by-policyguitool" isFilePath="true">
122
- <comment>This parameter is for future use.</comment>
123
- </param>
124
- <param name="POLICY-SCHEMA-PATH" value="xsd/cs-xacml-schema-policy-01.xsd"/>
125
- <param name="ENFORCE-MODE" value="permit-all-requests"/>
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"/>
131
- </module>
132
- <module role="org.fcrepo.server.security.BackendSecurity" class="org.fcrepo.server.security.DefaultBackendSecurity">
133
- <comment>Description: Interface to the backend service security
134
- configuration. This module initializes backend service security
135
- information in the server by parsing the beSecurity configuration file.
136
- This file is located in the distribution in
137
- $FEDORA_HOME/dist/server/config/beSecurity.xml. The configuration file
138
- is read once at server startup.</comment>
139
- <param name="beSecurity_char_encoding" value="utf-8">
140
- <comment>The character encoding used for the beSecurity
141
- configuration file. The default is &quot;utf-8&quot;. The value
142
- specified must correspond to the character encoding used in the
143
- beSecurity configuration file.</comment>
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>
151
- </module>
152
- <module role="org.fcrepo.server.storage.DOManager" class="org.fcrepo.server.storage.DefaultDOManager">
153
- <comment>The interface to the storage subsystem. This provides
154
- context-appropriate DOReaders and DOWriters for reflecting on and
155
- writing to the objects stored in the repository. It also provides
156
- methods for reflecting on the contents of the repository as a whole..</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>
176
- </param>
177
- <param name="storagePool" value="localDerbyPool">
178
- <comment>The named connection pool from which read/write database
179
- connections are to be provided for the storage subsystem (see the
180
- ConnectionPoolManager module). Default is the default provided by the
181
- ConnectionPoolManager.</comment>
182
- </param>
183
- <param name="gSearchRESTURL" value="http://localhost:8983/fedoragsearch/rest">
184
- <comment>The REST endpoint of the Fedora Generic Search service.
185
- This parameter is only required if GSearchDOManager is
186
- used.</comment>
187
- </param>
188
- <param name="defaultExportFormat" value="info:fedora/fedora-system:FOXML-1.1"/>
189
- <param name="defaultRELSControlGroup" value="X">
190
- <comment>The control group to use for system-generated RELS-EXT and
191
- RELS-INT datastreams where these are not already present when
192
- adding relationships via addRelationship. Must be &quot;X&quot; or &quot;M&quot;.</comment>
193
- </param>
194
- <param name="pidNamespace" value="changeme">
195
- <comment>This is the namespace id for pids of newly-created objects.
196
- This should be unique for a repository. It can be from 1 to 17
197
- characters, and may only contain A-Z, a-z, 0-9, &apos;.&apos;, or &apos;-&apos; (dash).</comment>
198
- </param>
199
- </module>
200
- <module role="org.fcrepo.server.management.Management" class="org.fcrepo.server.management.ManagementModule">
201
- <comment>The management subsystem. This implements the methods necessary
202
- to fulfill API-M requests without regard to:
203
- - how the service is exposed
204
- - how bytestreams and java types might be marshalled/demarshalled over the wire
205
- - how the storage subsystem is implemented.</comment>
206
- <param name="purgeDelayInMillis" value="60000">
207
- <comment>Optional, default is 60000 (1 minute).
208
- This specifies the amount of time between checks to remove
209
- temporary files uploaded via the API-M upload interface. During
210
- each check, old files whose age exceeds uploadStorageMinutes
211
- will be removed.</comment>
212
- </param>
213
- <param name="decorator1" value="org.fcrepo.server.messaging.NotificationInvocationHandler"/>
214
- <param name="checksumAlgorithm" value="SHA-1">
215
- <comment>Specifies which checksumming algorithm is to be used when
216
- automatically computing checksums as specified by the above
217
- parameter. Valid values are: MD5 SHA-1 SHA-256 SHA-384 SHA-512.</comment>
218
- </param>
219
- <param name="uploadStorageMinutes" value="5">
220
- <comment>Optional, default is 5.
221
- This specifies the minimum amount of time that each uploaded
222
- file should be kept in temporary storage.</comment>
223
- </param>
224
- <param name="autoChecksum" value="true">
225
- <comment>Controls whether a checksum is automatically computed for
226
- every datastream as the datastream is added to the repository. This
227
- will allow the integrity of datastream contents to be periodically
228
- checked to insure the object is not corrupted.</comment>
229
- </param>
230
- </module>
231
- <module role="org.fcrepo.server.access.Access" class="org.fcrepo.server.access.DefaultAccess">
232
- <comment>Description: The access subsystem. This implements the methods
233
- necessary to fulfill API-A requests without regard to:
234
- - how the service is exposed
235
- - how bytestreams and java types might be marshalled/demarshalled
236
- over the wire.</comment>
237
- <param name="doMediateDatastreams" value="false">
238
- <comment>A boolean switch indicating whether Datastream Mediation is
239
- activated or not. Datastream Mediation is required if using basic
240
- authentication for API-A. When basic authentication is enabled for
241
- API-A, backend services used by custom disseminations may or may not be
242
- capable of authenticating with the Fedora server. Datastream mediation
243
- coupled with the backend service configuration information in the
244
- beSecurity.xml file enables the Fedora server to determine which backend
245
- services are required to authenticate and which ones are allowed to
246
- connect without authentication. Datastream mediation provides additional
247
- repository security by not exposing the physical location of Referenced
248
- Content datastreams to external mechanisms(services). Instead of
249
- exposing the actual physical location of Referenced Content datastreams,
250
- Datastream Mediation functions as a proxy requiring all external
251
- services to communicate through the Fedora server to resolve the
252
- location of Referenced Content datastreams.
253
-
254
- IMPORTANT: For Datastream Mediation to function, the Fedora server must
255
- be internet accessible using the configured name for fedoraServerHost
256
- and fedoraServerPort. For example, using the default fedoraServerHost
257
- value of &quot;localhost&quot; will not work if you have remote backend services
258
- since the hostname of &quot;localhost&quot; will not be resolvable as the Fedora
259
- server by the remote backend services. This requirement can be difficult
260
- to satisfy if the Fedora server is located behind a firewall and you do
261
- not have ready access to the firewall&apos;s configuration to enable the
262
- required access. If the Fedora server is behind a firewall and you have
263
- no access to the firewall&apos;s configuration, you are limited to keeping
264
- Datastream Mediation turned off. Note that this will also prevent you
265
- from using basic authentication with API-A. The default value of
266
- doMediateDatastreams is false.</comment>
267
- </param>
268
- </module>
269
- <module role="org.fcrepo.server.access.DynamicAccess" class="org.fcrepo.server.access.DynamicAccessModule">
270
- <comment>The dynamic behavior module for the access subsystem. This
271
- implements the methods necessary to fulfill API-A requests without
272
- regard to:
273
- - dynamically associating a default behavior definition and mechanism with objects
274
- - (Future) dynamically associating other behavior definitions and mechanisms
275
- with objects
276
- - running disseminations of dynamic behaviors</comment>
277
- <param name="fedora-system:1" value="org.fcrepo.server.access.internalservices.Bootstrap">
278
- <comment>The interface that defines the methods of the bootstrap
279
- disseminator. These methods are &quot;built-in&quot; to the Fedora system, and
280
- are dynamically associated with every behavior definition and
281
- behavior mechanism object.</comment>
282
- </param>
283
- <param name="fedora-system:2" value="org.fcrepo.server.access.internalservices.BootstrapImpl">
284
- <comment>The class that implements the methods of the bootstrap
285
- disseminator. These method implementations are &quot;built-in&quot; to the
286
- Fedora system, and are dynamically associated with every behavior
287
- definition and behavior mechanism object. This class can be thought
288
- of as implementing an &quot;internal service&quot; whereas other disseminators
289
- use external services (described by WSDL) to do their work.</comment>
290
- </param>
291
- <param name="fedora-system:3" value="org.fcrepo.server.access.defaultdisseminator.DefaultDisseminator">
292
- <comment>The interface that defines the methods of the default
293
- disseminator. These methods are &quot;built-in&quot; to the Fedora system, and
294
- are dynamically associated with every object.</comment>
295
- </param>
296
- <param name="fedora-system:4" value="org.fcrepo.server.access.defaultdisseminator.DefaultDisseminatorImpl">
297
- <comment>The class that implements the methods of the default
298
- disseminator. These method implementations are &quot;built-in&quot; to the
299
- Fedora system, and are dynamically associated with every object.
300
- This class can be though of as implementing an &quot;internal service&quot;
301
- whereas other disseminators use external services (described by
302
- WSDL) to do their work.</comment>
303
- </param>
304
- </module>
305
- <module role="org.fcrepo.server.search.FieldSearch" class="org.fcrepo.server.search.FieldSearchSQLModule">
306
- <comment>Supports the API-A simpleSearch and advancedSearch methods.</comment>
307
- <param name="indexDCFields" value="true">
308
- <comment>(optional, default is true) Whether the content of the DC
309
- datastream should be examined and the contents indexed, for each object.
310
- You may wish to save time and space by disabling DC field indexing,
311
- particularly if you have an external search service (such as Fedora
312
- Generic Search) that already fulfills this need.
313
- Note: If you change this value on a Fedora repository that has been
314
- running for some time, you will need to perform a SQL rebuild using the
315
- Fedora Rebuilder tool if you want to change objects that have already
316
- been ingested.</comment>
317
- </param>
318
- <param name="connectionPool" value="localDerbyPool">
319
- <comment>(optional) To make unspecified, comment out or delete the
320
- whole param line as opposed to using an empty string,
321
- default=ConnectionPoolManager&apos;s default) The connectionPool
322
- providing the connection to the database to be used. Warning: When
323
- setting these values, keep in mind that while a session is not timed
324
- out (maxSecondsPerSession seconds haven&apos;t elapsed, and not all
325
- results have been requested), a connection from the pool is tied up.
326
- Therefore, the connectionPool should be at least of size n, large
327
- enough to accomodate n simultaneous search sessions. The longer
328
- maxSecondsPerSession is, the more chance you have of tying up all
329
- available connections from the pool. Therefore, keep
330
- maxSecondsPerSession fairly low, but still reasonable for an
331
- automated program or user to serially get a long list of results,
332
- and make sure you have a connectionPool large enough to accomodate
333
- your users.</comment>
334
- </param>
335
- <param name="maxSecondsPerSession" value="500">
336
- <comment>(required, must be &gt; 0)
337
- The maximum number of seconds that the server guarantees subsequent
338
- search results may be obtained. This is only used in cases where the
339
- number of results is greater than maxResults (as specified by the
340
- server [above] or the client [in the search request]).</comment>
341
- </param>
342
- <param name="maxResults" value="100">
343
- <comment>(required, must be &gt; 0)
344
- The maximum number of records to
345
- return as the result of a search. Even if a client requests more
346
- results at a time, this is the cutoff value.</comment>
347
- </param>
348
- </module>
349
- <module role="org.fcrepo.server.resourceIndex.ResourceIndex" class="org.fcrepo.server.resourceIndex.ResourceIndexModule">
350
- <comment>Supports the ResourceIndex.</comment>
351
- <param name="level" value="0">
352
- <comment>(required)
353
- Index level. Currently, only 0, and 1 are supported levels.
354
- 0 = off and 1 = on.
355
- WARNING: changing the level (except to 0) requires
356
- running the Resource Index Rebuilder.</comment>
357
- </param>
358
- <param name="syncUpdates" value="false">
359
- <comment>(optional, default is false)
360
- Whether to flush the triple buffer before
361
- returning from object modification operations.
362
- Specifying this as true will ensure that RI queries
363
- immediately reflect the latest triples.
364
- Specifying false will not provide this guarantee,
365
- but can significantly reduce roundtrip time for
366
- API-M operations (depending on the triplestore
367
- implementation).</comment>
368
- </param>
369
- <param name="datastore" value="localMulgaraTriplestore">
370
- <comment>(required)
371
- Name of the triplestore to use. WARNING: changing the
372
- triplestore running the Resource Index Rebuilder.</comment>
373
- </param>
374
- <param name="alias:test" value="http://example.org/terms#">
375
- <comment>(optional) Aliases that can be used for queries. The param
376
- name of an alias starts with the string &quot;alias:&quot; and is followed by
377
- the name of the alias (shortcut) for the value, which is a URI
378
- prefix. For example: name=&quot;alias:test&quot;
379
- value=&quot;http://example.org/terms#&quot; will allow a query to use
380
- test:apple instead of http://example.org/terms#apple</comment>
381
- </param>
382
- </module>
383
- <module role="org.fcrepo.oai.OAIProvider" class="org.fcrepo.server.oai.FedoraOAIProviderModule">
384
- <comment>Description: Exposes the repository for OAI harvesters.</comment>
385
- <param name="maxRecords" value="100"/>
386
- <param name="friends" value="http://arXiv.org/oai2 http://memory.loc.gov/cgi-bin/oai2_0"/>
387
- <param name="adminEmails" value="oai-admin@example.org bob@example.org"/>
388
- <param name="repositoryDomainName" value="example.org"/>
389
- <param name="maxHeaders" value="100"/>
390
- <param name="repositoryName" value="Your Fedora Repository Name Here"/>
391
- </module>
392
- <module role="org.fcrepo.server.storage.translation.DOTranslator" class="org.fcrepo.server.storage.translation.DOTranslatorModule">
393
- <comment>Supports translation from DigitalObject to a stream of some
394
- format, and vice-versa. The parameters below specify
395
- serializer/deserializer classes to be used for a given format. Those
396
- classes must implement the DOSerializer/DODeserializer interfaces.</comment>
397
- <param name="serializer_info:fedora/fedora-system:ATOM-1.1" value="org.fcrepo.server.storage.translation.Atom1_1DOSerializer"/>
398
- <param name="deserializer_info:fedora/fedora-system:FOXML-1.1" value="org.fcrepo.server.storage.translation.FOXML1_1DODeserializer"/>
399
- <param name="serializer_info:fedora/fedora-system:METSFedoraExt-1.0" value="org.fcrepo.server.storage.translation.METSFedoraExt1_0DOSerializer"/>
400
- <param name="deserializer_info:fedora/fedora-system:METSFedoraExt-1.1" value="org.fcrepo.server.storage.translation.METSFedoraExt1_1DODeserializer"/>
401
- <param name="serializer_info:fedora/fedora-system:METSFedoraExt-1.1" value="org.fcrepo.server.storage.translation.METSFedoraExt1_1DOSerializer"/>
402
- <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.0" value="org.fcrepo.server.storage.translation.FOXML1_0DOSerializer"/>
404
- <param name="deserializer_info:fedora/fedora-system:ATOMZip-1.1" value="org.fcrepo.server.storage.translation.AtomZip1_1DODeserializer"/>
405
- <param name="serializer_info:fedora/fedora-system:FOXML-1.1" value="org.fcrepo.server.storage.translation.FOXML1_1DOSerializer"/>
406
- <param name="deserializer_info:fedora/fedora-system:ATOM-1.1" value="org.fcrepo.server.storage.translation.Atom1_1DODeserializer"/>
407
- <param name="deserializer_info:fedora/fedora-system:FOXML-1.0" value="org.fcrepo.server.storage.translation.FOXML1_0DODeserializer"/>
408
- <param name="serializer_info:fedora/fedora-system:ATOMZip-1.1" value="org.fcrepo.server.storage.translation.AtomZip1_1DOSerializer"/>
409
- </module>
410
- <module role="org.fcrepo.server.management.PIDGenerator" class="org.fcrepo.server.management.BasicPIDGenerator">
411
- <comment>The pid generator.</comment>
412
- <param name="pidgen_log_dir" value="pidgen"/>
413
- </module>
414
- <module role="org.fcrepo.server.messaging.Messaging" class="org.fcrepo.server.messaging.MessagingModule">
415
- <comment>Fedora's Java Messaging Service (JMS) Module</comment>
416
- <param name="enabled" value="false"/>
417
- <param name="java.naming.factory.initial" value="org.apache.activemq.jndi.ActiveMQInitialContextFactory"/>
418
- <param name="java.naming.provider.url" value="vm:(broker:(tcp://localhost:61616))"/>
419
- <param name="datastore1" value="apimUpdateMessages">
420
- <comment>A datastore representing a JMS Destination for APIM events which update the repository</comment>
421
- </param>
422
- <param name="datastore2" value="apimAccessMessages">
423
- <comment>A datastore representing a JMS Destination for APIM events which do not update the repository</comment>
424
- </param>
425
- </module>
426
- <module role="org.fcrepo.server.storage.ConnectionPoolManager" class="org.fcrepo.server.storage.ConnectionPoolManagerImpl">
427
- <comment>This module facilitates obtaining ConnectionPools</comment>
428
- <param name="defaultPoolName" value="localDerbyPool"/>
429
- <param name="poolNames" value="localDerbyPool"/>
430
- </module>
431
- <module role="org.fcrepo.server.validation.DOValidator" class="org.fcrepo.server.validation.DOValidatorModule">
432
- <comment>Description: Supports validation of digital objects, including
433
- XML Schema validation, Schematron validation (to Fedora Rules schema
434
- written in Schematron language), and other programatic validation
435
- including referential integrity checking of existence and
436
- availability of distributed data and/or services.</comment>
437
- <param name="tempDir" value="work">
438
- <comment>(required)
439
- This is a directory that the validation module can use as a work space, as
440
- when it must write a temporary file.</comment>
441
- </param>
442
- <param name="rules_info:fedora/fedora-system:ATOM-1.1" value="schematron/atom-bogus.xml">
443
- <comment>The local path to the Schematron Rules used for
444
- Fedora-specific on Atom XML files.</comment>
445
- </param>
446
- <param name="schtron_preprocessor" value="schematron/preprocessor.xslt"/>
447
- <param name="rules_info:fedora/fedora-system:ATOMZip-1.1" value="schematron/atom-bogus.xml">
448
- <comment>The local path to the Schematron Rules used for
449
- Fedora-specific on Atom Zip files.</comment>
450
- </param>
451
- <param name="rules_info:fedora/fedora-system:FOXML-1.1" value="schematron/foxmlRules1-1.xml">
452
- <comment>The local path to the Schematron Rules used for
453
- Fedora-specific validation on FOXML 1.1 XML files.</comment>
454
- </param>
455
- <param name="rules_info:fedora/fedora-system:FOXML-1.0" value="schematron/foxmlRules1-0.xml">
456
- <comment>The local path to the Schematron Rules used for
457
- Fedora-specific validation on FOXML 1.0 XML files.</comment>
458
- </param>
459
- <param name="xsd_info:fedora/fedora-system:METSFedoraExt-1.1" value="xsd/mets-fedora-ext1-1.xsd">
460
- <comment>The local path for the Fedora-METS XML
461
- schema used to do XML schema validation of digital objects.</comment>
462
- </param>
463
- <param name="xsd_info:fedora/fedora-system:METSFedoraExt-1.0" value="xsd/mets-fedora-ext.xsd">
464
- <comment>The local path for the Fedora-METS 1.0 XML
465
- schema used to do XML schema validation of digital objects.</comment>
466
- </param>
467
- <param name="xsd_xacml_policy1.0" value="xsd/cs-xacml-schema-policy-1.0.xsd">
468
- <comment>The local path for the OASIS XACML XML policy schema
469
- used to do XML schema validation of XACML policies.</comment>
470
- </param>
471
- <param name="xsd_info:fedora/fedora-system:FOXML-1.1" value="xsd/foxml1-1.xsd">
472
- <comment>The local path for the Fedora FOXML 1.1 XML schema
473
- used to do XML schema validation of digital objects</comment>
474
- </param>
475
- <param name="xsd_info:fedora/fedora-system:FOXML-1.0" value="xsd/foxml1-0.xsd">
476
- <comment>The local path for the Fedora FOXML 1.0 XML schema
477
- used to do XML schema validation of digital objects</comment>
478
- </param>
479
- <param name="xsd_info:fedora/fedora-system:ATOM-1.1" value="xsd/atom.xsd">
480
- <comment>The local path for the Atom XML schema used to do XML
481
- schema validation of digital objects</comment>
482
- </param>
483
- <param name="rules_info:fedora/fedora-system:METSFedoraExt-1.0" value="schematron/metsExtRules1-0.xml">
484
- <comment>The local path to the Schematron Rules used for
485
- Fedora-specific validation on Fedora-METS 1.0 XML files.</comment>
486
- </param>
487
- <param name="xsd_info:fedora/fedora-system:ATOMZip-1.1" value="xsd/atom.xsd">
488
- <comment>The local path for the Atom XML schema used to do XML
489
- schema validation of digital objects</comment>
490
- </param>
491
- <param name="rules_info:fedora/fedora-system:METSFedoraExt-1.1" value="schematron/metsExtRules1-1.xml">
492
- <comment>The local path to the Schematron Rules used for
493
- Fedora-specific validation on Fedora-METS XML files.</comment>
494
- </param>
495
- </module>
496
- <module role="org.fcrepo.server.storage.ExternalContentManager" class="org.fcrepo.server.storage.DefaultExternalContentManager">
497
- <comment>This module facilitates obtaining external content via HTTP</comment>
498
- </module>
499
- <datastore id="localMySQLPool">
500
- <comment>MySQL database on localhost with db name of fedora3. Each
501
- connection pool instance has several configuration parameter that
502
- can be used to tune the options for the connection pool. It is
503
- recommended that you not change the default values unless you are
504
- trying to address a specific performance issue. For additional
505
- information regarding connection pool options, refer to the Apache
506
- Commons Pool API documentation at
507
- http://jakarta.apache.org/commons/pool/apidocs/index.html.</comment>
508
- <param name="maxIdle" value="10">
509
- <comment>The maximum number of idle instances in pool.</comment>
510
- </param>
511
- <param name="testOnBorrow" value="true">
512
- <comment>When true objects are validated before borrowed from the
513
- pool.</comment>
514
- </param>
515
- <param name="testWhileIdle" value="true">
516
- <comment>When true, objects are validated by the idle object evictor
517
- thread.</comment>
518
- </param>
519
- <param name="validationQuery" value="select 1">
520
- <comment>The query to run when validating connections.
521
- Connections are validated according to the testOnBorrow,
522
- testOnReturn, and testWhileIdle configuration values.
523
- If this is specified, it must be a SQL SELECT statement
524
- that returns at least one row. If this is NOT specified,
525
- validation tests will not be run.</comment>
526
- </param>
527
- <param name="ddlConverter" value="org.fcrepo.server.utilities.MySQLDDLConverter"/>
528
- <param name="dbUsername" value="fedoraAdmin">
529
- <comment>The database user name.</comment>
530
- </param>
531
- <param name="testOnReturn" value="true">
532
- <comment>When true, objects are validated before returned to the
533
- pool.</comment>
534
- </param>
535
- <param name="maxActive" value="100">
536
- <comment>The maximum number of active instances in pool.</comment>
537
- </param>
538
- <param name="dbPassword" value="fedoraAdmin">
539
- <comment>The database password.</comment>
540
- </param>
541
- <param name="jdbcURL" value="jdbc:mysql://localhost/fedora3?useUnicode=true&amp;characterEncoding=UTF-8&amp;autoReconnect=true">
542
- <comment>The JDBC connection URL.</comment>
543
- </param>
544
- <param name="whenExhaustedAction" value="1">
545
- <comment>Action to take when a new object is requested and the the pool has
546
- reached maximum number of active objects. Valid values are:
547
- 0 (fail i.e., throw Exception)
548
- 1 (block i.e., wait until pool resources are freed)
549
- 2 (grow i.e., increase the size of the pool).</comment>
550
- </param>
551
- <param name="numTestsPerEvictionRun" value="3">
552
- <comment>The number of objects to be examined on each run of idle
553
- evictor thread (if applicable). A value less than zero indicates
554
- that ceil(numIdle)/abs(numTestsPerEvictionRun) will be run.</comment>
555
- </param>
556
- <param name="jdbcDriverClass" value="com.mysql.jdbc.Driver">
557
- <comment>The JDBC driver class name.</comment>
558
- </param>
559
- <param name="maxWait" value="-1">
560
- <comment>The maximum amount of time in milliseconds the
561
- borrowObject() method should wait before throwing an Exception when
562
- whenExhaustedAction is set to WHEN_EXHAUSTED_BLOCK. A value less
563
- than zero indicates block indefinitely.</comment>
564
- </param>
565
- <param name="minIdle" value="0">
566
- <comment>The minimum of idle instances in pool.</comment>
567
- </param>
568
- <param name="minEvictableIdleTimeMillis" value="1800000">
569
- <comment>The minimum amount of time in milliseconds an object can be
570
- idle in pool before eligible for eviction (if applicable). A value
571
- less than zero indicates no object will be evicted due to idle time
572
- alone.</comment>
573
- </param>
574
- <param name="timeBetweenEvictionRunsMillis" value="-1">
575
- <comment>The time in milliseconds to sleep between runs of the idle
576
- object evictor thread. A value less than zero indicates no idle
577
- evictor thread is run.</comment>
578
- </param>
579
- </datastore>
580
- <datastore id="localDerbyPool">
581
- <comment>Derby database on localhost running on port 1527 Each
582
- connection pool instance has several configuration parameter that
583
- can be used to tune the options for the connection pool. It is
584
- recommended that you not change the default values unless you are
585
- trying to address a specific performance issue. For additional
586
- information regarding connection pool options, refer to the Apache
587
- Commons Pool API documentation at
588
- http://jakarta.apache.org/commons/pool/apidocs/index.html.</comment>
589
- <param name="maxIdle" value="10">
590
- <comment>The maximum number of idle instances in pool.</comment>
591
- </param>
592
- <param name="testOnBorrow" value="true">
593
- <comment>When true objects are validated before borrowed from the
594
- pool.</comment>
595
- </param>
596
- <param name="testWhileIdle" value="true">
597
- <comment>When true, objects are validated by the idle object evictor
598
- thread.</comment>
599
- </param>
600
- <param name="ddlConverter" value="org.fcrepo.server.utilities.DerbyDDLConverter"/>
601
- <param name="dbUsername" value="fedoraAdmin">
602
- <comment>The database user name.</comment>
603
- </param>
604
- <param name="testOnReturn" value="true">
605
- <comment>When true, objects are validated before returned to the
606
- pool.</comment>
607
- </param>
608
- <param name="maxActive" value="100">
609
- <comment>The maximum number of active instances in pool.</comment>
610
- </param>
611
- <param name="dbPassword" value="fedoraAdmin">
612
- <comment>The database password.</comment>
613
- </param>
614
- <param name="jdbcURL" value="jdbc:derby:fedora/default/derby/fedora3;create=true">
615
- <comment>The JDBC connection URL.</comment>
616
- </param>
617
- <param name="whenExhaustedAction" value="1">
618
- <comment>Action to take when a new object is requested and the the pool has
619
- reached maximum number of active objects. Valid values are:
620
- 0 (fail i.e., throw Exception)
621
- 1 (block i.e., wait until pool resources are freed)
622
- 2 (grow i.e., increase the size of the pool).</comment>
623
- </param>
624
- <param name="numTestsPerEvictionRun" value="3">
625
- <comment>The number of objects to be examined on each run of idle
626
- evictor thread (if applicable). A value less than zero indicates
627
- that ceil(numIdle)/abs(numTestsPerEvictionRun) will be run.</comment>
628
- </param>
629
- <param name="jdbcDriverClass" value="org.apache.derby.jdbc.EmbeddedDriver">
630
- <comment>The JDBC driver class name.</comment>
631
- </param>
632
- <param name="maxWait" value="-1">
633
- <comment>The maximum amount of time in milliseconds the
634
- borrowObject() method should wait before throwing an Exception when
635
- whenExhaustedAction is set to WHEN_EXHAUSTED_BLOCK. A value less
636
- than zero indicates block indefinitely.</comment>
637
- </param>
638
- <param name="minIdle" value="0">
639
- <comment>The minimum of idle instances in pool.</comment>
640
- </param>
641
- <param name="minEvictableIdleTimeMillis" value="1800000">
642
- <comment>The minimum amount of time in milliseconds an object can be
643
- idle in pool before eligible for eviction (if applicable). A value
644
- less than zero indicates no object will be evicted due to idle time
645
- alone.</comment>
646
- </param>
647
- <param name="timeBetweenEvictionRunsMillis" value="-1">
648
- <comment>The time in milliseconds to sleep between runs of the idle
649
- object evictor thread. A value less than zero indicates no idle
650
- evictor thread is run.</comment>
651
- </param>
652
- </datastore>
653
- <datastore id="localOraclePool">
654
- <comment>Oracle database on localhost with SID=fedora3 Each
655
- connection pool instance has several configuration parameter that
656
- can be used to tune the options for the connection pool. It is
657
- recommended that you not change the default values unless you are
658
- trying to address a specific performance issue. For additional
659
- information regarding connection pool options, refer to the Apache
660
- Commons Pool API documentation at
661
- http://jakarta.apache.org/commons/pool/apidocs/index.html.</comment>
662
- <param name="maxIdle" value="10">
663
- <comment>The maximum number of idle instances in pool.</comment>
664
- </param>
665
- <param name="testOnBorrow" value="true">
666
- <comment>When true objects are validated before borrowed from the
667
- pool.</comment>
668
- </param>
669
- <param name="testWhileIdle" value="true">
670
- <comment>When true, objects are validated by the idle object evictor
671
- thread.</comment>
672
- </param>
673
- <param name="validationQuery" value="select &apos;validationQuery&apos; from dual">
674
- <comment>The query to run when validating connections.
675
- Connections are validated according to the testOnBorrow,
676
- testOnReturn, and testWhileIdle configuration values.
677
- If this is specified, it must be a SQL SELECT statement
678
- that returns at least one row. If this is NOT specified,
679
- validation tests will not be run.</comment>
680
- </param>
681
- <param name="ddlConverter" value="org.fcrepo.server.utilities.OracleDDLConverter"/>
682
- <param name="dbUsername" value="fedoraAdmin">
683
- <comment>The database user name.</comment>
684
- </param>
685
- <param name="connection.SetBigStringTryClob" value="true"/>
686
- <param name="testOnReturn" value="true">
687
- <comment>When true, objects are validated before returned to the
688
- pool.</comment>
689
- </param>
690
- <param name="maxActive" value="100">
691
- <comment>The maximum number of active instances in pool.</comment>
692
- </param>
693
- <param name="dbPassword" value="fedoraAdmin">
694
- <comment>The database password.</comment>
695
- </param>
696
- <param name="jdbcURL" value="jdbc:oracle:thin:@localhost:1521:fedora3">
697
- <comment>The JDBC connection URL.</comment>
698
- </param>
699
- <param name="whenExhaustedAction" value="1">
700
- <comment>Action to take when a new object is requested and the the pool has
701
- reached maximum number of active objects. Valid values are:
702
- 0 (fail i.e., throw Exception)
703
- 1 (block i.e., wait until pool resources are freed)
704
- 2 (grow i.e., increase the size of the pool).</comment>
705
- </param>
706
- <param name="numTestsPerEvictionRun" value="3">
707
- <comment>The number of objects to be examined on each run of idle
708
- evictor thread (if applicable). A value less than zero indicates
709
- that ceil(numIdle)/abs(numTestsPerEvictionRun) will be run.</comment>
710
- </param>
711
- <param name="jdbcDriverClass" value="oracle.jdbc.OracleDriver">
712
- <comment>The JDBC driver class name.</comment>
713
- </param>
714
- <param name="maxWait" value="-1">
715
- <comment>The maximum amount of time in milliseconds the
716
- borrowObject() method should wait before throwing an Exception when
717
- whenExhaustedAction is set to WHEN_EXHAUSTED_BLOCK. A value less
718
- than zero indicates block indefinitely.</comment>
719
- </param>
720
- <param name="minIdle" value="0">
721
- <comment>The minimum of idle instances in pool.</comment>
722
- </param>
723
- <param name="minEvictableIdleTimeMillis" value="1800000">
724
- <comment>The minimum amount of time in milliseconds an object can be
725
- idle in pool before eligible for eviction (if applicable). A value
726
- less than zero indicates no object will be evicted due to idle time
727
- alone.</comment>
728
- </param>
729
- <param name="timeBetweenEvictionRunsMillis" value="-1">
730
- <comment>The time in milliseconds to sleep between runs of the idle
731
- object evictor thread. A value less than zero indicates no idle
732
- evictor thread is run.</comment>
733
- </param>
734
- </datastore>
735
- <datastore id="localPostgreSQLPool">
736
- <comment>PostgreSQL database on localhost with db name of fedora3. Each
737
- connection pool instance has several configuration parameter that
738
- can be used to tune the options for the connection pool. It is
739
- recommended that you not change the default values unless you are
740
- trying to address a specific performance issue. For additional
741
- information regarding connection pool options, refer to the Apache
742
- Commons Pool API documentation at
743
- http://jakarta.apache.org/commons/pool/apidocs/index.html.</comment>
744
- <param name="maxIdle" value="10">
745
- <comment>The maximum number of idle instances in pool.</comment>
746
- </param>
747
- <param name="testOnBorrow" value="true">
748
- <comment>When true objects are validated before borrowed from the
749
- pool.</comment>
750
- </param>
751
- <param name="testWhileIdle" value="true">
752
- <comment>When true, objects are validated by the idle object evictor
753
- thread.</comment>
754
- </param>
755
- <param name="validationQuery" value="select 1">
756
- <comment>The query to run when validating connections.
757
- Connections are validated according to the testOnBorrow,
758
- testOnReturn, and testWhileIdle configuration values.
759
- If this is specified, it must be a SQL SELECT statement
760
- that returns at least one row. If this is NOT specified,
761
- validation tests will not be run.</comment>
762
- </param>
763
- <param name="ddlConverter" value="org.fcrepo.server.utilities.PostgresDDLConverter"/>
764
- <param name="dbUsername" value="fedoraAdmin">
765
- <comment>The database user name.</comment>
766
- </param>
767
- <param name="testOnReturn" value="true">
768
- <comment>When true, objects are validated before returned to the
769
- pool.</comment>
770
- </param>
771
- <param name="maxActive" value="100">
772
- <comment>The maximum number of active instances in pool.</comment>
773
- </param>
774
- <param name="dbPassword" value="fedoraAdmin">
775
- <comment>The database password.</comment>
776
- </param>
777
- <param name="jdbcURL" value="jdbc:postgresql:fedora3">
778
- <comment>The JDBC connection URL.</comment>
779
- </param>
780
- <param name="whenExhaustedAction" value="1">
781
- <comment>Action to take when a new object is requested and the the pool has
782
- reached maximum number of active objects. Valid values are:
783
- 0 (fail i.e., throw Exception)
784
- 1 (block i.e., wait until pool resources are freed)
785
- 2 (grow i.e., increase the size of the pool).</comment>
786
- </param>
787
- <param name="numTestsPerEvictionRun" value="3">
788
- <comment>The number of objects to be examined on each run of idle
789
- evictor thread (if applicable). A value less than zero indicates
790
- that ceil(numIdle)/abs(numTestsPerEvictionRun) will be run.</comment>
791
- </param>
792
- <param name="jdbcDriverClass" value="org.postgresql.Driver">
793
- <comment>The JDBC driver class name.</comment>
794
- </param>
795
- <param name="maxWait" value="-1">
796
- <comment>The maximum amount of time in milliseconds the
797
- borrowObject() method should wait before throwing an Exception when
798
- whenExhaustedAction is set to WHEN_EXHAUSTED_BLOCK. A value less
799
- than zero indicates block indefinitely.</comment>
800
- </param>
801
- <param name="minIdle" value="0">
802
- <comment>The minimum of idle instances in pool.</comment>
803
- </param>
804
- <param name="minEvictableIdleTimeMillis" value="1800000">
805
- <comment>The minimum amount of time in milliseconds an object can be
806
- idle in pool before eligible for eviction (if applicable). A value
807
- less than zero indicates no object will be evicted due to idle time
808
- alone.</comment>
809
- </param>
810
- <param name="timeBetweenEvictionRunsMillis" value="-1">
811
- <comment>The time in milliseconds to sleep between runs of the idle
812
- object evictor thread. A value less than zero indicates no idle
813
- evictor thread is run.</comment>
814
- </param>
815
- </datastore>
816
- <datastore id="localMulgaraTriplestore">
817
- <comment>local Mulgara Triplestore used by the Resource Index</comment>
818
- <param name="poolInitialSize" value="3">
819
- <comment>The initial size of the session pool used for queries.
820
- Note: A value of 0 will cause the Resource Index to operate in
821
- synchronized mode: concurrent read/write requests are put in a queue
822
- and handled in FIFO order; this will severely impair performance and
823
- is only intended for debugging.</comment>
824
- </param>
825
- <param name="bufferSafeCapacity" value="40000">
826
- <comment>The maximum size the buffer can reach before being forcibly
827
- flushed. If this threshold is reached, flushing will occur in the
828
- foreground and the buffer will be locked for writing until it is
829
- finished. This should be larger than autoFlushBufferSize.</comment>
830
- </param>
831
- <param name="autoCreate" value="true">
832
- <comment>Create the model if it doesn&apos;t already exist.
833
- At startup, the model will be automatically created. In addition, an
834
- XML schema datatyped model named &quot;xsd&quot; will also be automatically
835
- created.</comment>
836
- </param>
837
- <param name="bufferFlushBatchSize" value="20000">
838
- <comment>The number of updates to send to the triplestore at a time.
839
- This should be the same size as, or smaller than
840
- autoFlushBufferSize.</comment>
841
- </param>
842
- <param name="autoTextIndex" value="false">
843
- <comment>Whether to propagate adds/deletes to a full-text
844
- [Full-Text] model automatically. While a very useful feature,
845
- enabling full-text indexing adds significantly to object ingest
846
- times. If true, the text model will be named modelName-fullText.
847
- Note that if this is true and autoCreate is true, the text model
848
- will also be created if it doesn&apos;t already exist.</comment>
849
- </param>
850
- <param name="poolMaxGrowth" value="-1">
851
- <comment>Maximum number of additional sessions the pool may add. If
852
- specified as -1, no limit will be placed on pool growth.</comment>
853
- </param>
854
- <param name="remote" value="false">
855
- <comment>Tells the connector to communicate with Mulgara in remote or
856
- local mode. If true, the host parameter must be defined. If false,
857
- the path parameter must be defined.</comment>
858
- </param>
859
- <param name="autoFlushDormantSeconds" value="5">
860
- <comment>Seconds of buffer inactivity that will trigger an
861
- auto-flush. If this threshold is reached, flushing will occur in the
862
- background, during which time the buffer is still available for
863
- writing.</comment>
864
- </param>
865
- <param name="serverName" value="fedora">
866
- <comment>The server name for rmi binding.</comment>
867
- </param>
868
- <param name="autoFlushBufferSize" value="20000">
869
- <comment>The size at which the buffer should be auto-flushed. If
870
- this threshold is reached, flushing will occur in the background,
871
- during which time the buffer is still available for
872
- writing.</comment>
873
- </param>
874
- <param name="modelName" value="ri">
875
- <comment>The name of the model to use.</comment>
876
- </param>
877
- <param name="readOnly" value="false">
878
- <comment>Whether the triplestore should be read-only. Most Fedora
879
- repositories will set this to false.</comment>
880
- </param>
881
- <param name="path" value="data/resourceIndex" isFilePath="true">
882
- <comment>The local path to the main triplestore directory.</comment>
883
- </param>
884
- <param name="connectorClassName" value="org.trippi.impl.mulgara.MulgaraConnector">
885
- <comment>The name of the Trippi Connector class used to communicate
886
- with the triplestore.</comment>
887
- </param>
888
- </datastore>
889
- <datastore id="localPostgresMPTTriplestore">
890
- <comment>Example local MPTStore backed by Postgres.
891
- To use this triplestore for the Resource Index:
892
- 1) In fedora.fcfg, change the "datastore" parameter of the
893
- ResourceIndex module to localPostgresMPTTriplestore.
894
- 2) Login to your Postgres server as an administrative user and
895
- run the following commands:
896
- CREATE ROLE "fedoraAdmin" LOGIN PASSWORD 'fedoraAdmin'
897
- NOINHERIT CREATEDB
898
- VALID UNTIL 'infinity';
899
- CREATE DATABASE "riTriples"
900
- WITH ENCODING='SQL_ASCII'
901
- OWNER="fedoraAdmin";
902
- 3) Make sure you can login to your Postgres server as fedoraAdmin.
903
- 4) Download the appropriate Postgres JDBC 3 driver from
904
- http://jdbc.postgresql.org/download.html
905
- and make sure it's accessible to your servlet container.
906
- If you're running Tomcat, putting it in common/lib/ will work.</comment>
907
- <param name="fetchSize" value="1000"/>
908
- <param name="poolInitialSize" value="3"/>
909
- <param name="bufferSafeCapacity" value="2000"/>
910
- <param name="bufferFlushBatchSize" value="1000"/>
911
- <param name="backslashIsEscape" value="true"/>
912
- <param name="autoFlushDormantSeconds" value="5"/>
913
- <param name="password" value="fedoraAdmin"/>
914
- <param name="autoFlushBufferSize" value="1000"/>
915
- <param name="username" value="fedoraAdmin"/>
916
- <param name="poolMaxSize" value="10"/>
917
- <param name="jdbcURL" value="jdbc:postgresql://localhost/riTriples"/>
918
- <param name="ddlGenerator" value="org.nsdl.mptstore.impl.postgres.PostgresDDLGenerator"/>
919
- <param name="connectorClassName" value="org.trippi.impl.mpt.MPTConnector"/>
920
- <param name="jdbcDriver" value="org.postgresql.Driver"/>
921
- </datastore>
922
- <datastore id="apimUpdateMessages">
923
- <comment>Messaging Destination for API-M events which update the repository</comment>
924
- <param name="messageTypes" value="apimUpdate">
925
- <comment>A space-separated list of message types that will be
926
- delivered to this Destination. Currently, &quot;apimUpdate&quot; and
927
- &quot;apimAccess&quot; are the only supported message types.</comment>
928
- </param>
929
- <param name="name" value="fedora.apim.update"/>
930
- <param name="type" value="topic">
931
- <comment>Optional, defaults to topic.</comment>
932
- </param>
933
- </datastore>
934
- <datastore id="apimAccessMessages">
935
- <comment>Messaging Destination for API-M events which did not make changes to the repository</comment>
936
- <param name="messageTypes" value="apimAccess">
937
- <comment>A space-separated list of message types that will be
938
- delivered to this Destination. Currently, &quot;apimUpdate&quot; and
939
- &quot;apimAccess&quot; are the only supported message types.</comment>
940
- </param>
941
- <param name="name" value="fedora.apim.access"/>
942
- <param name="type" value="topic">
943
- <comment>Optional, defaults to topic.</comment>
944
- </param>
945
- </datastore>
946
- </server>