From 6dcfd4eed2645e0be9a51c39b148b803837c7daa Mon Sep 17 00:00:00 2001 From: Chris Want Date: Mon, 26 Mar 2018 16:14:45 -0600 Subject: [PATCH] Update of PMPY for Jupiter/AIP 2.0 structure (#142) Including: * Add connection to database to replace owner ids with email addresses * File order file constructed through list source proxies * Put AIP version in bag metadata * SolrFetcher isn't used anymore, removed --- README.md | 8 +- docs/images/system-infrastructure-diagram.png | Bin 60476 -> 60354 bytes examples/pushmi_pullyu.yml | 10 +- lib/pushmi_pullyu.rb | 16 +- lib/pushmi_pullyu/aip/creator.rb | 6 +- lib/pushmi_pullyu/aip/downloader.rb | 233 +- lib/pushmi_pullyu/aip/fedora_fetcher.rb | 10 +- lib/pushmi_pullyu/aip/file_list_creator.rb | 115 + lib/pushmi_pullyu/aip/owner_email_editor.rb | 62 + lib/pushmi_pullyu/aip/solr_fetcher.rb | 33 - lib/pushmi_pullyu/aip/user.rb | 2 + pushmi_pullyu.gemspec | 4 +- .../data/logs/aipcreation.log | 29 + .../content_fixity_report.n3 | 42 + .../content_fixity_report.n3 | 42 + .../content_fixity_report.n3 | 42 + .../theses.jpg | Bin 0 -> 53678 bytes .../image-sample.jpeg | Bin 0 -> 12401 bytes .../era-logo.png | Bin 0 -> 5612 bytes .../file_set_metadata.n3 | 35 + .../original_file_metadata.n3 | 61 + .../file_set_metadata.n3 | 35 + .../original_file_metadata.n3 | 61 + .../file_set_metadata.n3 | 36 + .../original_file_metadata.n3 | 58 + .../metadata/files_metadata/file_order.xml | 5 + .../data/objects/metadata/object_metadata.n3 | 69 + .../9p2909328/data/logs/aipcreation.log | 25 - .../data/logs/content_characterization.n3 | 58 - .../data/logs/content_fixity_report.n3 | 44 - .../objects/metadata/content_fcr_metadata.n3 | 63 - .../data/objects/metadata/content_versions.n3 | 38 - .../data/objects/metadata/object_metadata.n3 | 76 - ...on_e1910293-34b3-42bb-9179-f67f37eb145e.n3 | 54 - ...on_ef4319c0-2f7a-44c0-b1b5-cd650aa4a075.n3 | 53 - ...on_ffd40638-290a-41f7-bcb2-4e0e54fc3ffd.n3 | 53 - .../9p2909328/data/objects/whatever.pdf | Bin 7162 -> 0 bytes .../9p2909328/data/thumbnails/thumbnail | Bin 3346 -> 0 bytes spec/fixtures/config.yml | 4 +- spec/integration/acceptance_spec.rb | 6 +- spec/pushmi_pullyu/aip/creator_spec.rb | 83 +- spec/pushmi_pullyu/aip/downloader_spec.rb | 84 +- spec/pushmi_pullyu/aip/fedora_fetcher_spec.rb | 49 +- .../aip/owner_email_editor_spec.rb | 66 + spec/pushmi_pullyu/aip/solr_fetcher_spec.rb | 31 - .../vcr/aip_download_and_swift_upload.yml | 3428 +++++++++++++---- .../http_cache/vcr/aip_downloader_run.yml | 3340 ++++++++++++---- .../http_cache/vcr/fedora_fetcher_200.yml | 8 +- .../http_cache/vcr/fedora_fetcher_owner.yml | 57 + .../http_cache/vcr/solr_fetcher_200.yml | 37 - .../http_cache/vcr/solr_fetcher_404.yml | 33 - spec/support/vcr.rb | 9 + 52 files changed, 6362 insertions(+), 2351 deletions(-) create mode 100644 lib/pushmi_pullyu/aip/file_list_creator.rb create mode 100644 lib/pushmi_pullyu/aip/owner_email_editor.rb delete mode 100644 lib/pushmi_pullyu/aip/solr_fetcher.rb create mode 100644 lib/pushmi_pullyu/aip/user.rb create mode 100644 spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/aipcreation.log create mode 100644 spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/files_logs/01bb1b09-974d-478b-8826-2c606a447606/content_fixity_report.n3 create mode 100644 spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/files_logs/837977d6-de61-49ea-a912-a65af5c9005e/content_fixity_report.n3 create mode 100644 spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/files_logs/856444b6-8dd5-4dfa-857d-435e354a2ead/content_fixity_report.n3 create mode 100644 spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/files/01bb1b09-974d-478b-8826-2c606a447606/theses.jpg create mode 100644 spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/files/837977d6-de61-49ea-a912-a65af5c9005e/image-sample.jpeg create mode 100644 spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/files/856444b6-8dd5-4dfa-857d-435e354a2ead/era-logo.png create mode 100644 spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/01bb1b09-974d-478b-8826-2c606a447606/file_set_metadata.n3 create mode 100644 spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/01bb1b09-974d-478b-8826-2c606a447606/original_file_metadata.n3 create mode 100644 spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/837977d6-de61-49ea-a912-a65af5c9005e/file_set_metadata.n3 create mode 100644 spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/837977d6-de61-49ea-a912-a65af5c9005e/original_file_metadata.n3 create mode 100644 spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/856444b6-8dd5-4dfa-857d-435e354a2ead/file_set_metadata.n3 create mode 100644 spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/856444b6-8dd5-4dfa-857d-435e354a2ead/original_file_metadata.n3 create mode 100644 spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/file_order.xml create mode 100644 spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/object_metadata.n3 delete mode 100644 spec/fixtures/aip_download/9p2909328/data/logs/aipcreation.log delete mode 100644 spec/fixtures/aip_download/9p2909328/data/logs/content_characterization.n3 delete mode 100644 spec/fixtures/aip_download/9p2909328/data/logs/content_fixity_report.n3 delete mode 100644 spec/fixtures/aip_download/9p2909328/data/objects/metadata/content_fcr_metadata.n3 delete mode 100644 spec/fixtures/aip_download/9p2909328/data/objects/metadata/content_versions.n3 delete mode 100644 spec/fixtures/aip_download/9p2909328/data/objects/metadata/object_metadata.n3 delete mode 100644 spec/fixtures/aip_download/9p2909328/data/objects/metadata/permission_e1910293-34b3-42bb-9179-f67f37eb145e.n3 delete mode 100644 spec/fixtures/aip_download/9p2909328/data/objects/metadata/permission_ef4319c0-2f7a-44c0-b1b5-cd650aa4a075.n3 delete mode 100644 spec/fixtures/aip_download/9p2909328/data/objects/metadata/permission_ffd40638-290a-41f7-bcb2-4e0e54fc3ffd.n3 delete mode 100644 spec/fixtures/aip_download/9p2909328/data/objects/whatever.pdf delete mode 100644 spec/fixtures/aip_download/9p2909328/data/thumbnails/thumbnail create mode 100644 spec/pushmi_pullyu/aip/owner_email_editor_spec.rb delete mode 100644 spec/pushmi_pullyu/aip/solr_fetcher_spec.rb create mode 100644 spec/support/http_cache/vcr/fedora_fetcher_owner.yml delete mode 100644 spec/support/http_cache/vcr/solr_fetcher_200.yml delete mode 100644 spec/support/http_cache/vcr/solr_fetcher_404.yml diff --git a/README.md b/README.md index 060f25f..90a65a8 100644 --- a/README.md +++ b/README.md @@ -17,11 +17,11 @@ Its primary job is to manage the flow of content from Fedora into Swift for pres ## Workflow -1. Any save (create or update) on a GenericFile in ERA will trigger an after save callback that will push the GenericFile unique identifier (NOID) into a Queue. -2. The queue (Redis) is setup to be a unique set (which only allows one GenericFile NOID to be included in the queue at a single time), and ordered by priority from First In, First out (FIFO). +1. Any save (create or update) on a Item/Thesis in ERA/Jupiter will trigger an after save callback that will push the item's unique identifier (UUID or NOID) into a Queue. +2. The queue (Redis) is setup to be a unique set (which only allows one item's UUID to be included in the queue at a single time), and ordered by priority from First In, First out (FIFO). 3. PushmiPullyu will then monitor the queue. After a certain wait period has passed since an element has been on the queue, PushmiPullyu will then retrieve the elements off the queue and begin to process the preservation event. -4. All the GenericFile information and data required for preservation are retrieved from Fedora and Solr using multiple REST calls. -5. An Archival Information Package (AIP) is created from the GenericFile's information. It is then bagged and tarred. +4. All the GenericFile information and data required for preservation are retrieved from Fedora using multiple REST calls. A database connection to the user database fetches (via ActiveRecord )owner emails and modifies the fetched documents, where applicable. +5. An Archival Information Package (AIP) is created from the item's information. It is then bagged and tarred. 6. The AIP tar is then uploaded to Swift via a REST call. 7. On a successful Swift upload, a entry is added for this preservation event to the preservation event logs. diff --git a/docs/images/system-infrastructure-diagram.png b/docs/images/system-infrastructure-diagram.png index f1f71a6190958f69a80cc1b0466cb9950498e3f1..9a9d571431706722d23f3e87db1e6bf8408e323d 100644 GIT binary patch literal 60354 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%0A%K2JcH1GIaU7h-* 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 literal 60476 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 PushmiPullyu.options[:aip_version] } + end + def tar_bag # We want to change the directory to the work directory path so we get the tar file to be exactly # the contents of the noid directory and not the entire work directory structure. For example the noid.tar diff --git a/lib/pushmi_pullyu/aip/downloader.rb b/lib/pushmi_pullyu/aip/downloader.rb index 8f5d3d3..a0b4f2e 100644 --- a/lib/pushmi_pullyu/aip/downloader.rb +++ b/lib/pushmi_pullyu/aip/downloader.rb @@ -7,7 +7,18 @@ # related to an object class PushmiPullyu::AIP::Downloader + PREDICATE_URIS = { + filename: 'http://purl.org/dc/terms/title', + member_files: 'http://pcdm.org/models#hasFile', + member_file_sets: 'http://pcdm.org/models#hasMember', + original_file: 'http://pcdm.org/use#OriginalFile', + type: 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type' + }.freeze + + class NoFileSets < StandardError; end + class NoMemberFiles < StandardError; end class NoContentFilename < StandardError; end + class NoOriginalFile < StandardError; end def initialize(noid, aip_directory) @noid = noid @@ -19,21 +30,45 @@ def run PushmiPullyu.logger.info("#{@noid}: Retreiving data from Fedora ...") - [:main_object, :fixity, :content_datastream_metadata, :versions, :thumbnail, - :characterization, :fedora3foxml, :fedora3foxml_metadata].each do |item| - path_spec = aip_paths[item] - download_and_log(path_spec, PushmiPullyu::AIP::FedoraFetcher.new(@noid)) - end + # Main object metadata + object_downloader = PushmiPullyu::AIP::FedoraFetcher.new(@noid) + download_and_log(object_aip_paths[:main_object], object_downloader) - # Need content filename from metadata - path_spec = OpenStruct.new( - remote: '/content', - local: content_filename, # lookup filename derived from metadata - optional: false - ) - download_and_log(path_spec, PushmiPullyu::AIP::FedoraFetcher.new(@noid)) + # Construct the file ordering file + list_source_uri = object_downloader.object_url + object_aip_paths.list_source.remote + create_and_log_file_order_list(list_source_uri) + + member_file_set_uuids.each do |file_set_uuid| + make_file_set_directories(file_set_uuid) + + # FileSet metadata + file_set_downloader = PushmiPullyu::AIP::FedoraFetcher.new(file_set_uuid) + path_spec = file_set_aip_paths(file_set_uuid)[:main_object] + download_and_log(path_spec, file_set_downloader) + + # Find the original file by looping through the files in the file_set + original_file_remote_base = nil + member_files(file_set_uuid).each do |file_path| + path_spec = OpenStruct.new( + remote: "/files/#{file_path}/fcr:metadata", + # Note: local file gets clobbered on each download until it finds the right one + local: "#{file_set_dirs(file_set_uuid).metadata}/original_file_metadata.n3", + optional: true + ) + download_and_log(path_spec, file_set_downloader) + if original_file?(path_spec.local) + original_file_remote_base = "/files/#{file_path}" + break + end + end - download_permissions + raise NoOriginalFile unless original_file_remote_base.present? + + [:content, :fixity].each do |item| + path_spec = file_aip_paths(file_set_uuid, original_file_remote_base)[item] + download_and_log(path_spec, file_set_downloader) + end + end end private @@ -43,35 +78,24 @@ def download_and_log(path_spec, fedora_fetcher) log_fetching(fedora_fetcher.object_url(path_spec.remote), output_file) - is_rdf = (output_file !~ /\.n3$/) + is_rdf = (output_file =~ /\.n3$/) + should_add_user_email = path_spec.to_h.fetch(:should_add_user_email, false) is_success = fedora_fetcher.download_object(output_file, url_extra: path_spec.remote, optional: path_spec.optional, - is_rdf: is_rdf) + is_rdf: is_rdf, + should_add_user_email: should_add_user_email) log_saved(is_success, output_file) end - def download_permissions - PushmiPullyu.logger.info("#{@noid}: looking up permissions from Solr ...") - results = PushmiPullyu::AIP::SolrFetcher.new(@noid).fetch_permission_object_ids - if results.empty? - PushmiPullyu.logger.info("#{@noid}: permissions not found") - else - results.each do |permission_id| - PushmiPullyu.logger.info("#{@noid}: permission object #{permission_id} found") - download_permission(permission_id) - end - end - end - - def download_permission(permission_id) - path_spec = OpenStruct.new( - remote: nil, - local: "#{aip_dirs.metadata}/permission_#{permission_id}.n3", - optional: false - ) - download_and_log(path_spec, PushmiPullyu::AIP::FedoraFetcher.new(permission_id)) + def create_and_log_file_order_list(url) + output_file = object_aip_paths.file_ordering.local + PushmiPullyu::Logging.log_aip_activity(@aip_directory, + "#{@noid}: #{output_file} -- creating from #{url} ...") + PushmiPullyu::AIP::FileListCreator.new(url, output_file, member_file_set_uuids).run + PushmiPullyu::Logging.log_aip_activity(@aip_directory, + "#{@noid}: #{output_file} -- created") end ### Logging @@ -92,8 +116,19 @@ def aip_dirs @aip_dirs ||= OpenStruct.new( objects: "#{@aip_directory}/data/objects", metadata: "#{@aip_directory}/data/objects/metadata", + files: "#{@aip_directory}/data/objects/files", + files_metadata: "#{@aip_directory}/data/objects/metadata/files_metadata", logs: "#{@aip_directory}/data/logs", - thumbnails: "#{@aip_directory}/data/thumbnails" + file_logs: "#{@aip_directory}/data/logs/files_logs" + ) + end + + def file_set_dirs(file_set_uuid) + @file_set_dirs ||= {} + @file_set_dirs[file_set_uuid] ||= OpenStruct.new( + metadata: "#{aip_dirs.files_metadata}/#{file_set_uuid}", + files: "#{aip_dirs.files}/#{file_set_uuid}", + logs: "#{aip_dirs.file_logs}/#{file_set_uuid}" ) end @@ -106,6 +141,14 @@ def make_directories PushmiPullyu.logger.debug("#{@noid}: Creating directories done") end + def make_file_set_directories(file_set_uuid) + PushmiPullyu.logger.debug("#{@noid}: Creating file set #{file_set_uuid} directories ...") + file_set_dirs(file_set_uuid).to_h.each_value do |path| + FileUtils.mkdir_p(path) + end + PushmiPullyu.logger.debug("#{@noid}: Creating file set #{file_set_uuid} directories done") + end + def clean_directories return unless File.exist?(@aip_directory) PushmiPullyu.logger.debug("#{@noid}: Nuking directories ...") @@ -114,63 +157,105 @@ def clean_directories ### Files - def aip_paths - @aip_paths ||= OpenStruct.new( + def object_aip_paths + @object_aip_paths ||= OpenStruct.new( main_object: OpenStruct.new( remote: nil, # Base path local: "#{aip_dirs.metadata}/object_metadata.n3", + should_add_user_email: true, optional: false ), - fixity: OpenStruct.new( - remote: '/content/fcr:fixity', - local: "#{aip_dirs.logs}/content_fixity_report.n3", - optional: false + list_source: OpenStruct.new( + # This is downloaded, but not saved + remote: '/list_source' ), - content_datastream_metadata: OpenStruct.new( - remote: '/content/fcr:metadata', - local: "#{aip_dirs.metadata}/content_fcr_metadata.n3", + # This is constructed, not downloaded + file_ordering: OpenStruct.new( + local: "#{aip_dirs.files_metadata}/file_order.xml" + ) + ).freeze + end + + def file_set_aip_paths(file_set_uuid) + @file_set_aip_paths ||= {} + @file_set_aip_paths[file_set_uuid] ||= OpenStruct.new( + main_object: OpenStruct.new( + remote: nil, # Base file_set path + local: "#{file_set_dirs(file_set_uuid).metadata}/file_set_metadata.n3", + should_add_user_email: true, optional: false - ), - versions: OpenStruct.new( - remote: '/content/fcr:versions', - local: "#{aip_dirs.metadata}/content_versions.n3", + ) + ).freeze + end + + def file_aip_paths(file_set_uuid, original_file_remote_base) + @file_aip_paths ||= {} + @file_aip_paths[file_set_uuid] ||= OpenStruct.new( + content: OpenStruct.new( + remote: original_file_remote_base, + local: file_set_filename(file_set_uuid), optional: false ), - # Optional downloads - thumbnail: OpenStruct.new( - remote: '/thumbnail', - local: "#{aip_dirs.thumbnails}/thumbnail", - optional: true - ), - characterization: OpenStruct.new( - remote: '/characterization', - local: "#{aip_dirs.logs}/content_characterization.n3", - optional: true - ), - fedora3foxml: OpenStruct.new( - remote: '/fedora3foxml', - local: "#{aip_dirs.metadata}/fedora3foxml.xml", - optional: true - ), - fedora3foxml_metadata: OpenStruct.new( - remote: '/fedora3foxml/fcr:metadata', - local: "#{aip_dirs.metadata}/fedora3foxml.n3", - optional: true + fixity: OpenStruct.new( + remote: "#{original_file_remote_base}/fcr:fixity", + local: "#{file_set_dirs(file_set_uuid)[:logs]}/content_fixity_report.n3", + optional: false ) ).freeze end - # Extract filename from main object metadata - def content_filename - filename_predicate = RDF::URI('info:fedora/fedora-system:def/model#downloadFilename') + def member_file_set_uuids + @member_file_set_uuids ||= [] + return @member_file_set_uuids unless @member_file_set_uuids.empty? - graph = RDF::Graph.load(aip_paths.main_object.local) + member_file_set_predicate = RDF::URI(PREDICATE_URIS[:member_file_sets]) + + graph = RDF::Graph.load(object_aip_paths.main_object.local) + + graph.query(predicate: member_file_set_predicate) do |results| + # Get uuid from end of fedora path + @member_file_set_uuids << results.object.to_s.split('/').last + end + return @member_file_set_uuids unless @member_file_set_uuids.empty? + + raise NoFileSets + end + + def file_set_filename(file_set_uuid) + filename_predicate = RDF::URI(PREDICATE_URIS[:filename]) + + graph = RDF::Graph.load(file_set_aip_paths(file_set_uuid).main_object.local) graph.query(predicate: filename_predicate) do |results| - return "#{aip_dirs.objects}/#{results.object}" + return "#{file_set_dirs(file_set_uuid).files}/#{results.object}" end raise NoContentFilename end + def member_files(file_set_uuid) + member_file_predicate = RDF::URI(PREDICATE_URIS[:member_files]) + + graph = RDF::Graph.load(file_set_aip_paths(file_set_uuid).main_object.local) + + member_files = [] + graph.query(predicate: member_file_predicate) do |results| + # Get uuid from end of fedora path + member_files << results.object.to_s.split('/').last + end + return member_files if member_files.present? + + raise NoMemberFiles + end + + def original_file?(metadata_filename) + type_predicate = RDF::URI(PREDICATE_URIS[:type]) + original_file_uri = RDF::URI(PREDICATE_URIS[:original_file]) + graph = RDF::Graph.load(metadata_filename) + graph.query(predicate: type_predicate) do |results| + return true if results.object == original_file_uri + end + false + end + end diff --git a/lib/pushmi_pullyu/aip/fedora_fetcher.rb b/lib/pushmi_pullyu/aip/fedora_fetcher.rb index 0b194c5..b34d8df 100644 --- a/lib/pushmi_pullyu/aip/fedora_fetcher.rb +++ b/lib/pushmi_pullyu/aip/fedora_fetcher.rb @@ -19,7 +19,8 @@ def object_url(url_extra = nil) # Return true on success, raise an error otherwise # (or use 'optional' to return false on 404) def download_object(download_path, url_extra: nil, - optional: false, is_rdf: false) + optional: false, is_rdf: false, + should_add_user_email: false) uri = URI(object_url(url_extra)) @@ -34,8 +35,13 @@ def download_object(download_path, url_extra: nil, end if response.is_a?(Net::HTTPSuccess) + body = if should_add_user_email + PushmiPullyu::AIP::OwnerEmailEditor.new(response.body).run + else + response.body + end file = File.open(download_path, 'wb') - file.write(response.body) + file.write(body) file.close return true elsif response.is_a?(Net::HTTPNotFound) diff --git a/lib/pushmi_pullyu/aip/file_list_creator.rb b/lib/pushmi_pullyu/aip/file_list_creator.rb new file mode 100644 index 0000000..b418a23 --- /dev/null +++ b/lib/pushmi_pullyu/aip/file_list_creator.rb @@ -0,0 +1,115 @@ +require 'rdf' +require 'rdf/n3' + +class PushmiPullyu::AIP::FileListCreator + + IANA = 'http://www.iana.org/assignments/relation/'.freeze + PREDICATES = { + proxy_for: RDF::URI('http://www.openarchives.org/ore/terms/proxyFor'), + first: RDF::URI(IANA + 'first'), + last: RDF::URI(IANA + 'last'), + prev: RDF::URI(IANA + 'prev'), + next: RDF::URI(IANA + 'next'), + has_part: RDF::URI('http://purl.org/dc/terms/hasPart') + }.freeze + + class NoProxyURIFound < StandardError; end + class NoFirstProxyFound < StandardError; end + class FirstProxyHasPrev < StandardError; end + class ListSourceFileSetMismatch < StandardError; end + + def initialize(list_source_uri, output_xml_file, file_set_uuids) + @uri = RDF::URI(list_source_uri) + @output_file = output_xml_file + + # These are the known fileset uuids, used for validation + @file_set_uuids = file_set_uuids + end + + def run + extract_list_source_uuids + raise ListSourceFileSetMismatch, @uri.to_s if @list_source_uuids.sort != @file_set_uuids.sort + + write_output_file + end + + def extract_list_source_uuids + # Note: raises IOError if can't find + # raises RDF::ReaderError if can't parse + @graph = RDF::Graph.load(@uri, validate: true) + + @list_source_uuids = [] + + # Fetch first FileSet in list source + this_proxy = find_first_proxy + + while @list_source_uuids.count <= num_proxies + @list_source_uuids << uuid_from_proxy(this_proxy) + next_proxy = find_next_proxy(this_proxy) + + break if next_proxy.nil? + + raise NextPreviousProxyMismatch if this_proxy != find_prev_proxy(next_proxy) + this_proxy = next_proxy + end + + raise ProxyCountIncorrect if @list_source_uuids.count != num_proxies + raise LastProxyFailsValidation if this_proxy != find_last_proxy + end + + def num_proxies + @num_proxies ||= @graph.query(subject: @uri, predicate: PREDICATES[:has_part]).count + end + + def uuid_from_proxy(proxy_uri) + @graph.query(subject: proxy_uri, predicate: PREDICATES[:proxy_for]) do |statement| + return statement.object.to_s.split('/').last + end + raise NoProxyURIFound, proxy_uri.to_s + end + + def find_first_proxy + @graph.query(subject: @uri, predicate: PREDICATES[:first]) do |statement| + first_uri = statement.object + # Validate that the first proxy doesn't have a previous one + raise FirstProxyHasPrev, @uri.to_s if find_prev_proxy(first_uri) + return first_uri + end + raise NoFirstProxyFound, @uri.to_s + end + + def find_last_proxy + @graph.query(subject: @uri, predicate: PREDICATES[:last]) do |statement| + last_uri = statement.object + # Validate that the last proxy doesn't have a next one + raise LastProxyHasNext, @uri.to_s if find_next_proxy(last_uri) + return last_uri + end + raise LastProxyFound, @uri.to_s + end + + def find_next_proxy(proxy_uri) + @graph.query(subject: proxy_uri, predicate: PREDICATES[:next]) do |statement| + return statement.object + end + nil + end + + def find_prev_proxy(proxy_uri) + @graph.query(subject: proxy_uri, predicate: PREDICATES[:prev]) do |statement| + return statement.object + end + nil + end + + def write_output_file + File.open(@output_file, 'w') do |file| + file.write("\n") + @list_source_uuids.each do |uuid| + file.write(" #{uuid}\n") + end + file.write("\n") + end + end + +end diff --git a/lib/pushmi_pullyu/aip/owner_email_editor.rb b/lib/pushmi_pullyu/aip/owner_email_editor.rb new file mode 100644 index 0000000..c2204cf --- /dev/null +++ b/lib/pushmi_pullyu/aip/owner_email_editor.rb @@ -0,0 +1,62 @@ +require 'net/http' + +class PushmiPullyu::AIP::OwnerEmailEditor + + OWNER_PREDICATE = RDF::URI('http://purl.org/ontology/bibo/owner').freeze + + class NoOwnerPredicate < StandardError; end + + def initialize(rdf_string) + @document = rdf_string + end + + def run + ensure_database_connection + + is_modified = false + prefixes = nil + # Read once to load prefixes (the @things at the top of an n3 file) + RDF::N3::Reader.new(input = @document) do |reader| + reader.each_statement { |_statement| } + prefixes = reader.prefixes + end + new_body = RDF::N3::Writer.buffer(prefixes: prefixes) do |writer| + RDF::N3::Reader.new(input = @document) do |reader| + reader.each_statement do |statement| + if statement.predicate == OWNER_PREDICATE + user = PushmiPullyu::AIP::User.find(statement.object.to_i) + writer << [statement.subject, statement.predicate, user.email] + is_modified = true + else + writer << statement + end + end + end + end + return new_body if is_modified + raise NoOwnerPredicate + end + + private + + def ensure_database_connection + return if ActiveRecord::Base.connected? + ActiveRecord::Base.establish_connection(database_configuration) + end + + def database_configuration + # Config either from URL, or with more granular options (the later taking precedence) + config = {} + uri = URI.parse(PushmiPullyu.options[:database][:url]) + config[:adapter] = PushmiPullyu.options[:database][:adaptor] || uri.scheme + config[:host] = PushmiPullyu.options[:database][:host] || uri.host + config[:database] = PushmiPullyu.options[:database][:database] || uri.path.split('/')[1].to_s + config[:username] = PushmiPullyu.options[:database][:username] || uri.user + config[:password] = PushmiPullyu.options[:database][:password] || uri.password + params = CGI.parse(uri.query || '') + config[:encoding] = PushmiPullyu.options[:database][:encoding] || params['encoding'].to_a.first + config[:pool] = PushmiPullyu.options[:database][:pool] || params['pool'].to_a.first + config + end + +end diff --git a/lib/pushmi_pullyu/aip/solr_fetcher.rb b/lib/pushmi_pullyu/aip/solr_fetcher.rb deleted file mode 100644 index f4b9388..0000000 --- a/lib/pushmi_pullyu/aip/solr_fetcher.rb +++ /dev/null @@ -1,33 +0,0 @@ -require 'json' -require 'net/http' - -class PushmiPullyu::AIP::SolrFetcher - - class SolrFetchError < StandardError; end - - def initialize(noid) - @noid = noid - end - - def fetch_permission_object_ids - hash = JSON.parse(run_query_json) - - return [] if hash['response']['docs'].empty? - - hash['response']['docs'].map { |hit| hit['id'] } - end - - private - - # Return fetched results, else raise an error - def run_query_json - response = Net::HTTP.get_response( - URI("#{PushmiPullyu.options[:solr][:url]}/select?q=accessTo_ssim:#{@noid}&fl=id&wt=json") - ) - - return response.body if response.is_a?(Net::HTTPSuccess) - - raise SolrFetchError - end - -end diff --git a/lib/pushmi_pullyu/aip/user.rb b/lib/pushmi_pullyu/aip/user.rb new file mode 100644 index 0000000..9d59c4c --- /dev/null +++ b/lib/pushmi_pullyu/aip/user.rb @@ -0,0 +1,2 @@ +class PushmiPullyu::AIP::User < ActiveRecord::Base +end diff --git a/pushmi_pullyu.gemspec b/pushmi_pullyu.gemspec index 489e3b1..61acf0d 100644 --- a/pushmi_pullyu.gemspec +++ b/pushmi_pullyu.gemspec @@ -1,4 +1,4 @@ -lib = File.expand_path('../lib', __FILE__) +lib = File.expand_path('lib', __dir__) $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib) require 'pushmi_pullyu/version' @@ -21,12 +21,14 @@ Gem::Specification.new do |spec| spec.required_ruby_version = '>= 2.3.1' + spec.add_runtime_dependency 'activerecord', '~> 5.1.5' spec.add_runtime_dependency 'activesupport', '~> 5.0' spec.add_runtime_dependency 'bagit', '~> 0.4' spec.add_runtime_dependency 'connection_pool', '~> 2.2' spec.add_runtime_dependency 'daemons', '~> 1.2', '>= 1.2.4' spec.add_runtime_dependency 'minitar', '~> 0.6' spec.add_runtime_dependency 'openstack', '~> 3.3', '>= 3.3.10' + spec.add_runtime_dependency 'pg', '~> 1.0.0' spec.add_runtime_dependency 'rdf', '>= 1.99', '< 4.0' spec.add_runtime_dependency 'rdf-n3', '>= 1.99', '< 4.0' spec.add_runtime_dependency 'redis', '>= 3.3', '< 5.0' diff --git a/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/aipcreation.log b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/aipcreation.log new file mode 100644 index 0000000..e20e655 --- /dev/null +++ b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/aipcreation.log @@ -0,0 +1,29 @@ +# Logfile created on 2018-03-19 15:25:54 -0600 by logger.rb/56815 +I, [2018-03-19T15:25:54.849868 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/object_metadata.n3 -- fetching from http://localhost:8080/fcrepo/rest/dev/68/41/ce/ce/6841cece-41f1-4edf-ab9a-59459a127c77 ... +I, [2018-03-19T15:25:55.074254 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/object_metadata.n3 -- saved +I, [2018-03-19T15:25:55.124696 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/856444b6-8dd5-4dfa-857d-435e354a2ead/file_set_metadata.n3 -- fetching from http://localhost:8080/fcrepo/rest/dev/85/64/44/b6/856444b6-8dd5-4dfa-857d-435e354a2ead ... +I, [2018-03-19T15:25:55.163497 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/856444b6-8dd5-4dfa-857d-435e354a2ead/file_set_metadata.n3 -- saved +I, [2018-03-19T15:25:55.173367 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/856444b6-8dd5-4dfa-857d-435e354a2ead/original_file_metadata.n3 -- fetching from http://localhost:8080/fcrepo/rest/dev/85/64/44/b6/856444b6-8dd5-4dfa-857d-435e354a2ead/files/e1bc671b-b3ce-4f9f-9596-df3cad1d84bb/fcr:metadata ... +I, [2018-03-19T15:25:55.177168 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/856444b6-8dd5-4dfa-857d-435e354a2ead/original_file_metadata.n3 -- saved +I, [2018-03-19T15:25:55.192042 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/856444b6-8dd5-4dfa-857d-435e354a2ead/original_file_metadata.n3 -- fetching from http://localhost:8080/fcrepo/rest/dev/85/64/44/b6/856444b6-8dd5-4dfa-857d-435e354a2ead/files/04bb7928-cc5d-4338-8062-3209274b29da/fcr:metadata ... +I, [2018-03-19T15:25:55.196054 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/856444b6-8dd5-4dfa-857d-435e354a2ead/original_file_metadata.n3 -- saved +I, [2018-03-19T15:25:55.224521 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/files/856444b6-8dd5-4dfa-857d-435e354a2ead/era-logo.png -- fetching from http://localhost:8080/fcrepo/rest/dev/85/64/44/b6/856444b6-8dd5-4dfa-857d-435e354a2ead/files/04bb7928-cc5d-4338-8062-3209274b29da ... +I, [2018-03-19T15:25:55.226876 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/files/856444b6-8dd5-4dfa-857d-435e354a2ead/era-logo.png -- saved +I, [2018-03-19T15:25:55.226973 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/files_logs/856444b6-8dd5-4dfa-857d-435e354a2ead/content_fixity_report.n3 -- fetching from http://localhost:8080/fcrepo/rest/dev/85/64/44/b6/856444b6-8dd5-4dfa-857d-435e354a2ead/files/04bb7928-cc5d-4338-8062-3209274b29da/fcr:fixity ... +I, [2018-03-19T15:25:55.229338 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/files_logs/856444b6-8dd5-4dfa-857d-435e354a2ead/content_fixity_report.n3 -- saved +I, [2018-03-19T15:25:55.229559 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/837977d6-de61-49ea-a912-a65af5c9005e/file_set_metadata.n3 -- fetching from http://localhost:8080/fcrepo/rest/dev/83/79/77/d6/837977d6-de61-49ea-a912-a65af5c9005e ... +I, [2018-03-19T15:25:55.267283 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/837977d6-de61-49ea-a912-a65af5c9005e/file_set_metadata.n3 -- saved +I, [2018-03-19T15:25:55.278070 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/837977d6-de61-49ea-a912-a65af5c9005e/original_file_metadata.n3 -- fetching from http://localhost:8080/fcrepo/rest/dev/83/79/77/d6/837977d6-de61-49ea-a912-a65af5c9005e/files/956ee84b-ef1a-4e1e-955e-0707e34df4b8/fcr:metadata ... +I, [2018-03-19T15:25:55.282213 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/837977d6-de61-49ea-a912-a65af5c9005e/original_file_metadata.n3 -- saved +I, [2018-03-19T15:25:55.311343 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/files/837977d6-de61-49ea-a912-a65af5c9005e/image-sample.jpeg -- fetching from http://localhost:8080/fcrepo/rest/dev/83/79/77/d6/837977d6-de61-49ea-a912-a65af5c9005e/files/956ee84b-ef1a-4e1e-955e-0707e34df4b8 ... +I, [2018-03-19T15:25:55.313634 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/files/837977d6-de61-49ea-a912-a65af5c9005e/image-sample.jpeg -- saved +I, [2018-03-19T15:25:55.313742 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/files_logs/837977d6-de61-49ea-a912-a65af5c9005e/content_fixity_report.n3 -- fetching from http://localhost:8080/fcrepo/rest/dev/83/79/77/d6/837977d6-de61-49ea-a912-a65af5c9005e/files/956ee84b-ef1a-4e1e-955e-0707e34df4b8/fcr:fixity ... +I, [2018-03-19T15:25:55.316106 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/files_logs/837977d6-de61-49ea-a912-a65af5c9005e/content_fixity_report.n3 -- saved +I, [2018-03-19T15:25:55.316328 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/01bb1b09-974d-478b-8826-2c606a447606/file_set_metadata.n3 -- fetching from http://localhost:8080/fcrepo/rest/dev/01/bb/1b/09/01bb1b09-974d-478b-8826-2c606a447606 ... +I, [2018-03-19T15:25:55.354159 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/01bb1b09-974d-478b-8826-2c606a447606/file_set_metadata.n3 -- saved +I, [2018-03-19T15:25:55.364942 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/01bb1b09-974d-478b-8826-2c606a447606/original_file_metadata.n3 -- fetching from http://localhost:8080/fcrepo/rest/dev/01/bb/1b/09/01bb1b09-974d-478b-8826-2c606a447606/files/8b26afd3-0f72-4241-87d4-830f0bbdf58c/fcr:metadata ... +I, [2018-03-19T15:25:55.369202 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/01bb1b09-974d-478b-8826-2c606a447606/original_file_metadata.n3 -- saved +I, [2018-03-19T15:25:55.398452 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/files/01bb1b09-974d-478b-8826-2c606a447606/theses.jpg -- fetching from http://localhost:8080/fcrepo/rest/dev/01/bb/1b/09/01bb1b09-974d-478b-8826-2c606a447606/files/8b26afd3-0f72-4241-87d4-830f0bbdf58c ... +I, [2018-03-19T15:25:55.400813 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/files/01bb1b09-974d-478b-8826-2c606a447606/theses.jpg -- saved +I, [2018-03-19T15:25:55.400923 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/files_logs/01bb1b09-974d-478b-8826-2c606a447606/content_fixity_report.n3 -- fetching from http://localhost:8080/fcrepo/rest/dev/01/bb/1b/09/01bb1b09-974d-478b-8826-2c606a447606/files/8b26afd3-0f72-4241-87d4-830f0bbdf58c/fcr:fixity ... +I, [2018-03-19T15:25:55.403282 #32469] INFO -- : 6841cece-41f1-4edf-ab9a-59459a127c77: /tmp/aip/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/files_logs/01bb1b09-974d-478b-8826-2c606a447606/content_fixity_report.n3 -- saved diff --git a/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/files_logs/01bb1b09-974d-478b-8826-2c606a447606/content_fixity_report.n3 b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/files_logs/01bb1b09-974d-478b-8826-2c606a447606/content_fixity_report.n3 new file mode 100644 index 0000000..797c205 --- /dev/null +++ b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/files_logs/01bb1b09-974d-478b-8826-2c606a447606/content_fixity_report.n3 @@ -0,0 +1,42 @@ +@prefix premis: . +@prefix rdfs: . +@prefix ns004: . +@prefix ns003: . +@prefix ns002: . +@prefix xsi: . +@prefix ns001: . +@prefix ns008: . +@prefix ns007: . +@prefix ns006: . +@prefix xmlns: . +@prefix ns005: . +@prefix xml: . +@prefix ns009: . +@prefix fedoraconfig: . +@prefix foaf: . +@prefix test: . +@prefix ns011: . +@prefix ns010: . +@prefix ns015: . +@prefix ns014: . +@prefix ns013: . +@prefix ns012: . +@prefix ns019: . +@prefix ns018: . +@prefix ns017: . +@prefix ns016: . +@prefix fedora: . +@prefix rdf: . +@prefix ebucore: . +@prefix ldp: . +@prefix xs: . +@prefix dc: . + + + premis:hasFixity . + + + a premis:EventOutcomeDetail , premis:Fixity ; + premis:hasEventOutcome "SUCCESS"^^ ; + premis:hasMessageDigest ; + premis:hasSize "53678"^^ . diff --git a/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/files_logs/837977d6-de61-49ea-a912-a65af5c9005e/content_fixity_report.n3 b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/files_logs/837977d6-de61-49ea-a912-a65af5c9005e/content_fixity_report.n3 new file mode 100644 index 0000000..d08feab --- /dev/null +++ b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/files_logs/837977d6-de61-49ea-a912-a65af5c9005e/content_fixity_report.n3 @@ -0,0 +1,42 @@ +@prefix premis: . +@prefix rdfs: . +@prefix ns004: . +@prefix ns003: . +@prefix ns002: . +@prefix xsi: . +@prefix ns001: . +@prefix ns008: . +@prefix ns007: . +@prefix ns006: . +@prefix xmlns: . +@prefix ns005: . +@prefix xml: . +@prefix ns009: . +@prefix fedoraconfig: . +@prefix foaf: . +@prefix test: . +@prefix ns011: . +@prefix ns010: . +@prefix ns015: . +@prefix ns014: . +@prefix ns013: . +@prefix ns012: . +@prefix ns019: . +@prefix ns018: . +@prefix ns017: . +@prefix ns016: . +@prefix fedora: . +@prefix rdf: . +@prefix ebucore: . +@prefix ldp: . +@prefix xs: . +@prefix dc: . + + + premis:hasFixity . + + + a premis:EventOutcomeDetail , premis:Fixity ; + premis:hasEventOutcome "SUCCESS"^^ ; + premis:hasMessageDigest ; + premis:hasSize "12401"^^ . diff --git a/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/files_logs/856444b6-8dd5-4dfa-857d-435e354a2ead/content_fixity_report.n3 b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/files_logs/856444b6-8dd5-4dfa-857d-435e354a2ead/content_fixity_report.n3 new file mode 100644 index 0000000..e14e35f --- /dev/null +++ b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/logs/files_logs/856444b6-8dd5-4dfa-857d-435e354a2ead/content_fixity_report.n3 @@ -0,0 +1,42 @@ +@prefix premis: . +@prefix rdfs: . +@prefix ns004: . +@prefix ns003: . +@prefix ns002: . +@prefix xsi: . +@prefix ns001: . +@prefix ns008: . +@prefix ns007: . +@prefix ns006: . +@prefix xmlns: . +@prefix ns005: . +@prefix xml: . +@prefix ns009: . +@prefix fedoraconfig: . +@prefix foaf: . +@prefix test: . +@prefix ns011: . +@prefix ns010: . +@prefix ns015: . +@prefix ns014: . +@prefix ns013: . +@prefix ns012: . +@prefix ns019: . +@prefix ns018: . +@prefix ns017: . +@prefix ns016: . +@prefix fedora: . +@prefix rdf: . +@prefix ebucore: . +@prefix ldp: . +@prefix xs: . +@prefix dc: . + + + a premis:EventOutcomeDetail , premis:Fixity ; + premis:hasEventOutcome "SUCCESS"^^ ; + premis:hasMessageDigest ; + premis:hasSize "5612"^^ . + + + premis:hasFixity . diff --git a/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/files/01bb1b09-974d-478b-8826-2c606a447606/theses.jpg b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/files/01bb1b09-974d-478b-8826-2c606a447606/theses.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a676cf665863c974ac1a6235a86d5b8362260506 GIT binary patch literal 53678 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 literal 0 HcmV?d00001 diff --git a/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/files/837977d6-de61-49ea-a912-a65af5c9005e/image-sample.jpeg b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/files/837977d6-de61-49ea-a912-a65af5c9005e/image-sample.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..3853a5e5582dd2461036d0bfdc27ea878ae6492c GIT binary patch literal 12401 zcma)hS5OmN)NMi!ozQy%36Rix*U(cyLI_Ax=|T{sNwd(q2!zlKqp zQIRU}fk+n>6|euD`5*4vU8lUPbJjky=gjQcd;gvPyA0sPT4F2#Kp+4B{5Jr9KLU~f zAQo1Bez4%bB_t#$EFvZ@A|fIxEDaHtk(3nsH^s!Iq!l1y;&5?MF{nBej!;xlQIV3? z)YDYbRZvz@2C}oWb8~Tv@$!l(!y$0xe^C6N?f)0Le+K}3Y=Fl=0Y;zQm2EPo!BmVCP0OvoRfsc_7a2~Mng>tEmhg&N*!g^y1HLrfD-tgF%!Iet})Z~Yt?bF zrXv|#?hte1Dc z>gC5@nA+Vm(1Z*N%ZhMnYhA0#mACK_AAa8nf;SxJ0E8$c^>iCK=|ZALiY3eG<5+xg z0P{I*g?ISiE#}{lxA2c<Nl9^0AMIyYFguF~e>{jlVcY^3_77X==^m%s`Hh$V=S*zjLSOaW z>Ssw&>V+26qgBj@FPXETn^R4>qQlbFiuBQTiWCQRW@`sj6qj650^6T0u!lNmy2isk zpG$?LxH=cfT>pFcHlxJn^*EdlOu@e)CC7}h!}%mC8%$}iidF^@>9yGKH~`Y)qByTK zm37$jMxhC!B#AsaauVS1<2o~cF@tpqIQ`~UBcRz- zc6xywqGPcjf-0PwS(++mJtsm*DN#?R|D#oQZ697)uI#&-XHZdIWW4IgD?r8!8Q=7&!2rxsGchG6U< z3Gnh|gKI!})!K^>RaN=(1V8?={7Uv33JuX3sc0t~D)zlgCTS9cC7>J17Kn^4_BgfG zJ%OtV>GwDoMpJ#ILLxzFSjr6sdMbcJZt_=;k<7YrxX8{4$!DuNVd&!xTHs?5vZLgH zftw+}<63M)<{H3o;H8T;^Ox4gM@(&D>y+<)foynq$;zh-3j?2)$~@ewR8{ajzrIMR z-2Cuc03K!M@X6X_kvb!&;lro~^)Q*KTw$aycVty&m0hUzdHzUnAD zU`aoS{RjH&GW+_=Q+XQ4RzZO^-l zFY2KvT$u?EZQ%xwQz2tY5eLE)9ISpAU;dVIVLymS&qIr%`t~IAML#JwLBbt|oqXI+-ptG+w9-g~T^3*yt@B zWMtKq9H>^+`W$G&k>2;WylpHyff1M)hc_~nZG$Ke;@O2G8zWzUsrZXFl@GfWlrUok=F-=7Li}xSawZG z>zq}*yj;M{BxHvzp6CI%87mOIW={${1$<%tNFPC#&;eF$=)Bt^e{a6E9gIscGyrw| zQu(U$d{2XKV4kl)#TT0uZC_1C@biuGtw=!JtH{vx-(%mhf}?$*UIa$wa)h%IC@?+! zkbB&wq=jx^rl-q7xns-qW!!Mf)5Q^B#=GU66F|*)f)S=kzt+cg-d!-6zojvaAQV(M z)?8?3=BK@v4Y52*Z#BIji8WE70IF!Lfe+8gL`Zjv(`%Uy{+9Sj5Wz1B(WEBT#o35-Z%j37BI!1Eg-CY=3j58sDy9Q) z7}xMygX-zI3>OaT!G;EkK!sne(`@deD$&GSeO1q{qpNmP9~c#{6hu)ve| zs+?y$2=@eSkhmY>Terpkx#I4HRNBYn*vzmDqUxJV_ctVqK_ir;**?}?rVMQ#)Gje;6<$(N6)G02t zlt#crylJXSaG{m$_jyuZx(R0HwK_!;CSQGn4+HY^!C!}-ov7PuPWVu9C0kzJ!ZAYC zQ>pS(^r)tM4Kg8zy*n#T<|BQ+$@We?ctBN&??nRUXC8Vw@O@^2iigG@e~s}gF8(W= zhyy(Vcj>Ry>iSSJd%mJ|YYltw^Bk4!$W2j=AQfzOqne~PyY}&x$`O!?1bTF^Nwo_uFX#??uo0F z8ebaZK>!*p3!(L9Avax=-PP;Z#p2)yC-ih3D|4AP$rfv3-ragWQi*o0T@J-Lpf*ZS-x49zkqLitdB<%8^`dlFn?@Ubvvo6?F2kQk8& z9^mEZYIY*xGF9By(QcoMOX9G@CH_!D$`QI}=stsFq^CnfSoMO zNp#qw3JI2<&vWnugZP)`eHy-#?8yB(z-2lwbGZx6CGJQXC% zjX<$Tkq4b&33kZHwBi7ESbQBkGv0Km;GIm3LK!kA8I}OPMu^(g<%?u$*;UI@>v5y$ zOPCtyHG2%_w!=rOL`GJb=#@l5_?J6^?9!@!={V`sR_$h^9^E~`Lrw%XoB?fC)6(Xk zFO;D7TW_C8=5p%#a+vkG(~H#_{Z$3&qUolm0Dyu0kVI#s(IB60&^{}lqIoNJSglTA zks|NM_{XBKR)Q?SuN0GveA%bF@j;4^r|#j1K{J12aK<>W!8m4FyVit0R)^=?jq@eb zv0}n78tgX~!x-06lo_Q2F4%Cn@!esDtu8F^hKjY!Y^Y9Fj}zWPdniV=CFP>Yl9x6;QnbBqiNoBf{$R%T1J*P9?6oa1X&%6^q- z1&B~HQpN5iTmMqOfZ!l!)T3sFqyd=RUAv6qicu`C^+! zX@0FMSQ%vGVWnPF?9|hU4i-WOT>A3GkM>FEwCzDhaSa^(K;tf3B-+CY5zu84xhS`D zCVw!eMb%R^9V{hDsr71hk~AH3T*52;K`zR5aU+3kXV7dp0y`(2!=O13`r&&pbk3D2 z`s1}ZxIgMTv&{|lN@HhR_W2zbKYT+bwdcFxK;LVAHHEwe+Ixpz>X-DY8u2%WGoI$j zuUwZd{vHqYesb+|o3PM={=4 zATJt@f#vo7jNe{t-JHJ&uBpgvN`Ytts~;_a&iSezzZ+U)Wdi=T5Cntl3<7X?L-rY# zP2-}Aks9GW$w({+!3G^NdsN%A)v4x7Hud597mjO_%d>2h+#CJ{dBmmF_| zlB=ogrn0hLx2Y=hSl>F^!g{P#G8a?c9;Mw1bhXU=yrm{*mo{9S_pQRg0y<*hKrGlV zwfGqwPQejh(?K(L#2#x@ox`(o!P~+zFw=`l`#rHP!`xx&rf5@^#~>(TrN{1$XU>5~ z3Ha)okv+gR*<9?9^Yw97sJr!kVB^JV^CNJsaXRN`q4`0j0@Djn1WTO4Y3rXgC;Hg< z^ZOIaMh=*n@X}k>J0KnIk)NS)=jVoEy9;uLt=n;$`tU#KsNkJd^bGfC($h@6bD66(ZzSK0KyZu?=-KoUrM@gLnqWi0JppM%hF;eLJ)4UyVMuWc2hj`7MR`WhEhq% zPX?*8}`1+BVKueA`c; z7Zzx`{#;>$^nRvXQDnNX@d=>WeX0kfrOmzEMmq1*@_re<(uY-)xi)ot z+*VXvzFUmNFc3^1?pja8adgO)EpzU0ZfU|*JO_~0BMnaHd4`Asga$k1JttYm|I&5d zjyCng(MsQ?c32gc64D0lmMR5~z{{lkEh2MW# zW>;%H3VXP~s3{J?Rn6vnm|#aH|9(+DTwUSZh|j1Snq#GT{-fF zmv0v`Ne=U&vqZ~|i`xt0niV~?{8s4*$TssAU$1dZd5&p?NdkqsjYq<_RPnWcJX={i zix()X8=L$Klizgy5Rv-F0T4(HM@aVdR0A_>fcdox6KqH#x#WQe1Geg1vln zFjpXBt7!Ijy<{Avi=!?%;4Odzz6LTVEfXlOn6SNdf%>M-=D}NKD_8i$bgXbzAQG3+ zbB?n0%j}W7Kt9g2%YZm?I#(I$HfeB=T){jHyV%Tmt;|tG(JH33JPmX8GkfxVacn1C zdH$jT#%%=Y+ahX5h!^Jtmv#rMj`L|A!)!}(t?X)xPt7`)i|rYD-)Fej01@b)<&$y| zbVfC6bkG4L8z-f%ZBgqEX95g%A7}p5@vTQzZ|U+P1WeX{Th90z5uY#(6}_)7wtz9V zF|}=<)Q&T&Dm!2WtVA?bxdkNa7IT|g!JOuogcWKS^lqF5RugSOoP_<`5b?C{eB>HW zH+)*tv)t4HrKXs=S0dVD0rvTozgp|wAj3zR;Q#HpBm_KL4DL!ABPc}HwyAx3Z`92j z{8@km#W?vou)VpiR|xkS#b`*M4OJ2Hqmm_ZCogqtU3qOuf>lWhV6r2*C>B;=-+J9CWqaEH@@sG0ZY@O;b$*@O_1@ZB4oQu1 zdaKo4!+nU*?Rl`jKycoT3wD*T-d?r80KP}EVA_Ps6gOq|zzg-zGiRatzqUKT4mS~g z5PU3x^p@>2R@SBTm@2)wJ0;GahJ?2KPm;NOhc&Fipy-n2*f*(B1@!H~wKs5(=>WS@ z+$SQ>nf%YbusiSIrnd%`4(5*RZ<3;9*6^u>lBM%!*(nFm}w!6+Q=iYVvN?EL{ z1FIdrOCx|q=T<7^p7D=OEbeteTC|BHFCS=MhGd>S;I05Hf3{CcmHP0KaJLw$lF{rl zZ$zUg&Bzy@!zq-1XZuM=MLo@DbH z#;q(~tN07}#&9<6#a7{yBf`T|`y-=g1Mm=wYWHPEJOXksF4O>jKrt-dBjRUbeec20 zgbNq=^#5CR_kDayJAZ2KWCXT{`)tFNUpwnL#PY_tiaz=a$TW@_9INg)Ctx-aN(2&i?&cv?H@c1Y-eEHWHO3?qeOySiZtutRj0@Y~w z-h?&?f`6UN#zk|V$$$EhYSzocpg=a95unz4%x4He(;_w*!nRDHw!@ofpCKPVK%N>R z(|}+RuyR1;n_=AOxr6iwpR}g(j3@I%)EiqXwGoLPIS9$cg98ud(sPHUC^@m=Bh6WQQyvQFzq~^k5wtB!T3$Z z-}n19YJ@$801p?Dp1$vOVn3X|BPt$Z=|{gbPS@8u#G1{_e_Mvfi4&I^tOO>(d3DVzr?*6l=g5R+uf6;F=P zw2-;{g8yz$9**QcOkDlZb!lP`cO(7{yjdB=D#R1}LA32tJux47F`VO0&_R5~ZIiky ziS(c6{nU!%^rGvb-ge`ce$cFUxtH{2b~c0kFrzjgy9-_Nc<2nXpGdA%%Q(`b-5+OS zQm#Y2V_vf3*1QuiBd-1_IXY|crL0e}dkO=!jY(}?xIK1jGb&l?%)4DeV;!)oV0CY{ zNgG}M170QrC-ZC7!2stuqvAH39=jYTe###~v$JV9tnI@{%<_bOW8fb|hVqh zzBmmQ#}f~6%eA@q1?*cMN2E<$7LAEJ@OMVzA)nw0wik>pvs66~McsKTAtedaplKa0 z@^<}*N%g!iFvvabZUo~e##OOyU(zBgnOgNlC+xg}TiKbWgY?2%ct)J$QHbh%~*XFO$3y7Qs_$|9^P9R-91(et*yPMLAbv)wiC!R-=>-1$miGD-lJ zQs=HX#J=&T%(B@B;exJL5|D7LY>bH)Y`+Db>`YI#0Hl~y+VhU%yIYkfcii_XJWp=q z;y7>*-Qj>a+nzcle^J(6Gl*!qLEJvOc2RDdge+wK*c|3%uYp}JMlmrZIPRjkZ488( zAE(&MinX7vr;>>A*e)c9r)%|EiwcMl?M|&7`g~7|skQ!N+%hDmh{{{a5pr%?*=mSoE%-Sq{GjgC<;c5JX@j;NHp3rJkF6|pF%^5XYX(_N%_wZ33c z7fk4;Tp8A_>x?Vdn~g%9KnTwOKf7*hfR@Xs$*k;5d;$GS6ppdld>m7Imf_0= zf&lSdh1O@tF}3EtbnFIL-2HgjJBjigMa`0Nyi-#dpe>A}XZTQ}ji=$U zYiME3j&A2r#~yI5oG%&N){yFPQ(UU`jgE-}p>jhC{Oe-*8PW$Qim|u5!tk5QK4%0ZSzI{RE(op9$WD=#(Sq)g4hsW!`a&UGm6XRHVm&Yjx*^ z7oHjnGp&{;Zd-0>J2-m2xsZHeVUm5go}qH4>RYu?%Y(k)G7?z8ftt-njl8h5X5M20 zNg(c-cx;|b)5DA`J9DWzjeBp_nPaq$*{}=!PF;0z2Y~!v^mMIErl_ly!}N-rAg@=e z2P#7ONuxJ2im7UX9l!r9-?Pw)Of%v_F)kL=cJh=YkgP_Y?-i+C@92pFSUWJLY_p*S5qgj3w32b>eNMI?@D+u}_?gP2~F2_ZQ&6=!IbZ-XmjxJF#RaHEH}Cv`GA`T)Oobdsg@ zME=?M&#%5eEC8F>JX@z1)up~^?=Tf_j*qnJo4iHZ{`;aQ07&9HwLj$Z!qJ_a`%~h8 z^4P$s>waa7XXm4Gv^0LsD9W;`T(08HaUeu}%Pe2wKg#kIh`(ZJ>c#weFfIYURZz3< zZ_^!RwcgR%=`b0_w33Twe`(&C^Z7nEJzK_|vIT?)xM?yp@aUz77F2vrdLYZ!-YFYV z%ImAh-BUuY*2NT*#8b%;Om%>7-Rs=*%t-G}K^iKD%S^bkjawPmaryPjq7S|q`ZpM# z%`%kRHt~*szCg*5t82beN9ouH0EU>((#e}W*lBi>?6hjLn3 zMn`th5WeZk=ck#)jRYij>JMD1%C}YEJ%=K%E|@VJ@HCZA`J+|_Rek*jfj*y%F_)~EoRt%Rk$u%jc#Rw2 zNLb1$K#fuJb;hi9=YJ8B002`qEGyEa?BjPuTWr8Sr*0zn>oLx_*2&M>yZMF&MKeuSKccM0aPFo5s(f&*kXZpD)Som z717rrddb#<$%U*ggIj0Th*$aOZOQ7KETDoZVdDvk$Ne+AaZ*^>ZT3~OMoAB;SG7MI=91S(A2odI&Id<}d3K}5sNuZWOi#(cY|_zXU{lle%{t(8=X zy!5e@=SmrXkS5&oIQOuErA;TSTqa1yGv2^tDnWOqpgJ^WvF2TT_gxb$wCw%K(b~nA zeR>V%x*ivvbDu;HZ-e$sKu8^eTh@+!o!KMdwy1dRd>tp-ZEnm>H6`N}-8SR#4VsBP zmX@e){egjSnh3OF&2kD!UC;@T^Eag_6E;dejgTCH{_&4{_Za-!;Zwd>JZUh1@5{L! zDCez`#hY~dUP!K88eWGx&iSWa)C1M8=kg=%r#i0*EK?tEVBUCbGW+;yymeECi3fhG zk8N_PicqlGiGU;L6v1&9mIc6Xf0$%OU2D;#nDDPpvTPO6X2T4mXGF^4{w&)?R0Ji( zeLM2w*VKa5!`SV^uAm!Dt9+Jc+mGZb`>}5Crtsl$BD=4*4J;uwUB=_vI89-{bDdo# z9-azI=xSqg`~$O~>~*gHOwUw1W^yY8MN@J4%xaNZ0H+&G(Yzb)pJ>PVBGWyH2l98C zrA$1mdtT#t1#E#J3VVk1{D$**Z*HxTaw&kY;QnrL>9zN6`gq&!g=vmo=Yj5=4 z=GwChBt4GGZ@iaxMIOHTNLHtWJP0x(wYV=i=?$gqfIr90))6uw@>{t&m&v)jR zT73gP5+|xQAd7MQd)KX!xu^aD@Iq7poIBh5Pfz}}e@!PtGVDkrz>L|>gmnY*T3-BN z%Cbwi!G_3F@cQ`0v^lIpAJ&T+;?W25Yy**q@BRV;P6u~q*97WI>HtXJPYdUl*z6+g zi|{78D+Z|wG-Ef}_is-6E<#4rMIX76Qxo*y{*@p1)){>A&@$CQo__(ip;)*@Qtmw{ zx%9pv@vWh%=S3A?k;tSUL^Gy@*@zaW)oxgJf5_3j{67XSCo7HA6x>O=()N7V@rc!- z^RuA#86T#)-$-PLOO67|8UI&_Mycw0lP6q%pru`(D)wpxyM+K8043Hv_U`o4f(GH3 zlG`3Py)>W!xmj)t-O_N)+-gL-3DF zIR>nqt|k)NVy3de;}?Do2}unsU}Xp-;!& zUGsB!@rmH|2>_T(EBKL&V$Hw_OX{UH7vmVhpz-Vu8IP7XUhP|{3|hOj3f8q6fH1*# z=^yEoUV;4#Oe8BpD7ME&VVm09;)CnVtp0)gS8b|grB6g%!@ z8}U7#QB#lRzVztnb-$jB;i!!4uJ6s=T8#Ww-!)lknKA$Z zM)&Aj{LHKLG$R4yw39^8IHf9Ubzcvth2GSids z@VlBkc*P+RG*k|~MS?`=tC&8DIEmt=9aHP=$_G=gb#SMLlAQtwCU!K6f?`MRv#I_P zY5=p+IJZl_fRfJI<`9Pvq*5sjQLth?NR7TT%@btSpo-sKdUI;Wi2uy|lzEsN;Li7xL~tN^Ekuesa!Uw`u_Ih4;r-RtD_KS;JugBZ ziz)gPx>9v{qP^{2(gX-(yYUwgvd}mWY?X8`VDRDv@7eaF1rsT|QcAG@JXI$s=2_6= zE#tiB$x7oz44c^-n9an7Buh9z4oY zw{(1s8m{*NVBe|$wV-`i^a^^>5q$ZnHyp_x3#!}5lcS)*5cHo$RO1a$|YKK zI{#EmEX_Mmt|mD}F_Q?c4vQ^ETAJpGzFDBw-)bmgi| zf}9Uwj1}Y2A$`XVsiweHfl&Tw;;}Vx_X?KWlB5~LY%FzYnbfSNyaU!q`HqOzrozb>YLV#YB(D$@+ZWMO!ZqC68DsKJLVq&)+f{ zOAeD)_Kwp^hOvkP=sVwk4xB%8_6TGBqB_$c)wi4?c0*e~Thd;wnWvUZcr(v)3uO{#rfqaD+el|ulvoBJ#s%IwM+|ahR-WF_ zPW{Hd!KQcR&_w=>qSA@T1-rgyEuyJ(Fwn^}LNKT^NbSCoe@x-fVSiDXjHir`&JJFwYq04uuRX}K{%Aku5*h25!T`un@Nnp~XBp1d+A((n<(*g%aw zvn%!Kz9%;Y7{4PAy$;nKaf;(k;trFf`XGtLW^qrA9hBEXlP<4Cm9`CZD4sR-&0Bsm z+u>^lFSMAB?-kBlN6}&9PI%%oZ~U=GL=s33l!1E>|F|7v7U{7$QK$}Sq*n}D&dt{a zf|P4?e{{aek_Rf?v73FjaS-H|v;#O!qgGu1HIl3J++;FFRop0M@sgMhHnAi1YS1Nv zVLm=kq|)!TsgFQ#Bu3n_u_(8j7g(Zi8R;KMdY)b;*~Mx^4|0h701!Sp;Rh@3^ORJ} zY91QW{{mi|BV|K?v8?-4|C+)R!OcEQl5BsMllJY~=_eV**aEy`Tg@2ua)nyt#=+z7 z>DEKlAzr^Evp797ye`Xl&Yn{fpXu*o8)a6P`D%)Sg$ixEM%}v;Ly40dkvP(J54tkp z*U&VEot4Ze1H26!Fp`K#YelTvkGAHm%Hm~~?_50>tJj-eGzU=sRgH2cu=}Q0{3uG? zz`d)P4iMDG%%Ep^gip=daej8lP!mC2U-A2tpBC>q-0I_T7)JY0=p&ibab`4Ku#PDU z=9c>SXM%=0(l%*(%Elt@{pg;bb;Yhy0)lr%PCDtQqvDIQ)1ual_S$lP=zsr;%##ov zoXh>qw=CZ$_TI(?mGD2_^I{(KtGLTTs|xRESbp}J9z$=d5`8n9P@*TZcbvXIzYZQv z+!VUH+)JmFXgV4V`;-7@O+s2_zW_#dXB!D1arGnCyE0d!rgF%l2FX$V0OkfxRUxIG&6+dspNlWrYA`|LTdFE12d>LRs43O63dRt5LYCfHmt`a*#Pn)*$0L6k?uu& zN+AfU4+(a?sNR)$`zj_R6G4H;H@l=)R7gkM9Qa)bu1Xl_wpY0Fa@Csn(){x3%J*aw zpY%8DX9<_%$;-cf1dLQ(>@3pfFfjm2jR&5V%m*hHRRFXi1!Er;M0U(oM(R5KC=vvQ zeT%utdYr+*8&Wj)<%WTi8oI)kMS`u*hEm+&3kT0IeyU^sWaXV%^fY@=G)co&X7PBT zyz)W2zF)p+Yhv%V^qml87PHTN6Q*DZu*h}7JJ{644O#CE`iHXT`6#V(Q?inAE~E$I z2_lRRfYn#8uV!7;@PibSW~{bU^4@(M7i?v-{wjk%CKR@#-6JD^KV&(+y(MM+6^K88 zW3*=oe_Z2rI4{>g@^pyrIBZ;!U&z)n#(X=fE*?WL>1p@oeB-o_>RF=^@40gt>rA$J;*aJvfi_UC?pFXK@JwC-ZZJKc$d_b)Y{F^nG()q2N1~? z_ur+_R>nY(w>7mPrUuTH@1c`RBJHi%euWkKD2nrrznTJriTm6gIirLDbvPkUnY&Av zfm%oY9U-W0#+OmBZP0Q(OyGNn z3j)nX)$=c|@!bTau`8e*5Rn~xN9tjs=~%qPp6f4yhK5L*MxUqoM7G&46Q8y9da>CukS2<6pa z3(LH&mo1{A08X%GpFU4hhB2Y#19DX}U6!72AIW}>@=wye?6nSM#Pu=bZ!7(;cKiio z0Wjg0Vr)~iC>x+Xn8fZ`@p<;$V$Nnlp&YRp@MQKho#mMJkQ{tdXP$YKRCb^jXlN+2Nfz4k|%~|ia z-hHjG^hh@oh%8C_lx@Y7ad|p7SDBMfmp5k;6F_{E*nJSB^F^TbeTKT6hw2sKjE8tO zRji@mS1C(VQMFN7*DsKIg#A{%=jULIQo#7*#Pl+)9z1SV2pRfLi%D+|8)%baiGp4= Xa^h!Qm8p+mJ}|Nu{pa)SzwiGKMNa}5 literal 0 HcmV?d00001 diff --git a/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/files/856444b6-8dd5-4dfa-857d-435e354a2ead/era-logo.png b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/files/856444b6-8dd5-4dfa-857d-435e354a2ead/era-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..df281fcf6a02655e07caa1c351a4226b6b2e3434 GIT binary patch literal 5612 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 literal 0 HcmV?d00001 diff --git a/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/01bb1b09-974d-478b-8826-2c606a447606/file_set_metadata.n3 b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/01bb1b09-974d-478b-8826-2c606a447606/file_set_metadata.n3 new file mode 100644 index 0000000..a753dc3 --- /dev/null +++ b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/01bb1b09-974d-478b-8826-2c606a447606/file_set_metadata.n3 @@ -0,0 +1,35 @@ +@prefix ebucore: . +@prefix fedora: . +@prefix ldp: . +@prefix ns001: . +@prefix ns002: . +@prefix ns003: . +@prefix ns005: . +@prefix ns007: . +@prefix ns010: . +@prefix rdf: . +@prefix xs: . + + a ldp:Container, + ns005:Object, + fedora:Container, + ldp:RDFSource, + ns007:FileSet, + fedora:Resource; + ns003:title "theses.jpg"; + fedora:created "2018-03-09T18:53:30.313Z"^^; + fedora:createdBy "bypassAdmin"; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:30.663Z"^^; + fedora:lastModifiedBy "bypassAdmin"; + fedora:writable true; + ns005:hasFile ; + ns005:memberOf ; + ns003:accessRights "http://terms.library.ualberta.ca/public"; + ns002:owner "admin@ualberta.ca"; + ns010:recordCreatedInJupiter "2018-03-09T18:53:30.296Z"; + ns010:sitemapLink ""; + ebucore:dateIngested "2018-03-09T18:53:30.296Z"; + ldp:contains , + ; + ns001:hasModel "IRFileSet" . diff --git a/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/01bb1b09-974d-478b-8826-2c606a447606/original_file_metadata.n3 b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/01bb1b09-974d-478b-8826-2c606a447606/original_file_metadata.n3 new file mode 100644 index 0000000..55969db --- /dev/null +++ b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/01bb1b09-974d-478b-8826-2c606a447606/original_file_metadata.n3 @@ -0,0 +1,61 @@ +@prefix premis: . +@prefix rdfs: . +@prefix ns004: . +@prefix ns003: . +@prefix ns002: . +@prefix xsi: . +@prefix ns001: . +@prefix ns008: . +@prefix ns007: . +@prefix ns006: . +@prefix xmlns: . +@prefix ns005: . +@prefix xml: . +@prefix ns009: . +@prefix fedoraconfig: . +@prefix foaf: . +@prefix test: . +@prefix ns011: . +@prefix ns010: . +@prefix ns015: . +@prefix ns014: . +@prefix ns013: . +@prefix ns012: . +@prefix ns019: . +@prefix ns018: . +@prefix ns017: . +@prefix ns016: . +@prefix fedora: . +@prefix rdf: . +@prefix ebucore: . +@prefix ldp: . +@prefix xs: . +@prefix dc: . + + + a ldp:NonRDFSource , ns011:OriginalFile , fedora:Resource , ns005:File , fedora:Binary ; + fedora:created "2018-03-09T18:53:30.447Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasFixityService ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:32.99Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ns017:valid "true"^^ ; + ns017:wellFormed "true"^^ ; + ns019:compressionScheme "JPEG"^^ ; + ns018:byteOrder "big endian"^^ ; + ebucore:fileSize "53678"^^ ; + ebucore:filename "theses.jpg"^^ ; + ebucore:hasMimeType "image/jpeg"^^ ; + ebucore:height "335"^^ ; + ebucore:width "504"^^ ; + ns014:describedby ; + premis:hasCreatingApplicationVersion + "1.2.0"^^ ; + premis:hasFormatName "JPEG File Interchange Format"^^ ; + premis:hasMessageDigest ; + premis:hasSize "53678"^^ ; + ns016:hashValue "59ced23d3250b0cf54a58dd21bad4512"^^ ; + ns015:colorSpace "YCbCr"^^ ; + ns015:exifVersion "10.00"^^ . diff --git a/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/837977d6-de61-49ea-a912-a65af5c9005e/file_set_metadata.n3 b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/837977d6-de61-49ea-a912-a65af5c9005e/file_set_metadata.n3 new file mode 100644 index 0000000..89f882b --- /dev/null +++ b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/837977d6-de61-49ea-a912-a65af5c9005e/file_set_metadata.n3 @@ -0,0 +1,35 @@ +@prefix ebucore: . +@prefix fedora: . +@prefix ldp: . +@prefix ns001: . +@prefix ns002: . +@prefix ns003: . +@prefix ns005: . +@prefix ns007: . +@prefix ns010: . +@prefix rdf: . +@prefix xs: . + + a ldp:Container, + ns005:Object, + fedora:Container, + fedora:Resource, + ns007:FileSet, + ldp:RDFSource; + ns003:title "image-sample.jpeg"; + fedora:created "2018-03-09T18:53:33.018Z"^^; + fedora:createdBy "bypassAdmin"; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:33.375Z"^^; + fedora:lastModifiedBy "bypassAdmin"; + fedora:writable true; + ns005:hasFile ; + ns005:memberOf ; + ns003:accessRights "http://terms.library.ualberta.ca/public"; + ns002:owner "admin@ualberta.ca"; + ns010:recordCreatedInJupiter "2018-03-09T18:53:32.996Z"; + ns010:sitemapLink ""; + ebucore:dateIngested "2018-03-09T18:53:32.996Z"; + ldp:contains , + ; + ns001:hasModel "IRFileSet" . diff --git a/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/837977d6-de61-49ea-a912-a65af5c9005e/original_file_metadata.n3 b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/837977d6-de61-49ea-a912-a65af5c9005e/original_file_metadata.n3 new file mode 100644 index 0000000..19b6b7e --- /dev/null +++ b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/837977d6-de61-49ea-a912-a65af5c9005e/original_file_metadata.n3 @@ -0,0 +1,61 @@ +@prefix premis: . +@prefix rdfs: . +@prefix ns004: . +@prefix ns003: . +@prefix ns002: . +@prefix xsi: . +@prefix ns001: . +@prefix ns008: . +@prefix ns007: . +@prefix ns006: . +@prefix xmlns: . +@prefix ns005: . +@prefix xml: . +@prefix ns009: . +@prefix fedoraconfig: . +@prefix foaf: . +@prefix test: . +@prefix ns011: . +@prefix ns010: . +@prefix ns015: . +@prefix ns014: . +@prefix ns013: . +@prefix ns012: . +@prefix ns019: . +@prefix ns018: . +@prefix ns017: . +@prefix ns016: . +@prefix fedora: . +@prefix rdf: . +@prefix ebucore: . +@prefix ldp: . +@prefix xs: . +@prefix dc: . + + + a fedora:Binary , fedora:Resource , ldp:NonRDFSource , ns011:OriginalFile , ns005:File ; + fedora:created "2018-03-09T18:53:33.16Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasFixityService ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:35.73Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ns017:valid "true"^^ ; + ns017:wellFormed "true"^^ ; + ns019:compressionScheme "JPEG"^^ ; + ns018:byteOrder "big endian"^^ ; + ebucore:fileSize "12401"^^ ; + ebucore:filename "image-sample.jpeg"^^ ; + ebucore:hasMimeType "image/jpeg"^^ ; + ebucore:height "183"^^ ; + ebucore:width "276"^^ ; + ns014:describedby ; + premis:hasCreatingApplicationVersion + "1.2.0"^^ ; + premis:hasFormatName "JPEG File Interchange Format"^^ ; + premis:hasMessageDigest ; + premis:hasSize "12401"^^ ; + ns016:hashValue "71179c73ffd133cf0f25e3f7b3572ef7"^^ ; + ns015:colorSpace "YCbCr"^^ ; + ns015:exifVersion "10.00"^^ . diff --git a/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/856444b6-8dd5-4dfa-857d-435e354a2ead/file_set_metadata.n3 b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/856444b6-8dd5-4dfa-857d-435e354a2ead/file_set_metadata.n3 new file mode 100644 index 0000000..51ed63d --- /dev/null +++ b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/856444b6-8dd5-4dfa-857d-435e354a2ead/file_set_metadata.n3 @@ -0,0 +1,36 @@ +@prefix ebucore: . +@prefix fedora: . +@prefix ldp: . +@prefix ns001: . +@prefix ns002: . +@prefix ns003: . +@prefix ns005: . +@prefix ns007: . +@prefix ns010: . +@prefix rdf: . +@prefix xs: . + + a ldp:Container, + ns005:Object, + fedora:Container, + fedora:Resource, + ns007:FileSet, + ldp:RDFSource; + ns003:title "era-logo.png"; + fedora:created "2018-03-09T18:53:35.759Z"^^; + fedora:createdBy "bypassAdmin"; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:39.162Z"^^; + fedora:lastModifiedBy "bypassAdmin"; + fedora:writable true; + ns005:hasFile , + ; + ns005:memberOf ; + ns003:accessRights "http://terms.library.ualberta.ca/public"; + ns002:owner "admin@ualberta.ca"; + ns010:recordCreatedInJupiter "2018-03-09T18:53:35.736Z"; + ns010:sitemapLink ""; + ebucore:dateIngested "2018-03-09T18:53:35.736Z"; + ldp:contains , + ; + ns001:hasModel "IRFileSet" . diff --git a/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/856444b6-8dd5-4dfa-857d-435e354a2ead/original_file_metadata.n3 b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/856444b6-8dd5-4dfa-857d-435e354a2ead/original_file_metadata.n3 new file mode 100644 index 0000000..fee5984 --- /dev/null +++ b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/856444b6-8dd5-4dfa-857d-435e354a2ead/original_file_metadata.n3 @@ -0,0 +1,58 @@ +@prefix premis: . +@prefix rdfs: . +@prefix ns004: . +@prefix ns003: . +@prefix ns002: . +@prefix xsi: . +@prefix ns001: . +@prefix ns008: . +@prefix ns007: . +@prefix ns006: . +@prefix xmlns: . +@prefix ns005: . +@prefix xml: . +@prefix ns009: . +@prefix fedoraconfig: . +@prefix foaf: . +@prefix test: . +@prefix ns011: . +@prefix ns010: . +@prefix ns015: . +@prefix ns014: . +@prefix ns013: . +@prefix ns012: . +@prefix ns019: . +@prefix ns018: . +@prefix ns017: . +@prefix ns016: . +@prefix fedora: . +@prefix rdf: . +@prefix ebucore: . +@prefix ldp: . +@prefix xs: . +@prefix dc: . + + + a ns011:OriginalFile , fedora:Resource , fedora:Binary , ldp:NonRDFSource , ns005:File ; + fedora:created "2018-03-09T18:53:35.896Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasFixityService ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:38.335Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ns019:compressionScheme "Deflate/Inflate"^^ , "Deflate"^^ ; + ebucore:fileSize "5612"^^ ; + ebucore:filename "era-logo.png"^^ ; + ebucore:hasMimeType "image/png"^^ ; + ebucore:height "114"^^ ; + ebucore:width "208"^^ ; + ns014:describedby ; + premis:hasCreatingApplicationVersion + "1.2.0"^^ ; + premis:hasFormatName "Portable Network Graphics"^^ ; + premis:hasMessageDigest ; + premis:hasSize "5612"^^ ; + ns016:hashValue "d409b41db16cfaf9f315ac20532eac07"^^ ; + ns015:exifVersion "10.00"^^ ; + ns015:orientation "normal*"^^ . diff --git a/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/file_order.xml b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/file_order.xml new file mode 100644 index 0000000..25609d4 --- /dev/null +++ b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/files_metadata/file_order.xml @@ -0,0 +1,5 @@ + + 01bb1b09-974d-478b-8826-2c606a447606 + 837977d6-de61-49ea-a912-a65af5c9005e + 856444b6-8dd5-4dfa-857d-435e354a2ead + diff --git a/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/object_metadata.n3 b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/object_metadata.n3 new file mode 100644 index 0000000..24b0b41 --- /dev/null +++ b/spec/fixtures/aip_download/6841cece-41f1-4edf-ab9a-59459a127c77/data/objects/metadata/object_metadata.n3 @@ -0,0 +1,69 @@ +@prefix dc: . +@prefix ebucore: . +@prefix fedora: . +@prefix ldp: . +@prefix ns001: . +@prefix ns002: . +@prefix ns003: . +@prefix ns005: . +@prefix ns010: . +@prefix ns012: . +@prefix ns013: . +@prefix ns014: . +@prefix rdf: . +@prefix xs: . + + a ns002:Thesis, + ldp:Container, + ns005:Object, + fedora:Container, + fedora:Resource, + ldp:RDFSource; + ns003:title "An über-thesis about the effects of Samuel Smith’s Imperial IPA on dogs"; + fedora:created "2018-03-09T18:53:29.983Z"^^; + fedora:createdBy "bypassAdmin"; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:38.862Z"^^; + fedora:lastModifiedBy "bypassAdmin"; + fedora:writable true; + ns013:institution "http://id.loc.gov/authorities/names/n79058482"; + ns005:hasMember , + , + ; + ns005:memberOf , + ; + ns012:doi "doi:bogus-2018-03-09T18:53:23.145Z"; + dc:rights "Share my stuff with everybody"; + dc:subject "Dog", + "Mondo"; + ns003:abstract "In corrupti laboriosam delectus quisquam dolores possimus eveniet rerum dolores soluta vero et minima illo velit quam tenetur harum ut"; + ns003:accessRights "http://terms.library.ualberta.ca/public"; + ns003:alternative "A full, holistic, dog-tastic approach"; + ns003:isVersionOf "The CDROM titled 'Dogs!'", + "The original laserdisc series from Orange-on-a-Blue-Background studios"; + ns003:language "http://id.loc.gov/vocabulary/iso639-2/eng"; + ns002:degree "Master's of Marketing"; + ns002:owner "admin@ualberta.ca"; + ns010:commiteeMember "Howard I. No (Department of Everything)", + "I. Ron Stomach (Marketing)"; + ns010:department "Deparment of Marketing", + "Department of Everything"; + ns010:departmentList "[\"Deparment of Marketing\",\"Department of Everything\"]"; + ns010:dissertant "Missy Sokoke"; + ns010:graduationDate "Fall 1976"; + ns010:path "86cf34a4-74f5-426b-a868-0e3686efee9c/f2667e8a-cfaa-4002-9246-35105f6325d4", + "86cf34a4-74f5-426b-a868-0e3686efee9c/944b07fe-f0c5-497e-87de-24735fd4810e"; + ns010:recordCreatedInJupiter "2018-03-09T18:53:29.839Z"; + ns010:sortYear "1976"; + ns010:specialization "Marketing"; + ns010:supervisor "Pepe C. Cola (Marketing)", + "I. Ron Stomach (Department of Everything)"; + ns010:supervisorList "[\"Pepe C. Cola (Marketing)\",\"I. Ron Stomach (Department of Everything)\"]"; + ns010:thesisLevel "Master's"; + ebucore:dateIngested "2018-03-09T18:53:29.839Z"; + ns014:first ; + ns014:last ; + ldp:contains , + , + ; + ns001:hasModel "IRThesis" . diff --git a/spec/fixtures/aip_download/9p2909328/data/logs/aipcreation.log b/spec/fixtures/aip_download/9p2909328/data/logs/aipcreation.log deleted file mode 100644 index ee56b16..0000000 --- a/spec/fixtures/aip_download/9p2909328/data/logs/aipcreation.log +++ /dev/null @@ -1,25 +0,0 @@ -# Logfile created on 2017-05-25 14:44:12 +0000 by logger.rb/56438 -I, [2017-05-25T14:44:12.125455 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/objects/metadata/object_metadata.n3 -- fetching from http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328 ... -I, [2017-05-25T14:44:12.133126 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/objects/metadata/object_metadata.n3 -- saved -I, [2017-05-25T14:44:12.133331 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/logs/content_fixity_report.n3 -- fetching from http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/content/fcr:fixity ... -I, [2017-05-25T14:44:12.135843 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/logs/content_fixity_report.n3 -- saved -I, [2017-05-25T14:44:12.136048 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/objects/metadata/content_fcr_metadata.n3 -- fetching from http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/content/fcr:metadata ... -I, [2017-05-25T14:44:12.138613 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/objects/metadata/content_fcr_metadata.n3 -- saved -I, [2017-05-25T14:44:12.138805 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/objects/metadata/content_versions.n3 -- fetching from http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/content/fcr:versions ... -I, [2017-05-25T14:44:12.141411 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/objects/metadata/content_versions.n3 -- saved -I, [2017-05-25T14:44:12.141606 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/thumbnails/thumbnail -- fetching from http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/thumbnail ... -I, [2017-05-25T14:44:12.143990 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/thumbnails/thumbnail -- saved -I, [2017-05-25T14:44:12.144182 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/logs/content_characterization.n3 -- fetching from http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/characterization ... -I, [2017-05-25T14:44:12.146657 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/logs/content_characterization.n3 -- saved -I, [2017-05-25T14:44:12.146851 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/objects/metadata/fedora3foxml.xml -- fetching from http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/fedora3foxml ... -I, [2017-05-25T14:44:12.149237 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/objects/metadata/fedora3foxml.xml -- not_found -I, [2017-05-25T14:44:12.149422 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/objects/metadata/fedora3foxml.n3 -- fetching from http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/fedora3foxml/fcr:metadata ... -I, [2017-05-25T14:44:12.151889 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/objects/metadata/fedora3foxml.n3 -- not_found -I, [2017-05-25T14:44:12.230713 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/objects/whatever.pdf -- fetching from http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/content ... -I, [2017-05-25T14:44:12.236411 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/objects/whatever.pdf -- saved -I, [2017-05-25T14:44:12.239749 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/objects/metadata/permission_ffd40638-290a-41f7-bcb2-4e0e54fc3ffd.n3 -- fetching from http://www.example.com:8080/fcrepo/rest/test/ff/d4/06/38/ffd40638-290a-41f7-bcb2-4e0e54fc3ffd ... -I, [2017-05-25T14:44:12.242377 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/objects/metadata/permission_ffd40638-290a-41f7-bcb2-4e0e54fc3ffd.n3 -- saved -I, [2017-05-25T14:44:12.242590 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/objects/metadata/permission_ef4319c0-2f7a-44c0-b1b5-cd650aa4a075.n3 -- fetching from http://www.example.com:8080/fcrepo/rest/test/ef/43/19/c0/ef4319c0-2f7a-44c0-b1b5-cd650aa4a075 ... -I, [2017-05-25T14:44:12.245188 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/objects/metadata/permission_ef4319c0-2f7a-44c0-b1b5-cd650aa4a075.n3 -- saved -I, [2017-05-25T14:44:12.245404 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/objects/metadata/permission_e1910293-34b3-42bb-9179-f67f37eb145e.n3 -- fetching from http://www.example.com:8080/fcrepo/rest/test/e1/91/02/93/e1910293-34b3-42bb-9179-f67f37eb145e ... -I, [2017-05-25T14:44:12.247959 #20526] INFO -- : 9p2909328: /gitwork/pushmi_pullyu/tmp/aip_spec/9p2909328/data/objects/metadata/permission_e1910293-34b3-42bb-9179-f67f37eb145e.n3 -- saved diff --git a/spec/fixtures/aip_download/9p2909328/data/logs/content_characterization.n3 b/spec/fixtures/aip_download/9p2909328/data/logs/content_characterization.n3 deleted file mode 100644 index a3e1e2a..0000000 --- a/spec/fixtures/aip_download/9p2909328/data/logs/content_characterization.n3 +++ /dev/null @@ -1,58 +0,0 @@ - - - - - - - - - - - - 1.4 - fmt/18 - - - - 7162 - LibreOffice 5.2/Writer - 2017:05:16 15:26:04-06:00 - /tmp/content-1.pdf20170516-18431-2uhrid.pdf - whatever.pdf - 94a2454204f52b39c4a6d4ff86e8d516 - 1494970582000 - - - true - true - - - - Writer - en-CA - 1 - no - no - no - - LiberationSerif - - no - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/spec/fixtures/aip_download/9p2909328/data/logs/content_fixity_report.n3 b/spec/fixtures/aip_download/9p2909328/data/logs/content_fixity_report.n3 deleted file mode 100644 index cd30472..0000000 --- a/spec/fixtures/aip_download/9p2909328/data/logs/content_fixity_report.n3 +++ /dev/null @@ -1,44 +0,0 @@ -@prefix premis: . -@prefix nt: . -@prefix rdfs: . -@prefix ns004: . -@prefix ns003: . -@prefix ns002: . -@prefix ns001: . -@prefix xsi: . -@prefix ns008: . -@prefix mode: . -@prefix ns007: . -@prefix ns006: . -@prefix ns005: . -@prefix xml: . -@prefix ns009: . -@prefix fedoraconfig: . -@prefix mix: . -@prefix foaf: . -@prefix image: . -@prefix sv: . -@prefix test: . -@prefix ns011: . -@prefix ns010: . -@prefix ns015: . -@prefix ns014: . -@prefix ns013: . -@prefix ns012: . -@prefix rdf: . -@prefix fedora: . -@prefix ldp: . -@prefix xs: . -@prefix dc: . - - - premis:hasFixity . - - a premis:Fixity ; - fedora:status "SUCCESS"^^ ; - premis:hasMessageDigest ; - premis:hasSize "7162"^^ ; - premis:hasContentLocation . - - a premis:ContentLocation ; - premis:hasContentLocationValue "info://org.modeshape.jcr.value.binary.FileSystemBinaryStore@688492e5/app/jetty/fcrepo4-data/fcrepo.binary.directory#5eb6d58841f4196cc682ef1af3054dddacb6d40c"^^ . diff --git a/spec/fixtures/aip_download/9p2909328/data/objects/metadata/content_fcr_metadata.n3 b/spec/fixtures/aip_download/9p2909328/data/objects/metadata/content_fcr_metadata.n3 deleted file mode 100644 index 25c50d2..0000000 --- a/spec/fixtures/aip_download/9p2909328/data/objects/metadata/content_fcr_metadata.n3 +++ /dev/null @@ -1,63 +0,0 @@ -@prefix premis: . -@prefix nt: . -@prefix rdfs: . -@prefix ns004: . -@prefix ns003: . -@prefix ns002: . -@prefix ns001: . -@prefix xsi: . -@prefix ns008: . -@prefix mode: . -@prefix ns007: . -@prefix ns006: . -@prefix ns005: . -@prefix xml: . -@prefix ns009: . -@prefix fedoraconfig: . -@prefix mix: . -@prefix foaf: . -@prefix image: . -@prefix sv: . -@prefix test: . -@prefix ns011: . -@prefix ns010: . -@prefix ns015: . -@prefix ns014: . -@prefix ns013: . -@prefix ns012: . -@prefix rdf: . -@prefix fedora: . -@prefix ldp: . -@prefix xs: . -@prefix dc: . - - - a ldp:RDFSource , , , , , fedora:NonRdfSourceDescription , fedora:Resource , , fedora:Resource , , , , ; - fedora:lastModifiedBy "bypassAdmin"^^ ; - fedora:uuid "42c0f21d-c8a3-48bc-9d63-9b743689f734"^^ ; - fedora:createdBy "bypassAdmin"^^ ; - fedora:primaryType "nt:file"^^ ; - fedora:created "2017-05-16T21:26:56.51Z"^^ ; - fedora:mixinTypes "fedora:NonRdfSourceDescription"^^ , "fedora:Resource"^^ , "mix:versionable"^^ ; - fedora:lastModified "2017-05-16T21:26:56.715Z"^^ ; - fedora:writable "true"^^ ; - ; - fedora:hasParent . - - a , , , , fedora:Binary , fedora:Resource , , , ; - fedora:lastModifiedBy "bypassAdmin"^^ ; - fedora:uuid "d2f3d5ef-aa81-46de-9e08-3b762ad269e2"^^ ; - fedora:mimeType "application/pdf"^^ ; - fedora:digest ; - premis:hasSize "7162"^^ ; - fedora:createdBy "bypassAdmin"^^ ; - fedora:primaryType "nt:resource"^^ ; - fedora:created "2017-05-16T21:26:56.51Z"^^ ; - fedora:mixinTypes "fedora:Binary"^^ ; - fedora:lastModified "2017-05-16T21:26:56.51Z"^^ ; - premis:hasOriginalName "whatever.pdf"^^ ; - . - - fedora:hasVersions . - - fedora:hasFixityService . diff --git a/spec/fixtures/aip_download/9p2909328/data/objects/metadata/content_versions.n3 b/spec/fixtures/aip_download/9p2909328/data/objects/metadata/content_versions.n3 deleted file mode 100644 index 088aea2..0000000 --- a/spec/fixtures/aip_download/9p2909328/data/objects/metadata/content_versions.n3 +++ /dev/null @@ -1,38 +0,0 @@ -@prefix premis: . -@prefix nt: . -@prefix rdfs: . -@prefix ns004: . -@prefix ns003: . -@prefix ns002: . -@prefix ns001: . -@prefix xsi: . -@prefix ns008: . -@prefix mode: . -@prefix ns007: . -@prefix ns006: . -@prefix ns005: . -@prefix xml: . -@prefix ns009: . -@prefix fedoraconfig: . -@prefix mix: . -@prefix foaf: . -@prefix image: . -@prefix sv: . -@prefix test: . -@prefix ns011: . -@prefix ns010: . -@prefix ns015: . -@prefix ns014: . -@prefix ns013: . -@prefix ns012: . -@prefix rdf: . -@prefix fedora: . -@prefix ldp: . -@prefix xs: . -@prefix dc: . - - - fedora:hasVersion . - - fedora:hasVersionLabel "version1"^^ ; - fedora:created "2017-05-16T21:26:57.041Z"^^ . diff --git a/spec/fixtures/aip_download/9p2909328/data/objects/metadata/object_metadata.n3 b/spec/fixtures/aip_download/9p2909328/data/objects/metadata/object_metadata.n3 deleted file mode 100644 index 6568fde..0000000 --- a/spec/fixtures/aip_download/9p2909328/data/objects/metadata/object_metadata.n3 +++ /dev/null @@ -1,76 +0,0 @@ -@prefix premis: . -@prefix nt: . -@prefix rdfs: . -@prefix ns004: . -@prefix ns003: . -@prefix ns002: . -@prefix ns001: . -@prefix xsi: . -@prefix ns008: . -@prefix mode: . -@prefix ns007: . -@prefix ns006: . -@prefix ns005: . -@prefix xml: . -@prefix ns009: . -@prefix fedoraconfig: . -@prefix mix: . -@prefix foaf: . -@prefix image: . -@prefix sv: . -@prefix test: . -@prefix ns011: . -@prefix ns010: . -@prefix ns015: . -@prefix ns014: . -@prefix ns013: . -@prefix ns012: . -@prefix rdf: . -@prefix fedora: . -@prefix ldp: . -@prefix xs: . -@prefix dc: . - - - a ldp:RDFSource , ldp:Container , , , , , fedora:Container , fedora:Resource , fedora:Resource , , , ; - fedora:lastModifiedBy "bypassAdmin"^^ ; - ns001:createdDate "2017-05-16T21:26:37.782051115Z"^^ ; - ns001:downloadFilename "whatever.pdf"^^ ; - ns002:hasCollectionId "br86b356q"^^ ; - ns006:doi "doi:10.5072/FK29G5PB8V"^^ ; - ns004:isVersionOf ""^^ ; - fedora:createdBy "bypassAdmin"^^ ; - ns002:year_created "2017"^^ ; - fedora:created "2017-05-16T21:26:56.326Z"^^ ; - fedora:lastModified "2017-05-16T21:28:55.135Z"^^ ; - ns004:subject "Sarcasm"^^ ; - ns004:modified "2017-05-16T21:26:37.782051115Z"^^ ; - ns015:relativePath ""^^ ; - ns004:license "http://creativecommons.org/licenses/by/4.0/"^^ ; - fedora:uuid "22d19a70-fa3c-4944-9418-4c59e3893b87"^^ ; - ns004:rights ""^^ ; - ns001:hasModel "GenericFile"^^ ; - ns010:isPartOf ; - ns004:creator "Chris Want"^^ ; - ns003:dpt "dittest@ualberta.ca"^^ ; - fedora:primaryType "nt:folder"^^ ; - fedora:mixinTypes "fedora:Container"^^ , "fedora:Resource"^^ ; - ns004:created "2017/01/01"^^ ; - "available"^^ ; - ns002:belongsToCommunity "6682x392q"^^ ; - ns004:description "Test PDF"^^ ; - ns004:language "English"^^ ; - ns004:source ""^^ ; - ns004:title "Whatever"^^ ; - ns004:type "Book Chapter"^^ ; - ns002:hasCollection "Technical Reports"^^ ; - ns004:relation ""^^ ; - fedora:writable "true"^^ ; - fedora:hasParent ; - ldp:contains , , . - - dc:format . - - fedora:exportsAs . - - rdfs:label "jcr/xml"^^ . diff --git a/spec/fixtures/aip_download/9p2909328/data/objects/metadata/permission_e1910293-34b3-42bb-9179-f67f37eb145e.n3 b/spec/fixtures/aip_download/9p2909328/data/objects/metadata/permission_e1910293-34b3-42bb-9179-f67f37eb145e.n3 deleted file mode 100644 index 5b21fde..0000000 --- a/spec/fixtures/aip_download/9p2909328/data/objects/metadata/permission_e1910293-34b3-42bb-9179-f67f37eb145e.n3 +++ /dev/null @@ -1,54 +0,0 @@ -@prefix premis: . -@prefix nt: . -@prefix rdfs: . -@prefix ns004: . -@prefix ns003: . -@prefix ns002: . -@prefix ns001: . -@prefix xsi: . -@prefix ns008: . -@prefix mode: . -@prefix ns007: . -@prefix ns006: . -@prefix ns005: . -@prefix xml: . -@prefix ns009: . -@prefix fedoraconfig: . -@prefix mix: . -@prefix foaf: . -@prefix image: . -@prefix sv: . -@prefix test: . -@prefix ns011: . -@prefix ns010: . -@prefix ns015: . -@prefix ns014: . -@prefix ns013: . -@prefix ns012: . -@prefix rdf: . -@prefix fedora: . -@prefix ldp: . -@prefix xs: . -@prefix dc: . - - - a ldp:RDFSource , ldp:Container , , , , , fedora:Container , fedora:Resource , fedora:Resource , , , ; - ns005:accessTo ; - fedora:lastModifiedBy "bypassAdmin"^^ ; - fedora:uuid "d0bfd66b-64ae-4c73-9b8d-eaef81fe1394"^^ ; - fedora:createdBy "bypassAdmin"^^ ; - fedora:primaryType "nt:folder"^^ ; - fedora:created "2017-05-16T21:28:47.72Z"^^ ; - fedora:mixinTypes "fedora:Container"^^ , "fedora:Resource"^^ ; - fedora:lastModified "2017-05-16T21:28:47.72Z"^^ ; - ns005:mode ns005:Read ; - ns001:hasModel "Hydra::AccessControls::Permission"^^ ; - ns005:agent ; - fedora:writable "true"^^ ; - fedora:hasParent . - - dc:format . - - fedora:exportsAs . - - rdfs:label "jcr/xml"^^ . diff --git a/spec/fixtures/aip_download/9p2909328/data/objects/metadata/permission_ef4319c0-2f7a-44c0-b1b5-cd650aa4a075.n3 b/spec/fixtures/aip_download/9p2909328/data/objects/metadata/permission_ef4319c0-2f7a-44c0-b1b5-cd650aa4a075.n3 deleted file mode 100644 index d734710..0000000 --- a/spec/fixtures/aip_download/9p2909328/data/objects/metadata/permission_ef4319c0-2f7a-44c0-b1b5-cd650aa4a075.n3 +++ /dev/null @@ -1,53 +0,0 @@ -@prefix premis: . -@prefix nt: . -@prefix rdfs: . -@prefix ns004: . -@prefix ns003: . -@prefix ns002: . -@prefix ns001: . -@prefix xsi: . -@prefix ns008: . -@prefix mode: . -@prefix ns007: . -@prefix ns006: . -@prefix ns005: . -@prefix xml: . -@prefix ns009: . -@prefix fedoraconfig: . -@prefix mix: . -@prefix foaf: . -@prefix image: . -@prefix sv: . -@prefix test: . -@prefix ns011: . -@prefix ns010: . -@prefix ns015: . -@prefix ns014: . -@prefix ns013: . -@prefix ns012: . -@prefix rdf: . -@prefix fedora: . -@prefix ldp: . -@prefix xs: . -@prefix dc: . - - - a ldp:RDFSource , ldp:Container , , , , , fedora:Container , fedora:Resource , fedora:Resource , , , ; - ns005:accessTo ; - fedora:lastModifiedBy "bypassAdmin"^^ ; - fedora:uuid "73139ad6-d9d3-4e09-bc6a-639577686454"^^ ; - fedora:createdBy "bypassAdmin"^^ ; - fedora:primaryType "nt:folder"^^ ; - fedora:created "2017-05-16T21:28:47.376Z"^^ ; - fedora:mixinTypes "fedora:Container"^^ , "fedora:Resource"^^ ; - fedora:lastModified "2017-05-16T21:28:47.376Z"^^ ; - ns005:mode ns005:Read ; - ns001:hasModel "Hydra::AccessControls::Permission"^^ ; - ns005:agent ; - fedora:writable "true"^^ ; - fedora:hasParent ; - fedora:exportsAs . - - dc:format . - - rdfs:label "jcr/xml"^^ . diff --git a/spec/fixtures/aip_download/9p2909328/data/objects/metadata/permission_ffd40638-290a-41f7-bcb2-4e0e54fc3ffd.n3 b/spec/fixtures/aip_download/9p2909328/data/objects/metadata/permission_ffd40638-290a-41f7-bcb2-4e0e54fc3ffd.n3 deleted file mode 100644 index 83f59bd..0000000 --- a/spec/fixtures/aip_download/9p2909328/data/objects/metadata/permission_ffd40638-290a-41f7-bcb2-4e0e54fc3ffd.n3 +++ /dev/null @@ -1,53 +0,0 @@ -@prefix premis: . -@prefix nt: . -@prefix rdfs: . -@prefix ns004: . -@prefix ns003: . -@prefix ns002: . -@prefix ns001: . -@prefix xsi: . -@prefix ns008: . -@prefix mode: . -@prefix ns007: . -@prefix ns006: . -@prefix ns005: . -@prefix xml: . -@prefix ns009: . -@prefix fedoraconfig: . -@prefix mix: . -@prefix foaf: . -@prefix image: . -@prefix sv: . -@prefix test: . -@prefix ns011: . -@prefix ns010: . -@prefix ns015: . -@prefix ns014: . -@prefix ns013: . -@prefix ns012: . -@prefix rdf: . -@prefix fedora: . -@prefix ldp: . -@prefix xs: . -@prefix dc: . - - - a ldp:RDFSource , ldp:Container , , , , , fedora:Container , fedora:Resource , fedora:Resource , , , ; - ns005:accessTo ; - fedora:lastModifiedBy "bypassAdmin"^^ ; - fedora:uuid "5500b30e-8181-49b7-8322-6d71545942cf"^^ ; - fedora:createdBy "bypassAdmin"^^ ; - fedora:primaryType "nt:folder"^^ ; - fedora:created "2017-05-16T21:26:58.414Z"^^ ; - fedora:mixinTypes "fedora:Container"^^ , "fedora:Resource"^^ ; - fedora:lastModified "2017-05-16T21:26:58.414Z"^^ ; - ns005:mode ns005:Write ; - ns001:hasModel "Hydra::AccessControls::Permission"^^ ; - ns005:agent ; - fedora:writable "true"^^ ; - fedora:hasParent ; - fedora:exportsAs . - - dc:format . - - rdfs:label "jcr/xml"^^ . diff --git a/spec/fixtures/aip_download/9p2909328/data/objects/whatever.pdf b/spec/fixtures/aip_download/9p2909328/data/objects/whatever.pdf deleted file mode 100644 index dc9953cef6243be2ea04cb3403f9b69f8804c768..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7162 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 diff --git a/spec/fixtures/aip_download/9p2909328/data/thumbnails/thumbnail b/spec/fixtures/aip_download/9p2909328/data/thumbnails/thumbnail deleted file mode 100644 index ce5c7e40749cda05e1b6bb9ac50afc981604f238..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3346 zcmeHJXH-4mBEHuNS{fdQlrZ79;KC}rrKp^DfLF#-`qM4BQ2iGb0j~`ROIj7cEev zUtQucU-;Ov=L?@*_V{{pM7u%(fFs3x!y~@of6gni17%x&MqG4M4$CJcIwL!rAH_;v z%7iFaEKhz)bX;Q8lIu_WPv*aV`j0jvDo3<805~bB8~AZCu^Fttt-#2@&=7n*i#J}& zIff(#ziM9x{i>xj0KlFD0NL|Zi>LyiYX<;Q55H=vhXJ4z0ML1pm&woiGLk4=0H6T@ zPyiE10|lT0G=VNK0;a$M*Z>FM0z7~(2m7iEERM){$5s5I1OR0*mYbqv*s>POv1jiY8! zpV4Hr99jo$j^?5R(J|<3bRoI|-GuHyUq+9jC(-XP7>oo)17nJD#sp#FF&i-@n1h&h zOfO~_Gl7}IVzJU#9jqnR0~?Obz!qYwu*b0%up`(>?0Xy$r-(DcIpTtG$+&!61+E2m z9yfw}j$6P}@oIQ;yazrKzX4y0Z^ZZDZ{jEM3j`WLgJ4PUCBzf95h@97gv*36!W$xy zs7y2?dJ*G@TZxs#6U3{;apDIOoup0TkU~hAq}`;Wq+Zek(i<|FtWLHe2a_|%yUESu zOXMfy_hJk&Ju$9Wq}Ud*8nI5X5wTYkJVlLSOIc6JrBqN(QEpOZsCcS6l|v1uZl=~y z&rt7C=V%O?AU5Ss9@{+caQIfkP z+ayOM=cQz&Y^0*3ilo}5Mx{PVv!orQ6QuV_cS%2%LCI*#c*$hT9Fn;#Gb78CwUFh> z7RjEJeJBUZY0G)bZInAAHz+qJuOROvpDJG^e@T8uK|;YsAzq(eShWLc18Vc?8tMV+JJq|?r!=HAxEi?{tr}yRWKC<$G|dLhJ6aem zwpN1HL9JWbu(q*wtagp|O&wUrL?=$?pw93L^a`^T$txOG+|woL+UjQMw(5@SN$9!h zGi$FyFAp@DC$xBc4%>(Vdm#m5wX7tn6O- zdX>(qs8xqn-8W_!yBqH`?lb;mVrs%SX)~ENRW%JWtu?*JX0komCG4waXfr#rEoNuU zKA4-BXPBQf|J_2@BEh1?VrsR<>ZsL?t0yd#EyFGAEd^FAt1zp>Rsw4!>u~D^>!&s< zHjy?>HqULfY~yW@+rF|hu;bfx*v)gyIh#1W_K3ZceUbf;1Kq*Tq1xezqq1X+W2@t= zld;oAr(S2Yv#ax7=X+dvE|1&HopmvF+2qpiN^v4zOUEKG%kF8N# zlf0(O19)&f_IW(^)bLF6{MifR<>^)9^~~GQJI{N-hv5_I)8g~a*Uq=p_mQ8bU#4H5 zKgB=9zuA92z&@ZXKoF=OxGC^PkW5fqPWCt7Q;Ql8^Y%zxDmAxvpf#(0Pkg_O=NlGbd+UOS=94r z%jmM`sTj+ceKFIq*0B|_GjW`_>bTeO&hd5e^9ddaM-zmJ0g3HNxTLV8Gs*PigyjAd zg_N9>;Z&W}!c;+;dD{N8S-va3DIH2*m)@Ph6kUpgnVOk9GRL#5vTCy4XZvTL%Aw^X z=L~Mp-mq)K^IXT=A2y;k@;3J6Ddla;8{cHRseUuGIbw6)7L_dpTPC+UZ9TS)uq|QR zFZl-fW%+Nn2W;;tkT2L;FtNjFM{A*2A;0k6PK%v&-=V&X`)+90%3W2vJ{Lt6T`x8$ zt|(qC;gwwf-tha%?}fXgcMp}ClpflH*^|8I?q2J?$I57Bxn&dk-1l{sv&xIg-|i3H zf30FwMco0yfy@JfO1H}HD%GkzRg2ZJ)uT0bHSM)>wYzHP4@MpwIb?IFtxmqKxbEZO zxWo7Bo$5Oq)Eg>}V2)%RdDiIPIPe4ehvp`krsAegN0W~Vj(H#JZ#HdiZjoy#ZG~Gi zTc?kQ9KZFW{g2&kx^4CC679t&z=_NgFMbO9>F!C_lYOVyr`k@dov!U*bQE<$of|r5 zyJEWp-9g>MXI#$o^;qcJJGP~6?yn6Wji1oF=Zeppr;Mh~ zPCHKDda?G!%jj diff --git a/spec/fixtures/config.yml b/spec/fixtures/config.yml index 52f57d9..f3a7ad0 100644 --- a/spec/fixtures/config.yml +++ b/spec/fixtures/config.yml @@ -1,5 +1,6 @@ # Dummy sample file for testing parsing of configuration file into PushmiPullyu +aip_version: 'lightaip-2.0' debug: true logdir: tmp/spec/log monitor: false @@ -13,9 +14,6 @@ rollbar: proxy_host: 'your_proxy_url' proxy_port: '80' -solr: - url: http://www.example.com:8983/solr/test - fedora: url: http://www.example.com:8080/fcrepo/rest base_path: '/test' diff --git a/spec/integration/acceptance_spec.rb b/spec/integration/acceptance_spec.rb index 34b2951..3e91b78 100644 --- a/spec/integration/acceptance_spec.rb +++ b/spec/integration/acceptance_spec.rb @@ -2,7 +2,7 @@ RSpec.describe 'Acceptance test', type: :feature do let(:workdir) { 'tmp/spec' } - let(:noid) { '9p2909328' } + let(:noid) { '6841cece-41f1-4edf-ab9a-59459a127c77' } let(:aip_folder) { "#{workdir}/#{noid}" } let(:aip_file) { "#{aip_folder}.tar" } let(:log_folder) { "#{workdir}/log" } @@ -18,6 +18,8 @@ FileUtils.mkdir_p(log_folder) allow(PushmiPullyu::Logging.logger).to receive(:info) + allow(PushmiPullyu::AIP::User) + .to receive(:find).with(2705).and_return(OpenStruct.new(email: 'admin@example.com')) end after do @@ -27,7 +29,7 @@ end # this is basically testing exactly what the `PushmiPullyu::CLI#run_preservation_cycle` method does - it 'successfully gets NOID off queue, fetches data from fedora/solr, creates AIP and uploads to Swift' do + it 'successfully gets NOID off queue, fetches data from fedora/database, creates AIP and uploads to Swift' do cli = PushmiPullyu::CLI.instance cli.parse(['-C', 'spec/fixtures/config.yml', '-W', workdir]) diff --git a/spec/pushmi_pullyu/aip/creator_spec.rb b/spec/pushmi_pullyu/aip/creator_spec.rb index e576b03..a065a50 100644 --- a/spec/pushmi_pullyu/aip/creator_spec.rb +++ b/spec/pushmi_pullyu/aip/creator_spec.rb @@ -1,14 +1,15 @@ require 'spec_helper' +require 'timecop' RSpec.describe PushmiPullyu::AIP::Creator do let(:workdir) { 'tmp/creator_spec' } - let(:noid) { '9p2909328' } + let(:noid) { '6841cece-41f1-4edf-ab9a-59459a127c77' } let(:aip_file) { "#{aip_folder}.tar" } let(:aip_folder) { "#{workdir}/#{noid}" } let(:creator) { PushmiPullyu::AIP::Creator.new(noid, aip_folder, aip_file) } before do - allow(PushmiPullyu).to receive(:options) { { workdir: workdir } } + allow(PushmiPullyu).to receive(:options) { { workdir: workdir, aip_version: 'lightaip-2.0' } } FileUtils.mkdir_p(workdir) FileUtils.cp_r("spec/fixtures/aip_download/#{noid}", workdir) end @@ -44,43 +45,79 @@ expect(File.exist?("#{aip_folder}/bagit.txt")).to eq(true) expect(File.exist?("#{aip_folder}/bag-info.txt")).to eq(true) - # The downloaded AIP should have 5 directories and 11 files including the log, - # bagging should add the above 6 files, so 22 total files/directories + # The downloaded AIP should have 16 directories and 15 files including the log + # (see the downloader_spec for more elaboration about this), + # bagging should add the above 6 files, so 37 total files/directories # (see also file count test in creator spec) - expect(Dir["#{aip_folder}/**/*"].length).to eq(22) + expect(Dir["#{aip_folder}/**/*"].length).to eq(37) end - it 'the created manifest is correct' do + it 'creates a correct manifest' do creator.run lines = File.readlines("#{aip_folder}/manifest-sha1.txt").map(&:strip).sort - expect(lines.length).to eq(11) + # 15 files in the bag + expect(lines.length).to eq(15) # We can't know the sha1 of the aipcreation.log in advance (timestamps are recorded) sha1 = Digest::SHA1.file("#{aip_folder}/data/logs/aipcreation.log").hexdigest expected_file_sums = - ['e22815d17cdf02a044c25ba120360b43e4af8d28 data/thumbnails/thumbnail', - '570b43680370ae15f458ce45192986c2f24970d9 data/objects/metadata/content_versions.n3', - 'c3769541388b1cd557185e43bb20ddf662e63546 data/logs/content_fixity_report.n3', + ['c4cf94314f09bbbb13e0b7d01023b77cb3c533d9 '\ + 'data/logs/files_logs/01bb1b09-974d-478b-8826-2c606a447606/content_fixity_report.n3', + '3231d2c4345426655bdae4b9060ca3d8e422004c '\ + 'data/logs/files_logs/837977d6-de61-49ea-a912-a65af5c9005e/content_fixity_report.n3', + 'c2e0cfbab6558fca5364978e9f5af098746b881f '\ + 'data/logs/files_logs/856444b6-8dd5-4dfa-857d-435e354a2ead/content_fixity_report.n3', "#{sha1} data/logs/aipcreation.log", - '7c01bc0cd2fe9741ab76f2a171f1383704b60816 data/logs/content_characterization.n3', + 'c989727f21d6b62f17836007a8d1c59bcedb9b7a '\ + 'data/objects/metadata/object_metadata.n3', + '027e59b14f9df9cb973729d36b4f12047deb0871 '\ + 'data/objects/metadata/files_metadata/file_order.xml', + '0b9d190afaab8577424789cecd74b824cd2ae81d '\ + 'data/objects/metadata/files_metadata/01bb1b09-974d-478b-8826-2c606a447606/file_set_metadata.n3', + '94866e6490673a524888dee6acf5b85c81458a03 '\ + 'data/objects/metadata/files_metadata/01bb1b09-974d-478b-8826-2c606a447606/original_file_metadata.n3', + '442a1f64a3bd05884020a9b70fbd17752ed13e12 '\ + 'data/objects/metadata/files_metadata/837977d6-de61-49ea-a912-a65af5c9005e/file_set_metadata.n3', + '254587e16e46846e5428ba989526bc1c08ecdb47 '\ + 'data/objects/metadata/files_metadata/837977d6-de61-49ea-a912-a65af5c9005e/original_file_metadata.n3', + '7083d7bca4650aec59920e5e8b90a85667ecc5d6 '\ + 'data/objects/metadata/files_metadata/856444b6-8dd5-4dfa-857d-435e354a2ead/file_set_metadata.n3', + '30604fd556c96aac01abddf1e8b4e0369fc90ba5 '\ + 'data/objects/metadata/files_metadata/856444b6-8dd5-4dfa-857d-435e354a2ead/original_file_metadata.n3', + '9ea739a91eff6ba99e0227e3a909436d1dfd7ca7 '\ + 'data/objects/files/01bb1b09-974d-478b-8826-2c606a447606/theses.jpg', + 'e559f7cea3fc307524bccdedb6d012a30b4e6c86 '\ + 'data/objects/files/837977d6-de61-49ea-a912-a65af5c9005e/image-sample.jpeg', + '49b1dc60dc20a270cf59ee04a564393bba2bf6c8 '\ + 'data/objects/files/856444b6-8dd5-4dfa-857d-435e354a2ead/era-logo.png'].sort - '5d88a0382091a3fb4fd974590b1819ec53d2f9ad '\ - 'data/objects/metadata/permission_e1910293-34b3-42bb-9179-f67f37eb145e.n3', - - 'fc41debcd250c808f7c90a7e7eac6eb53198e160 data/objects/metadata/object_metadata.n3', - - '422c4247a3460cfe10e082efe53d63a349a76439 '\ - 'data/objects/metadata/permission_ffd40638-290a-41f7-bcb2-4e0e54fc3ffd.n3', + expect(lines).to eq(expected_file_sums) + end - 'cd5825971cf2bc737b21c2e30b1d01d3ecebcfa7 '\ - 'data/objects/metadata/permission_ef4319c0-2f7a-44c0-b1b5-cd650aa4a075.n3', + it 'creates the correct bag metadata' do + now = Time.now + Timecop.freeze(now) - '50b065c7cf19ed3e282a2a98b70f6e9429cc56ea data/objects/metadata/content_fcr_metadata.n3', - '5eb6d58841f4196cc682ef1af3054dddacb6d40c data/objects/whatever.pdf'].sort + creator.run - expect(lines).to eq(expected_file_sums) + lines = File.readlines("#{aip_folder}/bag-info.txt").map(&:strip).sort + + expect(lines.length).to eq(4) + + lines.each do |line| + (key, value) = line.split(': ') + if key == 'AIP-Version' + expect(value).to eq('lightaip-2.0') + elsif key == 'Bagging-Date' + expect(value).to eq(now.strftime('%F')) + else + # Don't care about the values for these ones + expect(['Bag-Software-Agent', 'Payload-Oxum'].include?(key)).to eq(true) + end + end + Timecop.return end end end diff --git a/spec/pushmi_pullyu/aip/downloader_spec.rb b/spec/pushmi_pullyu/aip/downloader_spec.rb index d64f977..0fc6aba 100644 --- a/spec/pushmi_pullyu/aip/downloader_spec.rb +++ b/spec/pushmi_pullyu/aip/downloader_spec.rb @@ -8,9 +8,15 @@ base_path: '/test', user: 'fedoraAdmin', password: 'fedoraAdmin' }, - solr: { url: 'http://www.example.com:8983/solr/test' } } + # This next one isn't really used, see mock of PushmiPullyu::AIP::User.find below + database: { url: 'postgresql://jupiter:mysecretpassword@127.0.0.1/jupiter_test?pool=5' } } + end + let(:noid) { '6841cece-41f1-4edf-ab9a-59459a127c77' } + let(:file_set_uuids) do + ['01bb1b09-974d-478b-8826-2c606a447606', + '837977d6-de61-49ea-a912-a65af5c9005e', + '856444b6-8dd5-4dfa-857d-435e354a2ead'] end - let(:noid) { '9p2909328' } let(:aip_folder) { "#{workdir}/#{noid}" } let(:downloader) { PushmiPullyu::AIP::Downloader.new(noid, aip_folder) } @@ -19,6 +25,8 @@ allow(PushmiPullyu.logger).to receive(:debug) allow(PushmiPullyu).to receive(:options) { options } FileUtils.mkdir_p(workdir) + allow(PushmiPullyu::AIP::User) + .to receive(:find).with(2705).and_return(OpenStruct.new(email: 'admin@example.com')) end after do @@ -37,41 +45,55 @@ # Now it exists expect(File.exist?(aip_folder)).to eq(true) - # 5 directories exist? - ['tmp/downloader_spec/9p2909328/data', - 'tmp/downloader_spec/9p2909328/data/objects', - 'tmp/downloader_spec/9p2909328/data/objects/metadata', - 'tmp/downloader_spec/9p2909328/data/logs', - 'tmp/downloader_spec/9p2909328/data/thumbnails'].each do |dir| + # 16 folders exist + folders = + ["tmp/downloader_spec/#{noid}/data", + "tmp/downloader_spec/#{noid}/data/logs", + "tmp/downloader_spec/#{noid}/data/logs/files_logs", + "tmp/downloader_spec/#{noid}/data/logs/files_logs/#{file_set_uuids[0]}", + "tmp/downloader_spec/#{noid}/data/logs/files_logs/#{file_set_uuids[1]}", + "tmp/downloader_spec/#{noid}/data/logs/files_logs/#{file_set_uuids[2]}", + "tmp/downloader_spec/#{noid}/data/objects", + "tmp/downloader_spec/#{noid}/data/objects/metadata", + "tmp/downloader_spec/#{noid}/data/objects/metadata/files_metadata", + "tmp/downloader_spec/#{noid}/data/objects/metadata/files_metadata/#{file_set_uuids[0]}", + "tmp/downloader_spec/#{noid}/data/objects/metadata/files_metadata/#{file_set_uuids[1]}", + "tmp/downloader_spec/#{noid}/data/objects/metadata/files_metadata/#{file_set_uuids[2]}", + "tmp/downloader_spec/#{noid}/data/objects/files", + "tmp/downloader_spec/#{noid}/data/objects/files/#{file_set_uuids[0]}", + "tmp/downloader_spec/#{noid}/data/objects/files/#{file_set_uuids[1]}", + "tmp/downloader_spec/#{noid}/data/objects/files/#{file_set_uuids[2]}"] + + folders.each do |dir| expect(File.exist?(dir)).to eq(true) end - # 11 files exist? - ['tmp/downloader_spec/9p2909328/data/objects/whatever.pdf', - 'tmp/downloader_spec/9p2909328/data/objects/metadata/content_versions.n3', - 'tmp/downloader_spec/9p2909328/data/logs/aipcreation.log', - 'tmp/downloader_spec/9p2909328/data/logs/content_fixity_report.n3', - 'tmp/downloader_spec/9p2909328/data/logs/content_characterization.n3', - 'tmp/downloader_spec/9p2909328/data/objects/metadata/object_metadata.n3', - - 'tmp/downloader_spec/9p2909328/data/objects/metadata/'\ - 'permission_e1910293-34b3-42bb-9179-f67f37eb145e.n3', - - 'tmp/downloader_spec/9p2909328/data/objects/metadata/'\ - 'permission_ffd40638-290a-41f7-bcb2-4e0e54fc3ffd.n3', - - 'tmp/downloader_spec/9p2909328/data/objects/metadata/'\ - 'permission_ef4319c0-2f7a-44c0-b1b5-cd650aa4a075.n3', - - 'tmp/downloader_spec/9p2909328/data/objects/metadata/'\ - 'content_fcr_metadata.n3', - - 'tmp/downloader_spec/9p2909328/data/thumbnails/thumbnail'].each do |file| + # 15 files exist + files = + ["tmp/downloader_spec/#{noid}/data/logs/aipcreation.log", + "tmp/downloader_spec/#{noid}/data/logs/files_logs/#{file_set_uuids[0]}/content_fixity_report.n3", + "tmp/downloader_spec/#{noid}/data/logs/files_logs/#{file_set_uuids[1]}/content_fixity_report.n3", + "tmp/downloader_spec/#{noid}/data/logs/files_logs/#{file_set_uuids[2]}/content_fixity_report.n3", + "tmp/downloader_spec/#{noid}/data/objects/metadata/object_metadata.n3", + "tmp/downloader_spec/#{noid}/data/objects/metadata/files_metadata/file_order.xml", + "tmp/downloader_spec/#{noid}/data/objects/metadata/files_metadata/#{file_set_uuids[0]}/file_set_metadata.n3", + "tmp/downloader_spec/#{noid}/data/objects/metadata/files_metadata/#{file_set_uuids[0]}/"\ + 'original_file_metadata.n3', + "tmp/downloader_spec/#{noid}/data/objects/metadata/files_metadata/#{file_set_uuids[1]}/file_set_metadata.n3", + "tmp/downloader_spec/#{noid}/data/objects/metadata/files_metadata/#{file_set_uuids[1]}/"\ + 'original_file_metadata.n3', + "tmp/downloader_spec/#{noid}/data/objects/metadata/files_metadata/#{file_set_uuids[2]}/file_set_metadata.n3", + "tmp/downloader_spec/#{noid}/data/objects/metadata/files_metadata/#{file_set_uuids[2]}/"\ + 'original_file_metadata.n3', + "tmp/downloader_spec/#{noid}/data/objects/files/#{file_set_uuids[0]}/theses.jpg", + "tmp/downloader_spec/#{noid}/data/objects/files/#{file_set_uuids[1]}/image-sample.jpeg", + "tmp/downloader_spec/#{noid}/data/objects/files/#{file_set_uuids[2]}/era-logo.png"] + files.each do |file| expect(File.exist?(file)).to eq(true) end - # 16 files and directories total were created - expect(Dir['tmp/downloader_spec/9p2909328/**/*'].length).to eq(16) + # 31 files and directories total were created + expect(Dir["tmp/downloader_spec/#{noid}/**/*"].sort).to eq((folders + files).sort) end end end diff --git a/spec/pushmi_pullyu/aip/fedora_fetcher_spec.rb b/spec/pushmi_pullyu/aip/fedora_fetcher_spec.rb index f7422a9..16d9977 100644 --- a/spec/pushmi_pullyu/aip/fedora_fetcher_spec.rb +++ b/spec/pushmi_pullyu/aip/fedora_fetcher_spec.rb @@ -13,7 +13,9 @@ fedora: { url: 'http://www.example.com:8080/fcrepo/rest', base_path: '/test', user: 'gollum', - password: 'iH8zH0bb1tzeZ' } + password: 'iH8zH0bb1tzeZ' }, + # This next one isn't really used, see mock of PushmiPullyu::AIP::User.find below + database: { url: 'postgresql://jupiter:mysecretpassword@127.0.0.1/jupiter_test?pool=5' } ) end @@ -37,6 +39,51 @@ expect(File.exist?(download_path)).to eq(true) end + it "doesn't change owners by default" do + VCR.use_cassette('fedora_fetcher_owner') do + expect(fedora_fetcher.download_object(download_path)).to eq(true) + end + graph = RDF::Graph.load(download_path) + owner = nil + graph.query(predicate: RDF::URI('http://purl.org/ontology/bibo/owner')) do |statement| + owner = statement.object + end + expect(owner.to_i).to eq(2705) + end + + it 'changes owners as an option' do + allow(PushmiPullyu::AIP::User) + .to receive(:find).with(2705).and_return(OpenStruct.new(email: 'admin@example.com')) + + VCR.use_cassette('fedora_fetcher_owner') do + expect(fedora_fetcher.download_object(download_path, should_add_user_email: true)).to eq(true) + end + graph = RDF::Graph.load(download_path) + owner = nil + graph.query(predicate: RDF::URI('http://purl.org/ontology/bibo/owner')) do |statement| + owner = statement.object + end + expect(owner.to_s).to eq('admin@example.com') + end + + it "raises an error if the owner can't be fetched" do + allow(PushmiPullyu::AIP::User) + .to receive(:find).with(2705).and_raise(ActiveRecord::RecordNotFound) + + VCR.use_cassette('fedora_fetcher_owner') do + expect { fedora_fetcher.download_object(download_path, should_add_user_email: true) } + .to raise_error(ActiveRecord::RecordNotFound) + end + end + + it 'raises an error if no owner is found' do + # cassette fedora_fetcher_200 has no owner predicate + VCR.use_cassette('fedora_fetcher_200') do + expect { fedora_fetcher.download_object(download_path, should_add_user_email: true) } + .to raise_error(PushmiPullyu::AIP::OwnerEmailEditor::NoOwnerPredicate) + end + end + it 'raises an error on an object with a bad noid' do VCR.use_cassette('fedora_fetcher_404') do expect { fedora_fetcher_404.download_object(download_path) } diff --git a/spec/pushmi_pullyu/aip/owner_email_editor_spec.rb b/spec/pushmi_pullyu/aip/owner_email_editor_spec.rb new file mode 100644 index 0000000..269ce0c --- /dev/null +++ b/spec/pushmi_pullyu/aip/owner_email_editor_spec.rb @@ -0,0 +1,66 @@ +require 'spec_helper' + +RSpec.describe PushmiPullyu::AIP::OwnerEmailEditor do + let(:noid) { '6841cece-41f1-4edf-ab9a-59459a127c77' } + let(:fedora_fetcher) { PushmiPullyu::AIP::FedoraFetcher.new(noid) } + let(:workdir) { 'tmp/owner_email_editor_spec' } + let(:download_path) { "#{workdir}/newobject.n3" } + let(:output_path) { "#{workdir}/modifiedobject.n3" } + + before do + FileUtils.mkdir_p(workdir) + allow(PushmiPullyu).to receive(:options).and_return( + fedora: { url: 'http://www.example.com:8080/fcrepo/rest', + base_path: '/test', + user: 'gollum', + password: 'iH8zH0bb1tzeZ' }, + # This next one isn't really used, see mock of PushmiPullyu::AIP::User.find below + database: { url: 'postgresql://jupiter:mysecretpassword@127.0.0.1/jupiter_test?pool=5' } + ) + allow(PushmiPullyu::AIP::User) + .to receive(:find).with(2705).and_return(OpenStruct.new(email: 'admin@example.com')) + end + + after do + FileUtils.rm_rf(workdir) + end + + it 'edits the owner triple, but keeps everything else unchanged' do + VCR.use_cassette('aip_downloader_run') do + expect(fedora_fetcher.download_object(download_path)).to eq(true) + end + + input_rdf = File.read(download_path) + output_rdf = PushmiPullyu::AIP::OwnerEmailEditor.new(input_rdf).run + + # It bothers me that I have to load a graph from file/URI, but can't from a string + File.open(output_path, 'w') { |file| file.write(output_rdf) } + input_graph = RDF::Graph.load(download_path) + output_graph = RDF::Graph.load(output_path) + + expect(input_graph.count).to eq(54) + expect(output_graph.count).to eq(54) + + statements_matched = 0 + input_graph.each_statement do |input_statement| + if input_statement.predicate == RDF::URI('http://purl.org/ontology/bibo/owner') + # If it's the owner predicate, it has been changed ... + output_graph.query(subject: input_statement.subject, + predicate: input_statement.predicate) do |output_statement| + statements_matched += 1 + expect(input_statement.object.to_i).to eq(2705) + expect(output_statement.object.to_s).to eq('admin@example.com') + end + else + # ... otherwise an identical statement is in the output + output_graph.query(subject: input_statement.subject, + predicate: input_statement.predicate, + object: input_statement.object) do |_output_statement| + statements_matched += 1 + end + end + end + + expect(statements_matched).to eq(54) + end +end diff --git a/spec/pushmi_pullyu/aip/solr_fetcher_spec.rb b/spec/pushmi_pullyu/aip/solr_fetcher_spec.rb deleted file mode 100644 index 6dbe60f..0000000 --- a/spec/pushmi_pullyu/aip/solr_fetcher_spec.rb +++ /dev/null @@ -1,31 +0,0 @@ -require 'spec_helper' - -RSpec.describe PushmiPullyu::AIP::SolrFetcher do - let(:noid) { '9p2909328' } - let(:solr_fetcher) { PushmiPullyu::AIP::SolrFetcher.new(noid) } - let(:solr_fetcher_404) { PushmiPullyu::AIP::SolrFetcher.new('ohnoimbad') } - - before do - allow(PushmiPullyu).to receive(:options).and_return( - solr: { url: 'http://www.example.com:8983/solr/test' } - ) - end - - describe '#fetch_permission_object_ids' do - it 'gets a permission object with a correct noid' do - VCR.use_cassette('solr_fetcher_200') do - permission_objects = solr_fetcher.fetch_permission_object_ids - - expect(permission_objects).to be_an_instance_of(Array) - expect(permission_objects.count).to eq(3) - end - end - - it 'raises an error on a permission object with a bad noid' do - VCR.use_cassette('solr_fetcher_404') do - expect { solr_fetcher_404.fetch_permission_object_ids } - .to raise_error(PushmiPullyu::AIP::SolrFetcher::SolrFetchError) - end - end - end -end diff --git a/spec/support/http_cache/vcr/aip_download_and_swift_upload.yml b/spec/support/http_cache/vcr/aip_download_and_swift_upload.yml index 914900d..cece51c 100644 --- a/spec/support/http_cache/vcr/aip_download_and_swift_upload.yml +++ b/spec/support/http_cache/vcr/aip_download_and_swift_upload.yml @@ -2,7 +2,7 @@ http_interactions: - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328 + uri: http://www.example.com:8080/fcrepo/rest/test/68/41/ce/ce/6841cece-41f1-4edf-ab9a-59459a127c77 body: encoding: US-ASCII string: '' @@ -20,12 +20,12 @@ http_interactions: response: status: code: 200 - message: OK + message: '' headers: Etag: - - '"1539d6331ef8a9b918b8b748fdd4f9593111f5de"' + - W/"4238732dd789ae249c0201fa7e124dfa78e5fce2" Last-Modified: - - Tue, 16 May 2017 21:28:55 GMT + - Fri, 09 Mar 2018 18:53:38 GMT Link: - ;rel="type" - ;rel="type" @@ -33,7 +33,7 @@ http_interactions: Accept-Patch: - application/sparql-update Accept-Post: - - text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,multipart/form-data,application/sparql-update + - text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,application/ld+json,multipart/form-data,application/sparql-update Allow: - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS Preference-Applied: @@ -41,140 +41,204 @@ http_interactions: Vary: - Accept, Range, Accept-Encoding, Accept-Language - Prefer - Content-Length: - - '5694' Content-Type: - - text/rdf+n3 + - text/rdf+n3;charset=utf-8 + Content-Length: + - '7518' + Date: + - Fri, 16 Mar 2018 21:06:20 GMT body: encoding: UTF-8 - string: "@prefix premis: .\n@prefix nt: - .\n@prefix rdfs: - .\n@prefix ns004: .\n@prefix ns003: - .\n@prefix ns002: .\n@prefix - ns001: .\n@prefix xsi: - .\n@prefix ns008: .\n@prefix mode: - .\n@prefix ns007: .\n@prefix ns006: - .\n@prefix ns005: - .\n@prefix xml: .\n@prefix ns009: - .\n@prefix fedoraconfig: .\n@prefix - mix: .\n@prefix foaf: - .\n@prefix image: .\n@prefix sv: - .\n@prefix test: .\n@prefix ns011: - .\n@prefix ns010: .\n@prefix - ns015: .\n@prefix ns014: - .\n@prefix ns013: .\n@prefix ns012: - .\n@prefix rdf: .\n@prefix fedora: - .\n@prefix ldp: - .\n@prefix xs: .\n@prefix dc: - .\n\n\n - a ldp:RDFSource , ldp:Container , , - , - , , fedora:Container , fedora:Resource - , fedora:Resource , , - , ;\n\tfedora:lastModifiedBy - \"bypassAdmin\"^^ ;\n\tns001:createdDate - \"2017-05-16T21:26:37.782051115Z\"^^ - ;\n\tns001:downloadFilename \"whatever.pdf\"^^ - ;\n\tns002:hasCollectionId \"br86b356q\"^^ - ;\n\tns006:doi \"doi:10.5072/FK29G5PB8V\"^^ - ;\n\tns004:isVersionOf \"\"^^ ;\n\tfedora:createdBy - \"bypassAdmin\"^^ ;\n\tns002:year_created - \"2017\"^^ ;\n\tfedora:created \"2017-05-16T21:26:56.326Z\"^^ - ;\n\tfedora:lastModified \"2017-05-16T21:28:55.135Z\"^^ - ;\n\tns004:subject \"Sarcasm\"^^ - ;\n\tns004:modified \"2017-05-16T21:26:37.782051115Z\"^^ - ;\n\tns015:relativePath \"\"^^ ;\n\tns004:license - \"http://creativecommons.org/licenses/by/4.0/\"^^ - ;\n\tfedora:uuid \"22d19a70-fa3c-4944-9418-4c59e3893b87\"^^ - ;\n\tns004:rights \"\"^^ ;\n\tns001:hasModel - \"GenericFile\"^^ ;\n\tns010:isPartOf - ;\n\tns004:creator - \"Chris Want\"^^ ;\n\tns003:dpt \"dittest@ualberta.ca\"^^ - ;\n\tfedora:primaryType \"nt:folder\"^^ - ;\n\tfedora:mixinTypes \"fedora:Container\"^^ - , \"fedora:Resource\"^^ ;\n\tns004:created - \"2017/01/01\"^^ ;\n\t - \"available\"^^ ;\n\tns002:belongsToCommunity - \"6682x392q\"^^ ;\n\tns004:description - \"Test PDF\"^^ ;\n\tns004:language - \"English\"^^ ;\n\tns004:source \"\"^^ - ;\n\tns004:title \"Whatever\"^^ ;\n\tns004:type - \"Book Chapter\"^^ ;\n\tns002:hasCollection - \"Technical Reports\"^^ ;\n\tns004:relation - \"\"^^ ;\n\tfedora:writable \"true\"^^ - ;\n\tfedora:hasParent ;\n\tldp:contains - - , - , - .\n\n - dc:format .\n\n - fedora:exportsAs - .\n\n rdfs:label \"jcr/xml\"^^ - .\n" - http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + a ldp:RDFSource , fedora:Resource , fedora:Container , ldp:Container , ns005:Object , ns002:Thesis ; + fedora:created "2018-03-09T18:53:29.983Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:38.862Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ns013:institution "http://id.loc.gov/authorities/names/n79058482"^^ ; + ns005:hasMember , , ; + ns005:memberOf , ; + ns012:doi "doi:bogus-2018-03-09T18:53:23.145Z"^^ ; + dc:rights "Share my stuff with everybody"^^ ; + dc:subject "Dog"^^ , "Mondo"^^ ; + ns003:abstract "In corrupti laboriosam delectus quisquam dolores possimus eveniet rerum dolores soluta vero et minima illo velit quam tenetur harum ut"^^ ; + ns003:accessRights "http://terms.library.ualberta.ca/public"^^ ; + ns003:alternative "A full, holistic, dog-tastic approach"^^ ; + ns003:isVersionOf "The original laserdisc series from Orange-on-a-Blue-Background studios"^^ , "The CDROM titled 'Dogs!'"^^ ; + ns003:language "http://id.loc.gov/vocabulary/iso639-2/eng"^^ ; + ns003:title "An über-thesis about the effects of Samuel Smith’s Imperial IPA on dogs"^^ ; + ns002:degree "Master's of Marketing"^^ ; + ns002:owner 2705 ; + ns010:commiteeMember "I. Ron Stomach (Marketing)"^^ , "Howard I. No (Department of Everything)"^^ ; + ns010:department "Deparment of Marketing"^^ , "Department of Everything"^^ ; + ns010:departmentList "[\"Deparment of Marketing\",\"Department of Everything\"]"^^ ; + ns010:dissertant "Missy Sokoke"^^ ; + ns010:graduationDate "Fall 1976"^^ ; + ns010:path "86cf34a4-74f5-426b-a868-0e3686efee9c/f2667e8a-cfaa-4002-9246-35105f6325d4"^^ , "86cf34a4-74f5-426b-a868-0e3686efee9c/944b07fe-f0c5-497e-87de-24735fd4810e"^^ ; + ns010:recordCreatedInJupiter "2018-03-09T18:53:29.839Z"^^ ; + ns010:sortYear "1976"^^ ; + ns010:specialization "Marketing"^^ ; + ns010:supervisor "I. Ron Stomach (Department of Everything)"^^ , "Pepe C. Cola (Marketing)"^^ ; + ns010:supervisorList "[\"Pepe C. Cola (Marketing)\",\"I. Ron Stomach (Department of Everything)\"]"^^ ; + ns010:thesisLevel "Master's"^^ ; + ebucore:dateIngested "2018-03-09T18:53:29.839Z"^^ ; + ns014:first ; + ns014:last ; + ldp:contains , , ; + ns001:hasModel "IRThesis"^^ . + http_version: + recorded_at: Fri, 16 Mar 2018 21:06:20 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/content/fcr:fixity + uri: http://www.example.com:8080/fcrepo/rest/test/68/41/ce/ce/6841cece-41f1-4edf-ab9a-59459a127c77/list_source body: encoding: US-ASCII string: '' headers: + Accept: + - text/n3, text/rdf+n3;q=0.2, application/rdf+n3;q=0.2, application/n-triples, + text/plain;q=0.2, */*;q=0.1 Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 - Accept: - - text/rdf+n3 User-Agent: - Ruby - Host: - - www.example.com:8080 - Authorization: - - Basic ZmVkb3JhQWRtaW46ZmVkb3JhQWRtaW4= response: status: code: 200 - message: OK + message: '' headers: - Content-Length: - - '2868' + Etag: + - W/"e3e778a3e6ad71b79c130bb60c29f904f58a90ea" + Last-Modified: + - Fri, 09 Mar 2018 18:53:38 GMT + Link: + - ;rel="type" + - ;rel="type" + - ;rel="type" + Accept-Patch: + - application/sparql-update + Accept-Post: + - text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,application/ld+json,multipart/form-data,application/sparql-update + Allow: + - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS + Preference-Applied: + - return=representation + Vary: + - Accept, Range, Accept-Encoding, Accept-Language + - Prefer Content-Type: - - text/rdf+n3 + - text/n3;charset=utf-8 + Content-Length: + - '5176' + Date: + - Fri, 16 Mar 2018 21:06:20 GMT body: encoding: UTF-8 - string: "@prefix premis: .\n@prefix nt: - .\n@prefix rdfs: - .\n@prefix ns004: .\n@prefix ns003: - .\n@prefix ns002: .\n@prefix - ns001: .\n@prefix xsi: - .\n@prefix ns008: .\n@prefix mode: - .\n@prefix ns007: .\n@prefix ns006: - .\n@prefix ns005: - .\n@prefix xml: .\n@prefix ns009: - .\n@prefix fedoraconfig: .\n@prefix - mix: .\n@prefix foaf: - .\n@prefix image: .\n@prefix sv: - .\n@prefix test: .\n@prefix ns011: - .\n@prefix ns010: .\n@prefix - ns015: .\n@prefix ns014: - .\n@prefix ns013: .\n@prefix ns012: - .\n@prefix rdf: .\n@prefix fedora: - .\n@prefix ldp: - .\n@prefix xs: .\n@prefix dc: - .\n\n\n - premis:hasFixity - .\n\n - a premis:Fixity ;\n\tfedora:status \"SUCCESS\"^^ - ;\n\tpremis:hasMessageDigest - ;\n\tpremis:hasSize \"7162\"^^ ;\n\tpremis:hasContentLocation - - .\n\n - a premis:ContentLocation ;\n\tpremis:hasContentLocationValue \"info://org.modeshape.jcr.value.binary.FileSystemBinaryStore@688492e5/app/jetty/fcrepo4-data/fcrepo.binary.directory#5eb6d58841f4196cc682ef1af3054dddacb6d40c\"^^ - .\n" - http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + ns014:next ; + ns014:prev ; + ns008:proxyFor ; + ns008:proxyIn . + + + a fedora:Container , ldp:Container , ldp:RDFSource , fedora:Resource ; + fedora:created "2018-03-09T18:53:38.77Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:38.77Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ns003:hasPart , , ; + ns014:first ; + ns014:last ; + ns001:hasModel "ActiveFedora::Aggregation::ListSource"^^ . + + + ns014:next ; + ns008:proxyFor ; + ns008:proxyIn . + + + ns014:prev ; + ns008:proxyFor ; + ns008:proxyIn . + http_version: + recorded_at: Fri, 16 Mar 2018 21:06:20 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/content/fcr:metadata + uri: http://www.example.com:8080/fcrepo/rest/test/01/bb/1b/09/01bb1b09-974d-478b-8826-2c606a447606 body: encoding: US-ASCII string: '' @@ -192,19 +256,20 @@ http_interactions: response: status: code: 200 - message: OK + message: '' headers: Etag: - - '"a3b31a7423417546b53e422cbe1a93f204d4043c"' + - W/"0952e907cee31167252f072495f7744d1a966739" Last-Modified: - - Tue, 16 May 2017 21:26:56 GMT + - Fri, 09 Mar 2018 18:53:30 GMT Link: - - ; - rel="describes" - - ;rel="type" + - ;rel="type" + - ;rel="type" - ;rel="type" Accept-Patch: - application/sparql-update + Accept-Post: + - text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,application/ld+json,multipart/form-data,application/sparql-update Allow: - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS Preference-Applied: @@ -212,74 +277,72 @@ http_interactions: Vary: - Accept, Range, Accept-Encoding, Accept-Language - Prefer - Content-Length: - - '5192' Content-Type: - - text/rdf+n3 + - text/rdf+n3;charset=utf-8 + Content-Length: + - '4131' + Date: + - Fri, 16 Mar 2018 21:06:20 GMT body: encoding: UTF-8 - string: "@prefix premis: .\n@prefix nt: - .\n@prefix rdfs: - .\n@prefix ns004: .\n@prefix ns003: - .\n@prefix ns002: .\n@prefix - ns001: .\n@prefix xsi: - .\n@prefix ns008: .\n@prefix mode: - .\n@prefix ns007: .\n@prefix ns006: - .\n@prefix ns005: - .\n@prefix xml: .\n@prefix ns009: - .\n@prefix fedoraconfig: .\n@prefix - mix: .\n@prefix foaf: - .\n@prefix image: .\n@prefix sv: - .\n@prefix test: .\n@prefix ns011: - .\n@prefix ns010: .\n@prefix - ns015: .\n@prefix ns014: - .\n@prefix ns013: .\n@prefix ns012: - .\n@prefix rdf: .\n@prefix fedora: - .\n@prefix ldp: - .\n@prefix xs: .\n@prefix dc: - .\n\n\n - a ldp:RDFSource , , - , , - , fedora:NonRdfSourceDescription , fedora:Resource , - , fedora:Resource , , - , , - ;\n\tfedora:lastModifiedBy \"bypassAdmin\"^^ - ;\n\tfedora:uuid \"42c0f21d-c8a3-48bc-9d63-9b743689f734\"^^ - ;\n\tfedora:createdBy \"bypassAdmin\"^^ - ;\n\tfedora:primaryType \"nt:file\"^^ - ;\n\tfedora:created \"2017-05-16T21:26:56.51Z\"^^ - ;\n\tfedora:mixinTypes \"fedora:NonRdfSourceDescription\"^^ - , \"fedora:Resource\"^^ , \"mix:versionable\"^^ - ;\n\tfedora:lastModified \"2017-05-16T21:26:56.715Z\"^^ - ;\n\tfedora:writable \"true\"^^ - ;\n\t - ;\n\tfedora:hasParent - .\n\n - a , - , , - , fedora:Binary , fedora:Resource , - , , - ;\n\tfedora:lastModifiedBy \"bypassAdmin\"^^ - ;\n\tfedora:uuid \"d2f3d5ef-aa81-46de-9e08-3b762ad269e2\"^^ - ;\n\tfedora:mimeType \"application/pdf\"^^ - ;\n\tfedora:digest ;\n\tpremis:hasSize - \"7162\"^^ ;\n\tfedora:createdBy \"bypassAdmin\"^^ - ;\n\tfedora:primaryType \"nt:resource\"^^ - ;\n\tfedora:created \"2017-05-16T21:26:56.51Z\"^^ - ;\n\tfedora:mixinTypes \"fedora:Binary\"^^ - ;\n\tfedora:lastModified \"2017-05-16T21:26:56.51Z\"^^ - ;\n\tpremis:hasOriginalName \"whatever.pdf\"^^ - ;\n\t - .\n\n - fedora:hasVersions - .\n\n - fedora:hasFixityService - .\n" - http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + a ldp:Container , fedora:Resource , ns007:FileSet , ldp:RDFSource , fedora:Container , ns005:Object ; + fedora:created "2018-03-09T18:53:30.313Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:30.663Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ns005:hasFile ; + ns005:memberOf ; + ns003:accessRights "http://terms.library.ualberta.ca/public"^^ ; + ns003:title "theses.jpg"^^ ; + ns002:owner 2705 ; + ns010:recordCreatedInJupiter "2018-03-09T18:53:30.296Z"^^ ; + ns010:sitemapLink ""^^ ; + ebucore:dateIngested "2018-03-09T18:53:30.296Z"^^ ; + ldp:contains , ; + ns001:hasModel "IRFileSet"^^ . + http_version: + recorded_at: Fri, 16 Mar 2018 21:06:20 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/content/fcr:versions + uri: http://www.example.com:8080/fcrepo/rest/test/01/bb/1b/09/01bb1b09-974d-478b-8826-2c606a447606/files/8b26afd3-0f72-4241-87d4-830f0bbdf58c/fcr:metadata body: encoding: US-ASCII string: '' @@ -297,44 +360,101 @@ http_interactions: response: status: code: 200 - message: OK + message: '' headers: - Content-Length: - - '2306' + Etag: + - W/"e1f7f639e96f5c864bd390c8c239c18833d96707" + Last-Modified: + - Fri, 09 Mar 2018 18:53:32 GMT + Link: + - ; + rel="describes" + - ;rel="type" + - ;rel="type" + Accept-Patch: + - application/sparql-update + Allow: + - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS + Preference-Applied: + - return=representation + Vary: + - Accept, Range, Accept-Encoding, Accept-Language + - Prefer Content-Type: - - text/rdf+n3 + - text/rdf+n3;charset=utf-8 + Content-Length: + - '4549' + Date: + - Fri, 16 Mar 2018 21:06:20 GMT body: encoding: UTF-8 - string: "@prefix premis: .\n@prefix nt: - .\n@prefix rdfs: - .\n@prefix ns004: .\n@prefix ns003: - .\n@prefix ns002: .\n@prefix - ns001: .\n@prefix xsi: - .\n@prefix ns008: .\n@prefix mode: - .\n@prefix ns007: .\n@prefix ns006: - .\n@prefix ns005: - .\n@prefix xml: .\n@prefix ns009: - .\n@prefix fedoraconfig: .\n@prefix - mix: .\n@prefix foaf: - .\n@prefix image: .\n@prefix sv: - .\n@prefix test: .\n@prefix ns011: - .\n@prefix ns010: .\n@prefix - ns015: .\n@prefix ns014: - .\n@prefix ns013: .\n@prefix ns012: - .\n@prefix rdf: .\n@prefix fedora: - .\n@prefix ldp: - .\n@prefix xs: .\n@prefix dc: - .\n\n\n - fedora:hasVersion - .\n\n - fedora:hasVersionLabel \"version1\"^^ - ;\n\tfedora:created \"2017-05-16T21:26:57.041Z\"^^ - .\n" - http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + a ldp:NonRDFSource , fedora:Binary , ns005:File , ns011:OriginalFile , fedora:Resource ; + fedora:created "2018-03-09T18:53:30.447Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasFixityService ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:32.99Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ns017:valid "true"^^ ; + ns017:wellFormed "true"^^ ; + ns019:compressionScheme "JPEG"^^ ; + ns018:byteOrder "big endian"^^ ; + ebucore:fileSize "53678"^^ ; + ebucore:filename "theses.jpg"^^ ; + ebucore:hasMimeType "image/jpeg"^^ ; + ebucore:height "335"^^ ; + ebucore:width "504"^^ ; + ns014:describedby ; + premis:hasCreatingApplicationVersion + "1.2.0"^^ ; + premis:hasFormatName "JPEG File Interchange Format"^^ ; + premis:hasMessageDigest ; + premis:hasSize "53678"^^ ; + ns016:hashValue "59ced23d3250b0cf54a58dd21bad4512"^^ ; + ns015:colorSpace "YCbCr"^^ ; + ns015:exifVersion "10.00"^^ . + http_version: + recorded_at: Fri, 16 Mar 2018 21:06:20 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/thumbnail + uri: http://www.example.com:8080/fcrepo/rest/test/01/bb/1b/09/01bb1b09-974d-478b-8826-2c606a447606/files/8b26afd3-0f72-4241-87d4-830f0bbdf58c body: encoding: US-ASCII string: '' @@ -352,115 +472,1235 @@ http_interactions: response: status: code: 200 - message: OK + message: '' headers: Etag: - - '"94925806bc6c9348bc1b160cc4d5134c8001df63"' - - '"94925806bc6c9348bc1b160cc4d5134c8001df63"' + - '"66d4222b266c43f70751b07d12d9de9fc742e8d1"' + - '"66d4222b266c43f70751b07d12d9de9fc742e8d1"' Last-Modified: - - Tue, 16 May 2017 21:36:28 GMT - - Tue, 16 May 2017 21:36:28 GMT + - Fri, 09 Mar 2018 18:53:30 GMT + - Fri, 09 Mar 2018 18:53:30 GMT Accept-Ranges: - bytes Content-Disposition: - - attachment; filename=""; creation-date="Tue, 16 May 2017 21:27:40 GMT"; modification-date="Tue, - 16 May 2017 21:36:28 GMT"; size=3346 + - attachment; filename="theses.jpg"; creation-date="Fri, 09 Mar 2018 18:53:30 + GMT"; modification-date="Fri, 09 Mar 2018 18:53:32 GMT"; size=53678 Link: - - ; + - ; rel="describedby" - ;rel="type" - ;rel="type" Allow: - DELETE,HEAD,GET,PUT,OPTIONS - Content-Length: - - '3346' - Content-Type: - - image/jpeg Cache-Control: - no-transform, must-revalidate, max-age=0 + Content-Type: + - image/jpeg + Content-Length: + - '53678' + Date: + - Fri, 16 Mar 2018 21:06:20 GMT body: - encoding: ASCII-8BIT - string: !binary |- - /9j/4AAQSkZJRgABAQAASABIAAD/4gogSUNDX1BST0ZJTEUAAQEAAAoQAAAA - AAIQAABtbnRyUkdCIFhZWiAAAAAAAAAAAAAAAABhY3NwQVBQTAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAA9tUAAQAAAADTLAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApkZXNjAAAA/AAA - AHxjcHJ0AAABeAAAACh3dHB0AAABoAAAABRia3B0AAABtAAAABRyWFlaAAAB - yAAAABRnWFlaAAAB3AAAABRiWFlaAAAB8AAAABRyVFJDAAACBAAACAxnVFJD - AAACBAAACAxiVFJDAAACBAAACAxkZXNjAAAAAAAAACJBcnRpZmV4IFNvZnR3 - YXJlIHNSR0IgSUNDIFByb2ZpbGUAAAAAAAAAAAAAACJBcnRpZmV4IFNvZnR3 - YXJlIHNSR0IgSUNDIFByb2ZpbGUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAdGV4dAAAAABDb3B5cmlnaHQgQXJ0aWZleCBTb2Z0d2FyZSAy - MDExAFhZWiAAAAAAAADzUQABAAAAARbMWFlaIAAAAAAAAAAAAAAAAAAAAABY - WVogAAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAA - AAAAACSgAAAPhAAAts9jdXJ2AAAAAAAABAAAAAAFAAoADwAUABkAHgAjACgA - LQAyADcAOwBAAEUASgBPAFQAWQBeAGMAaABtAHIAdwB8AIEAhgCLAJAAlQCa - AJ8ApACpAK4AsgC3ALwAwQDGAMsA0ADVANsA4ADlAOsA8AD2APsBAQEHAQ0B - EwEZAR8BJQErATIBOAE+AUUBTAFSAVkBYAFnAW4BdQF8AYMBiwGSAZoBoQGp - AbEBuQHBAckB0QHZAeEB6QHyAfoCAwIMAhQCHQImAi8COAJBAksCVAJdAmcC - cQJ6AoQCjgKYAqICrAK2AsECywLVAuAC6wL1AwADCwMWAyEDLQM4A0MDTwNa - A2YDcgN+A4oDlgOiA64DugPHA9MD4APsA/kEBgQTBCAELQQ7BEgEVQRjBHEE - fgSMBJoEqAS2BMQE0wThBPAE/gUNBRwFKwU6BUkFWAVnBXcFhgWWBaYFtQXF - BdUF5QX2BgYGFgYnBjcGSAZZBmoGewaMBp0GrwbABtEG4wb1BwcHGQcrBz0H - TwdhB3QHhgeZB6wHvwfSB+UH+AgLCB8IMghGCFoIbgiCCJYIqgi+CNII5wj7 - CRAJJQk6CU8JZAl5CY8JpAm6Cc8J5Qn7ChEKJwo9ClQKagqBCpgKrgrFCtwK - 8wsLCyILOQtRC2kLgAuYC7ALyAvhC/kMEgwqDEMMXAx1DI4MpwzADNkM8w0N - DSYNQA1aDXQNjg2pDcMN3g34DhMOLg5JDmQOfw6bDrYO0g7uDwkPJQ9BD14P - eg+WD7MPzw/sEAkQJhBDEGEQfhCbELkQ1xD1ERMRMRFPEW0RjBGqEckR6BIH - EiYSRRJkEoQSoxLDEuMTAxMjE0MTYxODE6QTxRPlFAYUJxRJFGoUixStFM4U - 8BUSFTQVVhV4FZsVvRXgFgMWJhZJFmwWjxayFtYW+hcdF0EXZReJF64X0hf3 - GBsYQBhlGIoYrxjVGPoZIBlFGWsZkRm3Gd0aBBoqGlEadxqeGsUa7BsUGzsb - YxuKG7Ib2hwCHCocUhx7HKMczBz1HR4dRx1wHZkdwx3sHhYeQB5qHpQevh7p - HxMfPh9pH5Qfvx/qIBUgQSBsIJggxCDwIRwhSCF1IaEhziH7IiciVSKCIq8i - 3SMKIzgjZiOUI8Ij8CQfJE0kfCSrJNolCSU4JWgllyXHJfcmJyZXJocmtybo - JxgnSSd6J6sn3CgNKD8ocSiiKNQpBik4KWspnSnQKgIqNSpoKpsqzysCKzYr - aSudK9EsBSw5LG4soizXLQwtQS12Last4S4WLkwugi63Lu4vJC9aL5Evxy/+ - MDUwbDCkMNsxEjFKMYIxujHyMioyYzKbMtQzDTNGM38zuDPxNCs0ZTSeNNg1 - EzVNNYc1wjX9Njc2cjauNuk3JDdgN5w31zgUOFA4jDjIOQU5Qjl/Obw5+To2 - OnQ6sjrvOy07azuqO+g8JzxlPKQ84z0iPWE9oT3gPiA+YD6gPuA/IT9hP6I/ - 4kAjQGRApkDnQSlBakGsQe5CMEJyQrVC90M6Q31DwEQDREdEikTORRJFVUWa - Rd5GIkZnRqtG8Ec1R3tHwEgFSEtIkUjXSR1JY0mpSfBKN0p9SsRLDEtTS5pL - 4kwqTHJMuk0CTUpNk03cTiVObk63TwBPSU+TT91QJ1BxULtRBlFQUZtR5lIx - UnxSx1MTU19TqlP2VEJUj1TbVShVdVXCVg9WXFapVvdXRFeSV+BYL1h9WMtZ - GllpWbhaB1pWWqZa9VtFW5Vb5Vw1XIZc1l0nXXhdyV4aXmxevV8PX2Ffs2AF - YFdgqmD8YU9homH1YklinGLwY0Njl2PrZEBklGTpZT1lkmXnZj1mkmboZz1n - k2fpaD9olmjsaUNpmmnxakhqn2r3a09rp2v/bFdsr20IbWBtuW4SbmtuxG8e - b3hv0XArcIZw4HE6cZVx8HJLcqZzAXNdc7h0FHRwdMx1KHWFdeF2Pnabdvh3 - VnezeBF4bnjMeSp5iXnnekZ6pXsEe2N7wnwhfIF84X1BfaF+AX5ifsJ/I3+E - f+WAR4CogQqBa4HNgjCCkoL0g1eDuoQdhICE44VHhauGDoZyhteHO4efiASI - aYjOiTOJmYn+imSKyoswi5aL/IxjjMqNMY2Yjf+OZo7OjzaPnpAGkG6Q1pE/ - kaiSEZJ6kuOTTZO2lCCUipT0lV+VyZY0lp+XCpd1l+CYTJi4mSSZkJn8mmia - 1ZtCm6+cHJyJnPedZJ3SnkCerp8dn4uf+qBpoNihR6G2oiailqMGo3aj5qRW - pMelOKWpphqmi6b9p26n4KhSqMSpN6mpqhyqj6sCq3Wr6axcrNCtRK24ri2u - oa8Wr4uwALB1sOqxYLHWskuywrM4s660JbSctRO1irYBtnm28Ldot+C4WbjR - uUq5wro7urW7LrunvCG8m70VvY++Cr6Evv+/er/1wHDA7MFnwePCX8Lbw1jD - 1MRRxM7FS8XIxkbGw8dBx7/IPci8yTrJuco4yrfLNsu2zDXMtc01zbXONs62 - zzfPuNA50LrRPNG+0j/SwdNE08bUSdTL1U7V0dZV1tjXXNfg2GTY6Nls2fHa - dtr724DcBdyK3RDdlt4c3qLfKd+v4DbgveFE4cziU+Lb42Pj6+Rz5PzlhOYN - 5pbnH+ep6DLovOlG6dDqW+rl63Dr++yG7RHtnO4o7rTvQO/M8Fjw5fFy8f/y - jPMZ86f0NPTC9VD13vZt9vv3ivgZ+Kj5OPnH+lf65/t3/Af8mP0p/br+S/7c - /23////bAEMAAwICAgICAwICAgMDAwMEBgQEBAQECAYGBQYJCAoKCQgJCQoM - DwwKCw4LCQkNEQ0ODxAQERAKDBITEhATDxAQEP/AAAsIAbUBUgEBEQD/xAAV - AAEBAAAAAAAAAAAAAAAAAAAACf/EABQQAQAAAAAAAAAAAAAAAAAAAAD/2gAI - AQEAAD8AlUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAA//2Q== - http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + encoding: UTF-8 + base64_string: | + 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 + N2nfhEalrlY3bQAxbwNH1G5sw+L4lPhWv+XOvwrEMAfKiWfsmSlHZa0WZh2a + HErlABxin/zFfHErPmpjMOnW4pn84v8AXGrIZ2a2oO14ZzRBmwgTYj5zhlq9 + HVqjG73e+1j4uGs+gWXPG8LjY0VvVFo3gmj6pD5wHmLKMcG31juq3e8Gq8l7 + cn5R18p2VBWLvi97lJ9nC0Md+Dzd55TAWlYto2I2GK4zi1KbZsuYtNJVBruy + mHcKJn33RH0YNNzL7jOKUu0wUwKVmyVQnuv6MkGLR07n9ikZcm7eGxG7U2AT + Ds3Ksy7Iuc2B4hnin83FMHGyZ/2jO6M3KztnNTmy2juOTOJ+icjRkYOblRdm + Un7JadlW5x4i0dxRNWVIqTodbHhxKstOQYx3HVY3UcrNVZ9GanLUsyQEWZdz + DZHnq8YfXw6my/pjz3f2BUXKV16XcfnbJbmArwMcMSXY/G4sXsIvCk52YmGn + pOXBJXGFVZuMQRAy1NtuZB9HkjrtW3nzO1OobQLv937ccDEakJp5u7qgJ/sH + G7lFTlmTwLhzMtNNa9lsy+zEt2CuelpiVJtmZYdaeMUcbrBQqDqueofUhhxx + uYnZakhPEp6hpV/qT2YtmamxeW7tltus6K24DzpPbTa7XxnjP0kBGpa5fG/c + +dnWdOdTaOTDBZfygQlEJ/ldK2nKni8lpPGo2eK824yz/wDb7T8rDBiX2wB4 + kaRQEkrpHhGri/PGNrza5OMDclyDNfGrMiK1qWa5tnWXkO7+AYAB4yE8L4rm + By9vUuUWxWn6ViZrj46j6PKW+bwyrfxp2TwENqWbNpscfrlXTicUedtPaZKW + TNoNZjdAkJUXZ8S/X1omNs3yoYAxJ17DAc7r2zD8ZHe8s2icheUEwzhnLg2y + 28fOvtc5+KxY0Yjuzf8AZ49pGHNTeDSFWxYrbL8YRVe4ECPrC7WsOyrOHDre + dwhzzL0wjWf5Pm4pBlpUHXHJk7Nf0lqSZV9+bYKkW26uuV/F24dQlEyi1a57 + C6Wte0JVwnG3UcI9+KOL9WvLV5vFGMrFqXouhuLn8YQ5a7kyOdltTFaqRvHW + i8QitVUR5NFry13gIBymtyTlFYs/R8dxzFen3Urd62RtktjkGgGv2I6IOSSR + 8pmXeUvKPENxy3rQDN/aT+ww3s4tkUlOvWk7jTsxizBs4WMaZtiWbm+I+2Aw + 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 + aVpgRLMqqjp6uhEBFH7UGgAXZspo1PuENP1wAIZOnNl4hK+5KtUT4guVFB5V + UUJD1hfuJF7F8sPwItWWGqtonJV37BQGCvtHUNYC270kOoS11DAQMQK2ougq + 3ISVoK70vv8A/iFLmU3So2C1lUXWFVGwwww0XtEu3tu3RySsel8zqbP/ACjm + z+UzVl01s6RqA8OuirNw1UlFW7Ikk2Dr/wDkmYklx5Wx5fEdaFqt58zpoIi4 + QbbjfBz6RbM/7UeVD4bJyRlPmZb/ABsWNE1GbW2rYtQndPtGbmAoLZYi4Zfi + wyQADlH6LzIcpqWX1eiEkvN9x9dQ5f1QGAzakLjVRIWUodABOOVXJ9/TDAxl + HFQybXupd+pYVSQY9F12rp+mEZ0CVURF105fqhA4QtEqVpr+q6GACZFSZc7R + hkAsPTDKVAiqHSl16Q9KEGBaznWBIRl6WjLvJQ6NFSQGdFupFHUtyb+1O2Aj + zbZsEW45ZznA7vnDADlByjulyTpf0wA3Fh8p5abIJS0lFh9bkB3wTvtdWFiD + ftSrQkJiIlq9YST+mM9TMjbXISWnsR+zKZKZ8T/yzn+FGhGasLk1O2faRv2t + I7KWZcJklUDaOY8HT36eKFLmSfRPhxJc8aYcCgE2mvq3aoMFnzPlZync5Qzw + jL1BJS2VgO8XWcjf0MQIgooHi+tKfou1RiQReBGlQmndQlROjVr/AJRIOgob + TI5XqpzQGdrAkTZUrfct5a/Tu1XQAnclebCyIvEpZ/dhA8h3Cao22utEXiq8 + i3dkMAr5XjuuS9Lrk1RZA+IuCogBVqlKlctyB239i9u6H4/D+4BAS4x6Yrho + BmlyJ23J0RBgLpH3V6Ysisari9VYAcvXR01dkIET4PogBQ2IkY1Llv7YCGIt + sCSlWBe0n6r4Rmp5Pz/KCWdc+CZSefZq2miy7xrfd0k0BfaiZNGu8ppp22HC + FBt2zZV3zLTk1l3/AGXlRp33ShdYj93+jEwyPJefPYzp2K6XDiODOSd/rZZh + pPyiRWRW3diX+9/+QWWlYxyVX/ELJnQ13OSc9Kue81iC6PuQYorXtxu/nF8s + Ii2gVISJfnTh39C7vqgaEHiEG8wkea7Il9/lgAECid16KF66qtSJm6VW5Prh + g+y8lbJsSUKWm5m0bNmbSNfi0qM0w7gn5gCe1mf+n1I5ZuhjRzbslyfnnS+E + JiSlZvv6QxLzPtDVV+ViOsXujATPJmS/5PlJYro9QX5plo/suGEbbjC354/v + Mk9KtiVzsw2tBqlwG2oqqaluNCISHsUVuXtjWlWZIUbUadmPYdQfnu1LAQIu + CJrSLBl1iaIN3nj2QwQcZ1Yko7T8jV+yX7oYA75Z9aXhSXe76Lsy9burDB2X + aaofQjCutMPMl948N3rREjaWguUtWa4qt306oAVtuTTdGVwmqu5UPs5YohsL + 8xclbQ0duGv/AMRBk5ghw6SEMydbqwAWyVFJA7wdU+j64ZEH5aW10vs3/OD+ + q+GCnAC9NqGocucd0Bk5hEVkKlTWaJv3at8FCIoUsZ0YdG7aisMDBppsVTDc + bW67rJrT6/zRI9wMyqA4VCVhil5cpb/dKADJCS7UA+S9fv8A5QGJbTVVfQt2 + QRQUS7V2p5L74qhADaIph63+cMhg2tz6U360W9U8v6oK9h9Y0Elu3L9UQZEV + XEJETUqX39hJcl3pVLoPzHWWHcqKhXX3b4CBnETfemtLjT6LtadGqHQKelAA + 2KDIAzFhuVJ2wA863K+FKXPzwMK4CB1lJK68Zpn0KY/zhmdJCab2Cq5T3byv + TzYAL3CfXjxPqKKBNhyZBRoBwvQJLekIBDiMuhiZW++1fTm7zX8QQEaWyZ7l + TIAOiS0/OS3itHfea9kqMsIzYByhtR5r43Ylsy/f+JzP+FEqEts23bTqho1k + 2i23TcBOSkxTdd1ckXyEYh920jL42Mz7bZ/0xoRFjC6l1cQR/9k= + http_version: + recorded_at: Fri, 16 Mar 2018 21:06:20 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/characterization + uri: http://www.example.com:8080/fcrepo/rest/test/01/bb/1b/09/01bb1b09-974d-478b-8826-2c606a447606/files/8b26afd3-0f72-4241-87d4-830f0bbdf58c/fcr:fixity body: encoding: US-ASCII string: '' @@ -478,98 +1718,64 @@ http_interactions: response: status: code: 200 - message: OK + message: '' headers: - Etag: - - '"255aaff77582f8035328f449e5bc87b9a51dc7ae"' - - '"255aaff77582f8035328f449e5bc87b9a51dc7ae"' - Last-Modified: - - Tue, 16 May 2017 21:36:26 GMT - - Tue, 16 May 2017 21:36:26 GMT - Accept-Ranges: - - bytes - Content-Disposition: - - attachment; filename=""; creation-date="Tue, 16 May 2017 21:27:35 GMT"; modification-date="Tue, - 16 May 2017 21:36:26 GMT"; size=3916 - Link: - - ; - rel="describedby" - - ;rel="type" - - ;rel="type" - Allow: - - DELETE,HEAD,GET,PUT,OPTIONS - Content-Length: - - '3916' Content-Type: - - text/xml - Cache-Control: - - no-transform, must-revalidate, max-age=0 + - text/rdf+n3;charset=utf-8 + Content-Length: + - '2662' + Date: + - Fri, 16 Mar 2018 21:06:20 GMT body: encoding: UTF-8 - string: |- - - - - - - - - - - - - 1.4 - fmt/18 - - - - 7162 - LibreOffice 5.2/Writer - 2017:05:16 15:26:04-06:00 - /tmp/content-1.pdf20170516-18431-2uhrid.pdf - whatever.pdf - 94a2454204f52b39c4a6d4ff86e8d516 - 1494970582000 - - - true - true - - - - Writer - en-CA - 1 - no - no - no - - LiberationSerif - - no - - - - - - - - - - - - - - - - - - - http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + a premis:EventOutcomeDetail , premis:Fixity ; + premis:hasEventOutcome "SUCCESS"^^ ; + premis:hasMessageDigest ; + premis:hasSize "53678"^^ . + + + premis:hasFixity . + http_version: + recorded_at: Fri, 16 Mar 2018 21:06:20 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/fedora3foxml + uri: http://www.example.com:8080/fcrepo/rest/test/85/64/44/b6/856444b6-8dd5-4dfa-857d-435e354a2ead body: encoding: US-ASCII string: '' @@ -577,7 +1783,7 @@ http_interactions: Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - - "*/*" + - text/rdf+n3 User-Agent: - Ruby Host: @@ -586,36 +1792,94 @@ http_interactions: - Basic ZmVkb3JhQWRtaW46ZmVkb3JhQWRtaW4= response: status: - code: 404 - message: Not Found + code: 200 + message: '' headers: + Etag: + - W/"8620850bf8b048af0ff24b3d9a030bd104fa67b5" + Last-Modified: + - Fri, 09 Mar 2018 18:53:39 GMT + Link: + - ;rel="type" + - ;rel="type" + - ;rel="type" + Accept-Patch: + - application/sparql-update + Accept-Post: + - text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,application/ld+json,multipart/form-data,application/sparql-update + Allow: + - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS + Preference-Applied: + - return=representation + Vary: + - Accept, Range, Accept-Encoding, Accept-Language + - Prefer Content-Type: - - text/html;charset=ISO-8859-1 - Cache-Control: - - must-revalidate,no-cache,no-store + - text/rdf+n3;charset=utf-8 Content-Length: - - '1415' + - '4273' + Date: + - Fri, 16 Mar 2018 21:06:20 GMT body: encoding: UTF-8 - string: "\n\n\nError 404 Not Found\n\n

HTTP - ERROR 404

\n

Problem accessing /fedora/rest/test/9p/29/09/32/9p2909328/fedora3foxml. - Reason:\n

    Not Found


Powered by Jetty://
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n\n\n\n" - http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + a ldp:RDFSource , fedora:Resource , ns007:FileSet , fedora:Container , ldp:Container , ns005:Object ; + fedora:created "2018-03-09T18:53:35.759Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:39.162Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ns005:hasFile , ; + ns005:memberOf ; + ns003:accessRights "http://terms.library.ualberta.ca/public"^^ ; + ns003:title "era-logo.png"^^ ; + ns002:owner 2705 ; + ns010:recordCreatedInJupiter "2018-03-09T18:53:35.736Z"^^ ; + ns010:sitemapLink ""^^ ; + ebucore:dateIngested "2018-03-09T18:53:35.736Z"^^ ; + ldp:contains , ; + ns001:hasModel "IRFileSet"^^ . + http_version: + recorded_at: Fri, 16 Mar 2018 21:06:20 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/fedora3foxml/fcr:metadata + uri: http://www.example.com:8080/fcrepo/rest/test/85/64/44/b6/856444b6-8dd5-4dfa-857d-435e354a2ead/files/04bb7928-cc5d-4338-8062-3209274b29da/fcr:metadata body: encoding: US-ASCII string: '' @@ -632,36 +1896,99 @@ http_interactions: - Basic ZmVkb3JhQWRtaW46ZmVkb3JhQWRtaW4= response: status: - code: 404 - message: Not Found + code: 200 + message: '' headers: + Etag: + - W/"6207d8df76a9eda596305d6604963298ac358cc0" + Last-Modified: + - Fri, 09 Mar 2018 18:53:38 GMT + Link: + - ; + rel="describes" + - ;rel="type" + - ;rel="type" + Accept-Patch: + - application/sparql-update + Allow: + - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS + Preference-Applied: + - return=representation + Vary: + - Accept, Range, Accept-Encoding, Accept-Language + - Prefer Content-Type: - - text/html;charset=ISO-8859-1 - Cache-Control: - - must-revalidate,no-cache,no-store + - text/rdf+n3;charset=utf-8 Content-Length: - - '1428' + - '4353' + Date: + - Fri, 16 Mar 2018 21:06:20 GMT body: encoding: UTF-8 - string: "\n\n\nError 404 Not Found\n\n

HTTP - ERROR 404

\n

Problem accessing /fedora/rest/test/9p/29/09/32/9p2909328/fedora3foxml/fcr:metadata. - Reason:\n

    Not Found


Powered by Jetty://
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n\n\n\n" - http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + a ns011:OriginalFile , ns005:File , ldp:NonRDFSource , fedora:Binary , fedora:Resource ; + fedora:created "2018-03-09T18:53:35.896Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasFixityService ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:38.335Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ns019:compressionScheme "Deflate"^^ , "Deflate/Inflate"^^ ; + ebucore:fileSize "5612"^^ ; + ebucore:filename "era-logo.png"^^ ; + ebucore:hasMimeType "image/png"^^ ; + ebucore:height "114"^^ ; + ebucore:width "208"^^ ; + ns014:describedby ; + premis:hasCreatingApplicationVersion + "1.2.0"^^ ; + premis:hasFormatName "Portable Network Graphics"^^ ; + premis:hasMessageDigest ; + premis:hasSize "5612"^^ ; + ns016:hashValue "d409b41db16cfaf9f315ac20532eac07"^^ ; + ns015:exifVersion "10.00"^^ ; + ns015:orientation "normal*"^^ . + http_version: + recorded_at: Fri, 16 Mar 2018 21:06:21 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/content + uri: http://www.example.com:8080/fcrepo/rest/test/85/64/44/b6/856444b6-8dd5-4dfa-857d-435e354a2ead/files/04bb7928-cc5d-4338-8062-3209274b29da body: encoding: US-ASCII string: '' @@ -679,200 +2006,167 @@ http_interactions: response: status: code: 200 - message: OK + message: '' headers: Etag: - - '"cbdc7e82500473b94daf3affd0458c777b2bec71"' - - '"cbdc7e82500473b94daf3affd0458c777b2bec71"' + - '"53b962d0dbba2e45fd47678379833b44252bdacd"' + - '"53b962d0dbba2e45fd47678379833b44252bdacd"' Last-Modified: - - Tue, 16 May 2017 21:26:56 GMT - - Tue, 16 May 2017 21:26:56 GMT + - Fri, 09 Mar 2018 18:53:35 GMT + - Fri, 09 Mar 2018 18:53:35 GMT Accept-Ranges: - bytes Content-Disposition: - - attachment; filename="whatever.pdf"; creation-date="Tue, 16 May 2017 21:26:56 - GMT"; modification-date="Tue, 16 May 2017 21:26:56 GMT"; size=7162 + - attachment; filename="era-logo.png"; creation-date="Fri, 09 Mar 2018 18:53:35 + GMT"; modification-date="Fri, 09 Mar 2018 18:53:38 GMT"; size=5612 Link: - - ; + - ; rel="describedby" - ;rel="type" - ;rel="type" Allow: - DELETE,HEAD,GET,PUT,OPTIONS - Content-Length: - - '7162' - Content-Type: - - application/pdf Cache-Control: - no-transform, must-revalidate, max-age=0 + Content-Type: + - image/png + Content-Length: + - '5612' + Date: + - Fri, 16 Mar 2018 21:06:20 GMT body: - encoding: ASCII-8BIT - string: !binary |- - JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp - bHRlci9GbGF0ZURlY29kZT4+CnN0cmVhbQp4nDPQM1Qo5ypUMABCM0MjBXNL - I4WiVK5wLYU8qKiBQlE6l1MIl6mZnoWCuZEJUENIioK+m6ECUHlIWrSNgaGd - oY2BkYGxna6ZjYGJnZGNgSlIxAxCmdvFhnhxuYZwBXIFKgAAJJQXtwplbmRz - dHJlYW0KZW5kb2JqCgozIDAgb2JqCjEwNAplbmRvYmoKCjUgMCBvYmoKPDwv - TGVuZ3RoIDYgMCBSL0ZpbHRlci9GbGF0ZURlY29kZS9MZW5ndGgxIDgyMjg+ - PgpzdHJlYW0KeJzlWH9UW9d9/9579RshPYF4xpaNnvwAAwKEkbHBcUAGJIRx - jPjlCBJAMhIg/wAsCVwnzUzbEyfBdeMlaX40XptmaU6W9pw87KzDXRaTc5Ju - Xdc03fpjWePW3bKds1PTeGmTs7Ux7HufBLHdpD1n3Tn7Y1fSu9/v5/vr3u/9 - 3vueXjo5HQczzAID38iR6NR6bY4BAP4OgOSNzKSllWafhPRlACqOTo0dKfP+ - +BcA7D8B9Nqxw8dHP3fv8S8C5KCJ8ZHxeDT27VsuNADYH0Fg+zgC+5aP65FH - f1A8fiT9CQ+bcSB/FXnp8ORItNZcbwIoEJDPOxL9xNSf6j6jQb6YyyeiR+L7 - 4k+jr4JWAMPeqclUOgbFKwCbznD5VDI+9d7AYzjeTQqOL40YwQ9vZiR1nKdM - o9Xp4f9t056GAghqbwUrTKnXGxr7Gqzn/cqVG6/Le1d+/b85CkOmexyehRfh - NLwJg1lBAEKQgGlErm+vwPcQ5S0EA/A8zH2M26/BAsozehF4EJ74GL0QPAbn - 4a9viBKCI3A3juXP4U2yFb6FpTIJ7xIDfApeQ6/vInbbR7miFryMquTodeiP - 4Ul6CvbQt5F5gkuohwrwKpwlQ+g5jfM8vTbjXb/l9D64B689MA4zSKtNe+sH - /wTGlV/irO6BPfBp2A2Hr7N4iXyJ4b5hvfAlzOkrKuZZFeqD7CD9OqXXHkbm - j2EMf1GCc6en2W5o1drIiwA+f3+4r7enuyvUue+2vR172oNtAX9rS/NuX1Pj - rbtu2dlQv2N73dYaT3VVZdmW0pJiebPLWWi3CVZLbo7JaNDrtBpGCVT65UBE - UkojiqZUDgarOC9HEYheB0QUCaHAjTqKFFHVpBs1fag5epOmL6PpW9MkgrQL - dlVVSn5ZUr7TKksLZKArjPTpVrlfUpZU+jaV1pSqTC4yLhdaSP7C8VZJIRHJ - rwRmxuf8kVb0N59japFb4qaqSpg35SCZg5RSJk/Nk7JGohK0zL9znoIhl4dV - WIk/GlNCXWF/q8Pl6q+qbFcscqsqghbVpaJrUfSqSynBhw6npPnKxbnPLghw - IOI2x+RY9M6wwqJoO8f8c3P3KTa3Ui63KuV3vV2IM48rlXKrX3Fzrx3da3E6 - PgxJFG2JIEtz7wFOR166ciMSzSK6EuE94GQA0zs3F5ClwFxkLrqwMntAlgR5 - bt5snpvyY4YhFEarhZVvnHIogc/2K0JknOzMTjbQ3aHkd90RVmhJQBqPIoLf - JtlV73DZ+ld1Qh8nBkwEpgNz6nLxiZ9a8MEBZJTZrnCGl+CA4xz4PO5+hUa4 - ZHFVUtDHJbOrkjXziIyr2dETnlM0Je0x2Y85PhVVZg9gPR3kSyELiuV9h0ue - y7NJDZ5+VVfCUbXHEpKiLcW0oNX1Blgp3GROUBnL+5luyYEBSm15UoOMbrgf - v+yPZL8z44XoQKqqVILuzNL3hhVfKxK+aHaN/PM1HrSIRnCJEq3q8ikeeUqx - y81r68mH5U/0hFWTrJlib1EgMpK1Ujz+Vh5Z8s9FWjND4L7krvAF8K5cnt8m - Oc57YRv0t3JlsQXrqtQ/F46NKs6II4Y7bVQKO1yKrx8XuF8Ox/t5oWGGyi9j - OJcaUaEtveGOHrmjayBcnx1IRsDdaUr8N7mRw46MGyw5xVBikMLUwfpRUUBA - CiAhN+/Cq6IvMeBPwISrKC/V5l1SmDhgVRuHoZRL/nhrVo/zNzjV8nJqCa56 - 03EW/bQEHa5+V6ZVVVIUS9nAaGHgSQ2uilgJngSIUXSjQjyXhbzmpbAcl/vl - cUnxhcJ8bjw9apazyVBznl2r3hu465KFaQIXilcZnkwl4HZcn1ylTeXX2OBN - 4vZVsTRnkDt65rhzOesQcOTtCvAS9tXbHOru5/tZDkRxE+OOVvfz3LzPx/fy - ON+2c3J7bE7uCe9StfEEucdxF4+VBx2ko7e5qhIPs+Z5mdzfNe8j9/cMhC8I - +Eh1f2/4HCW0JdLcP1+MsvAFCe8VKko5ykHOSJzhnrqRMaj6jgs+gFlVqlEB - lR9ZIKBihlWMwMgCzWDCKkYR02Qwn4rxhqtUOI45xvPbL8X4+nyyf3wu0s9r - HETMCH6JQuRGzI7cOE+ozqyY5HizkiM3c7yJ400ZXMdxPVYGEUlV5V1zgl9+ - r7BKvXUDPlvSmLYPn4D1UD1PwLPrnF5jWKqd12nf2nWOUSRhnnFYy+Fzep3x - g13nCMe9NpetxGVztVJpuZg8vjyu7fv1V1s13wH+JEpXfqZ/AJ+57PS7vnN6 - K1lnIXfnknAuceeScS0ppERLiIFpSXeOOWdAp7XrdNpc0q1hmjvNuXazOZeS - bovVMsConeG9lnQLVuFOIHb0fdJM9OYt5h3mY2aN8XbrmJVutwasVG9dZ91i - ZSYzs1qZmelA/JZI/lIkfyaSJ0XygEhKxf3ijMh+KP6bSF8UXxXpsyp8t0hG - RdIrkoBIjOJ6sVxk/ywurCz6Dr/5k+Aj4jMiPSmSbpEUi9vEVpGJIqEieVck - b4vkhyJ5RuSu2HHxAZGig3KRiGIphjkpfl3UGkXy/L+L/yVS0feV54LfFn/M - qS/8SRBDJni8/SItFbejJuMBz595OKgGLrnvVNAuEp1I3hfJ90XCvX1TZP0i - 6eCoiCYsqVocmsxYeEYTwQsi+bRIyJRIYtzqbZGeEp8UvyqyKT67mEh9IrGL - fBZqNF9lSyB4SiQ+MSRSDaK04Vc8X9/mnF18RGR2Ma1O7vuiVjWos68LOkS3 - 2CEyHfPJZUEPa2KdjDkYyWWE+cyFwXLsc3MtFiEHdMN5BmY1m7llHipL5hqz - z8zsZkL5l8MWS2Fwm7nVTM0aLId8aPJiG3QPHz161G3zNnmXarF5vB7EOEQ8 - 2CeTyaHBQRXAlkwOJ5NuN0ewoY6q4MbPEGezOryt6gyu4sI3besabvV4PFyA - v/sKBfd97lc/sttaQ4bX7I1Exi/ZUucq0BuJ15ih7Mt76pafWX6ybrl1msJr - pIkkqsidpOZ75CXNL379S3b2g5g2d0Nd3YYPOtnTHwyxeaT5PsGCZv+K/1PK - QLkAuZgUt0EIltsb7LTQToz8W9BmFYgoVDxVQaBCqFisuFyhaXiq4moFreBJ - tLtrgp4KIlSQUAWZqpitOFPBuOC8c3NQVXDni0Fwts0WEygWiqXixeI3ii8X - 6wzFJaEycBYIxaH8zQVFWu36bpMATUve1cw3LRHMzdGlWrd78GhSTelR4a2h - waVanoqtNW5it1B9I/PWFtEC27oCV90O27ZSeTOCWQ4TQwKEMLoxdPvtxdsH - dpcklw/d09W3salxe96J5dixz5Ja9r6lzF2WKxQX5Rc1H+y49uj6qqr1dKin - X2fI0VzL55yWqocVheDKFXaUvQIVsB0e87kOlRLHOvc6ahEbRZon5ViDm/Kq - 8qg5j+TaCNEQtrBy2bfJaAsSRgwbTdvbdPWz9WS4nvjqCRJb2+xbeH6cJktw - y5ZOO7GXlm52hzZuhO3eLpNV1IWMBZtDwHOCH0yJrcGzlNfgwTL0etzCEk+K - 8BZmamvN0KCbVwa/kNVsbLEweXM1rdvWqGkidduqqbxZZyVyXSPJ11tYgd1b - u30H+Z5vIlQ1vbycb/UGh3e2DtYXFm1v7xuuOW1x1VfUHCjZXL/71A8/c8v+ - +o0Pto7UslcKd450XLt3fdWQtUwurOgY29V4R+MW0UA0D1f4azduKJj+jqVg - uUhD86tDjYqzkNfXyhVapfkU/tO93ddA6w22oEZHXnCQRQdpcnQ6qMnSxkL2 - iJ3a7XpgApMYMzCNOWT0GS1Boz7HWmDrApHXRZP3dfdSLa8Jr9czKCzVDg4m - t9YMurWbS+tscl0T8RZ4C2SbXeQzK7Awsi8yfPc98aYf/eiWmpJ2p3XrLc32 - 5Bh9uGrLD37Qe+3E7maTbrfJbjVl7kMhXNsAew2cuLppX9UDdvJ4PsnJP5VP - RUepgxoL1xeWFz5RqDGUBp05Oc5KqCSNs5VPVV6tZJW82lv2BHnvW1dRHSwh - wfvxHIZQSYlOCq0XdF02UV1FXD0s6kFe0keHBoXXaz3CEl893kiBvYh6axsp - H3tm5bbz0t5ECJZ0gQtXkGgKmpKDRc3NjRvW7d4Xrpr+cqzy9YsdnznQsPxY - fVfdevKQzR0kb+a1nxy7VWsw6eqtDjHX90ffOP7+u2VDX5zpJmc9++/eu/fu - /eqfVcLfNmj4WwgLcfiKBkwHTXMmNgAHgfYZ4gbax+KMMp1G1FCjHkv5vMEc - 1GV7srDyN+eN5qCRl3gxEibSTYB0GE12o9GEt06D0dCWuXVSYjSSIlUxL9cW - NBqZKQcc4Aa2GQQBU/YXwUgQBNLGaZ+tLBC8LJAXhVeF7wvsKYGoaN2mzUFB - kIQagWkE8gwK6axAaESYEqiBgcHEWMistfqMRGuMG+l7RmLEmyQ/z/Gwxa2z - DsumdnBYPaH5SY77RXh9aBB31K0eN6+n3zpu3W5+qg9nz9vVw5Z37Nnl+/Ys - 3xMhX/88ySO6z5M72cEPPs3uwpPCce0YPYU9z205FtXjWE+FcOi8xkTowso/ - +jxGazDfSSbJCTwRiLENLIJFsixa3rBctugMFueG4Q3Ut4Hszx/Np/mskPKp - C5hcSgsFayjParSEzAVYSLX8PMAj4FveQXI06eFHomcQjwE3FpG85cYDcB0e - kPRx986NPt8t4peXm48dI3nGdaHBwWL22vKEITfPdK2ZH3JMWl81nb+1skh9 - h0dsP5/9++dNw9Zd74Ez8/7oH679LPXhKxD16Yq/VTHg3sk0tNO7lv1w+5oS - uelNi4FegVb9aaAaADs7DUHaoPYhDd+Cz/Oc4bZapPvpVdbKXtYc1vxt1osB - dmTjUDwQPfy9kyZH14BPjRzdSPavxYqsxSWoGcnSFJ8up7I0w+o7lqU1qPNQ - ltaCBZ7O0jqwgpKl9XAXXMzSBrCThixtxH1zW5bOwTHcsfb2s5qs+s+FSfKV - LG2BRmrH6ERjRG6RdmdpAhLLy9IULKw2SzPYznxZWoM6M1laCxvZo1laB0Xs - XJbWw6/YG1naAGWaV7O0ETZqrmTpHKjXGrK0Ge7UrvrPhZ9oz2ZpC3xSd1fL - 5NTxZGJsPC2VjZRLtTU1O6TueEwKRtOVUvvESLW0+/BhSVVIScl4Kp6ciceq - pb3tzf7u3b3tnfukREqKSulkNBY/Ek0ekiZHb7TfmzgQT0bTickJqSeeTIx2 - x8emD0eTu1Mj8YlYPClVSTdr3MzvjydTnNlaXbOjetuH0puVf89AcPRjiVQ6 - nkQwMSH1VfdUS6FoOj6RlqITMal3zbBzdDQxElfBkXgyHUXlyfQ4DvXgdDKR - iiVGeLRU9doMWiaTU5PZIaXjM3Hptmg6HU9NToyn01M7PZ5jx45VR7PKI6hb - PTJ5xPO7ZOnjU/FYPJUYm8CZV4+njxzeiwOaSOHAp9WIOJrrsxaYnMDFOZzR - qZRS8bjE3afQ/2g8hkObSk4ejI+kqyeTY55jiUMJT8ZfYmLM86Eb7iUb5w+z - hhaYxD14HJKQgDEYhzRI+NQ5grteglqowc8OpLohDjHsgxBFjUqk2mECtaqR - 4m9hD2P/oYeUysWxj2M/o9pyzb1o1Qx+9LYbepHuhH2IJlT9KP7SqB1F3Tgc - wT4JhxCbhNHfGX8v2h9Q43BJAvUnUNqjIgm05ZZjMI0j5B53Y6wRRCbUKEnU - rFLH9bt9/D75fpVKrUm24rh43qph20fa/j7Pf1hGMrkfU72kVd8ZzYTquw81 - elStkGrJc5FWo02oWr0fEbETI46iPc/ch5ojqu808hnPk0iPZ7N6EDOeVEcQ - U+1W55bCyL+9BrwGk1iFkzdliY9uRo15m4qn1ZrisnGVm4KdeNfx4H2Df6pR - 50bPI1m/1Sp1BDX/p3Zp3CFTah7j6jqPoW5mzatVn0ewvvZmMzSh1j3P0PR1 - c8zk5uNqLaD2mZ1z+AY/fGV5z21XR5/Kjn9UjZPJ2hReJzHvcTXb1So6ps4x - gWuYQOr68fEVG8tiN49mdSw3zuf/MjbLPt24MOJHtHlj5GWixzt2k3q9SDS+ - fnL5GvnuNSJdIyd+Q0K/IbPvnnmX/sfVcucLVy9epZ3vDL/zwjus5h1ifYcY - YElYCi1FlqaWnlrSmaxXiBl+Tmz/crne+VPvpb6feN/qg0tkV+jS7CXlEuNP - fwOXDDmBS4T1vcVEp7AoLdYsTi3OLr6xeHnx6qJh9uUzL9O/esnjtL7kfIk6 - z3eeP3GeRZ4j1uecz9HQk5En6ZmzxHrWedZzln3hiWrnE21Fzsce3eK8/OjV - R9WHy7pHc22B4c+TEw89+BCdOjl78sxJNnvvmXvpCzMXZ2gqVO6cnHA7J9oq - nOu9hX16L+vTsRUnt2w9UFIWiAz7nMOodMdAjXOgrdyZ783r0+JgNahoZU71 - 7cwke5BdZHpDd6jI2YW/y6GrIWrtdHZ6OtX/x9EOFzraM7Vndg9rD5Q7g231 - Tmubs83T9t22n7a906YbbiNfwm/ghcDFAPMFyj0BX6DIFdgYdPSJ3oI+wWvt - owT6iBf6PNYVK7Vah60nrMwKTUBnRaIlC+TMfG+P292xoF/p7lAMoTsUcr9S - 0sOvvq4BRXe/An0Dd4TnCflc/72nT0Pzpg6ltiesRDb1dygxJHycmEVC2DQv - QnN/KpXm/w/c+C8ByWm8gnsaoaFUBgT3qhjcKZJKQSpF3FymkohAys1hjnAb - gpZDKeAXLnWrWpxKpQqH/hs5V1/1CmVuZHN0cmVhbQplbmRvYmoKCjYgMCBv - YmoKNTA1MgplbmRvYmoKCjcgMCBvYmoKPDwvVHlwZS9Gb250RGVzY3JpcHRv - ci9Gb250TmFtZS9CQUFBQUErTGliZXJhdGlvblNlcmlmCi9GbGFncyA0Ci9G - b250QkJveFstMTc2IC0zMDMgMTAwNSA5ODFdL0l0YWxpY0FuZ2xlIDAKL0Fz - Y2VudCA4OTEKL0Rlc2NlbnQgLTIxNgovQ2FwSGVpZ2h0IDk4MQovU3RlbVYg - ODAKL0ZvbnRGaWxlMiA1IDAgUgo+PgplbmRvYmoKCjggMCBvYmoKPDwvTGVu - Z3RoIDI1Ni9GaWx0ZXIvRmxhdGVEZWNvZGU+PgpzdHJlYW0KeJxdkMtuxCAM - Rfd8hZfTxYgknSRdREijqUbKog817QcQcFKkBhAhi/x9eUxbqQvQMfa1uaaX - /rHXytNXZ8SAHialpcPVbE4gjDgrTcoKpBL+FqVbLNwSGrTDvnpcej2ZriP0 - LeRW73Y4nKUZ8Y7QFyfRKT3D4eMyhHjYrP3CBbWHgjAGEqfQ54nbZ74gTapj - L0Na+f0YJH8F77tFqFJc5q8II3G1XKDjekbSFQWD7nplBLX8l2uzYpzEJ3eh - sgyVRVG3LHCVuHmIfJ+5jHxK3J4i1/m9jtzk9yZym7lKM2/d4/S4nh9XIDbn - gqO0w2QlmlAa4XfP1tgoS+cbZPJ7dQplbmRzdHJlYW0KZW5kb2JqCgo5IDAg - b2JqCjw8L1R5cGUvRm9udC9TdWJ0eXBlL1RydWVUeXBlL0Jhc2VGb250L0JB - QUFBQStMaWJlcmF0aW9uU2VyaWYKL0ZpcnN0Q2hhciAwCi9MYXN0Q2hhciA3 - Ci9XaWR0aHNbMzY1IDk0MyA1MDAgNDQzIDI3NyA0NDMgNTAwIDMzMyBdCi9G - b250RGVzY3JpcHRvciA3IDAgUgovVG9Vbmljb2RlIDggMCBSCj4+CmVuZG9i - agoKMTAgMCBvYmoKPDwvRjEgOSAwIFIKPj4KZW5kb2JqCgoxMSAwIG9iago8 - PC9Gb250IDEwIDAgUgovUHJvY1NldFsvUERGL1RleHRdCj4+CmVuZG9iagoK - MSAwIG9iago8PC9UeXBlL1BhZ2UvUGFyZW50IDQgMCBSL1Jlc291cmNlcyAx - MSAwIFIvTWVkaWFCb3hbMCAwIDYxMiA3OTJdL0dyb3VwPDwvUy9UcmFuc3Bh - cmVuY3kvQ1MvRGV2aWNlUkdCL0kgdHJ1ZT4+L0NvbnRlbnRzIDIgMCBSPj4K - ZW5kb2JqCgo0IDAgb2JqCjw8L1R5cGUvUGFnZXMKL1Jlc291cmNlcyAxMSAw - IFIKL01lZGlhQm94WyAwIDAgNjEyIDc5MiBdCi9LaWRzWyAxIDAgUiBdCi9D - b3VudCAxPj4KZW5kb2JqCgoxMiAwIG9iago8PC9UeXBlL0NhdGFsb2cvUGFn - ZXMgNCAwIFIKL09wZW5BY3Rpb25bMSAwIFIgL1hZWiBudWxsIG51bGwgMF0K - L0xhbmcoZW4tQ0EpCj4+CmVuZG9iagoKMTMgMCBvYmoKPDwvQ3JlYXRvcjxG - RUZGMDA1NzAwNzIwMDY5MDA3NDAwNjUwMDcyPgovUHJvZHVjZXI8RkVGRjAw - NEMwMDY5MDA2MjAwNzIwMDY1MDA0RjAwNjYwMDY2MDA2OTAwNjMwMDY1MDAy - MDAwMzUwMDJFMDAzMj4KL0NyZWF0aW9uRGF0ZShEOjIwMTcwNTE2MTUyNjA0 - LTA2JzAwJyk+PgplbmRvYmoKCnhyZWYKMCAxNAowMDAwMDAwMDAwIDY1NTM1 - IGYgCjAwMDAwMDYxNjUgMDAwMDAgbiAKMDAwMDAwMDAxOSAwMDAwMCBuIAow - MDAwMDAwMTk0IDAwMDAwIG4gCjAwMDAwMDYzMDggMDAwMDAgbiAKMDAwMDAw - MDIxNCAwMDAwMCBuIAowMDAwMDA1MzUwIDAwMDAwIG4gCjAwMDAwMDUzNzEg - MDAwMDAgbiAKMDAwMDAwNTU2NiAwMDAwMCBuIAowMDAwMDA1ODkxIDAwMDAw - IG4gCjAwMDAwMDYwNzggMDAwMDAgbiAKMDAwMDAwNjExMCAwMDAwMCBuIAow - MDAwMDA2NDA3IDAwMDAwIG4gCjAwMDAwMDY1MDQgMDAwMDAgbiAKdHJhaWxl - cgo8PC9TaXplIDE0L1Jvb3QgMTIgMCBSCi9JbmZvIDEzIDAgUgovSUQgWyA8 - RUYwMDJGOTBERUYwNkIyRURDMDA4QkE0QTQwMkVCNkM+CjxFRjAwMkY5MERF - RjA2QjJFREMwMDhCQTRBNDAyRUI2Qz4gXQovRG9jQ2hlY2tzdW0gL0FGRjM4 - REM2NjIwMjY0N0EyNDQxRDE3MDJGNkVCRUU0Cj4+CnN0YXJ0eHJlZgo2Njc5 - CiUlRU9GCg== - http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + encoding: UTF-8 + base64_string: | + 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 + VxIaxh6+TFqZjdb/CzDboD2V/y+lMq2U756YercUz+gkLe09Yp4OBp6QAe0f + JJ6vZhgTNkt+Ncj3i+T9KulRRllpbpBC3y15fo30YAtJCKB8Q+LtVYK20qPV + SN7ebz1rL0Y8ppv03l58lkiv/Yi8Okm4U61430Xrs1KXWZ+3kHoq4yPp7Zen + KE+v7F6TXsF77lSMsId3yPJisTS+9NXn961wtvviYdeLXZI3E8WDh5DvxQBl + sDMogY6Tlustq2LZx/z1k4C352CbtpGu+VlfJnv4WF6dpNWslcSHwdG0VrDc + RGsJ280hzNwrxDRqssySGyVPe2K2R48j82lqnyd5Xn/gGV9ePyPv70mLPQWj + wHo7CbH5E8RUtO97zfr8hLwPJnGoVGWG+PSXNNmKQcmOetwS0EG1S+JfJSb4 + cSmu9cdjkM982iKmWLo4ZHKUPSONUG8SqjsHA5RBYC+cJ417aBrPRq57571B + fyr9tY5iF58hXW420k/tksQz3TODoDctVU0bpVUeB/yD5E2XLBuUijR5Xikt + +E3SmEy3TNVDSD8fM0Zs/23SKIZxNGnp41WKSXYtsNQanwXJl2p08YH0nJPE + dGwMWAaBCeT1OkOT2P7eILqa9PK4+1OYP7bbe3WS3sB7xp3STT+fwjPi1yBL + phW2itaz1F3J7cj2RhnveUenvCgOkjfFHu9Pdica7BMzZWiSitxGBuy1Msi+ + Ulrdm6zyGpzEsqiW8O6UsV6Yw7I+tnrxZOUTFtdiFF9/m8TczxSPXklIletJ + H7NkHNTXMmUzlUFgAq2TMchVJFQ/q4ELrPHJNilUu8u3W66tUvG9DPcEG+1C + fkzCONJqSS+xWnrPZOuQxLbeYLUU3TGnrlVYvYzX9fa3SNRGxm8zk/SEJOmp + kmGmjKkeE3Our8Rlvwxwb8fMfGdqwJKZ0Y9LjzvM55zxWkZvXmkn8K5VEWdI + 43SNdd9pkt+9JG6eeEjfgPHZKI3DZVYv1M1yGlSmyKfKND33LuueuhT57Y/H + k5KGMdZvF1kESlV2lb44+eM1V+pVdYgyCOXGXiA2/Y3iUeoviWkSYrwnBVYn + CawRVyrSRe+VDBshY4zOYtqMEMavkNZ8n5g+9cL8GTJg3iuD/V6S0BXiedos + n1dJWPVCoLeE8AN9ptW7kuHtxcxaZHmzRoqnsVbSs15IMUIKqJHWh9o2S+Y3 + iev2ahlsnyzP+zfSn+rmPbOPjCHXWY6S9yTtN0leDsEcJrVZxjmdpSE6Ue7/ + TxIqOx9I4zNWxg1rSMgJnyrk7ib5US+E+1TSMFamI7bT8hzWhVLuN8pURm8p + n56S13VSxu/KM78prt8VVqtujz0vkDT1AP5XyLhX8vhyKbsucu06a3yzVPJk + tDXFsFbCusKamlgr6TlPGtdGif+lUkc+lms8C6ib1AX7EOV0ZeDg4ODg4ODg + 4ODg4ODg4OAQDv8P9LRKxM4Tk9wAAAAASUVORK5CYII= + http_version: + recorded_at: Fri, 16 Mar 2018 21:06:21 GMT - request: method: get - uri: http://www.example.com:8983/solr/test/select?fl=id&q=accessTo_ssim:9p2909328&wt=json + uri: http://www.example.com:8080/fcrepo/rest/test/85/64/44/b6/856444b6-8dd5-4dfa-857d-435e354a2ead/files/04bb7928-cc5d-4338-8062-3209274b29da/fcr:fixity body: encoding: US-ASCII string: '' @@ -880,34 +2174,74 @@ http_interactions: Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - - "*/*" + - text/rdf+n3 User-Agent: - Ruby Host: - - www.example.com:8983 + - www.example.com:8080 + Authorization: + - Basic ZmVkb3JhQWRtaW46ZmVkb3JhQWRtaW4= response: status: code: 200 - message: OK + message: '' headers: - Last-Modified: - - Tue, 16 May 2017 21:36:29 GMT - Etag: - - '"NWE0MDAwMDAwMDAwMDAwMFNvbHI="' Content-Type: - - application/json; charset=UTF-8 - Transfer-Encoding: - - chunked + - text/rdf+n3;charset=utf-8 + Content-Length: + - '2661' + Date: + - Fri, 16 Mar 2018 21:06:20 GMT body: encoding: UTF-8 - string: '{"responseHeader":{"status":0,"QTime":1,"params":{"q":"accessTo_ssim:9p2909328","fl":"id","wt":"json"}},"response":{"numFound":3,"start":0,"docs":[{"id":"ffd40638-290a-41f7-bcb2-4e0e54fc3ffd"},{"id":"ef4319c0-2f7a-44c0-b1b5-cd650aa4a075"},{"id":"e1910293-34b3-42bb-9179-f67f37eb145e"}]},"facet_counts":{"facet_queries":{},"facet_fields":{"active_fedora_model_ssi":["Hydra::AccessControls::Permission",3],"object_type_si":[]},"facet_dates":{},"facet_ranges":{},"facet_intervals":{}},"spellcheck":{"suggestions":["correctlySpelled",true]}} + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . -' - http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + + a premis:EventOutcomeDetail , premis:Fixity ; + premis:hasEventOutcome "SUCCESS"^^ ; + premis:hasMessageDigest ; + premis:hasSize "5612"^^ . + + + premis:hasFixity . + http_version: + recorded_at: Fri, 16 Mar 2018 21:06:21 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/ff/d4/06/38/ffd40638-290a-41f7-bcb2-4e0e54fc3ffd + uri: http://www.example.com:8080/fcrepo/rest/test/83/79/77/d6/837977d6-de61-49ea-a912-a65af5c9005e body: encoding: US-ASCII string: '' @@ -925,12 +2259,12 @@ http_interactions: response: status: code: 200 - message: OK + message: '' headers: Etag: - - '"565c1476d8c61889f49e2a6aff91113e3c3489d6"' + - W/"0e6ac801924725695dfc56a1db7f32f0dbda9163" Last-Modified: - - Tue, 16 May 2017 21:26:58 GMT + - Fri, 09 Mar 2018 18:53:33 GMT Link: - ;rel="type" - ;rel="type" @@ -938,7 +2272,7 @@ http_interactions: Accept-Patch: - application/sparql-update Accept-Post: - - text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,multipart/form-data,application/sparql-update + - text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,application/ld+json,multipart/form-data,application/sparql-update Allow: - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS Preference-Applied: @@ -946,58 +2280,72 @@ http_interactions: Vary: - Accept, Range, Accept-Encoding, Accept-Language - Prefer - Content-Length: - - '3759' Content-Type: - - text/rdf+n3 + - text/rdf+n3;charset=utf-8 + Content-Length: + - '4145' + Date: + - Fri, 16 Mar 2018 21:06:20 GMT body: encoding: UTF-8 - string: "@prefix premis: .\n@prefix nt: - .\n@prefix rdfs: - .\n@prefix ns004: .\n@prefix ns003: - .\n@prefix ns002: .\n@prefix - ns001: .\n@prefix xsi: - .\n@prefix ns008: .\n@prefix mode: - .\n@prefix ns007: .\n@prefix ns006: - .\n@prefix ns005: - .\n@prefix xml: .\n@prefix ns009: - .\n@prefix fedoraconfig: .\n@prefix - mix: .\n@prefix foaf: - .\n@prefix image: .\n@prefix sv: - .\n@prefix test: .\n@prefix ns011: - .\n@prefix ns010: .\n@prefix - ns015: .\n@prefix ns014: - .\n@prefix ns013: .\n@prefix ns012: - .\n@prefix rdf: .\n@prefix fedora: - .\n@prefix ldp: - .\n@prefix xs: .\n@prefix dc: - .\n\n\n - a ldp:RDFSource , ldp:Container , , - , - , , fedora:Container , fedora:Resource - , fedora:Resource , , - , ;\n\tns005:accessTo - ;\n\tfedora:lastModifiedBy \"bypassAdmin\"^^ - ;\n\tfedora:uuid \"5500b30e-8181-49b7-8322-6d71545942cf\"^^ - ;\n\tfedora:createdBy \"bypassAdmin\"^^ - ;\n\tfedora:primaryType \"nt:folder\"^^ - ;\n\tfedora:created \"2017-05-16T21:26:58.414Z\"^^ - ;\n\tfedora:mixinTypes \"fedora:Container\"^^ - , \"fedora:Resource\"^^ ;\n\tfedora:lastModified - \"2017-05-16T21:26:58.414Z\"^^ - ;\n\tns005:mode ns005:Write ;\n\tns001:hasModel \"Hydra::AccessControls::Permission\"^^ - ;\n\tns005:agent - ;\n\tfedora:writable \"true\"^^ - ;\n\tfedora:hasParent ;\n\tfedora:exportsAs - - .\n\n - dc:format .\n\n - rdfs:label \"jcr/xml\"^^ .\n" - http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + a fedora:Container , ldp:RDFSource , ns005:Object , fedora:Resource , ns007:FileSet , ldp:Container ; + fedora:created "2018-03-09T18:53:33.018Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:33.375Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ns005:hasFile ; + ns005:memberOf ; + ns003:accessRights "http://terms.library.ualberta.ca/public"^^ ; + ns003:title "image-sample.jpeg"^^ ; + ns002:owner 2705 ; + ns010:recordCreatedInJupiter "2018-03-09T18:53:32.996Z"^^ ; + ns010:sitemapLink ""^^ ; + ebucore:dateIngested "2018-03-09T18:53:32.996Z"^^ ; + ldp:contains , ; + ns001:hasModel "IRFileSet"^^ . + http_version: + recorded_at: Fri, 16 Mar 2018 21:06:21 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/ef/43/19/c0/ef4319c0-2f7a-44c0-b1b5-cd650aa4a075 + uri: http://www.example.com:8080/fcrepo/rest/test/83/79/77/d6/837977d6-de61-49ea-a912-a65af5c9005e/files/956ee84b-ef1a-4e1e-955e-0707e34df4b8/fcr:metadata body: encoding: US-ASCII string: '' @@ -1015,20 +2363,19 @@ http_interactions: response: status: code: 200 - message: OK + message: '' headers: Etag: - - '"d017b399c2b892eec7230039d70280fe33a0cc12"' + - W/"b499b8236cd14853e2b5541a35776a7a19702787" Last-Modified: - - Tue, 16 May 2017 21:28:47 GMT + - Fri, 09 Mar 2018 18:53:35 GMT Link: - - ;rel="type" - - ;rel="type" + - ; + rel="describes" + - ;rel="type" - ;rel="type" Accept-Patch: - application/sparql-update - Accept-Post: - - text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,multipart/form-data,application/sparql-update Allow: - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS Preference-Applied: @@ -1036,57 +2383,81 @@ http_interactions: Vary: - Accept, Range, Accept-Encoding, Accept-Language - Prefer - Content-Length: - - '3744' Content-Type: - - text/rdf+n3 + - text/rdf+n3;charset=utf-8 + Content-Length: + - '4555' + Date: + - Fri, 16 Mar 2018 21:06:21 GMT body: encoding: UTF-8 - string: "@prefix premis: .\n@prefix nt: - .\n@prefix rdfs: - .\n@prefix ns004: .\n@prefix ns003: - .\n@prefix ns002: .\n@prefix - ns001: .\n@prefix xsi: - .\n@prefix ns008: .\n@prefix mode: - .\n@prefix ns007: .\n@prefix ns006: - .\n@prefix ns005: - .\n@prefix xml: .\n@prefix ns009: - .\n@prefix fedoraconfig: .\n@prefix - mix: .\n@prefix foaf: - .\n@prefix image: .\n@prefix sv: - .\n@prefix test: .\n@prefix ns011: - .\n@prefix ns010: .\n@prefix - ns015: .\n@prefix ns014: - .\n@prefix ns013: .\n@prefix ns012: - .\n@prefix rdf: .\n@prefix fedora: - .\n@prefix ldp: - .\n@prefix xs: .\n@prefix dc: - .\n\n\n - a ldp:RDFSource , ldp:Container , , - , - , , fedora:Container , fedora:Resource - , fedora:Resource , , - , ;\n\tns005:accessTo - ;\n\tfedora:lastModifiedBy \"bypassAdmin\"^^ - ;\n\tfedora:uuid \"73139ad6-d9d3-4e09-bc6a-639577686454\"^^ - ;\n\tfedora:createdBy \"bypassAdmin\"^^ - ;\n\tfedora:primaryType \"nt:folder\"^^ - ;\n\tfedora:created \"2017-05-16T21:28:47.376Z\"^^ - ;\n\tfedora:mixinTypes \"fedora:Container\"^^ - , \"fedora:Resource\"^^ ;\n\tfedora:lastModified - \"2017-05-16T21:28:47.376Z\"^^ - ;\n\tns005:mode ns005:Read ;\n\tns001:hasModel \"Hydra::AccessControls::Permission\"^^ - ;\n\tns005:agent ;\n\tfedora:writable - \"true\"^^ ;\n\tfedora:hasParent - ;\n\tfedora:exportsAs - .\n\n - dc:format .\n\n - rdfs:label \"jcr/xml\"^^ .\n" - http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + a ldp:NonRDFSource , ns005:File , fedora:Binary , ns011:OriginalFile , fedora:Resource ; + fedora:created "2018-03-09T18:53:33.16Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasFixityService ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:35.73Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ns017:valid "true"^^ ; + ns017:wellFormed "true"^^ ; + ns019:compressionScheme "JPEG"^^ ; + ns018:byteOrder "big endian"^^ ; + ebucore:fileSize "12401"^^ ; + ebucore:filename "image-sample.jpeg"^^ ; + ebucore:hasMimeType "image/jpeg"^^ ; + ebucore:height "183"^^ ; + ebucore:width "276"^^ ; + ns014:describedby ; + premis:hasCreatingApplicationVersion + "1.2.0"^^ ; + premis:hasFormatName "JPEG File Interchange Format"^^ ; + premis:hasMessageDigest ; + premis:hasSize "12401"^^ ; + ns016:hashValue "71179c73ffd133cf0f25e3f7b3572ef7"^^ ; + ns015:colorSpace "YCbCr"^^ ; + ns015:exifVersion "10.00"^^ . + http_version: + recorded_at: Fri, 16 Mar 2018 21:06:21 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/e1/91/02/93/e1910293-34b3-42bb-9179-f67f37eb145e + uri: http://www.example.com:8080/fcrepo/rest/test/83/79/77/d6/837977d6-de61-49ea-a912-a65af5c9005e/files/956ee84b-ef1a-4e1e-955e-0707e34df4b8 body: encoding: US-ASCII string: '' @@ -1094,7 +2465,7 @@ http_interactions: Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - - text/rdf+n3 + - "*/*" User-Agent: - Ruby Host: @@ -1104,76 +2475,390 @@ http_interactions: response: status: code: 200 - message: OK + message: '' headers: Etag: - - '"082f136e28c8d10a7030ae5f53c0fe4cf2a81c01"' + - '"25ab58161ecfa406e4767f24ccec58dd7b7d8f8c"' + - '"25ab58161ecfa406e4767f24ccec58dd7b7d8f8c"' Last-Modified: - - Tue, 16 May 2017 21:28:47 GMT + - Fri, 09 Mar 2018 18:53:33 GMT + - Fri, 09 Mar 2018 18:53:33 GMT + Accept-Ranges: + - bytes + Content-Disposition: + - attachment; filename="image-sample.jpeg"; creation-date="Fri, 09 Mar 2018 + 18:53:33 GMT"; modification-date="Fri, 09 Mar 2018 18:53:35 GMT"; size=12401 Link: - - ;rel="type" - - ;rel="type" + - ; + rel="describedby" + - ;rel="type" - ;rel="type" - Accept-Patch: - - application/sparql-update - Accept-Post: - - text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,multipart/form-data,application/sparql-update Allow: - - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS - Preference-Applied: - - return=representation - Vary: - - Accept, Range, Accept-Encoding, Accept-Language - - Prefer - Content-Length: - - '3852' + - DELETE,HEAD,GET,PUT,OPTIONS + Cache-Control: + - no-transform, must-revalidate, max-age=0 Content-Type: + - image/jpeg + Content-Length: + - '12401' + Date: + - Fri, 16 Mar 2018 21:06:21 GMT + body: + encoding: UTF-8 + base64_string: | + /9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxMTEhUTExIWFhUXGBobGBgY + GRcfIBsiHR0aHR0aGhseHyggGhslGxkaITEhJSkrLi4uHh8zODMsNygtLi0B + CgoKDg0OGhAQGi0lICUtLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tN//AABEIALcBFAMBIgACEQEDEQH/xAAcAAAC + AgMBAQAAAAAAAAAAAAAFBgMEAAIHAQj/xAA+EAABAgQEAwYEBQMCBgMAAAAB + AhEAAyExBAUSQVFhcQYTIoGRoTKxwfAjQlLR4QcU8TNiQ3KCkrLCFRa0/8QA + GAEAAwEBAAAAAAAAAAAAAAAAAAECAwT/xAAjEQACAgIDAQABBQAAAAAAAAAA + AQIREiEDMUFRMhMiUmGB/9oADAMBAAIRAxEAPwDm65RdqA8ONI9/szp1AWNe + ZP0joistl4iXpZKZgT8TMW09PeEzMsmm4ctqOg1dqUvGSlZimwfi8JY6QBT3 + itJw4D6ri1vtovSZM1aSEp1Vbnxtf2j04LSHXqBFwUtfnFXQ7ZNkuXoVOSRV + KDqqwtYtc1aNs61d7MWAwcCzM1L8yHglkGKSVaAA4QoAtU1dqXvE2GyJTeNZ + 0rGpKQ/iIIormA/SsKxv8SHJ56u70qFdnNWHXrfrBLJcMkhSikVGoHSksKiw + Ll/WJcVlE2bLUmQlS1UBICiEubg8WDcgeMWZHZ3EykpQmWsFPjUo11Bw6QX8 + INYl20OSxVL/AErr7n8VKkgJJcgp2AFU0p4triFFWBNCFJuWsAKmnX25w75t + kOMVMWRJUpJHhISAeNtT0gZJ7N4paVAJUpQD6QA7v8NFODf0iVFoyp3oWVSv + DUhnZum/BoYsuyGWqUguRMNdRAZIrYdCDXlziTCYOUhRK5RVMQVMVUB4DSaE + ggj96RJhMQnRpmFTlQ0uaivi1XcFqfzDfQMc5OWAS2UkKGmqhpBDA7NZ9niP + EpSqR3ktCVTEp0p0gAAqYVcbEB+kB8NidZdBKZqEksbF9mtV+G8FE5kCTIYD + w/iKBZiaMOZcF/KMH2Kyp2hwcxMhIlFJKm1DSNSnuAR8NntAnNc3CUJlyChR + AVrOh2YfCFM9gXAERdpkT8MoGWtJSUFKSo1HFVTVZfm0J2GkrJ0rmadTF3Ll + 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 + bU2GRkAhZzxYEwfiIql6BfE8UxkZGQCP/9k= + http_version: + recorded_at: Fri, 16 Mar 2018 21:06:21 GMT +- request: + method: get + uri: http://www.example.com:8080/fcrepo/rest/test/83/79/77/d6/837977d6-de61-49ea-a912-a65af5c9005e/files/956ee84b-ef1a-4e1e-955e-0707e34df4b8/fcr:fixity + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: - text/rdf+n3 + User-Agent: + - Ruby + Host: + - www.example.com:8080 + Authorization: + - Basic ZmVkb3JhQWRtaW46ZmVkb3JhQWRtaW4= + response: + status: + code: 200 + message: '' + headers: + Content-Type: + - text/rdf+n3;charset=utf-8 + Content-Length: + - '2662' + Date: + - Fri, 16 Mar 2018 21:06:21 GMT body: encoding: UTF-8 - string: "@prefix premis: .\n@prefix nt: - .\n@prefix rdfs: - .\n@prefix ns004: .\n@prefix ns003: - .\n@prefix ns002: .\n@prefix - ns001: .\n@prefix xsi: - .\n@prefix ns008: .\n@prefix mode: - .\n@prefix ns007: .\n@prefix ns006: - .\n@prefix ns005: - .\n@prefix xml: .\n@prefix ns009: - .\n@prefix fedoraconfig: .\n@prefix - mix: .\n@prefix foaf: - .\n@prefix image: .\n@prefix sv: - .\n@prefix test: .\n@prefix ns011: - .\n@prefix ns010: .\n@prefix - ns015: .\n@prefix ns014: - .\n@prefix ns013: .\n@prefix ns012: - .\n@prefix rdf: .\n@prefix fedora: - .\n@prefix ldp: - .\n@prefix xs: .\n@prefix dc: - .\n\n\n - a ldp:RDFSource , ldp:Container , , - , - , , fedora:Container , fedora:Resource - , fedora:Resource , , - , ;\n\tns005:accessTo - ;\n\tfedora:lastModifiedBy \"bypassAdmin\"^^ - ;\n\tfedora:uuid \"d0bfd66b-64ae-4c73-9b8d-eaef81fe1394\"^^ - ;\n\tfedora:createdBy \"bypassAdmin\"^^ - ;\n\tfedora:primaryType \"nt:folder\"^^ - ;\n\tfedora:created \"2017-05-16T21:28:47.72Z\"^^ - ;\n\tfedora:mixinTypes \"fedora:Container\"^^ - , \"fedora:Resource\"^^ ;\n\tfedora:lastModified - \"2017-05-16T21:28:47.72Z\"^^ ;\n\tns005:mode - ns005:Read ;\n\tns001:hasModel \"Hydra::AccessControls::Permission\"^^ - ;\n\tns005:agent - ;\n\tfedora:writable \"true\"^^ - ;\n\tfedora:hasParent .\n\n - dc:format .\n\n - fedora:exportsAs - .\n\n rdfs:label \"jcr/xml\"^^ - .\n" - http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + premis:hasFixity . + + + a premis:EventOutcomeDetail , premis:Fixity ; + premis:hasEventOutcome "SUCCESS"^^ ; + premis:hasMessageDigest ; + premis:hasSize "12401"^^ . + http_version: + recorded_at: Wed, 07 Jun 2017 20:55:44 GMT - request: method: get uri: http://example.com:8080/auth/v1.0 @@ -1264,7 +2949,7 @@ http_interactions: recorded_at: Wed, 07 Jun 2017 20:55:44 GMT - request: method: head - uri: http://example.com:8080/v1/AUTH_test/ERA/9p2909328 + uri: http://example.com:8080/v1/AUTH_test/ERA/6841cece-41f1-4edf-ab9a-59459a127c77 body: encoding: US-ASCII string: '' @@ -1287,7 +2972,7 @@ http_interactions: message: OK headers: X-Object-Meta-Project-Id: - - 9p2909328 + - 6841cece-41f1-4edf-ab9a-59459a127c77 Content-Length: - '66560' X-Object-Meta-Aip-Version: @@ -1319,7 +3004,7 @@ http_interactions: recorded_at: Wed, 07 Jun 2017 20:55:44 GMT - request: method: head - uri: http://example.com:8080/v1/AUTH_test/ERA/9p2909328 + uri: http://example.com:8080/v1/AUTH_test/ERA/6841cece-41f1-4edf-ab9a-59459a127c77 body: encoding: US-ASCII string: '' @@ -1342,7 +3027,7 @@ http_interactions: message: OK headers: X-Object-Meta-Project-Id: - - 9p2909328 + - 6841cece-41f1-4edf-ab9a-59459a127c77 Content-Length: - '66560' X-Object-Meta-Aip-Version: @@ -1374,7 +3059,7 @@ http_interactions: recorded_at: Wed, 07 Jun 2017 20:55:44 GMT - request: method: put - uri: http://example.com:8080/v1/AUTH_test/ERA/9p2909328 + uri: http://example.com:8080/v1/AUTH_test/ERA/6841cece-41f1-4edf-ab9a-59459a127c77 body: encoding: ASCII-8BIT string: !binary |- @@ -2876,7 +4561,7 @@ http_interactions: X-Object-Meta-Project: - ERA X-Object-Meta-Project-Id: - - 9p2909328 + - 6841cece-41f1-4edf-ab9a-59459a127c77 X-Object-Meta-Promise: - bronze X-Object-Meta-Aip-Version: @@ -2911,7 +4596,7 @@ http_interactions: recorded_at: Wed, 07 Jun 2017 20:55:44 GMT - request: method: head - uri: http://example.com:8080/v1/AUTH_test/ERA/9p2909328 + uri: http://example.com:8080/v1/AUTH_test/ERA/6841cece-41f1-4edf-ab9a-59459a127c77 body: encoding: US-ASCII string: '' @@ -2934,7 +4619,7 @@ http_interactions: message: OK headers: X-Object-Meta-Project-Id: - - 9p2909328 + - 6841cece-41f1-4edf-ab9a-59459a127c77 Content-Length: - '66560' X-Object-Meta-Aip-Version: @@ -2966,7 +4651,7 @@ http_interactions: recorded_at: Wed, 07 Jun 2017 20:55:44 GMT - request: method: head - uri: http://example.com:8080/v1/AUTH_test/ERA/9p2909328 + uri: http://example.com:8080/v1/AUTH_test/ERA/6841cece-41f1-4edf-ab9a-59459a127c77 body: encoding: US-ASCII string: '' @@ -2989,7 +4674,7 @@ http_interactions: message: OK headers: X-Object-Meta-Project-Id: - - 9p2909328 + - 6841cece-41f1-4edf-ab9a-59459a127c77 Content-Length: - '66560' X-Object-Meta-Aip-Version: @@ -3021,7 +4706,7 @@ http_interactions: recorded_at: Wed, 07 Jun 2017 20:55:44 GMT - request: method: head - uri: http://example.com:8080/v1/AUTH_test/ERA/9p2909328 + uri: http://example.com:8080/v1/AUTH_test/ERA/6841cece-41f1-4edf-ab9a-59459a127c77 body: encoding: US-ASCII string: '' @@ -3044,7 +4729,7 @@ http_interactions: message: OK headers: X-Object-Meta-Project-Id: - - 9p2909328 + - 6841cece-41f1-4edf-ab9a-59459a127c77 Content-Length: - '66560' X-Object-Meta-Aip-Version: @@ -3076,7 +4761,7 @@ http_interactions: recorded_at: Wed, 07 Jun 2017 20:55:44 GMT - request: method: head - uri: http://example.com:8080/v1/AUTH_test/ERA/9p2909328 + uri: http://example.com:8080/v1/AUTH_test/ERA/6841cece-41f1-4edf-ab9a-59459a127c77 body: encoding: US-ASCII string: '' @@ -3099,7 +4784,7 @@ http_interactions: message: OK headers: X-Object-Meta-Project-Id: - - 9p2909328 + - 6841cece-41f1-4edf-ab9a-59459a127c77 Content-Length: - '66560' X-Object-Meta-Aip-Version: @@ -3131,7 +4816,7 @@ http_interactions: recorded_at: Wed, 07 Jun 2017 20:55:44 GMT - request: method: head - uri: http://example.com:8080/v1/AUTH_test/ERA/9p2909328 + uri: http://example.com:8080/v1/AUTH_test/ERA/6841cece-41f1-4edf-ab9a-59459a127c77 body: encoding: US-ASCII string: '' @@ -3154,7 +4839,7 @@ http_interactions: message: OK headers: X-Object-Meta-Project-Id: - - 9p2909328 + - 6841cece-41f1-4edf-ab9a-59459a127c77 Content-Length: - '66560' X-Object-Meta-Aip-Version: @@ -3186,7 +4871,7 @@ http_interactions: recorded_at: Wed, 07 Jun 2017 20:55:44 GMT - request: method: head - uri: http://example.com:8080/v1/AUTH_test/ERA/9p2909328 + uri: http://example.com:8080/v1/AUTH_test/ERA/6841cece-41f1-4edf-ab9a-59459a127c77 body: encoding: US-ASCII string: '' @@ -3209,7 +4894,7 @@ http_interactions: message: OK headers: X-Object-Meta-Project-Id: - - 9p2909328 + - 6841cece-41f1-4edf-ab9a-59459a127c77 Content-Length: - '66560' X-Object-Meta-Aip-Version: @@ -3241,7 +4926,7 @@ http_interactions: recorded_at: Wed, 07 Jun 2017 20:55:44 GMT - request: method: head - uri: http://example.com:8080/v1/AUTH_test/ERA/9p2909328 + uri: http://example.com:8080/v1/AUTH_test/ERA/6841cece-41f1-4edf-ab9a-59459a127c77 body: encoding: US-ASCII string: '' @@ -3264,7 +4949,7 @@ http_interactions: message: OK headers: X-Object-Meta-Project-Id: - - 9p2909328 + - 6841cece-41f1-4edf-ab9a-59459a127c77 Content-Length: - '66560' X-Object-Meta-Aip-Version: @@ -3293,5 +4978,104 @@ http_interactions: encoding: UTF-8 string: '' http_version: - recorded_at: Wed, 07 Jun 2017 20:55:44 GMT -recorded_with: VCR 3.0.3 + recorded_at: Fri, 16 Mar 2018 21:06:21 GMT +- request: + method: get + uri: http://www.example.com:8080/fcrepo/rest/test/85/64/44/b6/856444b6-8dd5-4dfa-857d-435e354a2ead/files/e1bc671b-b3ce-4f9f-9596-df3cad1d84bb/fcr:metadata + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - text/rdf+n3 + User-Agent: + - Ruby + Host: + - www.example.com:8080 + Authorization: + - Basic ZmVkb3JhQWRtaW46ZmVkb3JhQWRtaW4= + response: + status: + code: 200 + message: '' + headers: + Etag: + - W/"2c4f281be4b1756e9ce34f5598b6ac3d1aed8f8e" + Last-Modified: + - Fri, 09 Mar 2018 18:53:39 GMT + Link: + - ; + rel="describes" + - ;rel="type" + - ;rel="type" + Accept-Patch: + - application/sparql-update + Allow: + - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS + Preference-Applied: + - return=representation + Vary: + - Accept, Range, Accept-Encoding, Accept-Language + - Prefer + Content-Type: + - text/rdf+n3;charset=utf-8 + Content-Length: + - '3433' + Date: + - Fri, 16 Mar 2018 15:35:08 GMT + body: + encoding: UTF-8 + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + a ns005:File , fedora:Binary , ldp:NonRDFSource , ns011:ThumbnailImage , fedora:Resource ; + fedora:created "2018-03-09T18:53:39.163Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasFixityService ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:39.189Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ebucore:filename ""^^ ; + ebucore:hasMimeType "image/jpeg"^^ ; + ns014:describedby ; + premis:hasMessageDigest ; + premis:hasSize "6602"^^ . + http_version: + recorded_at: Fri, 16 Mar 2018 15:35:09 GMT +recorded_with: VCR 4.0.0 diff --git a/spec/support/http_cache/vcr/aip_downloader_run.yml b/spec/support/http_cache/vcr/aip_downloader_run.yml index 257c990..72e74a2 100644 --- a/spec/support/http_cache/vcr/aip_downloader_run.yml +++ b/spec/support/http_cache/vcr/aip_downloader_run.yml @@ -2,7 +2,7 @@ http_interactions: - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328 + uri: http://www.example.com:8080/fcrepo/rest/test/68/41/ce/ce/6841cece-41f1-4edf-ab9a-59459a127c77 body: encoding: US-ASCII string: '' @@ -20,12 +20,12 @@ http_interactions: response: status: code: 200 - message: OK + message: '' headers: Etag: - - '"1539d6331ef8a9b918b8b748fdd4f9593111f5de"' + - W/"4238732dd789ae249c0201fa7e124dfa78e5fce2" Last-Modified: - - Tue, 16 May 2017 21:28:55 GMT + - Fri, 09 Mar 2018 18:53:38 GMT Link: - ;rel="type" - ;rel="type" @@ -33,7 +33,7 @@ http_interactions: Accept-Patch: - application/sparql-update Accept-Post: - - text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,multipart/form-data,application/sparql-update + - text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,application/ld+json,multipart/form-data,application/sparql-update Allow: - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS Preference-Applied: @@ -41,140 +41,204 @@ http_interactions: Vary: - Accept, Range, Accept-Encoding, Accept-Language - Prefer - Content-Length: - - '5694' Content-Type: - - text/rdf+n3 + - text/rdf+n3;charset=utf-8 + Content-Length: + - '7518' + Date: + - Fri, 16 Mar 2018 15:35:08 GMT body: encoding: UTF-8 - string: "@prefix premis: .\n@prefix nt: - .\n@prefix rdfs: - .\n@prefix ns004: .\n@prefix ns003: - .\n@prefix ns002: .\n@prefix - ns001: .\n@prefix xsi: - .\n@prefix ns008: .\n@prefix mode: - .\n@prefix ns007: .\n@prefix ns006: - .\n@prefix ns005: - .\n@prefix xml: .\n@prefix ns009: - .\n@prefix fedoraconfig: .\n@prefix - mix: .\n@prefix foaf: - .\n@prefix image: .\n@prefix sv: - .\n@prefix test: .\n@prefix ns011: - .\n@prefix ns010: .\n@prefix - ns015: .\n@prefix ns014: - .\n@prefix ns013: .\n@prefix ns012: - .\n@prefix rdf: .\n@prefix fedora: - .\n@prefix ldp: - .\n@prefix xs: .\n@prefix dc: - .\n\n\n - a ldp:RDFSource , ldp:Container , , - , - , , fedora:Container , fedora:Resource - , fedora:Resource , , - , ;\n\tfedora:lastModifiedBy - \"bypassAdmin\"^^ ;\n\tns001:createdDate - \"2017-05-16T21:26:37.782051115Z\"^^ - ;\n\tns001:downloadFilename \"whatever.pdf\"^^ - ;\n\tns002:hasCollectionId \"br86b356q\"^^ - ;\n\tns006:doi \"doi:10.5072/FK29G5PB8V\"^^ - ;\n\tns004:isVersionOf \"\"^^ ;\n\tfedora:createdBy - \"bypassAdmin\"^^ ;\n\tns002:year_created - \"2017\"^^ ;\n\tfedora:created \"2017-05-16T21:26:56.326Z\"^^ - ;\n\tfedora:lastModified \"2017-05-16T21:28:55.135Z\"^^ - ;\n\tns004:subject \"Sarcasm\"^^ - ;\n\tns004:modified \"2017-05-16T21:26:37.782051115Z\"^^ - ;\n\tns015:relativePath \"\"^^ ;\n\tns004:license - \"http://creativecommons.org/licenses/by/4.0/\"^^ - ;\n\tfedora:uuid \"22d19a70-fa3c-4944-9418-4c59e3893b87\"^^ - ;\n\tns004:rights \"\"^^ ;\n\tns001:hasModel - \"GenericFile\"^^ ;\n\tns010:isPartOf - ;\n\tns004:creator - \"Chris Want\"^^ ;\n\tns003:dpt \"dittest@ualberta.ca\"^^ - ;\n\tfedora:primaryType \"nt:folder\"^^ - ;\n\tfedora:mixinTypes \"fedora:Container\"^^ - , \"fedora:Resource\"^^ ;\n\tns004:created - \"2017/01/01\"^^ ;\n\t - \"available\"^^ ;\n\tns002:belongsToCommunity - \"6682x392q\"^^ ;\n\tns004:description - \"Test PDF\"^^ ;\n\tns004:language - \"English\"^^ ;\n\tns004:source \"\"^^ - ;\n\tns004:title \"Whatever\"^^ ;\n\tns004:type - \"Book Chapter\"^^ ;\n\tns002:hasCollection - \"Technical Reports\"^^ ;\n\tns004:relation - \"\"^^ ;\n\tfedora:writable \"true\"^^ - ;\n\tfedora:hasParent ;\n\tldp:contains - - , - , - .\n\n - dc:format .\n\n - fedora:exportsAs - .\n\n rdfs:label \"jcr/xml\"^^ - .\n" + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + a ldp:RDFSource , fedora:Resource , fedora:Container , ldp:Container , ns005:Object , ns002:Thesis ; + fedora:created "2018-03-09T18:53:29.983Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:38.862Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ns013:institution "http://id.loc.gov/authorities/names/n79058482"^^ ; + ns005:hasMember , , ; + ns005:memberOf , ; + ns012:doi "doi:bogus-2018-03-09T18:53:23.145Z"^^ ; + dc:rights "Share my stuff with everybody"^^ ; + dc:subject "Dog"^^ , "Mondo"^^ ; + ns003:abstract "In corrupti laboriosam delectus quisquam dolores possimus eveniet rerum dolores soluta vero et minima illo velit quam tenetur harum ut"^^ ; + ns003:accessRights "http://terms.library.ualberta.ca/public"^^ ; + ns003:alternative "A full, holistic, dog-tastic approach"^^ ; + ns003:isVersionOf "The original laserdisc series from Orange-on-a-Blue-Background studios"^^ , "The CDROM titled 'Dogs!'"^^ ; + ns003:language "http://id.loc.gov/vocabulary/iso639-2/eng"^^ ; + ns003:title "An über-thesis about the effects of Samuel Smith’s Imperial IPA on dogs"^^ ; + ns002:degree "Master's of Marketing"^^ ; + ns002:owner 2705 ; + ns010:commiteeMember "I. Ron Stomach (Marketing)"^^ , "Howard I. No (Department of Everything)"^^ ; + ns010:department "Deparment of Marketing"^^ , "Department of Everything"^^ ; + ns010:departmentList "[\"Deparment of Marketing\",\"Department of Everything\"]"^^ ; + ns010:dissertant "Missy Sokoke"^^ ; + ns010:graduationDate "Fall 1976"^^ ; + ns010:path "86cf34a4-74f5-426b-a868-0e3686efee9c/f2667e8a-cfaa-4002-9246-35105f6325d4"^^ , "86cf34a4-74f5-426b-a868-0e3686efee9c/944b07fe-f0c5-497e-87de-24735fd4810e"^^ ; + ns010:recordCreatedInJupiter "2018-03-09T18:53:29.839Z"^^ ; + ns010:sortYear "1976"^^ ; + ns010:specialization "Marketing"^^ ; + ns010:supervisor "I. Ron Stomach (Department of Everything)"^^ , "Pepe C. Cola (Marketing)"^^ ; + ns010:supervisorList "[\"Pepe C. Cola (Marketing)\",\"I. Ron Stomach (Department of Everything)\"]"^^ ; + ns010:thesisLevel "Master's"^^ ; + ebucore:dateIngested "2018-03-09T18:53:29.839Z"^^ ; + ns014:first ; + ns014:last ; + ldp:contains , , ; + ns001:hasModel "IRThesis"^^ . http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + recorded_at: Fri, 16 Mar 2018 15:35:08 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/content/fcr:fixity + uri: http://www.example.com:8080/fcrepo/rest/test/68/41/ce/ce/6841cece-41f1-4edf-ab9a-59459a127c77/list_source body: encoding: US-ASCII string: '' headers: + Accept: + - text/n3, text/rdf+n3;q=0.2, application/rdf+n3;q=0.2, application/n-triples, + text/plain;q=0.2, */*;q=0.1 Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 - Accept: - - text/rdf+n3 User-Agent: - Ruby - Host: - - www.example.com:8080 - Authorization: - - Basic ZmVkb3JhQWRtaW46ZmVkb3JhQWRtaW4= response: status: code: 200 - message: OK + message: '' headers: - Content-Length: - - '2868' + Etag: + - W/"e3e778a3e6ad71b79c130bb60c29f904f58a90ea" + Last-Modified: + - Fri, 09 Mar 2018 18:53:38 GMT + Link: + - ;rel="type" + - ;rel="type" + - ;rel="type" + Accept-Patch: + - application/sparql-update + Accept-Post: + - text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,application/ld+json,multipart/form-data,application/sparql-update + Allow: + - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS + Preference-Applied: + - return=representation + Vary: + - Accept, Range, Accept-Encoding, Accept-Language + - Prefer Content-Type: - - text/rdf+n3 + - text/n3;charset=utf-8 + Content-Length: + - '5176' + Date: + - Fri, 16 Mar 2018 15:35:08 GMT body: encoding: UTF-8 - string: "@prefix premis: .\n@prefix nt: - .\n@prefix rdfs: - .\n@prefix ns004: .\n@prefix ns003: - .\n@prefix ns002: .\n@prefix - ns001: .\n@prefix xsi: - .\n@prefix ns008: .\n@prefix mode: - .\n@prefix ns007: .\n@prefix ns006: - .\n@prefix ns005: - .\n@prefix xml: .\n@prefix ns009: - .\n@prefix fedoraconfig: .\n@prefix - mix: .\n@prefix foaf: - .\n@prefix image: .\n@prefix sv: - .\n@prefix test: .\n@prefix ns011: - .\n@prefix ns010: .\n@prefix - ns015: .\n@prefix ns014: - .\n@prefix ns013: .\n@prefix ns012: - .\n@prefix rdf: .\n@prefix fedora: - .\n@prefix ldp: - .\n@prefix xs: .\n@prefix dc: - .\n\n\n - premis:hasFixity - .\n\n - a premis:Fixity ;\n\tfedora:status \"SUCCESS\"^^ - ;\n\tpremis:hasMessageDigest - ;\n\tpremis:hasSize \"7162\"^^ ;\n\tpremis:hasContentLocation - - .\n\n - a premis:ContentLocation ;\n\tpremis:hasContentLocationValue \"info://org.modeshape.jcr.value.binary.FileSystemBinaryStore@688492e5/app/jetty/fcrepo4-data/fcrepo.binary.directory#5eb6d58841f4196cc682ef1af3054dddacb6d40c\"^^ - .\n" + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + ns014:next ; + ns014:prev ; + ns008:proxyFor ; + ns008:proxyIn . + + + a fedora:Container , ldp:Container , ldp:RDFSource , fedora:Resource ; + fedora:created "2018-03-09T18:53:38.77Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:38.77Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ns003:hasPart , , ; + ns014:first ; + ns014:last ; + ns001:hasModel "ActiveFedora::Aggregation::ListSource"^^ . + + + ns014:next ; + ns008:proxyFor ; + ns008:proxyIn . + + + ns014:prev ; + ns008:proxyFor ; + ns008:proxyIn . http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + recorded_at: Fri, 16 Mar 2018 15:35:08 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/content/fcr:metadata + uri: http://www.example.com:8080/fcrepo/rest/test/01/bb/1b/09/01bb1b09-974d-478b-8826-2c606a447606 body: encoding: US-ASCII string: '' @@ -192,19 +256,20 @@ http_interactions: response: status: code: 200 - message: OK + message: '' headers: Etag: - - '"a3b31a7423417546b53e422cbe1a93f204d4043c"' + - W/"0952e907cee31167252f072495f7744d1a966739" Last-Modified: - - Tue, 16 May 2017 21:26:56 GMT + - Fri, 09 Mar 2018 18:53:30 GMT Link: - - ; - rel="describes" - - ;rel="type" + - ;rel="type" + - ;rel="type" - ;rel="type" Accept-Patch: - application/sparql-update + Accept-Post: + - text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,application/ld+json,multipart/form-data,application/sparql-update Allow: - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS Preference-Applied: @@ -212,74 +277,72 @@ http_interactions: Vary: - Accept, Range, Accept-Encoding, Accept-Language - Prefer - Content-Length: - - '5192' Content-Type: - - text/rdf+n3 + - text/rdf+n3;charset=utf-8 + Content-Length: + - '4131' + Date: + - Fri, 16 Mar 2018 15:35:08 GMT body: encoding: UTF-8 - string: "@prefix premis: .\n@prefix nt: - .\n@prefix rdfs: - .\n@prefix ns004: .\n@prefix ns003: - .\n@prefix ns002: .\n@prefix - ns001: .\n@prefix xsi: - .\n@prefix ns008: .\n@prefix mode: - .\n@prefix ns007: .\n@prefix ns006: - .\n@prefix ns005: - .\n@prefix xml: .\n@prefix ns009: - .\n@prefix fedoraconfig: .\n@prefix - mix: .\n@prefix foaf: - .\n@prefix image: .\n@prefix sv: - .\n@prefix test: .\n@prefix ns011: - .\n@prefix ns010: .\n@prefix - ns015: .\n@prefix ns014: - .\n@prefix ns013: .\n@prefix ns012: - .\n@prefix rdf: .\n@prefix fedora: - .\n@prefix ldp: - .\n@prefix xs: .\n@prefix dc: - .\n\n\n - a ldp:RDFSource , , - , , - , fedora:NonRdfSourceDescription , fedora:Resource , - , fedora:Resource , , - , , - ;\n\tfedora:lastModifiedBy \"bypassAdmin\"^^ - ;\n\tfedora:uuid \"42c0f21d-c8a3-48bc-9d63-9b743689f734\"^^ - ;\n\tfedora:createdBy \"bypassAdmin\"^^ - ;\n\tfedora:primaryType \"nt:file\"^^ - ;\n\tfedora:created \"2017-05-16T21:26:56.51Z\"^^ - ;\n\tfedora:mixinTypes \"fedora:NonRdfSourceDescription\"^^ - , \"fedora:Resource\"^^ , \"mix:versionable\"^^ - ;\n\tfedora:lastModified \"2017-05-16T21:26:56.715Z\"^^ - ;\n\tfedora:writable \"true\"^^ - ;\n\t - ;\n\tfedora:hasParent - .\n\n - a , - , , - , fedora:Binary , fedora:Resource , - , , - ;\n\tfedora:lastModifiedBy \"bypassAdmin\"^^ - ;\n\tfedora:uuid \"d2f3d5ef-aa81-46de-9e08-3b762ad269e2\"^^ - ;\n\tfedora:mimeType \"application/pdf\"^^ - ;\n\tfedora:digest ;\n\tpremis:hasSize - \"7162\"^^ ;\n\tfedora:createdBy \"bypassAdmin\"^^ - ;\n\tfedora:primaryType \"nt:resource\"^^ - ;\n\tfedora:created \"2017-05-16T21:26:56.51Z\"^^ - ;\n\tfedora:mixinTypes \"fedora:Binary\"^^ - ;\n\tfedora:lastModified \"2017-05-16T21:26:56.51Z\"^^ - ;\n\tpremis:hasOriginalName \"whatever.pdf\"^^ - ;\n\t - .\n\n - fedora:hasVersions - .\n\n - fedora:hasFixityService - .\n" + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + a ldp:Container , fedora:Resource , ns007:FileSet , ldp:RDFSource , fedora:Container , ns005:Object ; + fedora:created "2018-03-09T18:53:30.313Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:30.663Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ns005:hasFile ; + ns005:memberOf ; + ns003:accessRights "http://terms.library.ualberta.ca/public"^^ ; + ns003:title "theses.jpg"^^ ; + ns002:owner 2705 ; + ns010:recordCreatedInJupiter "2018-03-09T18:53:30.296Z"^^ ; + ns010:sitemapLink ""^^ ; + ebucore:dateIngested "2018-03-09T18:53:30.296Z"^^ ; + ldp:contains , ; + ns001:hasModel "IRFileSet"^^ . http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + recorded_at: Fri, 16 Mar 2018 15:35:08 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/content/fcr:versions + uri: http://www.example.com:8080/fcrepo/rest/test/01/bb/1b/09/01bb1b09-974d-478b-8826-2c606a447606/files/8b26afd3-0f72-4241-87d4-830f0bbdf58c/fcr:metadata body: encoding: US-ASCII string: '' @@ -297,44 +360,101 @@ http_interactions: response: status: code: 200 - message: OK + message: '' headers: - Content-Length: - - '2306' + Etag: + - W/"e1f7f639e96f5c864bd390c8c239c18833d96707" + Last-Modified: + - Fri, 09 Mar 2018 18:53:32 GMT + Link: + - ; + rel="describes" + - ;rel="type" + - ;rel="type" + Accept-Patch: + - application/sparql-update + Allow: + - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS + Preference-Applied: + - return=representation + Vary: + - Accept, Range, Accept-Encoding, Accept-Language + - Prefer Content-Type: - - text/rdf+n3 + - text/rdf+n3;charset=utf-8 + Content-Length: + - '4549' + Date: + - Fri, 16 Mar 2018 15:35:08 GMT body: encoding: UTF-8 - string: "@prefix premis: .\n@prefix nt: - .\n@prefix rdfs: - .\n@prefix ns004: .\n@prefix ns003: - .\n@prefix ns002: .\n@prefix - ns001: .\n@prefix xsi: - .\n@prefix ns008: .\n@prefix mode: - .\n@prefix ns007: .\n@prefix ns006: - .\n@prefix ns005: - .\n@prefix xml: .\n@prefix ns009: - .\n@prefix fedoraconfig: .\n@prefix - mix: .\n@prefix foaf: - .\n@prefix image: .\n@prefix sv: - .\n@prefix test: .\n@prefix ns011: - .\n@prefix ns010: .\n@prefix - ns015: .\n@prefix ns014: - .\n@prefix ns013: .\n@prefix ns012: - .\n@prefix rdf: .\n@prefix fedora: - .\n@prefix ldp: - .\n@prefix xs: .\n@prefix dc: - .\n\n\n - fedora:hasVersion - .\n\n - fedora:hasVersionLabel \"version1\"^^ - ;\n\tfedora:created \"2017-05-16T21:26:57.041Z\"^^ - .\n" + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + a ldp:NonRDFSource , fedora:Binary , ns005:File , ns011:OriginalFile , fedora:Resource ; + fedora:created "2018-03-09T18:53:30.447Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasFixityService ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:32.99Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ns017:valid "true"^^ ; + ns017:wellFormed "true"^^ ; + ns019:compressionScheme "JPEG"^^ ; + ns018:byteOrder "big endian"^^ ; + ebucore:fileSize "53678"^^ ; + ebucore:filename "theses.jpg"^^ ; + ebucore:hasMimeType "image/jpeg"^^ ; + ebucore:height "335"^^ ; + ebucore:width "504"^^ ; + ns014:describedby ; + premis:hasCreatingApplicationVersion + "1.2.0"^^ ; + premis:hasFormatName "JPEG File Interchange Format"^^ ; + premis:hasMessageDigest ; + premis:hasSize "53678"^^ ; + ns016:hashValue "59ced23d3250b0cf54a58dd21bad4512"^^ ; + ns015:colorSpace "YCbCr"^^ ; + ns015:exifVersion "10.00"^^ . http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + recorded_at: Fri, 16 Mar 2018 15:35:08 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/thumbnail + uri: http://www.example.com:8080/fcrepo/rest/test/01/bb/1b/09/01bb1b09-974d-478b-8826-2c606a447606/files/8b26afd3-0f72-4241-87d4-830f0bbdf58c body: encoding: US-ASCII string: '' @@ -352,115 +472,1235 @@ http_interactions: response: status: code: 200 - message: OK + message: '' headers: Etag: - - '"94925806bc6c9348bc1b160cc4d5134c8001df63"' - - '"94925806bc6c9348bc1b160cc4d5134c8001df63"' + - '"66d4222b266c43f70751b07d12d9de9fc742e8d1"' + - '"66d4222b266c43f70751b07d12d9de9fc742e8d1"' Last-Modified: - - Tue, 16 May 2017 21:36:28 GMT - - Tue, 16 May 2017 21:36:28 GMT + - Fri, 09 Mar 2018 18:53:30 GMT + - Fri, 09 Mar 2018 18:53:30 GMT Accept-Ranges: - bytes Content-Disposition: - - attachment; filename=""; creation-date="Tue, 16 May 2017 21:27:40 GMT"; modification-date="Tue, - 16 May 2017 21:36:28 GMT"; size=3346 + - attachment; filename="theses.jpg"; creation-date="Fri, 09 Mar 2018 18:53:30 + GMT"; modification-date="Fri, 09 Mar 2018 18:53:32 GMT"; size=53678 Link: - - ; + - ; rel="describedby" - ;rel="type" - ;rel="type" Allow: - DELETE,HEAD,GET,PUT,OPTIONS - Content-Length: - - '3346' - Content-Type: - - image/jpeg Cache-Control: - no-transform, must-revalidate, max-age=0 + Content-Type: + - image/jpeg + Content-Length: + - '53678' + Date: + - Fri, 16 Mar 2018 15:35:08 GMT body: - encoding: ASCII-8BIT - string: !binary |- - /9j/4AAQSkZJRgABAQAASABIAAD/4gogSUNDX1BST0ZJTEUAAQEAAAoQAAAA - AAIQAABtbnRyUkdCIFhZWiAAAAAAAAAAAAAAAABhY3NwQVBQTAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAA9tUAAQAAAADTLAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApkZXNjAAAA/AAA - AHxjcHJ0AAABeAAAACh3dHB0AAABoAAAABRia3B0AAABtAAAABRyWFlaAAAB - yAAAABRnWFlaAAAB3AAAABRiWFlaAAAB8AAAABRyVFJDAAACBAAACAxnVFJD - AAACBAAACAxiVFJDAAACBAAACAxkZXNjAAAAAAAAACJBcnRpZmV4IFNvZnR3 - YXJlIHNSR0IgSUNDIFByb2ZpbGUAAAAAAAAAAAAAACJBcnRpZmV4IFNvZnR3 - YXJlIHNSR0IgSUNDIFByb2ZpbGUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAdGV4dAAAAABDb3B5cmlnaHQgQXJ0aWZleCBTb2Z0d2FyZSAy - MDExAFhZWiAAAAAAAADzUQABAAAAARbMWFlaIAAAAAAAAAAAAAAAAAAAAABY - WVogAAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAA - AAAAACSgAAAPhAAAts9jdXJ2AAAAAAAABAAAAAAFAAoADwAUABkAHgAjACgA - LQAyADcAOwBAAEUASgBPAFQAWQBeAGMAaABtAHIAdwB8AIEAhgCLAJAAlQCa - AJ8ApACpAK4AsgC3ALwAwQDGAMsA0ADVANsA4ADlAOsA8AD2APsBAQEHAQ0B - EwEZAR8BJQErATIBOAE+AUUBTAFSAVkBYAFnAW4BdQF8AYMBiwGSAZoBoQGp - AbEBuQHBAckB0QHZAeEB6QHyAfoCAwIMAhQCHQImAi8COAJBAksCVAJdAmcC - cQJ6AoQCjgKYAqICrAK2AsECywLVAuAC6wL1AwADCwMWAyEDLQM4A0MDTwNa - A2YDcgN+A4oDlgOiA64DugPHA9MD4APsA/kEBgQTBCAELQQ7BEgEVQRjBHEE - fgSMBJoEqAS2BMQE0wThBPAE/gUNBRwFKwU6BUkFWAVnBXcFhgWWBaYFtQXF - BdUF5QX2BgYGFgYnBjcGSAZZBmoGewaMBp0GrwbABtEG4wb1BwcHGQcrBz0H - TwdhB3QHhgeZB6wHvwfSB+UH+AgLCB8IMghGCFoIbgiCCJYIqgi+CNII5wj7 - CRAJJQk6CU8JZAl5CY8JpAm6Cc8J5Qn7ChEKJwo9ClQKagqBCpgKrgrFCtwK - 8wsLCyILOQtRC2kLgAuYC7ALyAvhC/kMEgwqDEMMXAx1DI4MpwzADNkM8w0N - DSYNQA1aDXQNjg2pDcMN3g34DhMOLg5JDmQOfw6bDrYO0g7uDwkPJQ9BD14P - eg+WD7MPzw/sEAkQJhBDEGEQfhCbELkQ1xD1ERMRMRFPEW0RjBGqEckR6BIH - EiYSRRJkEoQSoxLDEuMTAxMjE0MTYxODE6QTxRPlFAYUJxRJFGoUixStFM4U - 8BUSFTQVVhV4FZsVvRXgFgMWJhZJFmwWjxayFtYW+hcdF0EXZReJF64X0hf3 - GBsYQBhlGIoYrxjVGPoZIBlFGWsZkRm3Gd0aBBoqGlEadxqeGsUa7BsUGzsb - YxuKG7Ib2hwCHCocUhx7HKMczBz1HR4dRx1wHZkdwx3sHhYeQB5qHpQevh7p - HxMfPh9pH5Qfvx/qIBUgQSBsIJggxCDwIRwhSCF1IaEhziH7IiciVSKCIq8i - 3SMKIzgjZiOUI8Ij8CQfJE0kfCSrJNolCSU4JWgllyXHJfcmJyZXJocmtybo - JxgnSSd6J6sn3CgNKD8ocSiiKNQpBik4KWspnSnQKgIqNSpoKpsqzysCKzYr - aSudK9EsBSw5LG4soizXLQwtQS12Last4S4WLkwugi63Lu4vJC9aL5Evxy/+ - MDUwbDCkMNsxEjFKMYIxujHyMioyYzKbMtQzDTNGM38zuDPxNCs0ZTSeNNg1 - EzVNNYc1wjX9Njc2cjauNuk3JDdgN5w31zgUOFA4jDjIOQU5Qjl/Obw5+To2 - OnQ6sjrvOy07azuqO+g8JzxlPKQ84z0iPWE9oT3gPiA+YD6gPuA/IT9hP6I/ - 4kAjQGRApkDnQSlBakGsQe5CMEJyQrVC90M6Q31DwEQDREdEikTORRJFVUWa - Rd5GIkZnRqtG8Ec1R3tHwEgFSEtIkUjXSR1JY0mpSfBKN0p9SsRLDEtTS5pL - 4kwqTHJMuk0CTUpNk03cTiVObk63TwBPSU+TT91QJ1BxULtRBlFQUZtR5lIx - UnxSx1MTU19TqlP2VEJUj1TbVShVdVXCVg9WXFapVvdXRFeSV+BYL1h9WMtZ - GllpWbhaB1pWWqZa9VtFW5Vb5Vw1XIZc1l0nXXhdyV4aXmxevV8PX2Ffs2AF - YFdgqmD8YU9homH1YklinGLwY0Njl2PrZEBklGTpZT1lkmXnZj1mkmboZz1n - k2fpaD9olmjsaUNpmmnxakhqn2r3a09rp2v/bFdsr20IbWBtuW4SbmtuxG8e - b3hv0XArcIZw4HE6cZVx8HJLcqZzAXNdc7h0FHRwdMx1KHWFdeF2Pnabdvh3 - VnezeBF4bnjMeSp5iXnnekZ6pXsEe2N7wnwhfIF84X1BfaF+AX5ifsJ/I3+E - f+WAR4CogQqBa4HNgjCCkoL0g1eDuoQdhICE44VHhauGDoZyhteHO4efiASI - aYjOiTOJmYn+imSKyoswi5aL/IxjjMqNMY2Yjf+OZo7OjzaPnpAGkG6Q1pE/ - kaiSEZJ6kuOTTZO2lCCUipT0lV+VyZY0lp+XCpd1l+CYTJi4mSSZkJn8mmia - 1ZtCm6+cHJyJnPedZJ3SnkCerp8dn4uf+qBpoNihR6G2oiailqMGo3aj5qRW - pMelOKWpphqmi6b9p26n4KhSqMSpN6mpqhyqj6sCq3Wr6axcrNCtRK24ri2u - oa8Wr4uwALB1sOqxYLHWskuywrM4s660JbSctRO1irYBtnm28Ldot+C4WbjR - uUq5wro7urW7LrunvCG8m70VvY++Cr6Evv+/er/1wHDA7MFnwePCX8Lbw1jD - 1MRRxM7FS8XIxkbGw8dBx7/IPci8yTrJuco4yrfLNsu2zDXMtc01zbXONs62 - zzfPuNA50LrRPNG+0j/SwdNE08bUSdTL1U7V0dZV1tjXXNfg2GTY6Nls2fHa - dtr724DcBdyK3RDdlt4c3qLfKd+v4DbgveFE4cziU+Lb42Pj6+Rz5PzlhOYN - 5pbnH+ep6DLovOlG6dDqW+rl63Dr++yG7RHtnO4o7rTvQO/M8Fjw5fFy8f/y - jPMZ86f0NPTC9VD13vZt9vv3ivgZ+Kj5OPnH+lf65/t3/Af8mP0p/br+S/7c - /23////bAEMAAwICAgICAwICAgMDAwMEBgQEBAQECAYGBQYJCAoKCQgJCQoM - DwwKCw4LCQkNEQ0ODxAQERAKDBITEhATDxAQEP/AAAsIAbUBUgEBEQD/xAAV - AAEBAAAAAAAAAAAAAAAAAAAACf/EABQQAQAAAAAAAAAAAAAAAAAAAAD/2gAI - AQEAAD8AlUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAA//2Q== + encoding: UTF-8 + base64_string: | + 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 + N2nfhEalrlY3bQAxbwNH1G5sw+L4lPhWv+XOvwrEMAfKiWfsmSlHZa0WZh2a + HErlABxin/zFfHErPmpjMOnW4pn84v8AXGrIZ2a2oO14ZzRBmwgTYj5zhlq9 + HVqjG73e+1j4uGs+gWXPG8LjY0VvVFo3gmj6pD5wHmLKMcG31juq3e8Gq8l7 + cn5R18p2VBWLvi97lJ9nC0Md+Dzd55TAWlYto2I2GK4zi1KbZsuYtNJVBruy + mHcKJn33RH0YNNzL7jOKUu0wUwKVmyVQnuv6MkGLR07n9ikZcm7eGxG7U2AT + Ds3Ksy7Iuc2B4hnin83FMHGyZ/2jO6M3KztnNTmy2juOTOJ+icjRkYOblRdm + Un7JadlW5x4i0dxRNWVIqTodbHhxKstOQYx3HVY3UcrNVZ9GanLUsyQEWZdz + DZHnq8YfXw6my/pjz3f2BUXKV16XcfnbJbmArwMcMSXY/G4sXsIvCk52YmGn + pOXBJXGFVZuMQRAy1NtuZB9HkjrtW3nzO1OobQLv937ccDEakJp5u7qgJ/sH + G7lFTlmTwLhzMtNNa9lsy+zEt2CuelpiVJtmZYdaeMUcbrBQqDqueofUhhxx + uYnZakhPEp6hpV/qT2YtmamxeW7tltus6K24DzpPbTa7XxnjP0kBGpa5fG/c + +dnWdOdTaOTDBZfygQlEJ/ldK2nKni8lpPGo2eK824yz/wDb7T8rDBiX2wB4 + kaRQEkrpHhGri/PGNrza5OMDclyDNfGrMiK1qWa5tnWXkO7+AYAB4yE8L4rm + By9vUuUWxWn6ViZrj46j6PKW+bwyrfxp2TwENqWbNpscfrlXTicUedtPaZKW + TNoNZjdAkJUXZ8S/X1omNs3yoYAxJ17DAc7r2zD8ZHe8s2icheUEwzhnLg2y + 28fOvtc5+KxY0Yjuzf8AZ49pGHNTeDSFWxYrbL8YRVe4ECPrC7WsOyrOHDre + dwhzzL0wjWf5Pm4pBlpUHXHJk7Nf0lqSZV9+bYKkW26uuV/F24dQlEyi1a57 + C6Wte0JVwnG3UcI9+KOL9WvLV5vFGMrFqXouhuLn8YQ5a7kyOdltTFaqRvHW + i8QitVUR5NFry13gIBymtyTlFYs/R8dxzFen3Urd62RtktjkGgGv2I6IOSSR + 8pmXeUvKPENxy3rQDN/aT+ww3s4tkUlOvWk7jTsxizBs4WMaZtiWbm+I+2Aw + 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 + aVpgRLMqqjp6uhEBFH7UGgAXZspo1PuENP1wAIZOnNl4hK+5KtUT4guVFB5V + UUJD1hfuJF7F8sPwItWWGqtonJV37BQGCvtHUNYC270kOoS11DAQMQK2ougq + 3ISVoK70vv8A/iFLmU3So2C1lUXWFVGwwww0XtEu3tu3RySsel8zqbP/ACjm + z+UzVl01s6RqA8OuirNw1UlFW7Ikk2Dr/wDkmYklx5Wx5fEdaFqt58zpoIi4 + QbbjfBz6RbM/7UeVD4bJyRlPmZb/ABsWNE1GbW2rYtQndPtGbmAoLZYi4Zfi + wyQADlH6LzIcpqWX1eiEkvN9x9dQ5f1QGAzakLjVRIWUodABOOVXJ9/TDAxl + HFQybXupd+pYVSQY9F12rp+mEZ0CVURF105fqhA4QtEqVpr+q6GACZFSZc7R + hkAsPTDKVAiqHSl16Q9KEGBaznWBIRl6WjLvJQ6NFSQGdFupFHUtyb+1O2Aj + zbZsEW45ZznA7vnDADlByjulyTpf0wA3Fh8p5abIJS0lFh9bkB3wTvtdWFiD + ftSrQkJiIlq9YST+mM9TMjbXISWnsR+zKZKZ8T/yzn+FGhGasLk1O2faRv2t + I7KWZcJklUDaOY8HT36eKFLmSfRPhxJc8aYcCgE2mvq3aoMFnzPlZync5Qzw + jL1BJS2VgO8XWcjf0MQIgooHi+tKfou1RiQReBGlQmndQlROjVr/AJRIOgob + TI5XqpzQGdrAkTZUrfct5a/Tu1XQAnclebCyIvEpZ/dhA8h3Cao22utEXiq8 + i3dkMAr5XjuuS9Lrk1RZA+IuCogBVqlKlctyB239i9u6H4/D+4BAS4x6Yrho + BmlyJ23J0RBgLpH3V6Ysisari9VYAcvXR01dkIET4PogBQ2IkY1Llv7YCGIt + sCSlWBe0n6r4Rmp5Pz/KCWdc+CZSefZq2miy7xrfd0k0BfaiZNGu8ppp22HC + FBt2zZV3zLTk1l3/AGXlRp33ShdYj93+jEwyPJefPYzp2K6XDiODOSd/rZZh + pPyiRWRW3diX+9/+QWWlYxyVX/ELJnQ13OSc9Kue81iC6PuQYorXtxu/nF8s + Ii2gVISJfnTh39C7vqgaEHiEG8wkea7Il9/lgAECid16KF66qtSJm6VW5Prh + g+y8lbJsSUKWm5m0bNmbSNfi0qM0w7gn5gCe1mf+n1I5ZuhjRzbslyfnnS+E + JiSlZvv6QxLzPtDVV+ViOsXujATPJmS/5PlJYro9QX5plo/suGEbbjC354/v + Mk9KtiVzsw2tBqlwG2oqqaluNCISHsUVuXtjWlWZIUbUadmPYdQfnu1LAQIu + CJrSLBl1iaIN3nj2QwQcZ1Yko7T8jV+yX7oYA75Z9aXhSXe76Lsy9burDB2X + aaofQjCutMPMl948N3rREjaWguUtWa4qt306oAVtuTTdGVwmqu5UPs5YohsL + 8xclbQ0duGv/AMRBk5ghw6SEMydbqwAWyVFJA7wdU+j64ZEH5aW10vs3/OD+ + q+GCnAC9NqGocucd0Bk5hEVkKlTWaJv3at8FCIoUsZ0YdG7aisMDBppsVTDc + bW67rJrT6/zRI9wMyqA4VCVhil5cpb/dKADJCS7UA+S9fv8A5QGJbTVVfQt2 + QRQUS7V2p5L74qhADaIph63+cMhg2tz6U360W9U8v6oK9h9Y0Elu3L9UQZEV + XEJETUqX39hJcl3pVLoPzHWWHcqKhXX3b4CBnETfemtLjT6LtadGqHQKelAA + 2KDIAzFhuVJ2wA863K+FKXPzwMK4CB1lJK68Zpn0KY/zhmdJCab2Cq5T3byv + TzYAL3CfXjxPqKKBNhyZBRoBwvQJLekIBDiMuhiZW++1fTm7zX8QQEaWyZ7l + TIAOiS0/OS3itHfea9kqMsIzYByhtR5r43Ylsy/f+JzP+FEqEts23bTqho1k + 2i23TcBOSkxTdd1ckXyEYh920jL42Mz7bZ/0xoRFjC6l1cQR/9k= http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + recorded_at: Fri, 16 Mar 2018 15:35:08 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/characterization + uri: http://www.example.com:8080/fcrepo/rest/test/01/bb/1b/09/01bb1b09-974d-478b-8826-2c606a447606/files/8b26afd3-0f72-4241-87d4-830f0bbdf58c/fcr:fixity body: encoding: US-ASCII string: '' @@ -478,98 +1718,64 @@ http_interactions: response: status: code: 200 - message: OK + message: '' headers: - Etag: - - '"255aaff77582f8035328f449e5bc87b9a51dc7ae"' - - '"255aaff77582f8035328f449e5bc87b9a51dc7ae"' - Last-Modified: - - Tue, 16 May 2017 21:36:26 GMT - - Tue, 16 May 2017 21:36:26 GMT - Accept-Ranges: - - bytes - Content-Disposition: - - attachment; filename=""; creation-date="Tue, 16 May 2017 21:27:35 GMT"; modification-date="Tue, - 16 May 2017 21:36:26 GMT"; size=3916 - Link: - - ; - rel="describedby" - - ;rel="type" - - ;rel="type" - Allow: - - DELETE,HEAD,GET,PUT,OPTIONS - Content-Length: - - '3916' Content-Type: - - text/xml - Cache-Control: - - no-transform, must-revalidate, max-age=0 + - text/rdf+n3;charset=utf-8 + Content-Length: + - '2662' + Date: + - Fri, 16 Mar 2018 15:35:08 GMT body: encoding: UTF-8 - string: |- - - - - - - - - - - - - 1.4 - fmt/18 - - - - 7162 - LibreOffice 5.2/Writer - 2017:05:16 15:26:04-06:00 - /tmp/content-1.pdf20170516-18431-2uhrid.pdf - whatever.pdf - 94a2454204f52b39c4a6d4ff86e8d516 - 1494970582000 - - - true - true - - - - Writer - en-CA - 1 - no - no - no - - LiberationSerif - - no - - - - - - - - - - - - - - - - - - + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + a premis:EventOutcomeDetail , premis:Fixity ; + premis:hasEventOutcome "SUCCESS"^^ ; + premis:hasMessageDigest ; + premis:hasSize "53678"^^ . + + + premis:hasFixity . http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + recorded_at: Fri, 16 Mar 2018 15:35:08 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/fedora3foxml + uri: http://www.example.com:8080/fcrepo/rest/test/83/79/77/d6/837977d6-de61-49ea-a912-a65af5c9005e body: encoding: US-ASCII string: '' @@ -577,7 +1783,7 @@ http_interactions: Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - - "*/*" + - text/rdf+n3 User-Agent: - Ruby Host: @@ -586,36 +1792,94 @@ http_interactions: - Basic ZmVkb3JhQWRtaW46ZmVkb3JhQWRtaW4= response: status: - code: 404 - message: Not Found + code: 200 + message: '' headers: + Etag: + - W/"0e6ac801924725695dfc56a1db7f32f0dbda9163" + Last-Modified: + - Fri, 09 Mar 2018 18:53:33 GMT + Link: + - ;rel="type" + - ;rel="type" + - ;rel="type" + Accept-Patch: + - application/sparql-update + Accept-Post: + - text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,application/ld+json,multipart/form-data,application/sparql-update + Allow: + - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS + Preference-Applied: + - return=representation + Vary: + - Accept, Range, Accept-Encoding, Accept-Language + - Prefer Content-Type: - - text/html;charset=ISO-8859-1 - Cache-Control: - - must-revalidate,no-cache,no-store + - text/rdf+n3;charset=utf-8 Content-Length: - - '1415' + - '4145' + Date: + - Fri, 16 Mar 2018 15:35:08 GMT body: encoding: UTF-8 - string: "\n\n\nError 404 Not Found\n\n

HTTP - ERROR 404

\n

Problem accessing /fedora/rest/test/9p/29/09/32/9p2909328/fedora3foxml. - Reason:\n

    Not Found


Powered by Jetty://
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n\n\n\n" + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + a fedora:Container , ldp:RDFSource , ns005:Object , fedora:Resource , ns007:FileSet , ldp:Container ; + fedora:created "2018-03-09T18:53:33.018Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:33.375Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ns005:hasFile ; + ns005:memberOf ; + ns003:accessRights "http://terms.library.ualberta.ca/public"^^ ; + ns003:title "image-sample.jpeg"^^ ; + ns002:owner 2705 ; + ns010:recordCreatedInJupiter "2018-03-09T18:53:32.996Z"^^ ; + ns010:sitemapLink ""^^ ; + ebucore:dateIngested "2018-03-09T18:53:32.996Z"^^ ; + ldp:contains , ; + ns001:hasModel "IRFileSet"^^ . http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + recorded_at: Fri, 16 Mar 2018 15:35:08 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/fedora3foxml/fcr:metadata + uri: http://www.example.com:8080/fcrepo/rest/test/83/79/77/d6/837977d6-de61-49ea-a912-a65af5c9005e/files/956ee84b-ef1a-4e1e-955e-0707e34df4b8/fcr:metadata body: encoding: US-ASCII string: '' @@ -632,36 +1896,102 @@ http_interactions: - Basic ZmVkb3JhQWRtaW46ZmVkb3JhQWRtaW4= response: status: - code: 404 - message: Not Found + code: 200 + message: '' headers: + Etag: + - W/"b499b8236cd14853e2b5541a35776a7a19702787" + Last-Modified: + - Fri, 09 Mar 2018 18:53:35 GMT + Link: + - ; + rel="describes" + - ;rel="type" + - ;rel="type" + Accept-Patch: + - application/sparql-update + Allow: + - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS + Preference-Applied: + - return=representation + Vary: + - Accept, Range, Accept-Encoding, Accept-Language + - Prefer Content-Type: - - text/html;charset=ISO-8859-1 - Cache-Control: - - must-revalidate,no-cache,no-store + - text/rdf+n3;charset=utf-8 Content-Length: - - '1428' + - '4555' + Date: + - Fri, 16 Mar 2018 15:35:08 GMT body: encoding: UTF-8 - string: "\n\n\nError 404 Not Found\n\n

HTTP - ERROR 404

\n

Problem accessing /fedora/rest/test/9p/29/09/32/9p2909328/fedora3foxml/fcr:metadata. - Reason:\n

    Not Found


Powered by Jetty://
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n
- \ \n
\n\n\n\n" + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + a ldp:NonRDFSource , ns005:File , fedora:Binary , ns011:OriginalFile , fedora:Resource ; + fedora:created "2018-03-09T18:53:33.16Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasFixityService ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:35.73Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ns017:valid "true"^^ ; + ns017:wellFormed "true"^^ ; + ns019:compressionScheme "JPEG"^^ ; + ns018:byteOrder "big endian"^^ ; + ebucore:fileSize "12401"^^ ; + ebucore:filename "image-sample.jpeg"^^ ; + ebucore:hasMimeType "image/jpeg"^^ ; + ebucore:height "183"^^ ; + ebucore:width "276"^^ ; + ns014:describedby ; + premis:hasCreatingApplicationVersion + "1.2.0"^^ ; + premis:hasFormatName "JPEG File Interchange Format"^^ ; + premis:hasMessageDigest ; + premis:hasSize "12401"^^ ; + ns016:hashValue "71179c73ffd133cf0f25e3f7b3572ef7"^^ ; + ns015:colorSpace "YCbCr"^^ ; + ns015:exifVersion "10.00"^^ . http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + recorded_at: Fri, 16 Mar 2018 15:35:08 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/9p/29/09/32/9p2909328/content + uri: http://www.example.com:8080/fcrepo/rest/test/83/79/77/d6/837977d6-de61-49ea-a912-a65af5c9005e/files/956ee84b-ef1a-4e1e-955e-0707e34df4b8 body: encoding: US-ASCII string: '' @@ -679,200 +2009,318 @@ http_interactions: response: status: code: 200 - message: OK + message: '' headers: Etag: - - '"cbdc7e82500473b94daf3affd0458c777b2bec71"' - - '"cbdc7e82500473b94daf3affd0458c777b2bec71"' + - '"25ab58161ecfa406e4767f24ccec58dd7b7d8f8c"' + - '"25ab58161ecfa406e4767f24ccec58dd7b7d8f8c"' Last-Modified: - - Tue, 16 May 2017 21:26:56 GMT - - Tue, 16 May 2017 21:26:56 GMT + - Fri, 09 Mar 2018 18:53:33 GMT + - Fri, 09 Mar 2018 18:53:33 GMT Accept-Ranges: - bytes Content-Disposition: - - attachment; filename="whatever.pdf"; creation-date="Tue, 16 May 2017 21:26:56 - GMT"; modification-date="Tue, 16 May 2017 21:26:56 GMT"; size=7162 + - attachment; filename="image-sample.jpeg"; creation-date="Fri, 09 Mar 2018 + 18:53:33 GMT"; modification-date="Fri, 09 Mar 2018 18:53:35 GMT"; size=12401 Link: - - ; + - ; rel="describedby" - ;rel="type" - ;rel="type" Allow: - DELETE,HEAD,GET,PUT,OPTIONS - Content-Length: - - '7162' - Content-Type: - - application/pdf Cache-Control: - no-transform, must-revalidate, max-age=0 + Content-Type: + - image/jpeg + Content-Length: + - '12401' + Date: + - Fri, 16 Mar 2018 15:35:08 GMT body: - encoding: ASCII-8BIT - string: !binary |- - JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp - bHRlci9GbGF0ZURlY29kZT4+CnN0cmVhbQp4nDPQM1Qo5ypUMABCM0MjBXNL - I4WiVK5wLYU8qKiBQlE6l1MIl6mZnoWCuZEJUENIioK+m6ECUHlIWrSNgaGd - oY2BkYGxna6ZjYGJnZGNgSlIxAxCmdvFhnhxuYZwBXIFKgAAJJQXtwplbmRz - dHJlYW0KZW5kb2JqCgozIDAgb2JqCjEwNAplbmRvYmoKCjUgMCBvYmoKPDwv - TGVuZ3RoIDYgMCBSL0ZpbHRlci9GbGF0ZURlY29kZS9MZW5ndGgxIDgyMjg+ - PgpzdHJlYW0KeJzlWH9UW9d9/9579RshPYF4xpaNnvwAAwKEkbHBcUAGJIRx - jPjlCBJAMhIg/wAsCVwnzUzbEyfBdeMlaX40XptmaU6W9pw87KzDXRaTc5Ju - Xdc03fpjWePW3bKds1PTeGmTs7Ux7HufBLHdpD1n3Tn7Y1fSu9/v5/vr3u/9 - 3vueXjo5HQczzAID38iR6NR6bY4BAP4OgOSNzKSllWafhPRlACqOTo0dKfP+ - +BcA7D8B9Nqxw8dHP3fv8S8C5KCJ8ZHxeDT27VsuNADYH0Fg+zgC+5aP65FH - f1A8fiT9CQ+bcSB/FXnp8ORItNZcbwIoEJDPOxL9xNSf6j6jQb6YyyeiR+L7 - 4k+jr4JWAMPeqclUOgbFKwCbznD5VDI+9d7AYzjeTQqOL40YwQ9vZiR1nKdM - o9Xp4f9t056GAghqbwUrTKnXGxr7Gqzn/cqVG6/Le1d+/b85CkOmexyehRfh - NLwJg1lBAEKQgGlErm+vwPcQ5S0EA/A8zH2M26/BAsozehF4EJ74GL0QPAbn - 4a9viBKCI3A3juXP4U2yFb6FpTIJ7xIDfApeQ6/vInbbR7miFryMquTodeiP - 4Ul6CvbQt5F5gkuohwrwKpwlQ+g5jfM8vTbjXb/l9D64B689MA4zSKtNe+sH - /wTGlV/irO6BPfBp2A2Hr7N4iXyJ4b5hvfAlzOkrKuZZFeqD7CD9OqXXHkbm - j2EMf1GCc6en2W5o1drIiwA+f3+4r7enuyvUue+2vR172oNtAX9rS/NuX1Pj - rbtu2dlQv2N73dYaT3VVZdmW0pJiebPLWWi3CVZLbo7JaNDrtBpGCVT65UBE - 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 - wT4JhxCbhNHfGX8v2h9Q43BJAvUnUNqjIgm05ZZjMI0j5B53Y6wRRCbUKEnU - rFLH9bt9/D75fpVKrUm24rh43qph20fa/j7Pf1hGMrkfU72kVd8ZzYTquw81 - elStkGrJc5FWo02oWr0fEbETI46iPc/ch5ojqu808hnPk0iPZ7N6EDOeVEcQ - U+1W55bCyL+9BrwGk1iFkzdliY9uRo15m4qn1ZrisnGVm4KdeNfx4H2Df6pR - 50bPI1m/1Sp1BDX/p3Zp3CFTah7j6jqPoW5mzatVn0ewvvZmMzSh1j3P0PR1 - c8zk5uNqLaD2mZ1z+AY/fGV5z21XR5/Kjn9UjZPJ2hReJzHvcTXb1So6ps4x - gWuYQOr68fEVG8tiN49mdSw3zuf/MjbLPt24MOJHtHlj5GWixzt2k3q9SDS+ - fnL5GvnuNSJdIyd+Q0K/IbPvnnmX/sfVcucLVy9epZ3vDL/zwjus5h1ifYcY - YElYCi1FlqaWnlrSmaxXiBl+Tmz/crne+VPvpb6feN/qg0tkV+jS7CXlEuNP - fwOXDDmBS4T1vcVEp7AoLdYsTi3OLr6xeHnx6qJh9uUzL9O/esnjtL7kfIk6 - z3eeP3GeRZ4j1uecz9HQk5En6ZmzxHrWedZzln3hiWrnE21Fzsce3eK8/OjV - R9WHy7pHc22B4c+TEw89+BCdOjl78sxJNnvvmXvpCzMXZ2gqVO6cnHA7J9oq - nOu9hX16L+vTsRUnt2w9UFIWiAz7nMOodMdAjXOgrdyZ783r0+JgNahoZU71 - 7cwke5BdZHpDd6jI2YW/y6GrIWrtdHZ6OtX/x9EOFzraM7Vndg9rD5Q7g231 - Tmubs83T9t22n7a906YbbiNfwm/ghcDFAPMFyj0BX6DIFdgYdPSJ3oI+wWvt - owT6iBf6PNYVK7Vah60nrMwKTUBnRaIlC+TMfG+P292xoF/p7lAMoTsUcr9S - 0sOvvq4BRXe/An0Dd4TnCflc/72nT0Pzpg6ltiesRDb1dygxJHycmEVC2DQv - QnN/KpXm/w/c+C8ByWm8gnsaoaFUBgT3qhjcKZJKQSpF3FymkohAys1hjnAb - gpZDKeAXLnWrWpxKpQqH/hs5V1/1CmVuZHN0cmVhbQplbmRvYmoKCjYgMCBv - YmoKNTA1MgplbmRvYmoKCjcgMCBvYmoKPDwvVHlwZS9Gb250RGVzY3JpcHRv - ci9Gb250TmFtZS9CQUFBQUErTGliZXJhdGlvblNlcmlmCi9GbGFncyA0Ci9G - b250QkJveFstMTc2IC0zMDMgMTAwNSA5ODFdL0l0YWxpY0FuZ2xlIDAKL0Fz - Y2VudCA4OTEKL0Rlc2NlbnQgLTIxNgovQ2FwSGVpZ2h0IDk4MQovU3RlbVYg - ODAKL0ZvbnRGaWxlMiA1IDAgUgo+PgplbmRvYmoKCjggMCBvYmoKPDwvTGVu - Z3RoIDI1Ni9GaWx0ZXIvRmxhdGVEZWNvZGU+PgpzdHJlYW0KeJxdkMtuxCAM - Rfd8hZfTxYgknSRdREijqUbKog817QcQcFKkBhAhi/x9eUxbqQvQMfa1uaaX - /rHXytNXZ8SAHialpcPVbE4gjDgrTcoKpBL+FqVbLNwSGrTDvnpcej2ZriP0 - LeRW73Y4nKUZ8Y7QFyfRKT3D4eMyhHjYrP3CBbWHgjAGEqfQ54nbZ74gTapj - L0Na+f0YJH8F77tFqFJc5q8II3G1XKDjekbSFQWD7nplBLX8l2uzYpzEJ3eh - sgyVRVG3LHCVuHmIfJ+5jHxK3J4i1/m9jtzk9yZym7lKM2/d4/S4nh9XIDbn - gqO0w2QlmlAa4XfP1tgoS+cbZPJ7dQplbmRzdHJlYW0KZW5kb2JqCgo5IDAg - b2JqCjw8L1R5cGUvRm9udC9TdWJ0eXBlL1RydWVUeXBlL0Jhc2VGb250L0JB - QUFBQStMaWJlcmF0aW9uU2VyaWYKL0ZpcnN0Q2hhciAwCi9MYXN0Q2hhciA3 - Ci9XaWR0aHNbMzY1IDk0MyA1MDAgNDQzIDI3NyA0NDMgNTAwIDMzMyBdCi9G - b250RGVzY3JpcHRvciA3IDAgUgovVG9Vbmljb2RlIDggMCBSCj4+CmVuZG9i - agoKMTAgMCBvYmoKPDwvRjEgOSAwIFIKPj4KZW5kb2JqCgoxMSAwIG9iago8 - PC9Gb250IDEwIDAgUgovUHJvY1NldFsvUERGL1RleHRdCj4+CmVuZG9iagoK - MSAwIG9iago8PC9UeXBlL1BhZ2UvUGFyZW50IDQgMCBSL1Jlc291cmNlcyAx - MSAwIFIvTWVkaWFCb3hbMCAwIDYxMiA3OTJdL0dyb3VwPDwvUy9UcmFuc3Bh - cmVuY3kvQ1MvRGV2aWNlUkdCL0kgdHJ1ZT4+L0NvbnRlbnRzIDIgMCBSPj4K - ZW5kb2JqCgo0IDAgb2JqCjw8L1R5cGUvUGFnZXMKL1Jlc291cmNlcyAxMSAw - IFIKL01lZGlhQm94WyAwIDAgNjEyIDc5MiBdCi9LaWRzWyAxIDAgUiBdCi9D - b3VudCAxPj4KZW5kb2JqCgoxMiAwIG9iago8PC9UeXBlL0NhdGFsb2cvUGFn - ZXMgNCAwIFIKL09wZW5BY3Rpb25bMSAwIFIgL1hZWiBudWxsIG51bGwgMF0K - L0xhbmcoZW4tQ0EpCj4+CmVuZG9iagoKMTMgMCBvYmoKPDwvQ3JlYXRvcjxG - RUZGMDA1NzAwNzIwMDY5MDA3NDAwNjUwMDcyPgovUHJvZHVjZXI8RkVGRjAw - NEMwMDY5MDA2MjAwNzIwMDY1MDA0RjAwNjYwMDY2MDA2OTAwNjMwMDY1MDAy - MDAwMzUwMDJFMDAzMj4KL0NyZWF0aW9uRGF0ZShEOjIwMTcwNTE2MTUyNjA0 - LTA2JzAwJyk+PgplbmRvYmoKCnhyZWYKMCAxNAowMDAwMDAwMDAwIDY1NTM1 - IGYgCjAwMDAwMDYxNjUgMDAwMDAgbiAKMDAwMDAwMDAxOSAwMDAwMCBuIAow - MDAwMDAwMTk0IDAwMDAwIG4gCjAwMDAwMDYzMDggMDAwMDAgbiAKMDAwMDAw - MDIxNCAwMDAwMCBuIAowMDAwMDA1MzUwIDAwMDAwIG4gCjAwMDAwMDUzNzEg - MDAwMDAgbiAKMDAwMDAwNTU2NiAwMDAwMCBuIAowMDAwMDA1ODkxIDAwMDAw - IG4gCjAwMDAwMDYwNzggMDAwMDAgbiAKMDAwMDAwNjExMCAwMDAwMCBuIAow - MDAwMDA2NDA3IDAwMDAwIG4gCjAwMDAwMDY1MDQgMDAwMDAgbiAKdHJhaWxl - cgo8PC9TaXplIDE0L1Jvb3QgMTIgMCBSCi9JbmZvIDEzIDAgUgovSUQgWyA8 - RUYwMDJGOTBERUYwNkIyRURDMDA4QkE0QTQwMkVCNkM+CjxFRjAwMkY5MERF - RjA2QjJFREMwMDhCQTRBNDAyRUI2Qz4gXQovRG9jQ2hlY2tzdW0gL0FGRjM4 - REM2NjIwMjY0N0EyNDQxRDE3MDJGNkVCRUU0Cj4+CnN0YXJ0eHJlZgo2Njc5 - CiUlRU9GCg== + encoding: UTF-8 + base64_string: | + /9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxMTEhUTExIWFhUXGBobGBgY + GRcfIBsiHR0aHR0aGhseHyggGhslGxkaITEhJSkrLi4uHh8zODMsNygtLi0B + CgoKDg0OGhAQGi0lICUtLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tN//AABEIALcBFAMBIgACEQEDEQH/xAAcAAAC + AgMBAQAAAAAAAAAAAAAFBgMEAAIHAQj/xAA+EAABAgQEAwYEBQMCBgMAAAAB + AhEAAyExBAUSQVFhcQYTIoGRoTKxwfAjQlLR4QcU8TNiQ3KCkrLCFRa0/8QA + GAEAAwEBAAAAAAAAAAAAAAAAAAECAwT/xAAjEQACAgIDAQABBQAAAAAAAAAA + AQIREiEDMUFRMhMiUmGB/9oADAMBAAIRAxEAPwDm65RdqA8ONI9/szp1AWNe + ZP0joistl4iXpZKZgT8TMW09PeEzMsmm4ctqOg1dqUvGSlZimwfi8JY6QBT3 + itJw4D6ri1vtovSZM1aSEp1Vbnxtf2j04LSHXqBFwUtfnFXQ7ZNkuXoVOSRV + KDqqwtYtc1aNs61d7MWAwcCzM1L8yHglkGKSVaAA4QoAtU1dqXvE2GyJTeNZ + 0rGpKQ/iIIormA/SsKxv8SHJ56u70qFdnNWHXrfrBLJcMkhSikVGoHSksKiw + Ll/WJcVlE2bLUmQlS1UBICiEubg8WDcgeMWZHZ3EykpQmWsFPjUo11Bw6QX8 + INYl20OSxVL/AErr7n8VKkgJJcgp2AFU0p4triFFWBNCFJuWsAKmnX25w75t + kOMVMWRJUpJHhISAeNtT0gZJ7N4paVAJUpQD6QA7v8NFODf0iVFoyp3oWVSv + DUhnZum/BoYsuyGWqUguRMNdRAZIrYdCDXlziTCYOUhRK5RVMQVMVUB4DSaE + ggj96RJhMQnRpmFTlQ0uaivi1XcFqfzDfQMc5OWAS2UkKGmqhpBDA7NZ9niP + EpSqR3ktCVTEp0p0gAAqYVcbEB+kB8NidZdBKZqEksbF9mtV+G8FE5kCTIYD + w/iKBZiaMOZcF/KMH2Kyp2hwcxMhIlFJKm1DSNSnuAR8NntAnNc3CUJlyChR + AVrOh2YfCFM9gXAERdpkT8MoGWtJSUFKSo1HFVTVZfm0J2GkrJ0rmadTF3Ll + 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 + bU2GRkAhZzxYEwfiIql6BfE8UxkZGQCP/9k= http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + recorded_at: Fri, 16 Mar 2018 15:35:08 GMT - request: method: get - uri: http://www.example.com:8983/solr/test/select?fl=id&q=accessTo_ssim:9p2909328&wt=json + uri: http://www.example.com:8080/fcrepo/rest/test/83/79/77/d6/837977d6-de61-49ea-a912-a65af5c9005e/files/956ee84b-ef1a-4e1e-955e-0707e34df4b8/fcr:fixity body: encoding: US-ASCII string: '' @@ -880,34 +2328,74 @@ http_interactions: Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - - "*/*" + - text/rdf+n3 User-Agent: - Ruby Host: - - www.example.com:8983 + - www.example.com:8080 + Authorization: + - Basic ZmVkb3JhQWRtaW46ZmVkb3JhQWRtaW4= response: status: code: 200 - message: OK + message: '' headers: - Last-Modified: - - Tue, 16 May 2017 21:36:29 GMT - Etag: - - '"NWE0MDAwMDAwMDAwMDAwMFNvbHI="' Content-Type: - - application/json; charset=UTF-8 - Transfer-Encoding: - - chunked + - text/rdf+n3;charset=utf-8 + Content-Length: + - '2662' + Date: + - Fri, 16 Mar 2018 15:35:08 GMT body: encoding: UTF-8 - string: '{"responseHeader":{"status":0,"QTime":1,"params":{"q":"accessTo_ssim:9p2909328","fl":"id","wt":"json"}},"response":{"numFound":3,"start":0,"docs":[{"id":"ffd40638-290a-41f7-bcb2-4e0e54fc3ffd"},{"id":"ef4319c0-2f7a-44c0-b1b5-cd650aa4a075"},{"id":"e1910293-34b3-42bb-9179-f67f37eb145e"}]},"facet_counts":{"facet_queries":{},"facet_fields":{"active_fedora_model_ssi":["Hydra::AccessControls::Permission",3],"object_type_si":[]},"facet_dates":{},"facet_ranges":{},"facet_intervals":{}},"spellcheck":{"suggestions":["correctlySpelled",true]}} + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + premis:hasFixity . -' + + a premis:EventOutcomeDetail , premis:Fixity ; + premis:hasEventOutcome "SUCCESS"^^ ; + premis:hasMessageDigest ; + premis:hasSize "12401"^^ . http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + recorded_at: Fri, 16 Mar 2018 15:35:08 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/ff/d4/06/38/ffd40638-290a-41f7-bcb2-4e0e54fc3ffd + uri: http://www.example.com:8080/fcrepo/rest/test/85/64/44/b6/856444b6-8dd5-4dfa-857d-435e354a2ead body: encoding: US-ASCII string: '' @@ -925,12 +2413,12 @@ http_interactions: response: status: code: 200 - message: OK + message: '' headers: Etag: - - '"565c1476d8c61889f49e2a6aff91113e3c3489d6"' + - W/"8620850bf8b048af0ff24b3d9a030bd104fa67b5" Last-Modified: - - Tue, 16 May 2017 21:26:58 GMT + - Fri, 09 Mar 2018 18:53:39 GMT Link: - ;rel="type" - ;rel="type" @@ -938,7 +2426,7 @@ http_interactions: Accept-Patch: - application/sparql-update Accept-Post: - - text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,multipart/form-data,application/sparql-update + - text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,application/ld+json,multipart/form-data,application/sparql-update Allow: - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS Preference-Applied: @@ -946,58 +2434,72 @@ http_interactions: Vary: - Accept, Range, Accept-Encoding, Accept-Language - Prefer - Content-Length: - - '3759' Content-Type: - - text/rdf+n3 + - text/rdf+n3;charset=utf-8 + Content-Length: + - '4273' + Date: + - Fri, 16 Mar 2018 15:35:08 GMT body: encoding: UTF-8 - string: "@prefix premis: .\n@prefix nt: - .\n@prefix rdfs: - .\n@prefix ns004: .\n@prefix ns003: - .\n@prefix ns002: .\n@prefix - ns001: .\n@prefix xsi: - .\n@prefix ns008: .\n@prefix mode: - .\n@prefix ns007: .\n@prefix ns006: - .\n@prefix ns005: - .\n@prefix xml: .\n@prefix ns009: - .\n@prefix fedoraconfig: .\n@prefix - mix: .\n@prefix foaf: - .\n@prefix image: .\n@prefix sv: - .\n@prefix test: .\n@prefix ns011: - .\n@prefix ns010: .\n@prefix - ns015: .\n@prefix ns014: - .\n@prefix ns013: .\n@prefix ns012: - .\n@prefix rdf: .\n@prefix fedora: - .\n@prefix ldp: - .\n@prefix xs: .\n@prefix dc: - .\n\n\n - a ldp:RDFSource , ldp:Container , , - , - , , fedora:Container , fedora:Resource - , fedora:Resource , , - , ;\n\tns005:accessTo - ;\n\tfedora:lastModifiedBy \"bypassAdmin\"^^ - ;\n\tfedora:uuid \"5500b30e-8181-49b7-8322-6d71545942cf\"^^ - ;\n\tfedora:createdBy \"bypassAdmin\"^^ - ;\n\tfedora:primaryType \"nt:folder\"^^ - ;\n\tfedora:created \"2017-05-16T21:26:58.414Z\"^^ - ;\n\tfedora:mixinTypes \"fedora:Container\"^^ - , \"fedora:Resource\"^^ ;\n\tfedora:lastModified - \"2017-05-16T21:26:58.414Z\"^^ - ;\n\tns005:mode ns005:Write ;\n\tns001:hasModel \"Hydra::AccessControls::Permission\"^^ - ;\n\tns005:agent - ;\n\tfedora:writable \"true\"^^ - ;\n\tfedora:hasParent ;\n\tfedora:exportsAs - - .\n\n - dc:format .\n\n - rdfs:label \"jcr/xml\"^^ .\n" + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + a ldp:RDFSource , fedora:Resource , ns007:FileSet , fedora:Container , ldp:Container , ns005:Object ; + fedora:created "2018-03-09T18:53:35.759Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:39.162Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ns005:hasFile , ; + ns005:memberOf ; + ns003:accessRights "http://terms.library.ualberta.ca/public"^^ ; + ns003:title "era-logo.png"^^ ; + ns002:owner 2705 ; + ns010:recordCreatedInJupiter "2018-03-09T18:53:35.736Z"^^ ; + ns010:sitemapLink ""^^ ; + ebucore:dateIngested "2018-03-09T18:53:35.736Z"^^ ; + ldp:contains , ; + ns001:hasModel "IRFileSet"^^ . http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + recorded_at: Fri, 16 Mar 2018 15:35:09 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/ef/43/19/c0/ef4319c0-2f7a-44c0-b1b5-cd650aa4a075 + uri: http://www.example.com:8080/fcrepo/rest/test/85/64/44/b6/856444b6-8dd5-4dfa-857d-435e354a2ead/files/e1bc671b-b3ce-4f9f-9596-df3cad1d84bb/fcr:metadata body: encoding: US-ASCII string: '' @@ -1015,20 +2517,19 @@ http_interactions: response: status: code: 200 - message: OK + message: '' headers: Etag: - - '"d017b399c2b892eec7230039d70280fe33a0cc12"' + - W/"2c4f281be4b1756e9ce34f5598b6ac3d1aed8f8e" Last-Modified: - - Tue, 16 May 2017 21:28:47 GMT + - Fri, 09 Mar 2018 18:53:39 GMT Link: - - ;rel="type" - - ;rel="type" + - ; + rel="describes" + - ;rel="type" - ;rel="type" Accept-Patch: - application/sparql-update - Accept-Post: - - text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,multipart/form-data,application/sparql-update Allow: - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS Preference-Applied: @@ -1036,57 +2537,68 @@ http_interactions: Vary: - Accept, Range, Accept-Encoding, Accept-Language - Prefer - Content-Length: - - '3744' Content-Type: - - text/rdf+n3 + - text/rdf+n3;charset=utf-8 + Content-Length: + - '3433' + Date: + - Fri, 16 Mar 2018 15:35:08 GMT body: encoding: UTF-8 - string: "@prefix premis: .\n@prefix nt: - .\n@prefix rdfs: - .\n@prefix ns004: .\n@prefix ns003: - .\n@prefix ns002: .\n@prefix - ns001: .\n@prefix xsi: - .\n@prefix ns008: .\n@prefix mode: - .\n@prefix ns007: .\n@prefix ns006: - .\n@prefix ns005: - .\n@prefix xml: .\n@prefix ns009: - .\n@prefix fedoraconfig: .\n@prefix - mix: .\n@prefix foaf: - .\n@prefix image: .\n@prefix sv: - .\n@prefix test: .\n@prefix ns011: - .\n@prefix ns010: .\n@prefix - ns015: .\n@prefix ns014: - .\n@prefix ns013: .\n@prefix ns012: - .\n@prefix rdf: .\n@prefix fedora: - .\n@prefix ldp: - .\n@prefix xs: .\n@prefix dc: - .\n\n\n - a ldp:RDFSource , ldp:Container , , - , - , , fedora:Container , fedora:Resource - , fedora:Resource , , - , ;\n\tns005:accessTo - ;\n\tfedora:lastModifiedBy \"bypassAdmin\"^^ - ;\n\tfedora:uuid \"73139ad6-d9d3-4e09-bc6a-639577686454\"^^ - ;\n\tfedora:createdBy \"bypassAdmin\"^^ - ;\n\tfedora:primaryType \"nt:folder\"^^ - ;\n\tfedora:created \"2017-05-16T21:28:47.376Z\"^^ - ;\n\tfedora:mixinTypes \"fedora:Container\"^^ - , \"fedora:Resource\"^^ ;\n\tfedora:lastModified - \"2017-05-16T21:28:47.376Z\"^^ - ;\n\tns005:mode ns005:Read ;\n\tns001:hasModel \"Hydra::AccessControls::Permission\"^^ - ;\n\tns005:agent ;\n\tfedora:writable - \"true\"^^ ;\n\tfedora:hasParent - ;\n\tfedora:exportsAs - .\n\n - dc:format .\n\n - rdfs:label \"jcr/xml\"^^ .\n" + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + a ns005:File , fedora:Binary , ldp:NonRDFSource , ns011:ThumbnailImage , fedora:Resource ; + fedora:created "2018-03-09T18:53:39.163Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasFixityService ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:39.189Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ebucore:filename ""^^ ; + ebucore:hasMimeType "image/jpeg"^^ ; + ns014:describedby ; + premis:hasMessageDigest ; + premis:hasSize "6602"^^ . http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT + recorded_at: Fri, 16 Mar 2018 15:35:09 GMT - request: method: get - uri: http://www.example.com:8080/fcrepo/rest/test/e1/91/02/93/e1910293-34b3-42bb-9179-f67f37eb145e + uri: http://www.example.com:8080/fcrepo/rest/test/85/64/44/b6/856444b6-8dd5-4dfa-857d-435e354a2ead/files/04bb7928-cc5d-4338-8062-3209274b29da/fcr:metadata body: encoding: US-ASCII string: '' @@ -1104,20 +2616,19 @@ http_interactions: response: status: code: 200 - message: OK + message: '' headers: Etag: - - '"082f136e28c8d10a7030ae5f53c0fe4cf2a81c01"' + - W/"6207d8df76a9eda596305d6604963298ac358cc0" Last-Modified: - - Tue, 16 May 2017 21:28:47 GMT + - Fri, 09 Mar 2018 18:53:38 GMT Link: - - ;rel="type" - - ;rel="type" + - ; + rel="describes" + - ;rel="type" - ;rel="type" Accept-Patch: - application/sparql-update - Accept-Post: - - text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,multipart/form-data,application/sparql-update Allow: - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS Preference-Applied: @@ -1125,53 +2636,326 @@ http_interactions: Vary: - Accept, Range, Accept-Encoding, Accept-Language - Prefer + Content-Type: + - text/rdf+n3;charset=utf-8 Content-Length: - - '3852' + - '4353' + Date: + - Fri, 16 Mar 2018 15:35:08 GMT + body: + encoding: UTF-8 + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + a ns011:OriginalFile , ns005:File , ldp:NonRDFSource , fedora:Binary , fedora:Resource ; + fedora:created "2018-03-09T18:53:35.896Z"^^ ; + fedora:createdBy "bypassAdmin"^^ ; + fedora:hasFixityService ; + fedora:hasParent ; + fedora:lastModified "2018-03-09T18:53:38.335Z"^^ ; + fedora:lastModifiedBy "bypassAdmin"^^ ; + fedora:writable "true"^^ ; + ns019:compressionScheme "Deflate"^^ , "Deflate/Inflate"^^ ; + ebucore:fileSize "5612"^^ ; + ebucore:filename "era-logo.png"^^ ; + ebucore:hasMimeType "image/png"^^ ; + ebucore:height "114"^^ ; + ebucore:width "208"^^ ; + ns014:describedby ; + premis:hasCreatingApplicationVersion + "1.2.0"^^ ; + premis:hasFormatName "Portable Network Graphics"^^ ; + premis:hasMessageDigest ; + premis:hasSize "5612"^^ ; + ns016:hashValue "d409b41db16cfaf9f315ac20532eac07"^^ ; + ns015:exifVersion "10.00"^^ ; + ns015:orientation "normal*"^^ . + http_version: + recorded_at: Fri, 16 Mar 2018 15:35:09 GMT +- request: + method: get + uri: http://www.example.com:8080/fcrepo/rest/test/85/64/44/b6/856444b6-8dd5-4dfa-857d-435e354a2ead/files/04bb7928-cc5d-4338-8062-3209274b29da + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + Host: + - www.example.com:8080 + Authorization: + - Basic ZmVkb3JhQWRtaW46ZmVkb3JhQWRtaW4= + response: + status: + code: 200 + message: '' + headers: + Etag: + - '"53b962d0dbba2e45fd47678379833b44252bdacd"' + - '"53b962d0dbba2e45fd47678379833b44252bdacd"' + Last-Modified: + - Fri, 09 Mar 2018 18:53:35 GMT + - Fri, 09 Mar 2018 18:53:35 GMT + Accept-Ranges: + - bytes + Content-Disposition: + - attachment; filename="era-logo.png"; creation-date="Fri, 09 Mar 2018 18:53:35 + GMT"; modification-date="Fri, 09 Mar 2018 18:53:38 GMT"; size=5612 + Link: + - ; + rel="describedby" + - ;rel="type" + - ;rel="type" + Allow: + - DELETE,HEAD,GET,PUT,OPTIONS + Cache-Control: + - no-transform, must-revalidate, max-age=0 Content-Type: + - image/png + Content-Length: + - '5612' + Date: + - Fri, 16 Mar 2018 15:35:08 GMT + body: + encoding: UTF-8 + base64_string: | + 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 + VxIaxh6+TFqZjdb/CzDboD2V/y+lMq2U756YercUz+gkLe09Yp4OBp6QAe0f + JJ6vZhgTNkt+Ncj3i+T9KulRRllpbpBC3y15fo30YAtJCKB8Q+LtVYK20qPV + SN7ebz1rL0Y8ppv03l58lkiv/Yi8Okm4U61430Xrs1KXWZ+3kHoq4yPp7Zen + KE+v7F6TXsF77lSMsId3yPJisTS+9NXn961wtvviYdeLXZI3E8WDh5DvxQBl + sDMogY6Tlustq2LZx/z1k4C352CbtpGu+VlfJnv4WF6dpNWslcSHwdG0VrDc + RGsJ280hzNwrxDRqssySGyVPe2K2R48j82lqnyd5Xn/gGV9ePyPv70mLPQWj + wHo7CbH5E8RUtO97zfr8hLwPJnGoVGWG+PSXNNmKQcmOetwS0EG1S+JfJSb4 + cSmu9cdjkM982iKmWLo4ZHKUPSONUG8SqjsHA5RBYC+cJ417aBrPRq57571B + fyr9tY5iF58hXW420k/tksQz3TODoDctVU0bpVUeB/yD5E2XLBuUijR5Xikt + +E3SmEy3TNVDSD8fM0Zs/23SKIZxNGnp41WKSXYtsNQanwXJl2p08YH0nJPE + dGwMWAaBCeT1OkOT2P7eILqa9PK4+1OYP7bbe3WS3sB7xp3STT+fwjPi1yBL + phW2itaz1F3J7cj2RhnveUenvCgOkjfFHu9Pdica7BMzZWiSitxGBuy1Msi+ + Ulrdm6zyGpzEsqiW8O6UsV6Yw7I+tnrxZOUTFtdiFF9/m8TczxSPXklIletJ + H7NkHNTXMmUzlUFgAq2TMchVJFQ/q4ELrPHJNilUu8u3W66tUvG9DPcEG+1C + fkzCONJqSS+xWnrPZOuQxLbeYLUU3TGnrlVYvYzX9fa3SNRGxm8zk/SEJOmp + kmGmjKkeE3Our8Rlvwxwb8fMfGdqwJKZ0Y9LjzvM55zxWkZvXmkn8K5VEWdI + 43SNdd9pkt+9JG6eeEjfgPHZKI3DZVYv1M1yGlSmyKfKND33LuueuhT57Y/H + k5KGMdZvF1kESlV2lb44+eM1V+pVdYgyCOXGXiA2/Y3iUeoviWkSYrwnBVYn + CawRVyrSRe+VDBshY4zOYtqMEMavkNZ8n5g+9cL8GTJg3iuD/V6S0BXiedos + n1dJWPVCoLeE8AN9ptW7kuHtxcxaZHmzRoqnsVbSs15IMUIKqJHWh9o2S+Y3 + iev2ahlsnyzP+zfSn+rmPbOPjCHXWY6S9yTtN0leDsEcJrVZxjmdpSE6Ue7/ + TxIqOx9I4zNWxg1rSMgJnyrk7ib5US+E+1TSMFamI7bT8hzWhVLuN8pURm8p + n56S13VSxu/KM78prt8VVqtujz0vkDT1AP5XyLhX8vhyKbsucu06a3yzVPJk + tDXFsFbCusKamlgr6TlPGtdGif+lUkc+lms8C6ib1AX7EOV0ZeDg4ODg4ODg + 4ODg4ODg4OAQDv8P9LRKxM4Tk9wAAAAASUVORK5CYII= + http_version: + recorded_at: Fri, 16 Mar 2018 15:35:09 GMT +- request: + method: get + uri: http://www.example.com:8080/fcrepo/rest/test/85/64/44/b6/856444b6-8dd5-4dfa-857d-435e354a2ead/files/04bb7928-cc5d-4338-8062-3209274b29da/fcr:fixity + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: - text/rdf+n3 + User-Agent: + - Ruby + Host: + - www.example.com:8080 + Authorization: + - Basic ZmVkb3JhQWRtaW46ZmVkb3JhQWRtaW4= + response: + status: + code: 200 + message: '' + headers: + Content-Type: + - text/rdf+n3;charset=utf-8 + Content-Length: + - '2661' + Date: + - Fri, 16 Mar 2018 15:35:08 GMT body: encoding: UTF-8 - string: "@prefix premis: .\n@prefix nt: - .\n@prefix rdfs: - .\n@prefix ns004: .\n@prefix ns003: - .\n@prefix ns002: .\n@prefix - ns001: .\n@prefix xsi: - .\n@prefix ns008: .\n@prefix mode: - .\n@prefix ns007: .\n@prefix ns006: - .\n@prefix ns005: - .\n@prefix xml: .\n@prefix ns009: - .\n@prefix fedoraconfig: .\n@prefix - mix: .\n@prefix foaf: - .\n@prefix image: .\n@prefix sv: - .\n@prefix test: .\n@prefix ns011: - .\n@prefix ns010: .\n@prefix - ns015: .\n@prefix ns014: - .\n@prefix ns013: .\n@prefix ns012: - .\n@prefix rdf: .\n@prefix fedora: - .\n@prefix ldp: - .\n@prefix xs: .\n@prefix dc: - .\n\n\n - a ldp:RDFSource , ldp:Container , , - , - , , fedora:Container , fedora:Resource - , fedora:Resource , , - , ;\n\tns005:accessTo - ;\n\tfedora:lastModifiedBy \"bypassAdmin\"^^ - ;\n\tfedora:uuid \"d0bfd66b-64ae-4c73-9b8d-eaef81fe1394\"^^ - ;\n\tfedora:createdBy \"bypassAdmin\"^^ - ;\n\tfedora:primaryType \"nt:folder\"^^ - ;\n\tfedora:created \"2017-05-16T21:28:47.72Z\"^^ - ;\n\tfedora:mixinTypes \"fedora:Container\"^^ - , \"fedora:Resource\"^^ ;\n\tfedora:lastModified - \"2017-05-16T21:28:47.72Z\"^^ ;\n\tns005:mode - ns005:Read ;\n\tns001:hasModel \"Hydra::AccessControls::Permission\"^^ - ;\n\tns005:agent - ;\n\tfedora:writable \"true\"^^ - ;\n\tfedora:hasParent .\n\n - dc:format .\n\n - fedora:exportsAs - .\n\n rdfs:label \"jcr/xml\"^^ - .\n" + string: | + @prefix premis: . + @prefix rdfs: . + @prefix ns004: . + @prefix ns003: . + @prefix ns002: . + @prefix xsi: . + @prefix ns001: . + @prefix ns008: . + @prefix ns007: . + @prefix ns006: . + @prefix xmlns: . + @prefix ns005: . + @prefix xml: . + @prefix ns009: . + @prefix fedoraconfig: . + @prefix foaf: . + @prefix test: . + @prefix ns011: . + @prefix ns010: . + @prefix ns015: . + @prefix ns014: . + @prefix ns013: . + @prefix ns012: . + @prefix ns019: . + @prefix ns018: . + @prefix ns017: . + @prefix ns016: . + @prefix fedora: . + @prefix rdf: . + @prefix ebucore: . + @prefix ldp: . + @prefix xs: . + @prefix dc: . + + + a premis:EventOutcomeDetail , premis:Fixity ; + premis:hasEventOutcome "SUCCESS"^^ ; + premis:hasMessageDigest ; + premis:hasSize "5612"^^ . + + + premis:hasFixity . http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT -recorded_with: VCR 3.0.3 + recorded_at: Fri, 16 Mar 2018 15:35:09 GMT +recorded_with: VCR 4.0.0 diff --git a/spec/support/http_cache/vcr/fedora_fetcher_200.yml b/spec/support/http_cache/vcr/fedora_fetcher_200.yml index d667ef7..d77ec0d 100644 --- a/spec/support/http_cache/vcr/fedora_fetcher_200.yml +++ b/spec/support/http_cache/vcr/fedora_fetcher_200.yml @@ -47,9 +47,11 @@ http_interactions: - chunked body: encoding: UTF-8 - string: "@prefix - ns001: .\n@prefix xsi: - .\n\tns001:downloadFilename \"uuid:846f544d-94db-41b4-9f4a-654e1457ed8c.zip\"^^\n" + string: | + @prefix ns003: . + + + ns003:title "Meh"; http_version: recorded_at: Tue, 09 May 2017 19:50:49 GMT recorded_with: VCR 3.0.3 diff --git a/spec/support/http_cache/vcr/fedora_fetcher_owner.yml b/spec/support/http_cache/vcr/fedora_fetcher_owner.yml new file mode 100644 index 0000000..c6959df --- /dev/null +++ b/spec/support/http_cache/vcr/fedora_fetcher_owner.yml @@ -0,0 +1,57 @@ +--- +http_interactions: +- request: + method: get + uri: http://www.example.com:8080/fcrepo/rest/test/ab/c1/23/wh/abc123whatever + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + Host: + - www.example.com:8080 + Authorization: + - Basic ZmVkb3JhQWRtaW46ZmVkb3JhQWRtaW4= + response: + status: + code: 200 + message: OK + headers: + Etag: + - '"95ae2777eae4deda67da158e3b5bcd918a52d573"' + Last-Modified: + - Fri, 28 Apr 2017 14:15:26 GMT + Link: + - ;rel="type" + - ;rel="type" + - ;rel="type" + Accept-Patch: + - application/sparql-update + Accept-Post: + - text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,multipart/form-data,application/sparql-update + Allow: + - MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS + Preference-Applied: + - return=representation + Vary: + - Accept, Range, Accept-Encoding, Accept-Language + - Prefer + Content-Type: + - text/turtle + Transfer-Encoding: + - chunked + body: + encoding: UTF-8 + string: | + @prefix ns002: . + + + ns002:owner 2705 ; + http_version: + recorded_at: Tue, 09 May 2017 19:50:49 GMT +recorded_with: VCR 3.0.3 diff --git a/spec/support/http_cache/vcr/solr_fetcher_200.yml b/spec/support/http_cache/vcr/solr_fetcher_200.yml deleted file mode 100644 index 5b28224..0000000 --- a/spec/support/http_cache/vcr/solr_fetcher_200.yml +++ /dev/null @@ -1,37 +0,0 @@ -http_interactions: -- request: - method: get - uri: http://www.example.com:8983/solr/test/select?fl=id&q=accessTo_ssim:9p2909328&wt=json - body: - encoding: US-ASCII - string: '' - headers: - Accept-Encoding: - - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 - Accept: - - "*/*" - User-Agent: - - Ruby - Host: - - www.example.com:8983 - response: - status: - code: 200 - message: OK - headers: - Last-Modified: - - Tue, 16 May 2017 21:36:29 GMT - Etag: - - '"NWE0MDAwMDAwMDAwMDAwMFNvbHI="' - Content-Type: - - application/json; charset=UTF-8 - Transfer-Encoding: - - chunked - body: - encoding: UTF-8 - string: '{"responseHeader":{"status":0,"QTime":1,"params":{"q":"accessTo_ssim:9p2909328","fl":"id","wt":"json"}},"response":{"numFound":3,"start":0,"docs":[{"id":"ffd40638-290a-41f7-bcb2-4e0e54fc3ffd"},{"id":"ef4319c0-2f7a-44c0-b1b5-cd650aa4a075"},{"id":"e1910293-34b3-42bb-9179-f67f37eb145e"}]},"facet_counts":{"facet_queries":{},"facet_fields":{"active_fedora_model_ssi":["Hydra::AccessControls::Permission",3],"object_type_si":[]},"facet_dates":{},"facet_ranges":{},"facet_intervals":{}},"spellcheck":{"suggestions":["correctlySpelled",true]}} - -' - http_version: - recorded_at: Tue, 16 May 2017 21:47:14 GMT -recorded_with: VCR 3.0.3 diff --git a/spec/support/http_cache/vcr/solr_fetcher_404.yml b/spec/support/http_cache/vcr/solr_fetcher_404.yml deleted file mode 100644 index 7bdc15c..0000000 --- a/spec/support/http_cache/vcr/solr_fetcher_404.yml +++ /dev/null @@ -1,33 +0,0 @@ -http_interactions: -- request: - method: get - uri: http://www.example.com:8983/solr/test/select?fl=id&q=accessTo_ssim:ohnoimbad&wt=json - body: - encoding: US-ASCII - string: '' - headers: - Accept-Encoding: - - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 - Accept: - - "*/*" - User-Agent: - - Ruby - Host: - - www.example.com:8983 - response: - status: - code: 404 - message: Not Found - headers: - Content-Type: - - text/html;charset=ISO-8859-1 - Cache-Control: - - must-revalidate,no-cache,no-store - Content-Length: - - '1407' - body: - encoding: UTF-8 - string: '' - http_version: - recorded_at: Tue, 09 May 2017 19:59:50 GMT -recorded_with: VCR 3.0.3 diff --git a/spec/support/vcr.rb b/spec/support/vcr.rb index ed41ede..630e085 100644 --- a/spec/support/vcr.rb +++ b/spec/support/vcr.rb @@ -11,4 +11,13 @@ # Only want VCR to intercept requests to external URLs. config.ignore_localhost = true + + # Prevent vcr from returning text body as a base64 (e.g., when an umlaut is used) + config.before_record do |i| + i.response.body.force_encoding('UTF-8') + end + config.preserve_exact_body_bytes do |http_message| + http_message.body.encoding.name == 'ASCII-8BIT' || + !http_message.body.valid_encoding? + end end