La tabla de abajo enumera los Servicios de Acceso a Datos (DAS) de SDO proporcionados actualmente:
Nombre del DAS | Descripción |
---|---|
SDO_DAS_XML | Un Servicio de Acceso a Datos XML que admite la lectura/escritura de SDOs como documentos XML. |
SDO_DAS_Relational | Un Servicio de Acceso a Datos basado en PDO que admite la lectura/escritura de SDOs de bases de datos relacionales. Implementa una política de concurrencia optimista para actualizaciones. |
SDO consiste en tres conjuntos de interfaces. El primer conjunto cubre aquellas interfaces usadas por las aplicaciones SDO típicas. Están identificadas por el prefijo de paquete 'SDO_'. El segundo conjunto son aquellas usadas para reflejar, y trabajar con, el modelo de un objeto de datos. Están identificadas por el prefijo de paquete 'SDO_Model_'. Finalmente, el tercer conunto son aquellas usadas por las implementaciones de Servicio de Acceso a Datos y están identificadas por el prefijo de paquete 'SDO_DAS_'. La mayoría de los usuarios de SDO no necesitarán usar o comprender las interfaces 'SDO_Model_' y 'SDO_DAS_'.
Es la interfaz principal a través de la cual se manipulan los objetos de datos. Además de los métodos de abajo, SDO_DataObject amplía las interfaces ArrayAccess, SDO_PropertyAccess (define los métodos __get() / __set() para la sobrecarga de acceso a propiedades), Iterator, y Countable.
getSequence - obtener la secuencia para el objeto de datos
createDataObject - crear un objeto de datos hijo
clear - desestablecer las propiedades de un objeto de datos
getContainer - obtener el contenedor (también conocido como 'padre') de este objeto de datos
getTypeName - obtener el nombre del tipo de este objeto de datos
getTypeNamespaceURI - obtener el URI del espacio de nombres del tipo de este objeto de datos
Es la interfaz a través de la cual se puede acceder a los objetos de datos para mantener el orden de las propiedades de los objetos de datos y permitir texto no estructurado. SDO_Sequence mantiene los índices contiguos y, por consiguiente, al insertar o eliminar elementos, puede mover otros elementos hacia arriba o hacia abajo. Además de los métodos de abajo, SDO_Sequence amplía las interfaces ArrayAccess, Iterator y Countable.
getProperty - obtener la propiedad de un índice de secuencia dado
move - mover un elemento desde un índice de propiedad a otro
insert - insertar un nuevo valor en la secuencia
Es la interfaz a través de la cual se manipulan las propiedades polievaluadas. Además de los métodos definidos abajo, SDO_List amplía ArrayAccess, Iterator y Countable. SDO_List mantiene los índices contiguos y, por consiguiente, al insertar o eliminar elementos, puede mover otros elementos hacia arriba o hacia abajo.
insert - insertar un nuevo valor en la lista
Es la interfaz a través de la cual se pueden crear objetos de datos. Un Servicio de Acceso a Datos es el responsable de rellenar el modelo (esto es, configurar la fábrica de datos con la información de tipo y estructura de los objetos de datos que puede crear) para la fábrica y puede opcionalmente devolver una instancia de, o implementar, la interfaz SDO_DataFactory.
create - crear un nuevo objeto de datos
Una SDO_Exception es lanzada cuando no se puede completar la solicitud del llamador. Las subclases de SDO_Exception son:
SDO_PropertyNotSetException - la propiedad especificada existe pero no ha sido establecida o no tiene un valor predeterminado.
SDO_PropertyNotFoundException - la propiedad especificada no es parte del tipo de objeto de datos
SDO_TypeNotFoundException - el URI del espacio de nombres o el nombre del tipo es desconocido
SDO_InvalidConversionException - la conversión entre los tipos de la asignación no es posible
SDO_IndexOutOfBoundsException - el índice numérico de un objeto de datos, la secuencia o la lista no están en el rango válido
SDO_UnsupportedOperationException - la petición no puede ser completada debido a que no está permitida, por ejemplo, un intento de establecer una propiedad de sólo lectura.
Es la interfaz principal usada para reflejar una instancia de un objeto de datos para obtener la informaición de su tipo de modelo y propiedades. Está diseñada para seguir el patrón de reflexión introducido en PHP 5.
__construct - construir un nuevo SDO_Model_ReflectionDataObject.
export - obtener un string que describe el objeto de datos.
getType - obtener el SDO_Model_Type del objeto de datos.
getInstanceProperties - obtener las propiedades de la instancia del objeto de datos.
getContainmentProperty - obtener la propiedad que define la relación de contención del objeto de datos.
Es la interfaz a través de al cual se puede recuperar la información del tipo de un objeto de datos. Esta interfaz se puede usar para averiguar el nombre del tipo y el URI del espacio de nombres del tipo, si el tipo permite contenido abierto, etc.
getName - obtener el nombre del tipo.
getNamespaceURI - obtener el URI del espacio de nombres del tipo.
isInstance - comprobar que un objeto de datos es una instancia del tipo.
getProperties - obtener las propiedades del tipo.
getProperty - obtener una propiedad del tipo.
isDataType - comprobar si este tipo es un tipo escalar primitivo.
isSequencedType - comprobar si éste es un tipo secuenciado.
isOpenType - comprobar si éste es un tipo abierto.
isAbstractType - comprobar si éste es un tipo abstracto.
getBaseType - obtener el tipo base de este tipo (si existe uno).
Es la interfaz a través de la cual se puede recuperar la información de las propiedades de un objeto de datos. Esta interfaz se puede usar para averiguar el tipo de una propiedad, si una propiedad tiene un valor predeterminado, si la propiedad está contenida o hace referencia a su padre, su cardinalidad, etc.
getName - obtener el nombre de la propiedad.
getType - obtener el tipo de la propiedad.
isMany - comprobar si la propiedad es polievaluada.
isContainment - comprobar si la propiedad describe una relación de contención.
getContainingType - obtener el tipo que contiene esta propiedad.
getDefault - obtener el valor predeterminado de una propiedad.
Es la interfaz a través de la cual un Servicio de Acceso a Datos puede acceder al SDO_DAS_ChangeSummary de un objeto de datos. El resumen de cambios es usado por el Servicio de Acceso a Datos para comprobar si hay conflictos al aplicar los cambios a una fuente de datos.
getChangeSummary - obtener el resumen de cambios de un objeto de datos
Es la interfaz a través de la cual se accede al historial de cambios de un objeto de datos. El resumen de cambios contiene información de cualquier modificación hecha a un objeto de datos que suceda desde que la identificación fue activada. En el caso de eliminaciones y modificaciones, los valores antiguos también están contenidos en el resumen de cambios.
Si la identificación ya no está activa, el resumen de cambios sólo contendrá los cambios hechos hasta el punto donde la identificación fue desactivada. La reactivación de la identificación limpia el resumen de cambios. Esto es útil cuado un conjunto de cambios ha sido escrito por un DAS y el objeto de datos va a ser reusado.
beginLogging - comenzar a registrar los cambios hechos en un objeto de datos
endLogging - finalizar de registrar los cambios hechos en un objeto de datos
isLogging - comprobar si el registro de cambios está activad
getChangedDataObjects - obtener una lista de los objetos de datos que han sido cambiados
getChangeType - obtener el tipo de cambio hecho a un objeto de datos
getOldValues - obtener una lista de los valores antiguos de un objeto de datos
getOldContainer - obtener el objeto de datos contenedor antiguo de un objeto de datos eliminado
Es la interfaz a través de la cual se accede al valor antiguo de una propiedad. El método de resumen de cambios getOldValues devuelve una lista.
getPropertyIndex - obtener el índice de la propiedad cambiada
getPropertyName - obtener el nombre de la propiedad cambiada
getValue - obtener el valor antiguo de la propiedad cambiada
getListIndex - obtener el índice de la lista del valor antiguo si era parte de una propiedad polievaluada.
isSet - comprobar si la propiedad estaba establecida antes de ser modificada
Es la interfaz para contruir el modelo de un SDO_DataObject. SDO_DAS_DataFactory es una clase abstracta que proporciona un método estático que devuelve una implementación de fábrica de datos concreta. La implementación es usada por los Servicios de Acceso a Datos para crear un modelo SDO a partir de su modelo. Por ejemplo, un Servicio de Acceso a Datos Relacionales podría crear y rellenar un modelo SDO_DAS_DataFactory basado en un esquema de una base de datos relacional.
getDataFactory - método estático para obtener una instancia de una fábrica de datos concreta
addType - añadir un nuevo tipo al modelo SDO
addPropertyToType - añadir una nueva propiedad a una definición de tipo en el modelo SDO