Domanda

Ho file multimediali e i relativi metadati memorizzati in un RDBMS (in realtà, i file multimediali effettivi sono archiviati in FS, ma non soffermiamoci su questo).

Vorrei presentare una vista del filesystem di queste informazioni, in modo che gli utenti possano lavorare usando Windows Explorer e cose simili sul database. Intendo che questo accesso sia di sola lettura, che credo semplificherà notevolmente le cose.

Fondamentalmente, quello che voglio ottenere è:

  • Avere visualizzazioni diverse utilizzando criteri di metadati diversi (ad esempio have / by_author / {artist} / {record} / {audiofiles} e / by_record / {record} / {audiofiles}, ad esempio).
  • Ricodifica trasparente (possibilmente memorizzata nella cache) di file multimediali (ad esempio / wav / {wavfile}, / mp3 / 192 / {mp3file), / mp3 / 320 / {mp3file}, ecc.)
  • Generazione trasparente di metadati in diversi formati (ad esempio Excel, XML in diversi schemi, ecc.)

Lo sto facendo in Java, tra l'altro.

I miei problemi qui sono bilaterali:

1)

Qual è un buon modo per implementare il "modello"? Mi sono dilettato con alcune interfacce e implementazioni di Repository, Asset, FileAsset, ContainerAsset, ma non finiscono per sentirsi bene.

Sono interessato a poter delegare parti diverse del filesystem per separare il codice (es. / {artist} / {record} e / {record} parti dell'FS sono implementate con codice diverso ed entrambe delegano al stesso codice per creare il {record} / xxx materiale).

2)

Qual è la migliore alternativa a " esporre " questo modello? Come vedo, ci sono alcune alternative:

  • Fusibile per Java e Dokan per Java. Avrei bisogno di implementare due diversi wrapper, quindi è un po 'più di lavoro ...
  • Utilizzare l'implementazione SMB di Alfresco ed esporre VFS come condivisione Samba
  • Usa Milton (un'implementazione WebDAV per i container servlet) e usa il supporto WebDAV integrato nel sistema operativo o usa qualcosa come Fuse DAV FS per ri-esporlo come FS

Di questi, Fuse / Dokan sembra il maggior lavoro. Alfresco sembra molto carino ma molto complicato per farlo funzionare. Milton sembra più semplice e la semantica di WebDAV potrebbe anche funzionare meglio ... ma non ne sono del tutto sicuro.

Pensieri, idee?

Alex

modifica: il progetto è semi-abbandonato ora (il che significa che sarebbe bello farlo, ma non c'è tempo per farlo adesso). Penso che scriverei il mio VFS come estensione di commons-vfs e poi adatterò commons-vfs a Milton, Dokan, Fuse, ecc.

È stato utile?

Soluzione

Andrei con WebDAV. Un lotto meno codice e standard ben definiti

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top