Skip to content

Commit b111637

Browse files
committed
ut
1 parent 9b27896 commit b111637

File tree

4 files changed

+21
-7
lines changed

4 files changed

+21
-7
lines changed

kyuubi-rest-client/src/main/java/org/apache/kyuubi/client/AdminRestApi.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import java.util.*;
2121
import org.apache.commons.lang3.StringUtils;
2222
import org.apache.kyuubi.client.api.v1.dto.Engine;
23+
import org.apache.kyuubi.client.api.v1.dto.KyuubiServerEvent;
2324
import org.apache.kyuubi.client.api.v1.dto.OperationData;
2425
import org.apache.kyuubi.client.api.v1.dto.ServerData;
2526
import org.apache.kyuubi.client.api.v1.dto.SessionData;
@@ -165,6 +166,12 @@ public List<ServerData> listServers() {
165166
return Arrays.asList(result);
166167
}
167168

169+
public KyuubiServerEvent getServerEvent() {
170+
return this.getClient()
171+
.get(
172+
API_BASE_PATH + "/server/event", null, KyuubiServerEvent.class, client.getAuthHeader());
173+
}
174+
168175
private IRestClient getClient() {
169176
return this.client.getHttpClient();
170177
}

kyuubi-server/src/main/scala/org/apache/kyuubi/server/api/v1/AdminResource.scala

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -406,13 +406,12 @@ private[v1] class AdminResource extends ApiRequestContext with Logging {
406406
content = Array(
407407
new Content(
408408
mediaType = MediaType.APPLICATION_JSON,
409-
array = new ArraySchema(schema = new Schema(implementation =
410-
classOf[KyuubiServerEvent])))),
409+
schema = new Schema(implementation = classOf[KyuubiServerEvent]))),
411410
description = "Get the server event")
412411
@GET
413412
@Path("server/event")
414-
def getServerEvent(): Seq[KyuubiServerEvent] = {
415-
KyuubiServer.kyuubiServer.kyuubiServerInfoEvent.map(ApiUtils.serverEvent).toSeq
413+
def getServerEvent(): KyuubiServerEvent = {
414+
ApiUtils.serverEvent(KyuubiServer.kyuubiServer.kyuubiServerInfoEvent.get)
416415
}
417416

418417
private def normalizeEngineInfo(

kyuubi-server/src/test/scala/org/apache/kyuubi/server/api/v1/AdminResourceSuite.scala

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -849,9 +849,7 @@ class AdminResourceSuite extends KyuubiFunSuite with RestFrontendTestHelper {
849849
.get
850850

851851
assert(response.getStatus === 200)
852-
val result = response.readEntity(new GenericType[Seq[KyuubiServerEvent]]() {})
853-
assert(result.size == 1)
854-
val serverEvent = result.head
852+
val serverEvent = response.readEntity(classOf[KyuubiServerEvent])
855853
assert(serverEvent.getStartTime > 0)
856854
}
857855
}

kyuubi-server/src/test/scala/org/apache/kyuubi/server/rest/client/AdminRestApiSuite.scala

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -173,4 +173,14 @@ class AdminRestApiSuite extends RestClientTestHelper {
173173
assert(servers.map(s => s.getInstance()).contains(server.frontendServices.last.connectionUrl))
174174
}
175175
}
176+
177+
test("get server event") {
178+
val spnegoKyuubiRestClient: KyuubiRestClient =
179+
KyuubiRestClient.builder(baseUri.toString)
180+
.authHeaderMethod(KyuubiRestClient.AuthHeaderMethod.SPNEGO)
181+
.spnegoHost("localhost")
182+
.build()
183+
val adminRestApi = new AdminRestApi(spnegoKyuubiRestClient)
184+
assert(adminRestApi.getServerEvent.getStartTime > 0)
185+
}
176186
}

0 commit comments

Comments
 (0)