feat(mcp): resolve absolute and relative message endpoint URIs (#150)

Improve endpoint URI handling by supporting both relative paths
and properly validated absolute URIs.

- Implement URI resolution in HttpClientSseClientTransport:
- Change baseUri field from String to URI type
- Add Utils.resolveUri method to handle both absolute and relative URIs
- Resolve relative URIs against the base URI
- Validate absolute URIs to ensure they match base URI's scheme, authority, and path
- Add parameterized tests for various URI resolution scenarios
- Add ByteBuddy dependency for HttpClient mocking and update Mockito

Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
This commit is contained in:
E550448 2025-04-13 12:54:48 +02:00 • committed by Christian Tzolov
commit 344f1b8383

View file

@ -60,8 +60,9 @@
<assert4j.version>3.26.3</assert4j.version>
<junit.version>5.10.2</junit.version>
<mockito.version>5.11.0</mockito.version>
<mockito.version>5.17.0</mockito.version>
<testcontainers.version>1.20.4</testcontainers.version>
<byte-buddy.version>1.17.5</byte-buddy.version>
<slf4j-api.version>2.0.16</slf4j-api.version>
<logback.version>1.5.15</logback.version>
@ -356,4 +357,4 @@
</repository>
</repositories>
</project>
</project>