Skip to content

Commit 50fa4e2

Browse files
committed
add url in RequestMetaData
Signed-off-by: dbulahov <[email protected]>
1 parent 4b8de03 commit 50fa4e2

File tree

12 files changed

+22
-9
lines changed

12 files changed

+22
-9
lines changed

api/src/main/java/org/eclipse/daanse/xmla/api/RequestMetaData.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,6 @@ public interface RequestMetaData {
1919
Optional<String> userAgent();
2020

2121
Optional<String> sessionId();
22+
23+
Optional<String> url();
2224
}

client/soapmessage/test.bndrun.deactivated

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,7 @@ port : 17290
116116
org.mockito.mockito-core;version='[4.9.0,4.9.1)',\
117117
org.objenesis;version='[3.3.0,3.3.1)',\
118118
org.opentest4j;version='[1.2.0,1.2.1)',\
119+
org.osgi.service.cm;version='[1.6.1,1.6.2)',\
119120
org.osgi.service.component;version='[1.5.1,1.5.2)',\
120121
org.osgi.test.common;version='[1.3.0,1.3.1)',\
121122
org.osgi.test.junit5;version='[1.3.0,1.3.1)',\

model.record/src/main/java/org/eclipse/daanse/xmla/model/record/RequestMetaDataR.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,6 @@
1616

1717
import org.eclipse.daanse.xmla.api.RequestMetaData;
1818

19-
public record RequestMetaDataR(Optional<String> userAgent, Optional<String> sessionId) implements RequestMetaData {
19+
public record RequestMetaDataR(Optional<String> userAgent, Optional<String> sessionId, Optional<String> url) implements RequestMetaData {
2020

2121
}

server/adapter.soapmessage/src/main/java/org/eclipse/daanse/xmla/server/adapter/soapmessage/RequestMetaDataUtils.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,11 @@ public class RequestMetaDataUtils {
2525

2626
public static final String USER_AGENT = "User-agent";
2727

28-
public static RequestMetaData getRequestMetaData(Map<String, Object> headers, Optional<Session> oSession) {
28+
public static RequestMetaData getRequestMetaData(Map<String, Object> headers, Optional<Session> oSession, String url) {
2929
Optional<String> oUserAgent = getUserAgent(headers.get(USER_AGENT));
3030
return new RequestMetaDataR(oUserAgent,
31-
oSession.isPresent() ? Optional.of(oSession.get().sessionId()) : Optional.empty());
31+
oSession.isPresent() ? Optional.of(oSession.get().sessionId()) : Optional.empty(),
32+
Optional.ofNullable(url));
3233
}
3334

3435
private static Optional<String> getUserAgent(Object o) {

server/adapter.soapmessage/src/main/java/org/eclipse/daanse/xmla/server/adapter/soapmessage/XmlaApiAdapter.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@ public XmlaApiAdapter(XmlaService xmlaService) {
208208
private static final QName QN_SESSION = new QName("urn:schemas-microsoft-com:xml-analysis", "Session");
209209

210210
public SOAPMessage handleRequest(SOAPMessage messageRequest, Map<String, Object> headers, Principal principal,
211-
Function<String, Boolean> isUserInRoleFunction) {
211+
Function<String, Boolean> isUserInRoleFunction, String url) {
212212
try {
213213
SOAPMessage messageResponse = MessageFactory.newInstance().createMessage();
214214
messageResponse.setProperty(SOAPMessage.WRITE_XML_DECLARATION, "true");
@@ -257,7 +257,7 @@ public boolean hasRole(String role) {
257257
SOAPHeader header = envelopeResponse.getHeader();
258258
header.setValue("\n");
259259
}
260-
RequestMetaData metaData = RequestMetaDataUtils.getRequestMetaData(headers, oSession);
260+
RequestMetaData metaData = RequestMetaDataUtils.getRequestMetaData(headers, oSession, url);
261261
SOAPBody bodyResponse = envelopeResponse.getBody();
262262
handleBody(messageRequest.getSOAPBody(), bodyResponse, metaData, userPrincipal);
263263
return messageResponse;

server/jakarta.jws/src/main/java/org/eclipse/daanse/xmla/server/jakarta/jws/ApiXmlaWsAdapter.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -224,6 +224,12 @@ public Optional<String> sessionId() {
224224
return Optional.empty();
225225
}
226226

227+
@Override
228+
public Optional<String> url() {
229+
230+
return Optional.empty();
231+
}
232+
227233
};
228234

229235
DbSchemaCatalogsRequest requestApi = Convert.fromDiscoverDbSchemaCatalogs(requestWs);

server/jakarta.jws/test.bndrun.deactivated

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ org.slf4j.simpleLogger.defaultLogLevel=debug,\
115115
org.mockito.mockito-core;version='[4.9.0,4.9.1)',\
116116
org.objenesis;version='[3.3.0,3.3.1)',\
117117
org.opentest4j;version='[1.2.0,1.2.1)',\
118+
org.osgi.service.cm;version='[1.6.1,1.6.2)',\
118119
org.osgi.service.component;version='[1.5.1,1.5.2)',\
119120
org.osgi.test.common;version='[1.3.0,1.3.1)',\
120121
org.osgi.test.junit5;version='[1.3.0,1.3.1)',\

server/jakarta.saaj/src/main/java/org/eclipse/daanse/xmla/server/jakarta/saaj/impl/XmlaServlet.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public void activate() {
5757
}
5858

5959
@Override
60-
public SOAPMessage onMessage(SOAPMessage soapMessage,Principal principal, Function<String, Boolean> isUserInRoleFunction) {
60+
public SOAPMessage onMessage(SOAPMessage soapMessage,Principal principal, Function<String, Boolean> isUserInRoleFunction, String url) {
6161
try {
6262
if (LOGGER.isDebugEnabled()) {
6363
LOGGER.debug("SoapMessage in:", prettyPrint(soapMessage).toString());
@@ -66,7 +66,7 @@ public SOAPMessage onMessage(SOAPMessage soapMessage,Principal principal, Functi
6666
Map<String, Object> map = StreamSupport.stream(iterable.spliterator(), true).collect(
6767
Collectors.toMap(MimeHeader::getName, MimeHeader::getValue, (oldValue, newValue) -> oldValue));
6868

69-
SOAPMessage returnMessage = xmlaAdapter.handleRequest(soapMessage, map, principal, isUserInRoleFunction);
69+
SOAPMessage returnMessage = xmlaAdapter.handleRequest(soapMessage, map, principal, isUserInRoleFunction, url);
7070

7171
LOGGER.debug("SoapMessage out:", prettyPrint(returnMessage).toString());
7272

server/jakarta.saaj/test.bndrun

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,7 @@ port : 17290
9898
org.mockito.mockito-core;version='[4.9.0,4.9.1)',\
9999
org.objenesis;version='[3.3.0,3.3.1)',\
100100
org.opentest4j;version='[1.2.0,1.2.1)',\
101+
org.osgi.service.cm;version='[1.6.1,1.6.2)',\
101102
org.osgi.service.component;version='[1.5.1,1.5.2)',\
102103
org.osgi.test.common;version='[1.3.0,1.3.1)',\
103104
org.osgi.test.junit5;version='[1.3.0,1.3.1)',\

server/jakarta.xml.ws.provider.soapmessage/src/main/java/org/eclipse/daanse/xmla/server/jakarta/xml/ws/provider/soapmessage/XmlaWebserviceProvider.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ public SOAPMessage invoke(SOAPMessage request) {
7676
.get(MessageContext.HTTP_REQUEST_HEADERS);
7777

7878
LOGGER.debug("===== The provider got a request =====");
79-
return wsAdapter.handleRequest(request, headers,null,null);
79+
return wsAdapter.handleRequest(request, headers,null,null, null);
8080
}
8181

8282
private SOAPFault getFault(Exception ex) {

0 commit comments

Comments
 (0)