Class SessionController
java.lang.Object
com.google.adk.web.controller.SessionController
Controller handling session-related API endpoints.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncreateSession(String appName, String userId, SessionRequest body) Creates a new session where the ID is generated by the service.createSessionWithId(String appName, String userId, String sessionId, SessionRequest body) Creates a new session with a specific ID provided by the client.org.springframework.http.ResponseEntity<Void> deleteSession(String appName, String userId, String sessionId) Deletes a specific session.getSession(String appName, String userId, String sessionId) Retrieves a specific session by its ID.listSessions(String appName, String userId) Lists all non-evaluation sessions for a given app and user.
-
Constructor Details
-
SessionController
-
-
Method Details
-
getSession
@GetMapping("/apps/{appName}/users/{userId}/sessions/{sessionId}") public Session getSession(@PathVariable String appName, @PathVariable String userId, @PathVariable String sessionId) Retrieves a specific session by its ID.- Parameters:
appName- The application name.userId- The user ID.sessionId- The session ID.- Returns:
- The requested Session object.
- Throws:
org.springframework.web.server.ResponseStatusException- if the session is not found.
-
listSessions
@GetMapping("/apps/{appName}/users/{userId}/sessions") public List<Session> listSessions(@PathVariable String appName, @PathVariable String userId) Lists all non-evaluation sessions for a given app and user.- Parameters:
appName- The name of the application.userId- The ID of the user.- Returns:
- A list of sessions, excluding those used for evaluation.
-
createSessionWithId
@PostMapping("/apps/{appName}/users/{userId}/sessions/{sessionId}") public Session createSessionWithId(@PathVariable String appName, @PathVariable String userId, @PathVariable String sessionId, @RequestBody(required=false) SessionRequest body) Creates a new session with a specific ID provided by the client.- Parameters:
appName- The application name.userId- The user ID.sessionId- The desired session ID.- Returns:
- The newly created Session object.
- Throws:
org.springframework.web.server.ResponseStatusException- if a session with the given ID already exists (BAD_REQUEST) or if creation fails (INTERNAL_SERVER_ERROR).
-
createSession
@PostMapping("/apps/{appName}/users/{userId}/sessions") public Session createSession(@PathVariable String appName, @PathVariable String userId, @RequestBody(required=false) SessionRequest body) Creates a new session where the ID is generated by the service.- Parameters:
appName- The application name.userId- The user ID.- Returns:
- The newly created Session object.
- Throws:
org.springframework.web.server.ResponseStatusException- if creation fails (INTERNAL_SERVER_ERROR).
-
deleteSession
@DeleteMapping("/apps/{appName}/users/{userId}/sessions/{sessionId}") public org.springframework.http.ResponseEntity<Void> deleteSession(@PathVariable String appName, @PathVariable String userId, @PathVariable String sessionId) Deletes a specific session.- Parameters:
appName- The application name.userId- The user ID.sessionId- The session ID to delete.- Returns:
- A ResponseEntity with status NO_CONTENT on success.
- Throws:
org.springframework.web.server.ResponseStatusException- if deletion fails (INTERNAL_SERVER_ERROR).
-