package de.ozgcloud.xta.client; import jakarta.validation.constraints.NotNull; import org.testcontainers.containers.GenericContainer; import org.testcontainers.utility.DockerImageName; public class XtaTestServerContainer extends GenericContainer<XtaTestServerContainer> { private static final DockerImageName DEFAULT_IMAGE_NAME = DockerImageName.parse("docker.ozg-sh.de/xta-test-server"); private static final String DEFAULT_TAG = "1.9.0-MR-5-81b37427"; public static final int PORT = 8443; public XtaTestServerContainer() { this(DEFAULT_IMAGE_NAME.withTag(DEFAULT_TAG)); } public XtaTestServerContainer(@NotNull DockerImageName dockerImageName) { super(dockerImageName); addExposedPort(PORT); } public String getBaseUrl() { return "https://%s:%d/MB_XTA-WS/XTA210".formatted(getHost(), getMappedPort(PORT)); } public String getMsgBoxPortUrl() { return getBaseUrl() + "msgBoxPort.svc"; } public String getManagementPortUrl() { return getBaseUrl() + "managementPort.svc"; } public String getSendPortUrl() { return getBaseUrl() + "sendPort.svc"; } }