Warning: Can't synchronize with repository "(default)" (/home/git/ome.git does not appear to be a Git repository.). Look in the Trac log for more information.
Notice: In order to edit this ticket you need to be either: a Product Owner, The owner or the reporter of the ticket, or, in case of a Task not yet assigned, a team_member"

User Story #1730 (closed)

Opened 14 years ago

Closed 14 years ago

Add support for simple FS-based directory listing

Reported by: jamoore Owned by: jamoore
Priority: critical Milestone: Unscheduled
Component: OmeroFs Keywords: n.a.
Cc: cxallan, jburel, cblackburn Story Points: n.a.
Sprint: n.a. Importance: n.a.
Total Remaining Time: n.a. Estimated Remaining Time: n.a.

Description (last modified by jburel)

As an initial step for FS/bioformats-based IO, the Repository API should be made usable by clients for more than just ${omero.data.dir}.

Temporary Repository

The first step will be to make ${java.io.tmpdir} available.

TODO

  • passing back all files as OriginalFile objects
  • allow passing back that original file to register it.
  • Making OriginalFile?.name be UNIQUE
  • Making bulk methods
  • Add UUID to FS server name

Change History (4)

comment:1 Changed 14 years ago by jmoore

r5965 and r5966 have an initial implementation.

Assuming that the output of:

import omero
c = omero.client("localhost")
s = c.createSession("root","ome")
sr = s.sharedResources()
rm = sr.repositories()
print [x.name.val for x in rm.descriptions]

is

['/tmp', '/OMERO/']

Then:

pr = rm.proxies[0]
pr.list("/tmp")

should print out the contents of the /tmp directory. For testing, symlink any directories which you would like to see there.

Caveats

  • The proper exceptions have not been decided on.
  • Creation of the other services (RawPixels, etc.) is not implemented.

comment:2 Changed 14 years ago by jmoore

  • Description modified (diff)

Brief mtg. notes

.#2 FS discussion : Jean-Marie, Josh, Colin 16:54 ([[OmeroFs#2]])

 - JM had a quick look this morning
  -- looking at /tmp
  -- existing directories? yes.
  -- where logic sits java or python
  -- repomap -> /tmp -> ...
 - @Changes
  -- passing back all files as OriginalFile objects
  -- allow passing back that original file to register it.
  -- Making OriginalFile.name be UNIQUE
  -- Colin: Making bulk methods
  -- Hold off on the multiple FSes (using /tmp)
 - Graying out one of the repo's if offline
  -- Also goes for any RawFileStore access
  -- Need good exceptions
  -- Archived files? Another exception ("Do you really want to ...") ??
 - Testing & Exceptions
  -- Need to sit together (Jean-Marie & Colin, especially)
  -- Find out what can go wrong
  -- How can we react to those things
  -- Sensible (hopefully) exception hiearchies
 - Things for the future, to keep in mind
  -- one error: moved file
  -- hashing
  -- do we do monitoring now or later

comment:3 Changed 14 years ago by jburel

  • Description modified (diff)

.#3 FS discussion : Jean-Marie, Colin (OmeroFs#3)

  • JM: insight status repositories implemented in insight.

Objects returned by server already considered as OriginalFile

Actions for second phase:

  • passing back all files as OriginalFile objects
  • displaying thumbnail while browsing the a directory. Single file for now.
  • Interaction with bio-formats or importer (if we want rendering settings).
  • Colin: check if using Josh's calls are using Fs.


comment:4 Changed 14 years ago by cblackburn

  • Resolution set to fixed
  • Status changed from new to closed

Closed for the same reason as #1933. See #2128 and #2595

Note: See TracTickets for help on using tickets. You may also have a look at Agilo extensions to the ticket.

1.3.13-PRO © 2008-2011 Agilo Software all rights reserved (this page was served in: 0.65204 sec.)

We're Hiring!