Pergunta

Eu tenho arquivos multimídia e seus metadados armazenados em um RDBMS (na verdade, os arquivos de mídia reais são armazenados nos FS, mas não vamos debruçar sobre isso).

Gostaria de apresentar uma visão do sistema de arquivos desta informação, de modo que os usuários podem trabalhar usando Windows Explorer e outras coisas semelhantes na base de dados. Pretendo este acesso, o que eu acredito que vai simplificar muito as coisas para ser somente leitura.

Basicamente, o que eu quero alcançar é:

  • têm opiniões diferentes, utilizando diferentes critérios de metadados (ou seja, ter / by_author / {artist} / {RECORD} / {} audiofiles e / by_record / {RECORD} / {} audiofiles, por exemplo).
  • Tenha reencoding transparente (possivelmente em cache) de arquivos de mídia (ou seja, / wav / {} wavfile, / mp3 / 192 / {mp3file), / mp3 / 320 / {} mp3file, etc.)
  • geração transparente de metadados em diferentes formatos (por exemplo, Excel, XML em esquemas diferentes, etc.)

Estou fazendo isso em Java, btw.

Os meus problemas aqui estão dois lados:

1)

O que é uma boa maneira de implementar o "modelo"? Eu já se envolveu com algum Repository, Ativo, FileAsset, interfaces e implementações ContainerAsset, mas eles não acabar se sentindo muito bem.

Eu estou interessado em ser capaz de delegar diferentes partes do sistema de arquivos para código separado (ie / {artist} / {} registro e / {} registro partes dos FS são implementadas com código diferente e ambos delegado ao mesmo código para criar o {RECORD} / xxx coisas).

2)

Qual é a melhor alternativa para "expor" este modelo? A meu ver, existem algumas alternativas:

  • O fusível para Java e Dokan para Java. Eu preciso implementar dois invólucros diferentes, por isso é um pouco mais de trabalho ...
  • implementação SMB Use Alfresco e apenas expor os VFS como parcela Samba
  • Use Milton (a implementação WebDAV para contêineres de servlet) e use OS'es builtin suporte WebDAV ou usar algo como um fusível DAV FS para re-expô-la como um FS

Destes, fusível / Dokan parecem mais trabalho. Alfresco parece muito bom, mas muito complicado para fazê-lo funcionar. Milton parece mais simples, e de WebDAV semântica pode até funcionar melhor ... mas eu não sou inteiramente certo.

Os pensamentos, idéias?

Alex

edit: O projeto é semi-abandonded agora (ou seja, que seria legal para fazê-lo, mas não há tempo para isso agora). Eu acho que eu escrevo minhas VFS como uma extensão para commons-VFS e depois adaptar commons-VFS para Milton, Dokan, Fuse, etc.

Foi útil?

Solução

Eu iria com WebDAV. A muito menos código e padrões bem definidos

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top