Fonctionnalité #20613
openFonctionnalité #20611: Implémentation du SEDA 2.2
Intégrer le schéma SEDA 2.2
Description
Ajout au code source
Déclaration dans la configuration
Prise en compte dans les contrôleurs
Updated by Cyril VAZQUEZ over 2 years ago
- Target version changed from 2.9 to 3.0
Updated by Cyril VAZQUEZ over 1 year ago
- Target version changed from 3.0 to Inscription Backlog
Updated by Cyril VAZQUEZ 6 months ago
- Status changed from A traiter to En cours
- Priority changed from 2-Sérieux to 1-Majeur
- Target version changed from Inscription Backlog to 3.X
- Tags RM 3.0.X added
Branche archivesPubliques/feat/20611_SEDA2.2
Schéma XSD ajouté dans bundle/seda2/ressources/2.2/schema
Analyse d'impact :
Nombreuses références à la version 2.1 dans le code source :
- Configuration :
packageSchemas
faut-il ajouter 2.2 ou remplacer 2.1 ? Il y a une référence au namespace XML dans la config associée. - Controller :
-
abstractMessage::sendXml()
fonctionpreg_replace
pour enlever le namespace default après fusion des templates -
abstractMessage::validateSchema()
Va chercher le schéma dans le répertoire 2.1 + 2 messages de non-conformité : switch ajouté -
ArchiveTranferReceptionTrait::receive()
il y a bien un switch sur le schéma, 2.2 ajouté -
ArchiveTranferRequest::receive()
idem, 2.2 ajouté
-
- Model :
- Tous les modèles PHP SEDA 2 déclarent le namespace 2.1 en en-tête
Updated by Cyril VAZQUEZ 6 months ago
- Tracker changed from Action to Fonctionnalité
Updated by Cyril VAZQUEZ 6 months ago
Après modifications, la réception et validation d'un bordereau SEDA 2.1 fonctionne.
Faire en sorte que l'ACK et la réponse soient au même format que la demande va être complexe, car on repasse par medona qui appelle le contrôleur du bundle identifié d'après packageSchemas
sans préciser de version du SEDA 2.
Updated by Cyril VAZQUEZ 6 months ago
Après modifications, la réception et validation d'un bordereau SEDA 2.1 fonctionne.
Il faut ensuite faire en sorte que l'ACK et la réponse soient au même format que la demande va être complexe, car on repasse par medona qui appelle le contrôleur du bundle identifié d'après packageSchemas
sans préciser de version du SEDA 2.
La méthode medona/archiveTranfer::receive
utilise le packageSchema pour trouver le phpNamespace (nom du bundle).
Ensuite la méthode {{bundle}}::receive()
est utilisée sans préciser le schéma.
Idem pour la réponse la méthode medona/archiveTranferReply::send
.
Il faut donc soit
- ajouter un paramètre à toutes les méthodes send() et receive() appelées dans les contrôleurs d'empaquetage depuis medona pour passer la version du standard. (27 appels)
- déterminer le namespace XML au moment de générer le XML, car il est en dur dans les templates XML SEDA 2.
Impact seconde solution : enlever le NS des templates et le mettre dynamiquement dans abstractMessage::sendXML()
.
Updated by Cyril VAZQUEZ 6 months ago
- Subject changed from Intégrer le schéma to Intégrer le schéma SEDA 2.2
- Assignee changed from Cyril VAZQUEZ to Jérôme BOUCHER
A tester avec paquets SEDA 2.1 et 2.2 sur branche