Class: Hyrax::Configuration
- Inherits:
-
Object
- Object
- Hyrax::Configuration
- Includes:
- Callbacks
- Defined in:
- lib/hyrax/configuration.rb
Overview
Handles configuration for the Hyrax engine.
This class provides a series of accessors for setting and retrieving global engine options. For convenient reference, options are grouped into the following functional areas:
-
Analytics
-
Files
-
Groups
-
Identifiers
-
IIIF
-
Local Storage
-
System Dependencies
-
Theme
-
Valkyrie
Groups
Hyrax has special handling for three groups: “admin”, “registered”, and “public”.
These settings support using custom names for these functional groups in object ACLs.
Identifiers
IIIF
Objects in Hyrax serve out IIIF manifests. These configuration options toggle server availability, allow customization of image and info URL generation, and provide other hooks for custom IIIF behavior.
Local Storage
Hyrax applications need local disk access to store working copies of files for a variety of purposes. Some of these storage paths need to be available all application processes. These options control the paths to use for each type of file.
System Dependiencies
Theme
Options related to the overall appearance of Hyrax.
Valkyrie
Options for toggling Hyrax’s “Wings” valkyrie adapter and configuring valkyrie.
Analytics collapse
-
#analytic_start_date ⇒ Object
Returns the value of attribute analytic_start_date.
-
#analytics ⇒ Object
Returns the value of attribute analytics.
- #analytics_provider ⇒ Object
-
#analytics_reporting ⇒ Object
Returns the value of attribute analytics_reporting.
- #analytics_start_date ⇒ Object
Files collapse
-
#characterization_options ⇒ Hash
Of options like :fits_servlet.
- #characterization_proxy ⇒ Object
-
#characterization_runner ⇒ Object
Override characterization runner.
-
#characterization_service ⇒ #run
@ see Hyrax::Characterization::ValkyrieCharacterizationService.
-
#derivative_mime_type_mappings ⇒ Object
Maps mimetypes to create_*_derivatives methods.
-
#derivative_services ⇒ Array
The registered candidate derivative services.
-
#file_set_file_service ⇒ Class
Implementer of FileSetFileService.
-
#file_set_model ⇒ #constantize
A string representation of the admin set model.
- #fixity_service ⇒ Object
- #max_days_between_fixity_checks ⇒ Object
-
#valkyrie_transition ⇒ Object
Returns the value of attribute valkyrie_transition.
Groups collapse
- #admin_user_group_name ⇒ String
- #public_user_group_name ⇒ String
- #registered_user_group_name ⇒ String
Identifier Minting collapse
-
#enable_noids ⇒ Object
writeonly
Sets the attribute enable_noids.
- #minter_statefile ⇒ Object
- #noid_minter_class ⇒ Object
- #noid_template ⇒ Object
IIIF collapse
-
#iiif_image_compliance_level_uri ⇒ String
URL that indicates your IIIF image server compliance level.
-
#iiif_image_server ⇒ Object
writeonly
Sets the attribute iiif_image_server.
-
#iiif_image_size_default ⇒ #String
IIIF image size default.
-
#iiif_image_url_builder ⇒ #call
URL that resolves to an image provided by a IIIF image server.
-
#iiif_info_url_builder ⇒ #call
URL that resolves to an info.json file provided by a IIIF image server.
-
#iiif_manifest_cache_duration ⇒ Integer
Duration in which we should cache the generated IIIF manifest.
-
#iiif_metadata_fields ⇒ #Array
IIIF metadata - fields to display in the metadata section.
-
#rendering_predicate ⇒ RDF::URI
Set predicate for rendering to dc:hasFormat as defined in IIIF Presentation API context: iiif.io/api/presentation/2/context.json.
Local Storage collapse
- #bagit_dir ⇒ Object
- #branding_path ⇒ Object
- #cache_path ⇒ Object
- #derivatives_path ⇒ Object
- #upload_path ⇒ Object
- #working_path ⇒ Object
System Dependencies collapse
- #enable_ffmpeg ⇒ Object
- #ffmpeg_path ⇒ Object
- #fits_message_length ⇒ Object
- #fits_path ⇒ Object
- #import_export_jar_file_path ⇒ Object
- #virus_scanner ⇒ Object
Theme collapse
- #banner_image ⇒ Object
- #breadcrumb_builder ⇒ Object
- #disable_freyja ⇒ Boolean
- #disable_frigg ⇒ Boolean
- #disable_wings ⇒ Boolean
-
#display_media_download_link ⇒ Object
writeonly
Sets the attribute display_media_download_link.
Valkyrie collapse
-
#fedora_connection_builder ⇒ #call
A HTTP connection to use for Valkyrie Fedora requests.
-
#query_index_from_valkyrie ⇒ Boolean
Whether to use the valkyrie index.
-
#use_valkyrie ⇒ Object
writeonly
Sets the attribute use_valkyrie.
Instance Attribute Summary collapse
-
#active_deposit_agreement_acceptance ⇒ Object
writeonly
Sets the attribute active_deposit_agreement_acceptance.
- #activity_to_show_default_seconds_since_now ⇒ Object
-
#admin_set_model ⇒ #constantize
A string representation of the admin set model.
- #admin_set_predicate ⇒ Object
- #administrative_set_form ⇒ Class
- #administrative_set_indexer ⇒ Class
-
#arkivo_api ⇒ Object
writeonly
Sets the attribute arkivo_api.
- #audit_user_key ⇒ Object
- #batch_user_key ⇒ Object
-
#browse_everything ⇒ Object
writeonly
Sets the attribute browse_everything.
-
#citations ⇒ Object
writeonly
Sets the attribute citations.
-
#collection_model ⇒ #constantize
A string representation of the collection model.
- #collection_type_index_field ⇒ Object
- #contact_email ⇒ Object
-
#default_active_workflow_name ⇒ String
When an admin set is created, we need to activate a workflow.
-
#display_microdata ⇒ Object
writeonly
Sets the attribute display_microdata.
-
#display_share_button_when_not_logged_in ⇒ Object
writeonly
Should a button with “Share my work” show on the front page to users who are not logged in?.
-
#enable_local_ingest ⇒ Object
Returns the value of attribute enable_local_ingest.
-
#extract_full_text ⇒ Object
writeonly
Sets the attribute extract_full_text.
- #feature_config_path ⇒ Object
- #file_set_form ⇒ Class
- #file_set_indexer ⇒ Class
- #id_field ⇒ Object
- #identifier_registrars ⇒ Object
- #index_field_mapper ⇒ Object
- #ingest_queue_name ⇒ Object
- #libreoffice_path ⇒ Object
- #license_service_class ⇒ Object
- #location_service ⇒ Object
- #lock_retry_count ⇒ Object
- #lock_retry_delay ⇒ Object
- #lock_time_to_live ⇒ Object
- #logger ⇒ Logger
- #max_notifications_for_dashboard ⇒ Object
- #microdata_default_type ⇒ Object
- #owner_permission_levels ⇒ Object
- #pcdm_collection_form ⇒ Class
- #pcdm_collection_indexer ⇒ Class
- #pcdm_object_form_builder ⇒ Proc
- #pcdm_object_indexer_builder ⇒ Proc
- #permission_levels ⇒ Object
- #permission_options ⇒ Object
- #persistent_hostpath ⇒ Object
- #publisher ⇒ Object
- #range_for_number_of_results_to_display_per_page ⇒ Array<Integer>
-
#realtime_notifications ⇒ Object
writeonly
rubocop:disable Layout/LineLength.
-
#redis_connection ⇒ Object
Returns the value of attribute redis_connection.
- #redis_namespace ⇒ Object
- #registered_ingest_dirs ⇒ Object
- #rights_statement_service_class ⇒ Object
- #show_work_item_rows ⇒ Object
-
#simple_schema_loader_config_search_paths ⇒ Array<Pathname>
A configuration for modifying the SimpleSchemaLoader#config_search_paths which will allow gems to add their own metadata yaml files and easily keep them within the gem.
- #solr_default_method ⇒ Object
- #solr_select_path ⇒ Object
- #subject_prefix ⇒ Object
- #system_user_key ⇒ Object
-
#temp_file_base ⇒ Object
Returns the value of attribute temp_file_base.
- #translate_id_to_uri ⇒ Object
- #translate_uri_to_id ⇒ Object
- #uploader ⇒ Object
-
#visibility_map ⇒ Hyrax::VisibilityMap
A mapping from visibility string values to permissions; the default and reference implementation is provided by VisibilityMap.
-
#work_requires_files ⇒ Object
writeonly
Sets the attribute work_requires_files.
Analytics collapse
Files collapse
-
#file_set_class ⇒ Class
The configured admin set model class.
-
#lookup_mimes(type) ⇒ Object
First see if we can get them from the FileSet model.
-
#mime_types_map ⇒ Object
rubocop:disable Metrics/MethodLength.
- #valkyrie_transition? ⇒ Boolean
Identifier Minting collapse
IIIF collapse
-
#iiif_image_server? ⇒ Boolean
Enable IIIF image service.
Theme collapse
Valkyrie collapse
- #branding_storage_adapter ⇒ Valkyrie::StorageAdapter
- #branding_storage_adapter=(adapter) ⇒ Object
- #derivatives_storage_adapter ⇒ Valkyrie::StorageAdapter
- #derivatives_storage_adapter=(adapter) ⇒ Object
-
#index_adapter ⇒ #save, ...
An indexing adapter.
- #index_adapter=(adapter) ⇒ Object
-
#use_valkyrie? ⇒ Boolean
Whether to use valkyrie storage features.
Instance Method Summary collapse
- #active_deposit_agreement_acceptance? ⇒ Boolean
-
#admin_set_class ⇒ Class
The configured admin set model class.
-
#admin_set_class_for_wings ⇒ Object
private
There are assumptions baked into Wings and tests regarding what the correct conceptual admin set will be.
- #arkivo_api? ⇒ Boolean
- #browse_everything? ⇒ Boolean
- #citations? ⇒ Boolean
-
#collection_class ⇒ Class
The configured collection model class.
-
#collection_class_for_wings ⇒ Object
private
There are assumptions baked into Wings and tests regarding what the correct conceptual collection will be.
-
#curation_concerns ⇒ Array<Class>
The registered curation concerns.
-
#default_admin_set ⇒ Hyrax::AdministrativeSet
The default admin set.
-
#default_admin_set_id ⇒ String
The default admin set id.
- #display_microdata? ⇒ Boolean
- #display_share_button_when_not_logged_in? ⇒ Boolean
- #extract_full_text? ⇒ Boolean
-
#geonames_username=(username) ⇒ Object
rubocop:enable Layout/LineLength.
-
#initialize ⇒ Configuration
constructor
A new instance of Configuration.
- #realtime_notifications? ⇒ Boolean
-
#register_curation_concern(*curation_concern_types) ⇒ Object
Registers the given curation concern model in the configuration.
-
#register_roles {|Hyrax::RoleRegistry| ... } ⇒ TrueClass
Exposes a means to register application critical roles.
-
#registered_curation_concern_types ⇒ Array<String>
The normalization done by this method must occur after the initialization process so it can take advantage of irregular inflections from config/initializers/inflections.rb.
-
#reset_default_admin_set ⇒ Object
If the default admin set is changed, call reset.
- #work_requires_files? ⇒ Boolean
Methods included from Callbacks
Constructor Details
#initialize ⇒ Configuration
Returns a new instance of Configuration.
66 67 68 69 70 |
# File 'lib/hyrax/configuration.rb', line 66 def initialize @registered_concerns = [] @role_registry = Hyrax::RoleRegistry.new @default_active_workflow_name = DEFAULT_ACTIVE_WORKFLOW_NAME end |
Instance Attribute Details
#active_deposit_agreement_acceptance=(value) ⇒ Object (writeonly)
Sets the attribute active_deposit_agreement_acceptance
849 850 851 |
# File 'lib/hyrax/configuration.rb', line 849 def active_deposit_agreement_acceptance=(value) @active_deposit_agreement_acceptance = value end |
#activity_to_show_default_seconds_since_now ⇒ Object
815 816 817 |
# File 'lib/hyrax/configuration.rb', line 815 def activity_to_show_default_seconds_since_now @activity_to_show_default_seconds_since_now ||= 24 * 60 * 60 end |
#admin_set_model ⇒ #constantize
Returns a string representation of the admin set model.
927 928 929 |
# File 'lib/hyrax/configuration.rb', line 927 def admin_set_model @admin_set_model ||= 'Hyrax::AdministrativeSet' end |
#admin_set_predicate ⇒ Object
856 857 858 |
# File 'lib/hyrax/configuration.rb', line 856 def admin_set_predicate @admin_set_predicate ||= ::RDF::Vocab::DC.isPartOf end |
#admin_user_group_name ⇒ String
338 339 340 |
# File 'lib/hyrax/configuration.rb', line 338 def admin_user_group_name @admin_user_group_name ||= 'admin' end |
#administrative_set_form ⇒ Class
986 987 988 |
# File 'lib/hyrax/configuration.rb', line 986 def administrative_set_form @administrative_set_form ||= Hyrax::Forms::AdministrativeSetForm end |
#administrative_set_indexer ⇒ Class
1018 1019 1020 |
# File 'lib/hyrax/configuration.rb', line 1018 def administrative_set_indexer @administrative_set_indexer ||= Hyrax::Indexers::AdministrativeSetIndexer end |
#analytic_start_date ⇒ Object
Returns the value of attribute analytic_start_date.
163 164 165 |
# File 'lib/hyrax/configuration.rb', line 163 def analytic_start_date @analytic_start_date end |
#analytics ⇒ Object
Returns the value of attribute analytics.
124 125 126 |
# File 'lib/hyrax/configuration.rb', line 124 def analytics @analytics end |
#analytics_provider ⇒ Object
143 144 145 146 |
# File 'lib/hyrax/configuration.rb', line 143 def analytics_provider @analytics_provider ||= ENV.fetch('HYRAX_ANALYTICS_PROVIDER', 'google') end |
#analytics_reporting ⇒ Object
Returns the value of attribute analytics_reporting.
134 135 136 |
# File 'lib/hyrax/configuration.rb', line 134 def analytics_reporting @analytics_reporting end |
#analytics_start_date ⇒ Object
156 157 158 159 |
# File 'lib/hyrax/configuration.rb', line 156 def analytics_start_date @analytics_start_date ||= ENV.fetch('ANALYTICS_START_DATE', Time.zone.today - 1.year) end |
#arkivo_api=(value) ⇒ Object (writeonly)
Sets the attribute arkivo_api
819 820 821 |
# File 'lib/hyrax/configuration.rb', line 819 def arkivo_api=(value) @arkivo_api = value end |
#audit_user_key ⇒ Object
885 886 887 |
# File 'lib/hyrax/configuration.rb', line 885 def audit_user_key @audit_user_key ||= '[email protected]' end |
#bagit_dir ⇒ Object
474 475 476 |
# File 'lib/hyrax/configuration.rb', line 474 def bagit_dir @bagit_dir ||= "tmp/descriptions" end |
#banner_image ⇒ Object
561 562 563 564 |
# File 'lib/hyrax/configuration.rb', line 561 def # This image can be used for free and without attribution. See here for source and license: https://github.com/samvera/hyrax/issues/1551#issuecomment-326624909 ||= 'https://user-images.githubusercontent.com/101482/29949206-ffa60d2c-8e67-11e7-988d-4910b8787d56.jpg' end |
#batch_user_key ⇒ Object
880 881 882 |
# File 'lib/hyrax/configuration.rb', line 880 def batch_user_key @batch_user_key ||= '[email protected]' end |
#branding_path ⇒ Object
504 505 506 |
# File 'lib/hyrax/configuration.rb', line 504 def branding_path @branding_path ||= ENV.fetch('HYRAX_BRANDING_PATH', Rails.root.join('public', 'branding')) end |
#breadcrumb_builder ⇒ Object
567 568 569 |
# File 'lib/hyrax/configuration.rb', line 567 def ||= Hyrax::BootstrapBreadcrumbsBuilder end |
#browse_everything=(value) ⇒ Object (writeonly)
Sets the attribute browse_everything
799 800 801 |
# File 'lib/hyrax/configuration.rb', line 799 def browse_everything=(value) @browse_everything = value end |
#cache_path ⇒ Object
498 499 500 |
# File 'lib/hyrax/configuration.rb', line 498 def cache_path @cache_path ||= ->() { ENV.fetch('HYRAX_CACHE_PATH') { Rails.root.join('tmp', 'cache') } } end |
#characterization_options ⇒ Hash
Returns of options like :fits_servlet.
183 |
# File 'lib/hyrax/configuration.rb', line 183 attr_writer :characterization_options |
#characterization_proxy ⇒ Object
193 194 195 |
# File 'lib/hyrax/configuration.rb', line 193 def characterization_proxy @characterization_proxy ||= :original_file end |
#characterization_runner ⇒ Object
Override characterization runner
198 199 200 |
# File 'lib/hyrax/configuration.rb', line 198 def characterization_runner @characterization_runner end |
#characterization_service ⇒ #run
@ see Hyrax::Characterization::ValkyrieCharacterizationService
173 |
# File 'lib/hyrax/configuration.rb', line 173 attr_writer :characterization_service |
#citations=(value) ⇒ Object (writeonly)
Sets the attribute citations
804 805 806 |
# File 'lib/hyrax/configuration.rb', line 804 def citations=(value) @citations = value end |
#collection_model ⇒ #constantize
Returns a string representation of the collection model.
898 899 900 |
# File 'lib/hyrax/configuration.rb', line 898 def collection_model @collection_model ||= 'Hyrax::PcdmCollection' end |
#collection_type_index_field ⇒ Object
890 891 892 |
# File 'lib/hyrax/configuration.rb', line 890 def collection_type_index_field @collection_type_index_field ||= 'collection_type_gid_ssim' end |
#contact_email ⇒ Object
1098 1099 1100 |
# File 'lib/hyrax/configuration.rb', line 1098 def contact_email @contact_email ||= "[email protected]" end |
#default_active_workflow_name ⇒ String
The active workflow for an admin set can be changed at a later point.
Changing this value after other AdminSet(s) are created does not alter the already created AdminSet(s)
When an admin set is created, we need to activate a workflow. The :default_active_workflow_name is the name of the workflow we will activate.
97 98 99 |
# File 'lib/hyrax/configuration.rb', line 97 def default_active_workflow_name @default_active_workflow_name end |
#derivative_mime_type_mappings ⇒ Object
these used to be set by Hydra::Works::MimeTypes
methods injected into ‘FileSet`. for backwards compatibility, those are used as defaults if present, but since `FileSet` is an application side model (and slated to be removed) we shouldn’t count on it providing these methods.
Maps mimetypes to create_*_derivatives methods
263 264 265 266 267 268 269 270 |
# File 'lib/hyrax/configuration.rb', line 263 def derivative_mime_type_mappings @derivative_mime_type_mappings ||= { audio: lookup_mimes(:audio_mime_types), image: lookup_mimes(:image_mime_types), office: lookup_mimes(:office_mime_types), pdf: lookup_mimes(:pdf_mime_types), video: lookup_mimes(:video_mime_types) } end |
#derivative_services ⇒ Array
The registered candidate derivative services. In the array, the first ‘valid?` candidate will handle the derivative generation.
278 279 280 |
# File 'lib/hyrax/configuration.rb', line 278 def derivative_services @derivative_services ||= [Hyrax::FileSetDerivativesService] end |
#derivatives_path ⇒ Object
480 481 482 |
# File 'lib/hyrax/configuration.rb', line 480 def derivatives_path @derivatives_path ||= ENV.fetch('HYRAX_DERIVATIVES_PATH', Rails.root.join('tmp', 'derivatives')) end |
#disable_freyja ⇒ Boolean
581 582 583 584 |
# File 'lib/hyrax/configuration.rb', line 581 def disable_freyja return @disable_freyja unless @disable_freyja.nil? ActiveModel::Type::Boolean.new.cast(ENV.fetch('HYRAX_SKIP_FREYJA', false)) end |
#disable_frigg ⇒ Boolean
589 590 591 592 |
# File 'lib/hyrax/configuration.rb', line 589 def disable_frigg return @disable_frigg unless @disable_frigg.nil? ActiveModel::Type::Boolean.new.cast(ENV.fetch('HYRAX_SKIP_FRIGG', false)) end |
#disable_wings ⇒ Boolean
573 574 575 576 |
# File 'lib/hyrax/configuration.rb', line 573 def disable_wings return @disable_wings unless @disable_wings.nil? ActiveModel::Type::Boolean.new.cast(ENV.fetch('HYRAX_SKIP_WINGS', false)) end |
#display_media_download_link=(value) ⇒ Object (writeonly)
Sets the attribute display_media_download_link
595 596 597 |
# File 'lib/hyrax/configuration.rb', line 595 def display_media_download_link=(value) @display_media_download_link = value end |
#display_microdata=(value) ⇒ Object (writeonly)
Sets the attribute display_microdata
679 680 681 |
# File 'lib/hyrax/configuration.rb', line 679 def display_microdata=(value) @display_microdata = value end |
#display_share_button_when_not_logged_in=(value) ⇒ Object (writeonly)
Should a button with “Share my work” show on the front page to users who are not logged in?
1048 1049 1050 |
# File 'lib/hyrax/configuration.rb', line 1048 def (value) = value end |
#enable_ffmpeg ⇒ Object
512 513 514 515 |
# File 'lib/hyrax/configuration.rb', line 512 def enable_ffmpeg return @enable_ffmpeg unless @enable_ffmpeg.nil? @enable_ffmpeg = false end |
#enable_local_ingest ⇒ Object
Returns the value of attribute enable_local_ingest.
677 678 679 |
# File 'lib/hyrax/configuration.rb', line 677 def enable_local_ingest @enable_local_ingest end |
#enable_noids=(value) ⇒ Object (writeonly)
Sets the attribute enable_noids
359 360 361 |
# File 'lib/hyrax/configuration.rb', line 359 def enable_noids=(value) @enable_noids = value end |
#extract_full_text=(value) ⇒ Object (writeonly)
Sets the attribute extract_full_text
1107 1108 1109 |
# File 'lib/hyrax/configuration.rb', line 1107 def extract_full_text=(value) @extract_full_text = value end |
#feature_config_path ⇒ Object
673 674 675 |
# File 'lib/hyrax/configuration.rb', line 673 def feature_config_path @feature_config_path ||= Rails.root.join('config', 'features.yml') end |
#fedora_connection_builder ⇒ #call
A HTTP connection to use for Valkyrie Fedora requests
632 633 634 635 636 637 638 639 640 |
# File 'lib/hyrax/configuration.rb', line 632 def fedora_connection_builder @fedora_connection_builder ||= lambda { |url| Faraday.new(url) do |f| f.request :multipart f.request :url_encoded f.adapter Faraday.default_adapter end } end |
#ffmpeg_path ⇒ Object
we recommend setting the FFMPEG path with the ‘HYRAX_FFMPEG_PATH` environment variable
521 522 523 |
# File 'lib/hyrax/configuration.rb', line 521 def ffmpeg_path @ffmpeg_path ||= ENV.fetch('HYRAX_FFMPEG_PATH', 'ffmpeg') end |
#file_set_file_service ⇒ Class
Returns implementer of FileSetFileService.
299 |
# File 'lib/hyrax/configuration.rb', line 299 attr_writer :file_set_file_service |
#file_set_form ⇒ Class
993 994 995 |
# File 'lib/hyrax/configuration.rb', line 993 def file_set_form @file_set_form ||= Hyrax::Forms::FileSetForm end |
#file_set_indexer ⇒ Class
1025 1026 1027 |
# File 'lib/hyrax/configuration.rb', line 1025 def file_set_indexer @file_set_indexer ||= Hyrax::Indexers::FileSetIndexer end |
#file_set_model ⇒ #constantize
Returns a string representation of the admin set model.
286 287 288 |
# File 'lib/hyrax/configuration.rb', line 286 def file_set_model @file_set_model ||= 'Hyrax::FileSet' end |
#fits_message_length ⇒ Object
534 535 536 |
# File 'lib/hyrax/configuration.rb', line 534 def ||= 5 end |
#fits_path ⇒ Object
we recommend setting the FITS path with the ‘HYRAX_FITS_PATH` environment variable
529 530 531 |
# File 'lib/hyrax/configuration.rb', line 529 def fits_path @fits_path ||= ENV.fetch('HYRAX_FITS_PATH', 'fits.sh') end |
#fixity_service ⇒ Object
305 306 307 |
# File 'lib/hyrax/configuration.rb', line 305 def fixity_service @fixity_service ||= Hyrax::Fixity::ActiveFedoraFixityService end |
#id_field ⇒ Object
974 975 976 |
# File 'lib/hyrax/configuration.rb', line 974 def id_field @id_field || index_field_mapper.id_field end |
#identifier_registrars ⇒ Object
1129 1130 1131 |
# File 'lib/hyrax/configuration.rb', line 1129 def identifier_registrars @identifier_registrars ||= {} end |
#iiif_image_compliance_level_uri ⇒ String
URL that indicates your IIIF image server compliance level
430 431 432 |
# File 'lib/hyrax/configuration.rb', line 430 def iiif_image_compliance_level_uri @iiif_image_compliance_level_uri ||= 'http://iiif.io/api/image/2/level2.json' end |
#iiif_image_server=(value) ⇒ Object (writeonly)
Sets the attribute iiif_image_server
384 385 386 |
# File 'lib/hyrax/configuration.rb', line 384 def iiif_image_server=(value) @iiif_image_server = value end |
#iiif_image_size_default ⇒ #String
IIIF image size default
437 438 439 |
# File 'lib/hyrax/configuration.rb', line 437 def iiif_image_size_default @iiif_image_size_default ||= '600,' end |
#iiif_image_url_builder ⇒ #call
URL that resolves to an image provided by a IIIF image server
416 417 418 |
# File 'lib/hyrax/configuration.rb', line 416 def iiif_image_url_builder @iiif_image_url_builder ||= ->(file_id, base_url, _size, _format) { "#{base_url}/downloads/#{file_id.split('/').first}" } end |
#iiif_info_url_builder ⇒ #call
URL that resolves to an info.json file provided by a IIIF image server
423 424 425 |
# File 'lib/hyrax/configuration.rb', line 423 def iiif_info_url_builder @iiif_info_url_builder ||= ->(_file_id, _base_url) { '' } end |
#iiif_manifest_cache_duration ⇒ Integer
Duration in which we should cache the generated IIIF manifest. Default is 30 days (in seconds).
453 454 455 |
# File 'lib/hyrax/configuration.rb', line 453 def iiif_manifest_cache_duration @iiif_manifest_cache_duration ||= 30.days.to_i end |
#iiif_metadata_fields ⇒ #Array
IIIF metadata - fields to display in the metadata section
444 445 446 |
# File 'lib/hyrax/configuration.rb', line 444 def ||= Hyrax::Forms::WorkForm.required_fields end |
#import_export_jar_file_path ⇒ Object
541 542 543 |
# File 'lib/hyrax/configuration.rb', line 541 def import_export_jar_file_path @import_export_jar_file_path ||= "tmp/fcrepo-import-export.jar" end |
#index_field_mapper ⇒ Object
979 980 981 |
# File 'lib/hyrax/configuration.rb', line 979 def index_field_mapper @index_field_mapper ||= ActiveFedora.index_field_mapper end |
#ingest_queue_name ⇒ Object
715 716 717 |
# File 'lib/hyrax/configuration.rb', line 715 def ingest_queue_name @ingest_queue_name ||= :default end |
#libreoffice_path ⇒ Object
795 796 797 |
# File 'lib/hyrax/configuration.rb', line 795 def libreoffice_path @libreoffice_path ||= "soffice" end |
#license_service_class ⇒ Object
768 769 770 |
# File 'lib/hyrax/configuration.rb', line 768 def license_service_class @license_service_class ||= Hyrax::LicenseService end |
#location_service ⇒ Object
844 845 846 |
# File 'lib/hyrax/configuration.rb', line 844 def location_service @location_service ||= Hyrax::LocationService.new end |
#lock_retry_count ⇒ Object
694 695 696 |
# File 'lib/hyrax/configuration.rb', line 694 def lock_retry_count @lock_retry_count ||= 600 # Up to 2 minutes of trying at intervals up to 200ms end |
#lock_retry_delay ⇒ Object
708 709 710 |
# File 'lib/hyrax/configuration.rb', line 708 def lock_retry_delay @lock_retry_delay ||= 200 # milliseconds end |
#lock_time_to_live ⇒ Object
701 702 703 |
# File 'lib/hyrax/configuration.rb', line 701 def lock_time_to_live @lock_time_to_live ||= 60_000 # milliseconds end |
#logger ⇒ Logger
80 81 82 83 84 85 86 |
# File 'lib/hyrax/configuration.rb', line 80 def logger @logger ||= if defined?(Rails) Rails.logger else Valkyrie.logger end end |
#max_days_between_fixity_checks ⇒ Object
318 319 320 |
# File 'lib/hyrax/configuration.rb', line 318 def max_days_between_fixity_checks @max_days_between_fixity_checks ||= 7 end |
#max_notifications_for_dashboard ⇒ Object
810 811 812 |
# File 'lib/hyrax/configuration.rb', line 810 def max_notifications_for_dashboard @max_notifications_for_dashboard ||= 5 end |
#microdata_default_type ⇒ Object
686 687 688 |
# File 'lib/hyrax/configuration.rb', line 686 def microdata_default_type @microdata_default_type ||= 'http://schema.org/CreativeWork' end |
#minter_statefile ⇒ Object
376 377 378 |
# File 'lib/hyrax/configuration.rb', line 376 def minter_statefile @minter_statefile ||= '/tmp/minter-state' end |
#noid_minter_class ⇒ Object
371 372 373 |
# File 'lib/hyrax/configuration.rb', line 371 def noid_minter_class @noid_minter_class ||= ::Noid::Rails::Minter::Db end |
#noid_template ⇒ Object
366 367 368 |
# File 'lib/hyrax/configuration.rb', line 366 def noid_template @noid_template ||= '.reeddeeddk' end |
#owner_permission_levels ⇒ Object
1061 1062 1063 |
# File 'lib/hyrax/configuration.rb', line 1061 def ||= { I18n.t('hyrax.permission_levels.owner.edit') => "edit" } end |
#pcdm_collection_form ⇒ Class
1000 1001 1002 |
# File 'lib/hyrax/configuration.rb', line 1000 def pcdm_collection_form @pcdm_collection_form ||= Hyrax::Forms::PcdmCollectionForm end |
#pcdm_collection_indexer ⇒ Class
1032 1033 1034 |
# File 'lib/hyrax/configuration.rb', line 1032 def pcdm_collection_indexer @pcdm_collection_indexer ||= Hyrax::Indexers::PcdmCollectionIndexer end |
#pcdm_object_form_builder ⇒ Proc
1007 1008 1009 1010 1011 1012 1013 |
# File 'lib/hyrax/configuration.rb', line 1007 def pcdm_object_form_builder return @pcdm_object_form_builder unless @pcdm_object_form_builder.nil? "Hyrax::Forms::PcdmObjectForm".constantize # autoload @pcdm_object_form_builder = lambda do |model_class| Hyrax::Forms::PcdmObjectForm(model_class) end end |
#pcdm_object_indexer_builder ⇒ Proc
1039 1040 1041 1042 1043 1044 1045 |
# File 'lib/hyrax/configuration.rb', line 1039 def pcdm_object_indexer_builder return @pcdm_object_indexer_builder unless @pcdm_object_indexer_builder.nil? "Hyrax::Indexers::PcdmObjectIndexer".constantize # autoload @pcdm_object_indexer_builder = lambda do |model_class| Hyrax::Indexers::PcdmObjectIndexer(model_class) end end |
#permission_levels ⇒ Object
1055 1056 1057 1058 |
# File 'lib/hyrax/configuration.rb', line 1055 def ||= { I18n.t('hyrax.permission_levels.read') => "read", I18n.t('hyrax.permission_levels.edit') => "edit" } end |
#permission_options ⇒ Object
1066 1067 1068 1069 1070 |
# File 'lib/hyrax/configuration.rb', line 1066 def ||= { I18n.t('hyrax.permission_levels.options.none') => "none", I18n.t('hyrax.permission_levels.options.read') => "read", I18n.t('hyrax.permission_levels.options.edit') => "edit" } end |
#persistent_hostpath ⇒ Object
784 785 786 |
# File 'lib/hyrax/configuration.rb', line 784 def persistent_hostpath @persistent_hostpath ||= "http://localhost/files/" end |
#public_user_group_name ⇒ String
345 346 347 |
# File 'lib/hyrax/configuration.rb', line 345 def public_user_group_name @public_user_group_name ||= 'public' end |
#publisher ⇒ Object
1073 1074 1075 |
# File 'lib/hyrax/configuration.rb', line 1073 def publisher @publisher ||= Hyrax::Publisher.instance end |
#query_index_from_valkyrie ⇒ Boolean
Returns whether to use the valkyrie index.
657 658 659 |
# File 'lib/hyrax/configuration.rb', line 657 def query_index_from_valkyrie @query_index_from_valkyrie ||= false end |
#range_for_number_of_results_to_display_per_page ⇒ Array<Integer>
1143 1144 1145 |
# File 'lib/hyrax/configuration.rb', line 1143 def range_for_number_of_results_to_display_per_page @range_for_number_of_results_to_display_per_page ||= [10, 20, 50, 100] end |
#realtime_notifications=(value) ⇒ Object (writeonly)
rubocop:disable Layout/LineLength
825 826 827 |
# File 'lib/hyrax/configuration.rb', line 825 def realtime_notifications=(value) @realtime_notifications = value end |
#redis_connection ⇒ Object
Returns the value of attribute redis_connection.
788 789 790 |
# File 'lib/hyrax/configuration.rb', line 788 def redis_connection @redis_connection end |
#redis_namespace ⇒ Object
790 791 792 |
# File 'lib/hyrax/configuration.rb', line 790 def redis_namespace @redis_namespace ||= ENV.fetch("HYRAX_REDIS_NAMESPACE", "hyrax") end |
#registered_ingest_dirs ⇒ Object
722 723 724 725 726 727 728 729 730 731 732 |
# File 'lib/hyrax/configuration.rb', line 722 def registered_ingest_dirs @registered_ingest_dirs ||= \ if defined? BrowseEverything file_system_dirs = Array.wrap(BrowseEverything.config['file_system'].try(:[], :home)).compact # Include the Rails tmp directory for cases where the BrowseEverything provider is required to download the file to a temporary directory first tmp_dir = [Rails.root.join('tmp').to_s] file_system_dirs + tmp_dir else [] end end |
#registered_user_group_name ⇒ String
352 353 354 |
# File 'lib/hyrax/configuration.rb', line 352 def registered_user_group_name @registered_user_group_name ||= 'registered' end |
#rendering_predicate ⇒ RDF::URI
defaults to dc:hasFormat
Set predicate for rendering to dc:hasFormat as defined in IIIF Presentation API context: iiif.io/api/presentation/2/context.json
464 465 466 |
# File 'lib/hyrax/configuration.rb', line 464 def rendering_predicate @rendering_predicate ||= ::RDF::Vocab::DC.hasFormat end |
#rights_statement_service_class ⇒ Object
779 780 781 |
# File 'lib/hyrax/configuration.rb', line 779 def rights_statement_service_class @rights_statement_service_class ||= Hyrax::RightsStatementService end |
#show_work_item_rows ⇒ Object
867 868 869 |
# File 'lib/hyrax/configuration.rb', line 867 def show_work_item_rows @show_work_item_rows ||= 10 # rows on show view end |
#simple_schema_loader_config_search_paths ⇒ Array<Pathname>
A configuration for modifying the SimpleSchemaLoader#config_search_paths which will allow gems to add their own metadata yaml files and easily keep them within the gem.
1172 1173 1174 |
# File 'lib/hyrax/configuration.rb', line 1172 def simple_schema_loader_config_search_paths @simple_schema_loader_config_search_paths ||= [Rails.root, Hyrax::Engine.root] end |
#solr_default_method ⇒ Object
1124 1125 1126 |
# File 'lib/hyrax/configuration.rb', line 1124 def solr_default_method @solr_default_method ||= :post end |
#solr_select_path ⇒ Object
1119 1120 1121 |
# File 'lib/hyrax/configuration.rb', line 1119 def solr_select_path @solr_select_path ||= ActiveFedora.solr_config.fetch(:select_path, 'select') end |
#subject_prefix ⇒ Object
1103 1104 1105 |
# File 'lib/hyrax/configuration.rb', line 1103 def subject_prefix @subject_prefix ||= "Contact form:" end |
#system_user_key ⇒ Object
875 876 877 |
# File 'lib/hyrax/configuration.rb', line 875 def system_user_key @system_user_key ||= '[email protected]' end |
#temp_file_base ⇒ Object
Returns the value of attribute temp_file_base.
677 678 679 |
# File 'lib/hyrax/configuration.rb', line 677 def temp_file_base @temp_file_base end |
#translate_id_to_uri ⇒ Object
1091 1092 1093 1094 1095 |
# File 'lib/hyrax/configuration.rb', line 1091 def translate_id_to_uri @translate_id_to_uri ||= lambda do |id| "#{ActiveFedora.fedora.host}#{ActiveFedora.fedora.base_path}/#{::Noid::Rails.treeify(id.to_s)}" end end |
#translate_uri_to_id ⇒ Object
1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 |
# File 'lib/hyrax/configuration.rb', line 1079 def translate_uri_to_id @translate_uri_to_id ||= begin baseparts = 2 + [(::Noid::Rails.config.template.gsub(/\.[rsz]/, '').length.to_f / 2).ceil, 4].min lambda do |uri| uri.to_s.split(ActiveFedora.fedora.base_path).last.split('/', baseparts).last end end end |
#upload_path ⇒ Object
493 494 495 |
# File 'lib/hyrax/configuration.rb', line 493 def upload_path @upload_path ||= ->() { ENV.fetch('HYRAX_UPLOAD_PATH') { Rails.root.join('tmp', 'uploads') } } end |
#uploader ⇒ Object
1114 1115 1116 |
# File 'lib/hyrax/configuration.rb', line 1114 def uploader @uploader ||= default_uploader_config end |
#use_valkyrie=(value) ⇒ Object (writeonly)
Sets the attribute use_valkyrie
669 670 671 |
# File 'lib/hyrax/configuration.rb', line 669 def use_valkyrie=(value) @use_valkyrie = value end |
#valkyrie_transition ⇒ Object
Returns the value of attribute valkyrie_transition.
311 312 313 |
# File 'lib/hyrax/configuration.rb', line 311 def valkyrie_transition @valkyrie_transition end |
#virus_scanner ⇒ Object
548 549 550 551 552 553 554 555 |
# File 'lib/hyrax/configuration.rb', line 548 def virus_scanner @virus_scanner ||= if Hyrax.primary_work_type.respond_to?(:default_system_virus_scanner) Hyrax.primary_work_type.default_system_virus_scanner else Hyrax::VirusScanner end end |
#visibility_map ⇒ Hyrax::VisibilityMap
A mapping from visibility string values to permissions; the default and reference implementation is provided by VisibilityMap.
1154 1155 1156 |
# File 'lib/hyrax/configuration.rb', line 1154 def visibility_map @visibility_map ||= Hyrax::VisibilityMap.instance end |
#work_requires_files=(value) ⇒ Object (writeonly)
Sets the attribute work_requires_files
860 861 862 |
# File 'lib/hyrax/configuration.rb', line 860 def work_requires_files=(value) @work_requires_files = value end |
#working_path ⇒ Object
486 487 488 |
# File 'lib/hyrax/configuration.rb', line 486 def working_path @working_path ||= ENV.fetch('HYRAX_UPLOAD_PATH', Rails.root.join('tmp', 'uploads')) end |
Instance Method Details
#active_deposit_agreement_acceptance? ⇒ Boolean
850 851 852 853 |
# File 'lib/hyrax/configuration.rb', line 850 def active_deposit_agreement_acceptance? return true if @active_deposit_agreement_acceptance.nil? @active_deposit_agreement_acceptance end |
#admin_set_class ⇒ Class
Returns the configured admin set model class.
933 934 935 |
# File 'lib/hyrax/configuration.rb', line 933 def admin_set_class admin_set_model.constantize end |
#admin_set_class_for_wings ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
There are assumptions baked into Wings and tests regarding what the correct conceptual admin set will be. This helps provide that connective tissue.
It is definitely a hack to appease tests and the Double Combo/Goddess adapter migration.
946 947 948 949 950 |
# File 'lib/hyrax/configuration.rb', line 946 def admin_set_class_for_wings return admin_set_class if admin_set_class < Hyrax::Resource Hyrax::AdministrativeSet end |
#analytics? ⇒ Boolean
125 126 127 128 |
# File 'lib/hyrax/configuration.rb', line 125 def analytics? @analytics ||= ActiveModel::Type::Boolean.new.cast(ENV.fetch('HYRAX_ANALYTICS', false)) end |
#analytics_reporting? ⇒ Boolean
135 136 137 138 |
# File 'lib/hyrax/configuration.rb', line 135 def analytics_reporting? @analytics_reporting ||= ActiveModel::Type::Boolean.new.cast(ENV.fetch('HYRAX_ANALYTICS_REPORTING', false)) end |
#arkivo_api? ⇒ Boolean
820 821 822 |
# File 'lib/hyrax/configuration.rb', line 820 def arkivo_api? @arkivo_api ||= false end |
#branding_storage_adapter ⇒ Valkyrie::StorageAdapter
607 608 609 |
# File 'lib/hyrax/configuration.rb', line 607 def branding_storage_adapter @branding_storage_adapter ||= Valkyrie::StorageAdapter.find(:branding_disk) end |
#branding_storage_adapter=(adapter) ⇒ Object
613 614 615 |
# File 'lib/hyrax/configuration.rb', line 613 def branding_storage_adapter=(adapter) @branding_storage_adapter = Valkyrie::StorageAdapter.find(adapter.to_sym) end |
#browse_everything? ⇒ Boolean
800 801 802 |
# File 'lib/hyrax/configuration.rb', line 800 def browse_everything? @browse_everything ||= nil end |
#citations? ⇒ Boolean
805 806 807 |
# File 'lib/hyrax/configuration.rb', line 805 def citations? @citations ||= false end |
#collection_class ⇒ Class
Returns the configured collection model class.
904 905 906 |
# File 'lib/hyrax/configuration.rb', line 904 def collection_class collection_model.safe_constantize end |
#collection_class_for_wings ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
There are assumptions baked into Wings and tests regarding what the correct conceptual collection will be. This helps provide that connective tissue.
It is definitely a hack to appease tests and the Double Combo/Goddess adapter migration.
917 918 919 920 921 |
# File 'lib/hyrax/configuration.rb', line 917 def collection_class_for_wings return collection_class if collection_class < Hyrax::Resource Hyrax::PcdmCollection end |
#curation_concerns ⇒ Array<Class>
Returns the registered curation concerns.
757 758 759 |
# File 'lib/hyrax/configuration.rb', line 757 def curation_concerns registered_curation_concern_types.map(&:constantize) end |
#default_admin_set ⇒ Hyrax::AdministrativeSet
Returns the default admin set.
961 962 963 |
# File 'lib/hyrax/configuration.rb', line 961 def default_admin_set @default_admin_set ||= Hyrax::AdminSetCreateService.find_or_create_default_admin_set end |
#default_admin_set_id ⇒ String
Returns the default admin set id.
954 955 956 |
# File 'lib/hyrax/configuration.rb', line 954 def default_admin_set_id default_admin_set.id.to_s end |
#derivatives_storage_adapter ⇒ Valkyrie::StorageAdapter
619 620 621 |
# File 'lib/hyrax/configuration.rb', line 619 def derivatives_storage_adapter @derivatives_storage_adapter ||= Valkyrie::StorageAdapter.find(:derivatives_disk) end |
#derivatives_storage_adapter=(adapter) ⇒ Object
625 626 627 |
# File 'lib/hyrax/configuration.rb', line 625 def derivatives_storage_adapter=(adapter) @derivatives_storage_adapter = Valkyrie::StorageAdapter.find(adapter.to_sym) end |
#display_media_download_link? ⇒ Boolean
597 598 599 600 |
# File 'lib/hyrax/configuration.rb', line 597 def display_media_download_link? return @display_media_download_link unless @display_media_download_link.nil? @display_media_download_link = true end |
#display_microdata? ⇒ Boolean
680 681 682 683 |
# File 'lib/hyrax/configuration.rb', line 680 def display_microdata? return @display_microdata unless @display_microdata.nil? @display_microdata = true end |
#display_share_button_when_not_logged_in? ⇒ Boolean
1049 1050 1051 1052 |
# File 'lib/hyrax/configuration.rb', line 1049 def return true if .nil? end |
#enable_noids? ⇒ Boolean
360 361 362 363 |
# File 'lib/hyrax/configuration.rb', line 360 def enable_noids? return @enable_noids unless @enable_noids.nil? @enable_noids = true end |
#extract_full_text? ⇒ Boolean
1108 1109 1110 1111 |
# File 'lib/hyrax/configuration.rb', line 1108 def extract_full_text? return @extract_full_text unless @extract_full_text.nil? @extract_full_text = true end |
#file_set_class ⇒ Class
Returns the configured admin set model class.
292 293 294 |
# File 'lib/hyrax/configuration.rb', line 292 def file_set_class file_set_model.constantize end |
#geonames_username=(username) ⇒ Object
rubocop:enable Layout/LineLength
840 841 842 |
# File 'lib/hyrax/configuration.rb', line 840 def geonames_username=(username) Qa::Authorities::Geonames.username = username end |
#iiif_image_server? ⇒ Boolean
Default is false
Enable IIIF image service. This is required to use the IIIF viewer enabled show page
If you have run the hyrax:riiif generator, an embedded riiif service will be used to deliver images via IIIF. If you have not, you will need to configure the following other configuration values to work with your image server.
408 409 410 411 |
# File 'lib/hyrax/configuration.rb', line 408 def iiif_image_server? return @iiif_image_server unless @iiif_image_server.nil? @iiif_image_server = false end |
#index_adapter ⇒ #save, ...
Returns an indexing adapter.
645 646 647 |
# File 'lib/hyrax/configuration.rb', line 645 def index_adapter @index_adapter ||= Valkyrie::IndexingAdapter.find(:null_index) end |
#index_adapter=(adapter) ⇒ Object
651 652 653 |
# File 'lib/hyrax/configuration.rb', line 651 def index_adapter=(adapter) @index_adapter = Valkyrie::IndexingAdapter.find(adapter.to_sym) end |
#lookup_mimes(type) ⇒ Object
First see if we can get them from the FileSet model. If not, use configuration. FileSet method names for backwards compatibility.
246 247 248 249 250 |
# File 'lib/hyrax/configuration.rb', line 246 def lookup_mimes(type) vals = "FileSet".safe_constantize.try(type) return vals if vals.is_a?(Array) mime_types_map[type] end |
#mime_types_map ⇒ Object
rubocop:disable Metrics/MethodLength
200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 |
# File 'lib/hyrax/configuration.rb', line 200 def mime_types_map # rubocop:disable Metrics/MethodLength { audio_mime_types: [ 'audio/mp3', 'audio/mpeg', 'audio/wav', 'audio/x-wave', 'audio/x-wav', 'audio/ogg' ], image_mime_types: [ 'image/png', 'image/jpeg', 'image/jpg', 'image/jp2', 'image/bmp', 'image/gif', 'image/tiff' ], office_mime_types: [ 'text/rtf', 'application/msword', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', 'application/vnd.oasis.opendocument.text', 'application/vnd.ms-excel', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', 'application/vnd.ms-powerpoint', 'application/vnd.openxmlformats-officedocument.presentationml.presentation' ], pdf_mime_types: ['application/pdf'], video_mime_types: [ 'video/mpeg', 'video/mp4', 'video/webm', 'video/x-msvideo', 'video/avi', 'video/quicktime', 'application/mxf' ] } end |
#realtime_notifications? ⇒ Boolean
826 827 828 829 830 831 832 833 834 835 836 837 |
# File 'lib/hyrax/configuration.rb', line 826 def realtime_notifications? # Coerce @realtime_notifications to false if server software # does not support WebSockets, and warn the user that we are # overriding the value in0 their config unless it's already # flipped to false if ENV.fetch('SERVER_SOFTWARE', '').match(/Apache.*Phusion_Passenger/).present? Hyrax.logger.warn('Cannot enable realtime notifications atop Passenger + Apache. Coercing `Hyrax.config.realtime_notifications` to `false`. Set this value to `false` in config/initializers/hyrax.rb to stop seeing this warning.') unless @realtime_notifications == false @realtime_notifications = false end return @realtime_notifications unless @realtime_notifications.nil? @realtime_notifications = true end |
#register_curation_concern(*curation_concern_types) ⇒ Object
Registers the given curation concern model in the configuration
743 744 745 746 747 |
# File 'lib/hyrax/configuration.rb', line 743 def register_curation_concern(*curation_concern_types) Array.wrap(curation_concern_types).flatten.compact.each do |cc_type| @registered_concerns << cc_type unless @registered_concerns.include?(cc_type) end end |
#register_roles {|Hyrax::RoleRegistry| ... } ⇒ TrueClass
Exposes a means to register application critical roles
115 116 117 118 |
# File 'lib/hyrax/configuration.rb', line 115 def register_roles yield(@role_registry) true end |
#registered_curation_concern_types ⇒ Array<String>
The normalization done by this method must occur after the initialization process so it can take advantage of irregular inflections from config/initializers/inflections.rb
752 753 754 |
# File 'lib/hyrax/configuration.rb', line 752 def registered_curation_concern_types @registered_concerns.map { |cc_type| normalize_concern_name(cc_type) } end |
#reset_default_admin_set ⇒ Object
If the default admin set is changed, call reset. The next time one of the default admin set configs is checked, the default_admin_set variable will be updated.
969 970 971 |
# File 'lib/hyrax/configuration.rb', line 969 def reset_default_admin_set @default_admin_set = nil end |
#use_valkyrie? ⇒ Boolean
Returns whether to use valkyrie storage features.
664 665 666 667 668 |
# File 'lib/hyrax/configuration.rb', line 664 def use_valkyrie? return @use_valkyrie unless @use_valkyrie.nil? return true if disable_wings # always return true if wings is disabled ActiveModel::Type::Boolean.new.cast(ENV.fetch('HYRAX_VALKYRIE', false)) end |
#valkyrie_transition? ⇒ Boolean
312 313 314 315 |
# File 'lib/hyrax/configuration.rb', line 312 def valkyrie_transition? @valkyrie_transition ||= ActiveModel::Type::Boolean.new.cast(ENV.fetch('VALKYRIE_TRANSITION', false)) end |
#work_requires_files? ⇒ Boolean
861 862 863 864 |
# File 'lib/hyrax/configuration.rb', line 861 def work_requires_files? return true if @work_requires_files.nil? @work_requires_files end |