Skip to content

Commit

Permalink
Change DeleteNormPort to use NormEli
Browse files Browse the repository at this point in the history
RISDEV-6261
  • Loading branch information
malte-laukoetter committed Jan 21, 2025
1 parent 045ccca commit 3c430c5
Show file tree
Hide file tree
Showing 6 changed files with 20 additions and 16 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ SELECT MAX(d2.eliNormManifestation) FROM DokumentDto d2 WHERE d2.eliNormExpressi
* @param manifestationEli The ELI to search for.
* @param publishState The publishState to search for.
*/
void deleteByEliDokumentManifestationAndPublishState(
void deleteByEliNormManifestationAndPublishState(
final String manifestationEli,
final NormPublishState publishState
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -206,7 +206,7 @@ public void deleteAnnouncementByNormEli(DeleteAnnouncementByNormEliPort.Command
@Override
@Transactional
public void deleteNorm(DeleteNormPort.Command command) {
dokumentRepository.deleteByEliDokumentManifestationAndPublishState(
dokumentRepository.deleteByEliNormManifestationAndPublishState(
command.eli().toString(),
command.publishState()
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import de.bund.digitalservice.ris.norms.domain.entity.Norm;
import de.bund.digitalservice.ris.norms.domain.entity.NormPublishState;
import de.bund.digitalservice.ris.norms.domain.entity.eli.DokumentManifestationEli;
import de.bund.digitalservice.ris.norms.domain.entity.eli.NormManifestationEli;

/**
* Interface representing a port for deleting a {@link Norm} based on the ELI (European Legislation
Expand All @@ -23,5 +23,5 @@ public interface DeleteNormPort {
* @param eli The ELI (European Legislation Identifier) used to identify the norm in the command.
* @param publishState The publish-state that the norm that should be deleted must currently have. If it differs from the current state no norms are deleted.
*/
record Command(DokumentManifestationEli eli, NormPublishState publishState) {}
record Command(NormManifestationEli eli, NormPublishState publishState) {}
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
import de.bund.digitalservice.ris.norms.application.port.output.*;
import de.bund.digitalservice.ris.norms.domain.entity.*;
import de.bund.digitalservice.ris.norms.domain.entity.eli.DokumentExpressionEli;
import de.bund.digitalservice.ris.norms.domain.entity.eli.DokumentManifestationEli;
import de.bund.digitalservice.ris.norms.utils.EidConsistencyGuardian;
import de.bund.digitalservice.ris.norms.utils.XmlMapper;
import java.io.IOException;
Expand Down Expand Up @@ -191,7 +190,7 @@ private void deleteAnnouncement(DokumentExpressionEli expressionEli) {
.forEach(norm ->
deleteNormPort.deleteNorm(
new DeleteNormPort.Command(
norm.getManifestationEli(),
norm.getNormManifestationEli(),
NormPublishState.QUEUED_FOR_PUBLISH
)
)
Expand All @@ -211,12 +210,11 @@ private void deleteTargetNormsZf0(Set<DokumentExpressionEli> activeModDestinatio
loadNormPort
.loadNorm(new LoadNormPort.Command(expressionEli))
.ifPresent(targetNorm -> {
DokumentManifestationEli manifestationEli = targetNorm
.getMeta()
.getFRBRManifestation()
.getEli();
deleteNormPort.deleteNorm(
new DeleteNormPort.Command(manifestationEli, NormPublishState.UNPUBLISHED)
new DeleteNormPort.Command(
targetNorm.getNormManifestationEli(),
NormPublishState.UNPUBLISHED
)
);
})
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ public Announcement releaseAnnouncement(ReleaseAnnouncementUseCase.Query query)
.forEach(queuedNorm ->
deleteNormPort.deleteNorm(
new DeleteNormPort.Command(
queuedNorm.getManifestationEli(),
queuedNorm.getNormManifestationEli(),
NormPublishState.QUEUED_FOR_PUBLISH
)
)
Expand Down Expand Up @@ -198,7 +198,7 @@ public Announcement releaseAnnouncement(ReleaseAnnouncementUseCase.Query query)
);
// delete the old unpublished manifestation so no residual data remains in the database
deleteNormPort.deleteNorm(
new DeleteNormPort.Command(norm.getManifestationEli(), NormPublishState.UNPUBLISHED)
new DeleteNormPort.Command(norm.getNormManifestationEli(), NormPublishState.UNPUBLISHED)
);
updateOrSaveNormPort.updateOrSave(new UpdateOrSaveNormPort.Command(nextManifestationOfNorm));
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ void itShouldReleaseAnAnnouncementWithoutTargetNorms() {
.updateOrSave(new UpdateOrSaveNormPort.Command(newNewestUnpublishedManifestationOfNorm));
verify(deleteNormPort, times(1))
.deleteNorm(
new DeleteNormPort.Command(norm.getManifestationEli(), NormPublishState.UNPUBLISHED)
new DeleteNormPort.Command(norm.getNormManifestationEli(), NormPublishState.UNPUBLISHED)
);
verify(saveReleaseToAnnouncementPort, times(1)).saveReleaseToAnnouncement(any());

Expand Down Expand Up @@ -206,11 +206,17 @@ void itShouldReleaseAnAnnouncementWithTargetNorm() {
// the old manifestations for editing are deleted (as they might no longer be the newest manifestation, that's why new once are created)
verify(deleteNormPort, times(1))
.deleteNorm(
new DeleteNormPort.Command(amendingNorm.getManifestationEli(), NormPublishState.UNPUBLISHED)
new DeleteNormPort.Command(
amendingNorm.getNormManifestationEli(),
NormPublishState.UNPUBLISHED
)
);
verify(deleteNormPort, times(1))
.deleteNorm(
new DeleteNormPort.Command(targetNorm.getManifestationEli(), NormPublishState.UNPUBLISHED)
new DeleteNormPort.Command(
targetNorm.getNormManifestationEli(),
NormPublishState.UNPUBLISHED
)
);

// new manifestations for further editing are saved
Expand Down

0 comments on commit 3c430c5

Please sign in to comment.