La table ci-dessous liste les Services d'Accès de Données SDO actuellement fournis :
Nom DAS | Description |
---|---|
SDO_DAS_XML | Un Service d'Accès de Données XML supportant la lecture/écriture SDOs comme documents XML. |
SDO_DAS_Relational | Un Service d'Accès de Données basé sur PDO supportant la lecture/écriture SDO aux bases de données relationnelles. Implémente une politique optimiste de mises à jour concourante. |
SDO consiste en trois blocs d'interface. Le premier bloc couvre les interfaces pour utiliser avec les applications typiques SDO. Celles-ci sont identifiées par le préfixe de paquet 'SDO_'. Le deuxième bloc est celui qui utilise les interfaces qui sont utilisées pour la réflexion, et travaille avec le modèle d'objet de données. Ces interfaces sont identifiées par le préfixe de paquet 'SDO_Model_'. Finalement, le troisième bloc est celui qui utilise les interfaces qui sont utilisées par les implémentations de Service d'Accès de Données et sont identifiées par le préfixe de paquet 'SDO_DAS_'. La majorité des utilisateurs SDO n'auront pas besoin d'utiliser ou de comprendre les interfaces 'SDO_Model_' et 'SDO_DAS_'.
L'interface principale dans laquelle les objets de données sont manipulés. En plus des méthode ci-dessous, SDO_DataObjet étend les interfaces ArrayAccess, SDO_PropertyAccess (définit les méthodes __get() / __set() pour surcharger l'accès aux propriétés), Iterator et Countable.
getSequence : récupère la séquence pour l'objet de données
createDataObject : crée un objet de données enfant
clear : détruit les propriétés d'un objet de données
getContainer : récupère le conteneur (aussi connu en tant que 'parent') de l'objet de données
getTypeName : récupère le nom du type de cet objet de données
getTypeNamespaceURI : récupère l'URI de l'espace de noms du type de cet objet de données
L'interface avec laquelle on peut accéder aux objets de données en séquence pour préserver l'ordre parmi les propriétés de l'objet de données et pour permettre le texte non structuré. SDO_Sequence préserve les indices contigus et donc l'insertion ou la suppression d'éléments peut entraîner un décalage des autres éléments vers le haut ou vers le bas. En plus des méthodes ci-dessous, SDO_Sequence étend les interfaces ArrayAccess, Interator et Countable.
getProperty : récupère la propriété pour un index de séquence donné
move : déplace un élément d'un index vers un autre
insert : insère une nouvelle valeur dans la séquence
L'interface dans lequel les propriétés de plusieurs valeurs sont manipulées. En plus des méthodes définies ci-dessous, SDO_List étend ArrayAcces, Iterator et Countable. SDO_List préserve les indices contigus et donc l'insertion ou la suppression des éléments peut décaler les autres éléments vers le haut ou vers le bas.
insert : insertion d'une nouvelle valeur dans la liste
L'interface dans lequel les objets de données peuvent être créés. Un Service d'Accès de Données est responsable de remplir le modèle (c'est-à-dire, la configuration des classe de données avec le type et les informations de structure pour les objets de données qu'elle peut créer.) pour les classes et peut alors optionnellement retourner une instance ou une implémentation de l'interface de SDO_DataFactory.
create : crée un nouvel objet de données
Une exception SDO_Exception est lancée lorsque la demande de l'appelant ne peut être honorée. Les sous classes de SDO_Exception sont :
SDO_PropertyNotSetException - la propriété spécifiée existe mais n'a pas été définie ou n'a pas de valeur par défaut
SDO_PropertyNotFoundException - la propriété spécifiée ne fait pas partie du type de l'objet de données
SDO_TypeNotFoundException - l'URI d'espace de noms spécifiée ou le nom du type est inconnu
SDO_InvalidConversionException - la conversion entre les types d'assignation n'est pas possible
SDO_IndexOutOfBoundsException - l'index numérique d'un objet de données, d'une séquence ou d'une liste n'est pas dans un intervalle valide
SDO_UnsupportedOperationException - la demande n'a pû être honorée car elle n'est pas autorisée, par exemple, une tentative de définition d'une propriété en lecture seule
L'interface principale est utilisée pour la réflexion d'une instance d'objet de données pour obtenir son type de modèle et les informations de propriété. Elle est désignée pour suivre le motif de réflexion introduit dans PHP 5.
__construct : construit un nouvel SDO_Model_ReflectionDataObject.
export : récupère une chaîne décrivant l'objet de données.
getType : récupère le SDO_Model_Type pour l'objet de données.
getInstanceProperties : récupère les propriétés de l'instance de l'objet de données.
getContainmentProperty : récupère la propriété qui définit la relation contenue de l'objet de données.
L'interface dans lequel les informations de type de l'objet de données peuvent être récupérées. Cette interface peut être utilisée pour trouver le nom de type et l'espace de nom URI du type, si le type autorise l'ouverture du contenu, et ainsi de suite.
getName : récupère le nom du type.
getNamespaceURI : récupère l'espace de nom URI du type.
isInstance : vérifie pour un objet de données s'il est une instance du type.
getProperties : récupère les propriétés du type.
getProperty : récupère une propriété de type.
isDataType : vérifie pour voir si le type est une primitive de type scalaire.
isSequencedType : vérifie pour voir s'il s'agit d'un type de séquence.
isOpenType : vérifie pour voir s'il s'agit d'un type ouvert.
isAbstractType : vérifie pour voir s'il s'agit d'un type d'abstraction.
getBaseType : récupère le type de base de ce type (si un existe).
L'interface dans lequel les informations de propriété d'objet peuvent être récupérées. Cette interface peut être utilisée pour trouver le type d'une propriété, si une propriété a une valeur par défaut, si une propriété est contenue ou référencée par son parent, sa cardinalité, et ainsi de suite.
getName : récupère le nom de la propriété.
getType : récupère le type de la propriété.
isMany : vérifie pour voir si la propriété est de valeurs multiples.
isContainment : vérifie pour voir si la propriété décrit une relation contenue.
getContainingType : récupère le type qui contient cette propriété.
getDefault : récupère la valeur par défaut pour une propriété.
L'interface dans lequel un Service d'Accès de Données peut accéder à SDO_DAS_ChangeSummary de l'objet de données. Le résumé de changement est utilisé par le Service d'Accès de Données pour vérifier les conflits lors des applications des changements à une source de données.
getChangeSummary : récupère le résumé de changement pour un objet de données
L'interface dans lequel l'historique de changement d'un objet de données est accédé. Le résumé de changement contient des informations pour n'importe quelles modifications sur un objet de données qui s'est produites lorsque la journalisation a débuté. Dans le cas de suppression ou de modification, les dernières valeurs sont aussi gardées dans le résumé de changement.
Si la journalisation n'est plus active, alors le résumé de changement contient seulement les changements faits jusqu'au point où la journalisation fut désactivée. La réactivation de la journalisation supprime le résumé de changement. Cela peut être utile lorsqu'un certain nombre de changements ont été écris par un DAS et un objet de données qui est réutilisé.
beginLogging : démarre la journalisation des changements faits à l'objet de données
endLogging : termine la journalisation des changements faits à l'objet de données
isLogging : vérifie pour voir si la journalisation des changements est activée
getChangedDataObjects : récupère une liste de d'objets de données qui ont été changés
getChangeType : récupère le type de changement qui a été fait à l'objet de données
getOldValues : récupère une liste des anciennes valeurs pour un objet de données
getOldContainer : récupère un ancien conteneur d'objet de données pour un objet de données supprimé
L'interface dans lequel l'ancienne valeur pour une propriété est accédée. Une liste des configurations est retournée par le résumé de changement dont la méthode est getOldValues.
getPropertyIndex : récupère l'index pour la propriété changée
getPropertyName : récupère le nom pour la propriété changée
getValue : récupère l'ancienne valeur pour la propriété changée
getListIndex : récupère la liste des index pour l'ancienne valeur si elle faisait partie d'une propriété à valeurs multiples
isSet : vérifie si la propriété était fixée avant d'être modifiée
L'interface pour construire le modèle pour un SDO_DataObjet. Le SDO_DAS_DataFactory est une classe abstraite fournissant une méthode statique qui retourne une classe d'implémentation de données concrète. L'implémentation est utilisée par les Services d'Accès de Données pour créer un modèle SDO à partir de leur modèle. Par exemple, un Service d'Accès de Données Relationnel peut créer et remplir un modèle SDO_DAS_DataFactory basé sur un schéma pour une base de données relationnelle.
getDataFactory : méthodes statiques pour obtenir une instance de classe concrète de données
addType : ajoute un nouveau type au modèle SDO
addPropertyToType : ajoute une nouvelle propriété à une définition de type dans le modèle SDO