Opened 13 years ago

Closed 12 years ago

Last modified 3 years ago

#366 closed (fixed)

External file support

Reported by: Fredrik Levander Owned by: Gregory Vincic
Milestone: Proteios SE Future Release Keywords:
Cc:

Description

It should be possible to store large files on other file systems but still have them in the File table. A potential soultion is to have an 'externalURI' field for this.

This could also be used for archiving purposes.

Change History (24)

comment:1 Changed 13 years ago by Gregory Vincic

Sounds great, I suggest we only call it URI as those should also be available for files inside proteios.

comment:2 Changed 13 years ago by Gregory Vincic

Status: newassigned

comment:3 Changed 13 years ago by Fredrik Levander

(In [2539]) Refs #366. Added field for URI in FileData?. This should be null for files that ar on the local file system, otherwise it is set to the real URI. The getUniformResourceIdentifier function returns the URI or tries to make one.

getDowloadStream is update to try to download remote files by their URI.

The field accessionnumber was removed, since we have no usage for it.

comment:4 Changed 13 years ago by Fredrik Levander

(In [2540]) Refs #366. Now checking that the URI is correct before setting it in core setter method.

comment:5 Changed 13 years ago by Fredrik Levander

(In [2541]) Refs #366. Allowing the URI to be set to null.

comment:6 Changed 13 years ago by Fredrik Levander

(In [2542]) Refs #366. Fixed typo in generated URI. It still needs to be updated to retrieve the actual file, and not the file database entry.

comment:7 Changed 13 years ago by Fredrik Levander

(In [2555]) Refs #366. Adjusted test classes to work with new setters and getters

comment:8 Changed 13 years ago by Fredrik Levander

(In [2556]) Refs #366. Fixed comments in file tests

comment:9 Changed 13 years ago by Gregory Vincic

Needs exposing through GUI

comment:10 Changed 13 years ago by Gregory Vincic

Milestone: Proteios 2.2Proteios 2.3

A few issues have to be resolved before I commit the GUI stuff for this.

  1. The getUniversalReferenceIdentifier() method returns a generated id that is more or less hardcoded. The problem lies in that the core File object does not know anything about in which context it's being used. Parts of the URI are configured in the web.xml which makes it more or less impossible for that to work properly. If the URI hasn't been set by the user that method should return null. It's then up to the client to decide which URI it is based on it's setup.
  1. When uploading a file the user should not be allowed to set the URI if a file has been selected. And vice versa if a a URI is entered the file selection box should be disabled. Entering the URI should result in the creation of an empty File object. This kind of functionality is not implemented in the current GUI api.

I'll push this ticket over to the 2.3 release for now.

comment:11 Changed 13 years ago by Gregory Vincic

(In [2713]) Refs #366. External URI for local files cannot be supported by the core as it has no way of knowing what they might be.

comment:12 Changed 13 years ago by Gregory Vincic

Milestone: Proteios 2.3Proteios Future Release

comment:13 Changed 12 years ago by Gregory Vincic

(In [3167]) Refs #366. It's now possible to set the URI of a file using the webservice, download works aswell.

comment:14 Changed 12 years ago by olle

(In [3196]) Refs #366. Class/file Service.java in client/servlet/ updated:

  1. Private method void createItems(BufferedReader reader) updated

to avoid inconvertible types error when compiling on some systems.

comment:15 Changed 12 years ago by Gregory Vincic

(In [3219]) Refs #366. Initial revision of webservice tests.

comment:16 Changed 12 years ago by Gregory Vincic

(In [3223]) Refs #366. Constraining UniformResourceIdentifier? protocol to http:// only

comment:17 Changed 12 years ago by Gregory Vincic

(In [3243]) Refs #366. Working test for disallowed protocol file://

comment:18 Changed 12 years ago by Gregory Vincic

(In [3244]) Refs #366. Added test for renaming a file.

comment:19 Changed 12 years ago by Gregory Vincic

(In [3245]) Refs #366. Fixing test for modifying filename.

comment:20 Changed 12 years ago by Gregory Vincic

(In [3253]) Refs #366. File form displays the URI and downloading a non authenticated uri from a http:// location works.

comment:21 Changed 12 years ago by Gregory Vincic

(In [3254]) Refs #366. Using hello.txt file in test.

comment:22 Changed 12 years ago by Gregory Vincic

(In [3255]) Refs #366. URI with basic authentication works.

comment:23 Changed 12 years ago by Gregory Vincic

Resolution: fixed
Status: assignedclosed

http:// protocol works with and without basic authentication. file:// is not allowed.

comment:24 Changed 3 years ago by Fredrik Levander

(In [4637]) Refs #366. Added some error handling for remote files accessed over http.

Note: See TracTickets for help on using tickets.