Class UserServiceGrpc.UserServiceFutureStub
java.lang.Object
io.grpc.stub.AbstractStub<UserServiceGrpc.UserServiceFutureStub>
io.grpc.stub.AbstractFutureStub<UserServiceGrpc.UserServiceFutureStub>
com.soulfiremc.grpc.generated.UserServiceGrpc.UserServiceFutureStub
- Enclosing class:
UserServiceGrpc
public static final class UserServiceGrpc.UserServiceFutureStub
extends io.grpc.stub.AbstractFutureStub<UserServiceGrpc.UserServiceFutureStub>
A stub to allow clients to do ListenableFuture-style rpc calls to service UserService.
UserService provides user management functionality for the SoulFire system. All methods require authentication via JWT token in the request metadata. Most methods require specific global permissions (CREATE_USER, READ_USER, UPDATE_USER, DELETE_USER, INVALIDATE_SESSIONS, or GENERATE_API_TOKEN). Admin users automatically have all permissions. Note: The root user (ID: 00000000-0000-0000-0000-000000000000) cannot be modified or deleted. Note: Users cannot modify their own account through this service (use self-service endpoints instead).
-
Nested Class Summary
Nested classes/interfaces inherited from class io.grpc.stub.AbstractStub
io.grpc.stub.AbstractStub.StubFactory<T> -
Method Summary
Modifier and TypeMethodDescriptionprotected UserServiceGrpc.UserServiceFutureStubbuild(io.grpc.Channel channel, io.grpc.CallOptions callOptions) com.google.common.util.concurrent.ListenableFuture<UserCreateResponse> createUser(UserCreateRequest request) Creates a new user account in the system.com.google.common.util.concurrent.ListenableFuture<UserDeleteResponse> deleteUser(UserDeleteRequest request) Deletes an existing user from the system.com.google.common.util.concurrent.ListenableFuture<GenerateUserAPITokenResponse> Generates a new API token (JWT) for a specific user.com.google.common.util.concurrent.ListenableFuture<UserInfoResponse> getUserInfo(UserInfoRequest request) Retrieves detailed information about a specific user.com.google.common.util.concurrent.ListenableFuture<InvalidateSessionsResponse> Invalidates all active sessions for a user by updating their min_issued_at timestamp.com.google.common.util.concurrent.ListenableFuture<UserListResponse> listUsers(UserListRequest request) Lists all users in the system.com.google.common.util.concurrent.ListenableFuture<UpdateUserResponse> updateUser(UpdateUserRequest request) Updates an existing user's profile information.Methods inherited from class io.grpc.stub.AbstractFutureStub
newStub, newStubMethods inherited from class io.grpc.stub.AbstractStub
getCallOptions, getChannel, withCallCredentials, withChannel, withCompression, withDeadline, withDeadlineAfter, withDeadlineAfter, withExecutor, withInterceptors, withMaxInboundMessageSize, withMaxOutboundMessageSize, withOnReadyThreshold, withOption, withWaitForReady
-
Method Details
-
build
protected UserServiceGrpc.UserServiceFutureStub build(io.grpc.Channel channel, io.grpc.CallOptions callOptions) - Specified by:
buildin classio.grpc.stub.AbstractStub<UserServiceGrpc.UserServiceFutureStub>
-
createUser
public com.google.common.util.concurrent.ListenableFuture<UserCreateResponse> createUser(UserCreateRequest request) Creates a new user account in the system. Requires the CREATE_USER global permission. Returns the UUID of the newly created user. Error cases: - INTERNAL: If username or email already exists, or validation fails - PERMISSION_DENIED: If caller lacks CREATE_USER permission
-
deleteUser
public com.google.common.util.concurrent.ListenableFuture<UserDeleteResponse> deleteUser(UserDeleteRequest request) Deletes an existing user from the system. Requires the DELETE_USER global permission. Cascades to delete all owned instances and audit logs. Also disconnects the user from any active log subscriptions. Error cases: - INTERNAL: If user not found, or attempting to delete self/root user - PERMISSION_DENIED: If caller lacks DELETE_USER permission
-
listUsers
public com.google.common.util.concurrent.ListenableFuture<UserListResponse> listUsers(UserListRequest request) Lists all users in the system. Requires the READ_USER global permission. Returns complete information for all users including timestamps. Error cases: - INTERNAL: If database query fails - PERMISSION_DENIED: If caller lacks READ_USER permission
-
getUserInfo
public com.google.common.util.concurrent.ListenableFuture<UserInfoResponse> getUserInfo(UserInfoRequest request) Retrieves detailed information about a specific user. Requires the READ_USER global permission. Error cases: - INTERNAL: If user not found - PERMISSION_DENIED: If caller lacks READ_USER permission
-
invalidateSessions
public com.google.common.util.concurrent.ListenableFuture<InvalidateSessionsResponse> invalidateSessions(InvalidateSessionsRequest request) Invalidates all active sessions for a user by updating their min_issued_at timestamp. Requires the INVALIDATE_SESSIONS global permission. After this call, all previously issued JWT tokens for the user become invalid, effectively logging them out of all devices. Error cases: - INTERNAL: If user not found, or attempting to invalidate self/root user sessions - PERMISSION_DENIED: If caller lacks INVALIDATE_SESSIONS permission
-
updateUser
public com.google.common.util.concurrent.ListenableFuture<UpdateUserResponse> updateUser(UpdateUserRequest request) Updates an existing user's profile information. Requires the UPDATE_USER global permission. All profile fields (username, email, role) are updated to the provided values. Error cases: - INTERNAL: If user not found, attempting to update self/root user, or validation fails - PERMISSION_DENIED: If caller lacks UPDATE_USER permission
-
generateUserAPIToken
public com.google.common.util.concurrent.ListenableFuture<GenerateUserAPITokenResponse> generateUserAPIToken(GenerateUserAPITokenRequest request) Generates a new API token (JWT) for a specific user. Requires the GENERATE_API_TOKEN global permission. The generated token has the "api" audience and does not expire. The token can be invalidated by calling InvalidateSessions for the user. Error cases: - INTERNAL: If user not found, or attempting to generate token for self/root user - PERMISSION_DENIED: If caller lacks GENERATE_API_TOKEN permission
-