mirror of
https://github.com/dbeaver/cloudbeaver.git
synced 2026-09-24 16:04:36 +08:00
CB-90 Session log read - do not extend session lifetime
This commit is contained in:
+14
-4
@@ -22,6 +22,7 @@ import graphql.schema.idl.TypeRuntimeWiring;
|
||||
import io.cloudbeaver.DBWebException;
|
||||
import io.cloudbeaver.WebServiceUtils;
|
||||
import io.cloudbeaver.model.WebConnectionConfig;
|
||||
import io.cloudbeaver.model.session.WebSession;
|
||||
import io.cloudbeaver.model.session.WebSessionManager;
|
||||
import io.cloudbeaver.server.CBPlatform;
|
||||
import io.cloudbeaver.server.graphql.GraphQLEndpoint;
|
||||
@@ -29,6 +30,8 @@ import io.cloudbeaver.service.DBWBindingContext;
|
||||
import io.cloudbeaver.service.WebServiceBindingBase;
|
||||
import io.cloudbeaver.service.core.impl.WebServiceCore;
|
||||
|
||||
import java.util.Collections;
|
||||
|
||||
/**
|
||||
* Web service implementation
|
||||
*/
|
||||
@@ -56,10 +59,17 @@ public class WebServiceBindingCore extends WebServiceBindingBase<DBWServiceCore>
|
||||
.dataFetcher("connectionState", env -> getService(env).getConnectionState(getWebSession(env), env.getArgument("id")))
|
||||
.dataFetcher("connectionInfo", env -> getService(env).getConnectionState(getWebSession(env), env.getArgument("id")))
|
||||
|
||||
.dataFetcher("readSessionLog", env -> getService(env).readSessionLog(
|
||||
getWebSession(env),
|
||||
env.getArgument("maxEntries"),
|
||||
env.getArgument("clearEntries")))
|
||||
.dataFetcher("readSessionLog", env -> {
|
||||
// CB-90. Log read mustn't extend session lifetime and mustn't fail if there is no session.
|
||||
WebSession session = findWebSession(env);
|
||||
if (session == null) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
return getService(env).readSessionLog(
|
||||
getWebSession(env),
|
||||
env.getArgument("maxEntries"),
|
||||
env.getArgument("clearEntries"));
|
||||
})
|
||||
;
|
||||
|
||||
model.getMutationType()
|
||||
|
||||
Reference in New Issue
Block a user