Pixie :: loja.

Pixie :: Store é uma interface abstrata para armazenamento físico.
Baixe Agora

Pixie :: loja. Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • Perl Artistic License
  • Preço:
  • FREE
  • Nome do editor:
  • James Duncan
  • Site do editor:
  • http://search.cpan.org/~jduncan/Pixie-2.06/lib/Pixie/Store.pm

Pixie :: loja. Tag


Pixie :: loja. Descrição

Pixie :: Store é uma interface abstrata para armazenamento físico. Pixie :: Store é uma interface abstrata para armazenamento físico.synopsisina A implantação de script: Use Pixie :: Loja :: DBI; # Configurar o armazenamento de dados. Pixie :: Loja :: DBI-> Deploy ('DBI: mysql: dbname = foo', user => 'wibble', pass => 'plib', object_table => 'objeto'); em um cliente Pixie: use pixie :: Loja :: MySubclass; use pixie; Meu $ Pixie = Pixie-> Connect ('prefix: myspec', user => 'bill', passagem => 'flobadob'); Pixie :: loja fornece Pixie com uma interface abstrata para o armazenamento físico usado para realmente armazenar os objetos que a pixie gerencia. Não é uma aula "pública"; A maioria dos usuários do Pixie nunca terá que tocá-lo, exceto talvez para chamar o método de implantação de uma subclasse apropriada.Nowever, se você quiser adicionar outro meio de armazenamento a pixie, comece aqui. (Se você quiser adicionar métodos específicos para armazenar em um determinado rdbms, você deve dar uma olhada no DBIX :: Anydbd antes de mergulhar no Pixie :: Loja :: DBI :: Padrão e seus desconhecidos amigos underdocumented. A interfaceção pública não é pública Interface para Pixie :: No entanto, quando apropriado, as subclasses da Pixie :: Lojas podem implementar um método de implantação que deve ser responsável por configurar uma estrutura de armazenamento adequada que pode ser conectada a posterior.A interfaceCepixie subclassable :: armazenam quase sem métodos em si, exceto para um método de fábrica 'Connect', que leva uma 'especificação de armazenamento' (similar no formulário para a especificação da fonte de dados do DBI clássico), funciona em que subclasse concreto a ser usado para a conexão real, carrega se necessário e usa isso Para construir um objeto de armazenamento.But Pixie apropriado depende dos seguintes métodos existentes e funcionando como descrito.Connect (spec, @args) torna a conexão real e retorna um objeto da classe apropriada. A única parte fixa da interface é que A especificação de armazenamento deve vir em primeiro lugar, e a única parte fixa disso é que as especificações de armazenamento tendem a parecer "id: ...". A tag 'ID:' é usada pela Pixie :: Loja :: Connect para identificar qual subclasse para instanciar. "O typeMap" tem mais detalhes sobre como isso funciona. ClaroMpts O Datastore, remove todos os objetos armazenados e quaisquer metadados associados. Use com cuidado. (É incrivelmente útil quando se está escrevendo scripts de teste embora ...) Store_at (OID, achatened_object) Pegue o achatened_Object e esconda onde ele pode ser encontrado através do dado OID. O achatened_object é garantido para ser uma cadeia arbitrariamente longa de bytes (apenas para tornar a vida fácil ...). Um OID é uma série de até 255 caracteres. Substitui qualquer entrada existente nesse OID.GET_OBJECT_AT (OID) retorna o objeto associado ao dado oid se ele existir; Retorna indef / a lista vazia, se nenhum objeto puder ser encontrado e lança uma exceção se encontrar mais de um objeto associado a esse OID. (OIDs deverá ser único depois de tudo) .Delete (OID) exclui o objeto associado ao OID. Retorna true se um objeto existisse ou false se não houvesse tal objeto. BloqueadoPossível. Bloqueia o banco de dados para que ninguém mais possa interferir. (Na verdade, muitas vezes é implementado como 'começar a transação' ...). UnlockAgain, possivelmente menchemente. Garante que todas as alterações que tenham sido inseridas realmente foram inseridas e liberte o banco de dados para outros usuários. Deve ser chamado de "commit'.rollackrolls o banco de dados de volta ao estado em que estava no último" bloqueio ". Não mencionada. (Hurray). O typemaponce você tem Pixie subclassed :: Loja você precisa informar sobre sua nova subclasse para que ele possa fazer o trabalho de conexão. Para fazer isso, escolha uma cadeia de prefixo apropriada para identificar sua subclasse e adicione algo como o seguinte - após a base de uso 'Pixie :: Store'; Parte, ou coisas quebrarão - para o seu código: $ Pixie :: Loja :: TypeMap {prefix} = __package __; depois de ter feito isso, o código dado na sinopse deve funcionar, como se por magia. Requisitos: · Perl.


Pixie :: loja. Software Relacionado