Pregunta

Tengo archivos multimedia y sus metadatos almacenados en un RDBMS (en realidad, los archivos multimedia reales se almacenan en el FS, pero no nos detenemos en eso).

Me gustaría presentar una vista del sistema de archivos de esta información, para que los usuarios puedan trabajar con el Explorador de Windows y otras cosas similares en la base de datos. Tengo la intención de que este acceso sea de solo lectura, lo que creo que simplificará mucho las cosas.

Básicamente, lo que quiero lograr es:

  • Tienen diferentes vistas usando diferentes criterios de metadatos (es decir, tienen / by_author / {artist} / {record} / {audiofiles} y / by_record / {record} / {audiofiles}, por ejemplo).
  • Tener una recodificación transparente (posiblemente en caché) de los archivos de medios (es decir, / wav / {wavfile}, / mp3 / 192 / {mp3file), / mp3 / 320 / {mp3file}, etc.)
  • Generación transparente de metadatos en diferentes formatos (digamos, Excel, XML en diferentes esquemas, etc.)

Estoy haciendo esto en Java, por cierto.

Mis problemas aquí son de dos caras:

1)

¿Cuál es una buena manera de implementar el "modelo"? He incursionado en algunas interfaces e implementaciones de Repository, Asset, FileAsset, ContainerAsset, pero no terminan sintiéndose bien.

Estoy interesado en poder delegar diferentes partes del sistema de archivos para separar el código (es decir, las partes / {artist} / {record} y / {record} del FS se implementan con un código diferente y ambos delegan en el mismo código para crear el {record} / xxx cosas).

2)

¿Cuál es la mejor alternativa para " exponer " ¿Este modelo? Como veo, hay algunas alternativas:

  • Fusible para Java y Dokan para Java. Necesitaría implementar dos envoltorios diferentes, por lo que es un poco más de trabajo ...
  • Use la implementación SMB de Alfresco y simplemente exponga el VFS como un recurso compartido de Samba
  • Use Milton (una implementación de WebDAV para contenedores de servlet) y use el soporte incorporado de WebDAV de OS o use algo como un Fuse DAV FS para volver a exponerlo como FS

De esos, Fuse / Dokan parece ser el más trabajado. Alfresco se ve muy bien pero muy complicado para que funcione. Milton parece más simple, y la semántica de WebDAV podría incluso funcionar mejor ... pero no estoy completamente seguro.

¿Pensamientos, ideas?

Alex

editar: el proyecto está semi-abandonado ahora (lo que significa que sería genial hacerlo, pero no hay tiempo para hacerlo ahora). Creo que escribiría mi VFS como una extensión de commons-vfs y luego adaptaría commons-vfs a Milton, Dokan, Fuse, etc.

¿Fue útil?

Solución

Yo iría con WebDAV. Un lote menos código y estándares bien definidos

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top