Pixie :: Tienda

PIXIE :: La tienda es una interfaz abstracta para el almacenamiento físico.
Descargar ahora

Pixie :: Tienda Clasificación y resumen

Anuncio publicitario

  • Rating:
  • Licencia:
  • Perl Artistic License
  • Precio:
  • FREE
  • Nombre del editor:
  • James Duncan
  • Sitio web del editor:
  • http://search.cpan.org/~jduncan/Pixie-2.06/lib/Pixie/Store.pm

Pixie :: Tienda Etiquetas


Pixie :: Tienda Descripción

PIXIE :: La tienda es una interfaz abstracta para el almacenamiento físico. Pixie :: Store es una interfaz abstracta para el almacenamiento físico. HSYNOPSISIN A UN Script de implementación: use Pixie :: Tienda :: DBI; # Configurar el DataStore. PIXIE :: Tienda :: Dbi-> implementación ('dbi: mysql: dbname = foo', usuario => 'wibble', pase => 'plib', objeto_table => 'objeto'); en un cliente de Pixie: use Pixie :: Tienda :: MySubClass; usar Pixie; MY $ PIXIE = PIXIE-> Conectar ('prefijo: myspec', usuario => 'bill', pass => 'flobadob'); Pixie :: Store le proporciona a Pixie con una interfaz abstracta al almacenamiento físico utilizado para almacenar los objetos. que Pixie logra. No es una clase 'pública'; La mayoría de los usuarios de Pixie nunca tendrán que tocarlo, excepto, tal vez para llamar al método de implementación de una subclase apropiada. Sin embargo, si desea agregar otro medio de almacenamiento a Pixie, comience aquí. (Si desea agregar métodos específicos para almacenar en un RDBMS en particular, debe echar un vistazo a DBIX :: Anydbd antes de bucear en Pixie :: Store :: DBI :: Predeterminado y sus amigos lamentablemente subdocumentados. La interfaz pública no es pública Interfaz a Pixie :: Tienda. Sin embargo, cuando corresponda, Pixie :: Subclasses de la tienda puede implementar un método de implementación que debe ser responsable de la configuración de una estructura de almacenamiento adecuada que se puede conectar a posterior. La tienda de interfazPixie subclase :: Tienda implementa casi ningún método En sí, a excepción de un método de fábrica 'Connect', que toma una "especificación de almacenamiento" (similar en forma a la especie de origen de datos DBI clásica), funciona con qué subclase de concreto para usar para la conexión real, lo carga si es necesario y usa eso. Para construir un objeto de la tienda. Pero el PIXIE, la propia Pixie depende de los siguientes métodos existentes y funciona como se describe. Connect (SPEC, @args) realiza la conexión real y devuelve un objeto de la clase apropiada. La única parte fija de la interfaz es que La especificación de almacenamiento debe ser primero, y la única parte fija de eso es que las especificaciones de almacenamiento tienden a parecerse a 'ID: ...'. La etiqueta 'ID:' es utilizada por Pixie :: Tienda :: Conecte para identificar qué subclase para instanciar. "El TIPOPAP" tiene más detalles de cómo funciona. COMENTARIOS EL DATCERORE, elimina todos los objetos almacenados y los metadatos asociados. Use con precaución. (Es notablemente útil cuando uno está escribiendo scripts de prueba aunque ...) Store_at (OID, Aplatdened_Object) Tome el aplandened_Object y escúpelo donde se puede encontrar a través de la OID determinada. Se garantiza que el aplanded_Object es una cadena de bytes arbitrariamente larga (solo para hacer la vida fácil ...). Un OID es una cadena de hasta 255 caracteres. Sobrescribe cualquier entrada existente en ese oid.get_object_at (OID) devuelve el objeto asociado con el OID dado si existe; Devuelve UNDEF / LA LISTA VACÍA Si no se puede encontrar ningún objeto y lanza una excepción si encuentra más de un objeto asociado con ese OID. (Se supone que OIDS son únicos después de todo) .Delete (OID) elimina el objeto asociado con OID. Devuelve VERDADERO si existía un objeto, o falso si no había tal objeto. Cierra la base de datos para que nadie más pueda interferir. (En realidad, a menudo se implementa como "Transacción de inicio" ...). Desbloqueo, posiblemente mal nombrado. Asegura que todos los cambios que se hayan insertado realmente se hayan insertado, y libera la base de datos para otros usuarios. Posiblemente debería llamarse 'commit'.RollBackRolls la base de datos de nuevo al estado que fue en el último' Lock '. No mal nitada. (Hurra). El TYPEMAPONCE Usted tiene Pixie Subclassed Pixie :: Store Debe informarle sobre su nueva subclase para que pueda hacer que se conecte el trabajo. Para hacer eso, elija una cadena de prefijo apropiada para identificar su subclase y agregue algo como lo siguiente, después de la base de uso "Pixie :: Store"; Parte, o las cosas se romperán, a su código: $ Pixie :: Tienda :: Typemap {prefix} = __package __; Una vez que haya hecho esto, el código dado en la sinopsis debe funcionar, como por la magia. Requisitos: · Perl


Pixie :: Tienda Software relacionado