Loading CHANGELOG.md +2 −2 Changes for CHANGELOG.md: 2 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -2,11 +2,11 @@ Changelog ========= 7.3.2 ----- - Ajout des setter aux Source et Destination - Ajout de setters dans SourceInterface et DestinationInterface. - 7.3.1 ----- - Paramètre code des exceptions null deprecated, remplacements des exception par Exception("message', previous: $e); - Construction des exceptions : suppression du paramètre $code à null car c'est désormais deprecated. 7.3.0 ----- Loading src/UnicaenDbImport/Domain/Destination.php +13 −4 Changes for src/UnicaenDbImport/Domain/Destination.php: 13 added lines, 4 removed lines. Original line number Diff line number Diff line Loading @@ -235,10 +235,12 @@ class Destination implements DestinationInterface { $this->config->set('where', $where); } public function setConnection(Connection $connection): void { $this->config->set('connection', $connection); } public function setSourceCodeColumn(string $sourceCodeColumn): void { $this->config->set('source_code_column', $sourceCodeColumn); Loading @@ -246,24 +248,29 @@ class Destination implements DestinationInterface public function setUndeleteEnabledColumn(?string $undeleteEnabledColumn): void { $this->config->set('update_on_deleted_enabled_column', $undeleteEnabledColumn); $this->config->set('undelete_enabled_column', $undeleteEnabledColumn); } public function setUpdateOnDeletedEnabledColumn(?string $undeleteEnabledColumn): void public function setUpdateOnDeletedEnabledColumn(?string $udateOnDeletedEnabledColumn): void { $this->config->set('update_on_deleted_enabled_column', $undeleteEnabledColumn); $this->config->set('update_on_deleted_enabled_column', $udateOnDeletedEnabledColumn); } public function setColumnValueFilter(?array $valueFilter): void { $this->config->set('column_value_filter', $valueFilter); } public function setExtra(?array $extra): void { $this->config->set('extra', $extra); } public function setIdColumnStrategy(?string $idColumnStrategy): void { $this->config->set('id_strategy', $idColumnStrategy); } public function setIdColumnSequence(?string $idColumnSequence): void { $this->config->set('id_sequence', $idColumnSequence); Loading @@ -273,10 +280,12 @@ class Destination implements DestinationInterface { $this->config->set('intermediate_table', $intermediateTable); } public function setIntermediateTableAutoDrop(?bool $intermediateTableAutoDrop): void { $this->config->set('intermediate_table_auto_drop', $intermediateTable); $this->config->set('intermediate_table_auto_drop', $intermediateTableAutoDrop); } public function setLogTable(?string $logTable): void { $this->config->set('log_table', $logTable); Loading src/UnicaenDbImport/Domain/DestinationInterface.php +64 −3 Changes for src/UnicaenDbImport/Domain/DestinationInterface.php: 64 added lines, 3 removed lines. Original line number Diff line number Diff line Loading @@ -32,7 +32,7 @@ interface DestinationInterface /** * Retourne le petit nom de cette destination. * * @return null|string * @return string */ public function getName(): string; Loading @@ -44,7 +44,7 @@ interface DestinationInterface public function getTable(): string; /** * Retourne le filtre SQL éventuel permettant de restreindre les données destinations concernées. * Retourne le filtre SQL éventuel permettant de restreindre les données destinations. * * @return string|null */ Loading Loading @@ -146,21 +146,82 @@ interface DestinationInterface */ public function getLogTable(): string; /** * @desc Setteur pour pouvoir modifier dinamyquement la config * Spécifie le nom de la table de destination. */ public function setTable(string $table): void; /** * Spécifie le filtre SQL éventuel permettant de restreindre les données destinations. */ public function setWhere(?string $where): void; /** * Spécifie l'instance de la connexion Doctrine vers cette destination. */ public function setConnection(Connection $connection): void; /** * Spécifie le nom de la colonne commune existant obligatoirement dans la table/vue source * et la table destination. * * Dans les tables source et destination, cette colonne est celle d'un identifiant unique permettant * de rapprocher les enregistrements source et destination. */ public function setSourceCodeColumn(string $sourceCodeColumn): void; /** * Spécifie le nom de la colonne éventuelle dans la table destination permettant d'autoriser ou on l'opération 'undelete'. */ public function setUndeleteEnabledColumn(?string $undeleteEnabledColumn): void; /** * Spécifie le nom de la colonne éventuelle dans la table destination permettant d'autoriser ou non l'opération 'update' * sur les enregistrements historisés. */ public function setUpdateOnDeletedEnabledColumn(?string $udateOnDeletedEnabledColumn): void; /** * Spécifie les instances de filtres éventuels permettant de transformer une veleur de colonne/attribut source * en une valeur de colonne destination. */ public function setColumnValueFilter(?array $valueFilter): void; /** * Spécifie les éventuelles attributs libres complémentaires. */ public function setExtra(?array $extra): void; /** * Spécifie le nom de la strategy à utiliser pour générer les valeurs de la colonne ID (clé primaire). * Si la stratégie est `'SEQUENCE'`, la séquence spécifiée par {@see getIdColumnSequence()} sera utilisée. * Si la stratégie est `'IDENTITY'`, la valeur de l'ID des données sources sera utilisée. * Si la stratégie est `null`, la colonne de la table destination devra avoir un type auto-incrémenté * pour que l'insertion fonctionne. */ public function setIdColumnStrategy(?string $idColumnStrategy): void; /** * Spécifie le nom éventuel de la séquence permettant de générer les valeurs dans la colonne ID (clé primaire). * Si la valeur retournée est `null`, le nom de séquence par défaut '{table}_ID_SEQ' sera utilisé. */ public function setIdColumnSequence(?string $idColumnSequence): void; /** * Spécifie le nom de la table intermédiaire à créer dans la base de données de destination * lorsque l'utilisation d'une table intermédiaire est nécessaire (cf {@link requiresIntermediateTable}). */ public function setIntermediateTable(?string $intermediateTable): void; /** * Indique si la suppression automatique de la table intermédiaire est activée. */ public function setIntermediateTableAutoDrop(?bool $intermediateTableAutoDrop): void; /** * Spécifie le nom de la table des logs. */ public function setLogTable(?string $logTable): void; } No newline at end of file src/UnicaenDbImport/Domain/Source.php +18 −14 Changes for src/UnicaenDbImport/Domain/Source.php: 18 added lines, 14 removed lines. Original line number Diff line number Diff line Loading @@ -356,33 +356,25 @@ class Source implements SourceInterface return $data; } public function setTable(string $table): void { $this->config->set('table', $table); } public function setSelect(?string $select): void { $this->config->set('select', $select); } public function setWhere(?string $where): void { $this->config->set('where', $where); } public function setConnection(Connection $connection): void { $this->config->set('connection', $connection); } public function setColumnValueFilter(?array $valueFilter): void { $this->config->set('column_value_filter', $valueFilter); } public function setExtra(?array $extra): void { $this->config->set('extra', $extra); } public function setSelect(?string $select): void { $this->config->set('select', $select); } public function setSourceCodeColumn(string $sourceCodeColumn): void { Loading @@ -393,10 +385,22 @@ class Source implements SourceInterface { $this->config->set('computed_columns', $computedColumns); } public function setColumnNameFilter(?ColumnNameFilterInterface $columnNameFilter): void { $this->config->set('column_name_filter', $columnNameFilter); } public function setColumnValueFilter(?array $valueFilter): void { $this->config->set('column_value_filter', $valueFilter); } public function setExtra(?array $extra): void { $this->config->set('extra', $extra); } public function setPageSize(?int $pageSize): void { $this->config->set('page_size', $pageSize); Loading src/UnicaenDbImport/Domain/SourceInterface.php +51 −7 Changes for src/UnicaenDbImport/Domain/SourceInterface.php: 51 added lines, 7 removed lines. Original line number Diff line number Diff line Loading @@ -40,14 +40,14 @@ interface SourceInterface public function getTable(): ?string; /** * Retourne l'instruction SQL permettant de requêter la source. * Retourne l'instruction permettant de requêter la source (ex: select SQL, fragment d'URL). * * @return string|null */ public function getSelect(): ?string; /** * Retourne le filtre SQL éventuel à appliquer aux données sources. * Retourne le filtre éventuel à appliquer aux données sources. * * @return string|null */ Loading @@ -61,11 +61,11 @@ interface SourceInterface public function getConnection(); /** * Retourne le nom de la colonne commune existant obligatoirement dans la table/vue source * ET la table destination. * Retourne le nom de la colonne ou attribut commun existant obligatoirement dans les données source * et la table destination. * * Dans les tables source et destination, cette colonne est celle d'un identifiant unique permettant * de rapprocher les enregistrements source et destination. * Dans les source et destination, cette colonne ou attribut est celui d'un identifiant unique permettant * de rapprocher les données source et destination. * * @return string Exemple: 'code' */ Loading Loading @@ -141,17 +141,61 @@ interface SourceInterface */ public function getPageSize(): int; /** * @desc Setteur pour pouvoir modifier dinamyquement la config * Spécifie le nom de la table de source, le cas échéant. */ public function setTable(string $table): void; /** * Spécifie l'instruction permettant de requêter la source (ex: select SQL, fragment d'URL). */ public function setSelect(?string $select): void; /** * Spécifie le filtre éventuel à appliquer aux données sources. */ public function setWhere(?string $where): void; /** * Spécifie l'instance de la connexion vers cette source. */ public function setConnection(Connection $connection): void; /** * Spécifie la colonne ou attribut commun existant obligatoirement dans les données source * et la table destination. * * Dans les source et destination, cette colonne ou attribut est celui d'un identifiant unique permettant * de rapprocher les données source et destination. */ public function setSourceCodeColumn(string $sourceCodeColumn): void; /** * Spécifie les éventuels colonnes/attributs dont la valeur est caclulée, au format suivant : * 'nom de la colonne/attribut calculée' => {@see \UnicaenDbImport\Filter\ColumnValue\ColumnValueFilterInterface}. */ public function setComputedColumns(array $computedColumns): void; /** * Spécifie l'instance de filtre permettant de transformer un nom de colonne/attribut source * en un nom de colonne destination. */ public function setColumnNameFilter(?ColumnNameFilterInterface $columnNameFilter): void; /** * Spécifie les instances de filtres éventuels permettant de transformer une valeur de colonne/attribut source * en une valeur de colonne destination. */ public function setColumnValueFilter(array $valueFilter): void; /** * Spécifie d'éventuelles attributs libres complémentaires. */ public function setExtra(?array $extra): void; /** * Spécifie la taille des pages à respecter dans l'obtention des données. */ public function setPageSize(?int $pageSize): void; } No newline at end of file Loading
CHANGELOG.md +2 −2 Changes for CHANGELOG.md: 2 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -2,11 +2,11 @@ Changelog ========= 7.3.2 ----- - Ajout des setter aux Source et Destination - Ajout de setters dans SourceInterface et DestinationInterface. - 7.3.1 ----- - Paramètre code des exceptions null deprecated, remplacements des exception par Exception("message', previous: $e); - Construction des exceptions : suppression du paramètre $code à null car c'est désormais deprecated. 7.3.0 ----- Loading
src/UnicaenDbImport/Domain/Destination.php +13 −4 Changes for src/UnicaenDbImport/Domain/Destination.php: 13 added lines, 4 removed lines. Original line number Diff line number Diff line Loading @@ -235,10 +235,12 @@ class Destination implements DestinationInterface { $this->config->set('where', $where); } public function setConnection(Connection $connection): void { $this->config->set('connection', $connection); } public function setSourceCodeColumn(string $sourceCodeColumn): void { $this->config->set('source_code_column', $sourceCodeColumn); Loading @@ -246,24 +248,29 @@ class Destination implements DestinationInterface public function setUndeleteEnabledColumn(?string $undeleteEnabledColumn): void { $this->config->set('update_on_deleted_enabled_column', $undeleteEnabledColumn); $this->config->set('undelete_enabled_column', $undeleteEnabledColumn); } public function setUpdateOnDeletedEnabledColumn(?string $undeleteEnabledColumn): void public function setUpdateOnDeletedEnabledColumn(?string $udateOnDeletedEnabledColumn): void { $this->config->set('update_on_deleted_enabled_column', $undeleteEnabledColumn); $this->config->set('update_on_deleted_enabled_column', $udateOnDeletedEnabledColumn); } public function setColumnValueFilter(?array $valueFilter): void { $this->config->set('column_value_filter', $valueFilter); } public function setExtra(?array $extra): void { $this->config->set('extra', $extra); } public function setIdColumnStrategy(?string $idColumnStrategy): void { $this->config->set('id_strategy', $idColumnStrategy); } public function setIdColumnSequence(?string $idColumnSequence): void { $this->config->set('id_sequence', $idColumnSequence); Loading @@ -273,10 +280,12 @@ class Destination implements DestinationInterface { $this->config->set('intermediate_table', $intermediateTable); } public function setIntermediateTableAutoDrop(?bool $intermediateTableAutoDrop): void { $this->config->set('intermediate_table_auto_drop', $intermediateTable); $this->config->set('intermediate_table_auto_drop', $intermediateTableAutoDrop); } public function setLogTable(?string $logTable): void { $this->config->set('log_table', $logTable); Loading
src/UnicaenDbImport/Domain/DestinationInterface.php +64 −3 Changes for src/UnicaenDbImport/Domain/DestinationInterface.php: 64 added lines, 3 removed lines. Original line number Diff line number Diff line Loading @@ -32,7 +32,7 @@ interface DestinationInterface /** * Retourne le petit nom de cette destination. * * @return null|string * @return string */ public function getName(): string; Loading @@ -44,7 +44,7 @@ interface DestinationInterface public function getTable(): string; /** * Retourne le filtre SQL éventuel permettant de restreindre les données destinations concernées. * Retourne le filtre SQL éventuel permettant de restreindre les données destinations. * * @return string|null */ Loading Loading @@ -146,21 +146,82 @@ interface DestinationInterface */ public function getLogTable(): string; /** * @desc Setteur pour pouvoir modifier dinamyquement la config * Spécifie le nom de la table de destination. */ public function setTable(string $table): void; /** * Spécifie le filtre SQL éventuel permettant de restreindre les données destinations. */ public function setWhere(?string $where): void; /** * Spécifie l'instance de la connexion Doctrine vers cette destination. */ public function setConnection(Connection $connection): void; /** * Spécifie le nom de la colonne commune existant obligatoirement dans la table/vue source * et la table destination. * * Dans les tables source et destination, cette colonne est celle d'un identifiant unique permettant * de rapprocher les enregistrements source et destination. */ public function setSourceCodeColumn(string $sourceCodeColumn): void; /** * Spécifie le nom de la colonne éventuelle dans la table destination permettant d'autoriser ou on l'opération 'undelete'. */ public function setUndeleteEnabledColumn(?string $undeleteEnabledColumn): void; /** * Spécifie le nom de la colonne éventuelle dans la table destination permettant d'autoriser ou non l'opération 'update' * sur les enregistrements historisés. */ public function setUpdateOnDeletedEnabledColumn(?string $udateOnDeletedEnabledColumn): void; /** * Spécifie les instances de filtres éventuels permettant de transformer une veleur de colonne/attribut source * en une valeur de colonne destination. */ public function setColumnValueFilter(?array $valueFilter): void; /** * Spécifie les éventuelles attributs libres complémentaires. */ public function setExtra(?array $extra): void; /** * Spécifie le nom de la strategy à utiliser pour générer les valeurs de la colonne ID (clé primaire). * Si la stratégie est `'SEQUENCE'`, la séquence spécifiée par {@see getIdColumnSequence()} sera utilisée. * Si la stratégie est `'IDENTITY'`, la valeur de l'ID des données sources sera utilisée. * Si la stratégie est `null`, la colonne de la table destination devra avoir un type auto-incrémenté * pour que l'insertion fonctionne. */ public function setIdColumnStrategy(?string $idColumnStrategy): void; /** * Spécifie le nom éventuel de la séquence permettant de générer les valeurs dans la colonne ID (clé primaire). * Si la valeur retournée est `null`, le nom de séquence par défaut '{table}_ID_SEQ' sera utilisé. */ public function setIdColumnSequence(?string $idColumnSequence): void; /** * Spécifie le nom de la table intermédiaire à créer dans la base de données de destination * lorsque l'utilisation d'une table intermédiaire est nécessaire (cf {@link requiresIntermediateTable}). */ public function setIntermediateTable(?string $intermediateTable): void; /** * Indique si la suppression automatique de la table intermédiaire est activée. */ public function setIntermediateTableAutoDrop(?bool $intermediateTableAutoDrop): void; /** * Spécifie le nom de la table des logs. */ public function setLogTable(?string $logTable): void; } No newline at end of file
src/UnicaenDbImport/Domain/Source.php +18 −14 Changes for src/UnicaenDbImport/Domain/Source.php: 18 added lines, 14 removed lines. Original line number Diff line number Diff line Loading @@ -356,33 +356,25 @@ class Source implements SourceInterface return $data; } public function setTable(string $table): void { $this->config->set('table', $table); } public function setSelect(?string $select): void { $this->config->set('select', $select); } public function setWhere(?string $where): void { $this->config->set('where', $where); } public function setConnection(Connection $connection): void { $this->config->set('connection', $connection); } public function setColumnValueFilter(?array $valueFilter): void { $this->config->set('column_value_filter', $valueFilter); } public function setExtra(?array $extra): void { $this->config->set('extra', $extra); } public function setSelect(?string $select): void { $this->config->set('select', $select); } public function setSourceCodeColumn(string $sourceCodeColumn): void { Loading @@ -393,10 +385,22 @@ class Source implements SourceInterface { $this->config->set('computed_columns', $computedColumns); } public function setColumnNameFilter(?ColumnNameFilterInterface $columnNameFilter): void { $this->config->set('column_name_filter', $columnNameFilter); } public function setColumnValueFilter(?array $valueFilter): void { $this->config->set('column_value_filter', $valueFilter); } public function setExtra(?array $extra): void { $this->config->set('extra', $extra); } public function setPageSize(?int $pageSize): void { $this->config->set('page_size', $pageSize); Loading
src/UnicaenDbImport/Domain/SourceInterface.php +51 −7 Changes for src/UnicaenDbImport/Domain/SourceInterface.php: 51 added lines, 7 removed lines. Original line number Diff line number Diff line Loading @@ -40,14 +40,14 @@ interface SourceInterface public function getTable(): ?string; /** * Retourne l'instruction SQL permettant de requêter la source. * Retourne l'instruction permettant de requêter la source (ex: select SQL, fragment d'URL). * * @return string|null */ public function getSelect(): ?string; /** * Retourne le filtre SQL éventuel à appliquer aux données sources. * Retourne le filtre éventuel à appliquer aux données sources. * * @return string|null */ Loading @@ -61,11 +61,11 @@ interface SourceInterface public function getConnection(); /** * Retourne le nom de la colonne commune existant obligatoirement dans la table/vue source * ET la table destination. * Retourne le nom de la colonne ou attribut commun existant obligatoirement dans les données source * et la table destination. * * Dans les tables source et destination, cette colonne est celle d'un identifiant unique permettant * de rapprocher les enregistrements source et destination. * Dans les source et destination, cette colonne ou attribut est celui d'un identifiant unique permettant * de rapprocher les données source et destination. * * @return string Exemple: 'code' */ Loading Loading @@ -141,17 +141,61 @@ interface SourceInterface */ public function getPageSize(): int; /** * @desc Setteur pour pouvoir modifier dinamyquement la config * Spécifie le nom de la table de source, le cas échéant. */ public function setTable(string $table): void; /** * Spécifie l'instruction permettant de requêter la source (ex: select SQL, fragment d'URL). */ public function setSelect(?string $select): void; /** * Spécifie le filtre éventuel à appliquer aux données sources. */ public function setWhere(?string $where): void; /** * Spécifie l'instance de la connexion vers cette source. */ public function setConnection(Connection $connection): void; /** * Spécifie la colonne ou attribut commun existant obligatoirement dans les données source * et la table destination. * * Dans les source et destination, cette colonne ou attribut est celui d'un identifiant unique permettant * de rapprocher les données source et destination. */ public function setSourceCodeColumn(string $sourceCodeColumn): void; /** * Spécifie les éventuels colonnes/attributs dont la valeur est caclulée, au format suivant : * 'nom de la colonne/attribut calculée' => {@see \UnicaenDbImport\Filter\ColumnValue\ColumnValueFilterInterface}. */ public function setComputedColumns(array $computedColumns): void; /** * Spécifie l'instance de filtre permettant de transformer un nom de colonne/attribut source * en un nom de colonne destination. */ public function setColumnNameFilter(?ColumnNameFilterInterface $columnNameFilter): void; /** * Spécifie les instances de filtres éventuels permettant de transformer une valeur de colonne/attribut source * en une valeur de colonne destination. */ public function setColumnValueFilter(array $valueFilter): void; /** * Spécifie d'éventuelles attributs libres complémentaires. */ public function setExtra(?array $extra): void; /** * Spécifie la taille des pages à respecter dans l'obtention des données. */ public function setPageSize(?int $pageSize): void; } No newline at end of file