#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ActivateRequest {
#[prost(string, tag="2")]
pub subject: std::string::String,
#[prost(string, tag="1")]
pub github_token: std::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ActivateResponse {
#[prost(string, tag="1")]
pub pach_token: std::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DeactivateRequest {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DeactivateResponse {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct IdProvider {
#[prost(string, tag="1")]
pub name: std::string::String,
#[prost(string, tag="2")]
pub description: std::string::String,
#[prost(message, optional, tag="3")]
pub saml: ::std::option::Option<id_provider::SamlOptions>,
#[prost(message, optional, tag="5")]
pub oidc: ::std::option::Option<id_provider::OidcOptions>,
#[prost(message, optional, tag="4")]
pub github: ::std::option::Option<id_provider::GitHubOptions>,
}
pub mod id_provider {
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SamlOptions {
#[prost(string, tag="1")]
pub metadata_url: std::string::String,
#[prost(bytes, tag="2")]
pub metadata_xml: std::vec::Vec<u8>,
#[prost(string, tag="3")]
pub group_attribute: std::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OidcOptions {
#[prost(string, tag="1")]
pub issuer: std::string::String,
#[prost(string, tag="2")]
pub client_id: std::string::String,
#[prost(string, tag="3")]
pub client_secret: std::string::String,
#[prost(string, tag="4")]
pub redirect_uri: std::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GitHubOptions {
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AuthConfig {
#[prost(int64, tag="1")]
pub live_config_version: i64,
#[prost(message, repeated, tag="2")]
pub id_providers: ::std::vec::Vec<IdProvider>,
#[prost(message, optional, tag="3")]
pub saml_svc_options: ::std::option::Option<auth_config::SamlServiceOptions>,
}
pub mod auth_config {
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SamlServiceOptions {
#[prost(string, tag="1")]
pub acs_url: std::string::String,
#[prost(string, tag="2")]
pub metadata_url: std::string::String,
#[prost(string, tag="3")]
pub dash_url: std::string::String,
#[prost(string, tag="4")]
pub session_duration: std::string::String,
#[prost(bool, tag="5")]
pub debug_logging: bool,
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetConfigurationRequest {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetConfigurationResponse {
#[prost(message, optional, tag="1")]
pub configuration: ::std::option::Option<AuthConfig>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetConfigurationRequest {
#[prost(message, optional, tag="1")]
pub configuration: ::std::option::Option<AuthConfig>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetConfigurationResponse {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ClusterRoles {
#[prost(enumeration="ClusterRole", repeated, tag="1")]
pub roles: ::std::vec::Vec<i32>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetClusterRoleBindingsRequest {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetClusterRoleBindingsResponse {
#[prost(map="string, message", tag="1")]
pub bindings: ::std::collections::HashMap<std::string::String, ClusterRoles>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ModifyClusterRoleBindingRequest {
#[prost(string, tag="1")]
pub principal: std::string::String,
#[prost(message, optional, tag="2")]
pub roles: ::std::option::Option<ClusterRoles>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ModifyClusterRoleBindingResponse {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetAdminsRequest {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetAdminsResponse {
#[prost(string, repeated, tag="1")]
pub admins: ::std::vec::Vec<std::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ModifyAdminsRequest {
#[prost(string, repeated, tag="1")]
pub add: ::std::vec::Vec<std::string::String>,
#[prost(string, repeated, tag="2")]
pub remove: ::std::vec::Vec<std::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ModifyAdminsResponse {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OtpInfo {
#[prost(string, tag="1")]
pub subject: std::string::String,
#[prost(message, optional, tag="2")]
pub session_expiration: ::std::option::Option<::prost_types::Timestamp>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TokenInfo {
#[prost(string, tag="1")]
pub subject: std::string::String,
#[prost(enumeration="token_info::TokenSource", tag="2")]
pub source: i32,
}
pub mod token_info {
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum TokenSource {
Invalid = 0,
Authenticate = 1,
GetToken = 2,
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AuthenticateRequest {
#[prost(string, tag="1")]
pub github_token: std::string::String,
#[prost(string, tag="3")]
pub oidc_state: std::string::String,
#[prost(string, tag="2")]
pub one_time_password: std::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AuthenticateResponse {
#[prost(string, tag="1")]
pub pach_token: std::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct WhoAmIRequest {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct WhoAmIResponse {
#[prost(string, tag="1")]
pub username: std::string::String,
#[prost(bool, tag="2")]
pub is_admin: bool,
#[prost(int64, tag="3")]
pub ttl: i64,
#[prost(message, optional, tag="4")]
pub cluster_roles: ::std::option::Option<ClusterRoles>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Acl {
#[prost(map="string, enumeration(Scope)", tag="1")]
pub entries: ::std::collections::HashMap<std::string::String, i32>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Users {
#[prost(map="string, bool", tag="1")]
pub usernames: ::std::collections::HashMap<std::string::String, bool>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Groups {
#[prost(map="string, bool", tag="1")]
pub groups: ::std::collections::HashMap<std::string::String, bool>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AuthorizeRequest {
#[prost(string, tag="1")]
pub repo: std::string::String,
#[prost(enumeration="Scope", tag="2")]
pub scope: i32,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AuthorizeResponse {
#[prost(bool, tag="1")]
pub authorized: bool,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetScopeRequest {
#[prost(string, tag="1")]
pub username: std::string::String,
#[prost(string, repeated, tag="2")]
pub repos: ::std::vec::Vec<std::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetScopeResponse {
#[prost(enumeration="Scope", repeated, tag="1")]
pub scopes: ::std::vec::Vec<i32>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetScopeRequest {
#[prost(string, tag="1")]
pub username: std::string::String,
#[prost(string, tag="2")]
pub repo: std::string::String,
#[prost(enumeration="Scope", tag="3")]
pub scope: i32,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetScopeResponse {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetAclRequest {
#[prost(string, tag="1")]
pub repo: std::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AclEntry {
#[prost(string, tag="1")]
pub username: std::string::String,
#[prost(enumeration="Scope", tag="2")]
pub scope: i32,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetAclResponse {
#[prost(message, repeated, tag="1")]
pub entries: ::std::vec::Vec<AclEntry>,
#[prost(message, repeated, tag="2")]
pub robot_entries: ::std::vec::Vec<AclEntry>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetAclRequest {
#[prost(string, tag="1")]
pub repo: std::string::String,
#[prost(message, repeated, tag="2")]
pub entries: ::std::vec::Vec<AclEntry>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetAclResponse {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SessionInfo {
#[prost(string, tag="1")]
pub nonce: std::string::String,
#[prost(string, tag="2")]
pub email: std::string::String,
#[prost(bool, tag="3")]
pub conversion_err: bool,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetOidcLoginRequest {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetOidcLoginResponse {
#[prost(string, tag="1")]
pub login_url: std::string::String,
#[prost(string, tag="2")]
pub state: std::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetAuthTokenRequest {
#[prost(string, tag="1")]
pub subject: std::string::String,
#[prost(int64, tag="2")]
pub ttl: i64,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetAuthTokenResponse {
#[prost(string, tag="2")]
pub subject: std::string::String,
#[prost(string, tag="1")]
pub token: std::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ExtendAuthTokenRequest {
#[prost(string, tag="1")]
pub token: std::string::String,
#[prost(int64, tag="2")]
pub ttl: i64,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ExtendAuthTokenResponse {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RevokeAuthTokenRequest {
#[prost(string, tag="1")]
pub token: std::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RevokeAuthTokenResponse {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetGroupsForUserRequest {
#[prost(string, tag="1")]
pub username: std::string::String,
#[prost(string, repeated, tag="2")]
pub groups: ::std::vec::Vec<std::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetGroupsForUserResponse {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ModifyMembersRequest {
#[prost(string, tag="1")]
pub group: std::string::String,
#[prost(string, repeated, tag="2")]
pub add: ::std::vec::Vec<std::string::String>,
#[prost(string, repeated, tag="3")]
pub remove: ::std::vec::Vec<std::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ModifyMembersResponse {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetGroupsRequest {
#[prost(string, tag="1")]
pub username: std::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetGroupsResponse {
#[prost(string, repeated, tag="1")]
pub groups: ::std::vec::Vec<std::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetUsersRequest {
#[prost(string, tag="1")]
pub group: std::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetUsersResponse {
#[prost(string, repeated, tag="1")]
pub usernames: ::std::vec::Vec<std::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetOneTimePasswordRequest {
#[prost(string, tag="1")]
pub subject: std::string::String,
#[prost(int64, tag="2")]
pub ttl: i64,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetOneTimePasswordResponse {
#[prost(string, tag="1")]
pub code: std::string::String,
#[prost(message, optional, tag="2")]
pub otp_expiration: ::std::option::Option<::prost_types::Timestamp>,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum ClusterRole {
Undefined = 0,
Super = 1,
Fs = 2,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Scope {
None = 0,
Reader = 1,
Writer = 2,
Owner = 3,
}
# [ doc = r" Generated client implementations." ] pub mod api_client { # ! [ allow ( unused_variables , dead_code , missing_docs ) ] use tonic :: codegen :: * ; pub struct ApiClient < T > { inner : tonic :: client :: Grpc < T > , } impl ApiClient < tonic :: transport :: Channel > { # [ doc = r" Attempt to create a new client by connecting to a given endpoint." ] pub async fn connect < D > ( dst : D ) -> Result < Self , tonic :: transport :: Error > where D : std :: convert :: TryInto < tonic :: transport :: Endpoint > , D :: Error : Into < StdError > , { let conn = tonic :: transport :: Endpoint :: new ( dst ) ? . connect ( ) . await ? ; Ok ( Self :: new ( conn ) ) } } impl < T > ApiClient < T > where T : tonic :: client :: GrpcService < tonic :: body :: BoxBody > , T :: ResponseBody : Body + HttpBody + Send + 'static , T :: Error : Into < StdError > , < T :: ResponseBody as HttpBody > :: Error : Into < StdError > + Send , { pub fn new ( inner : T ) -> Self { let inner = tonic :: client :: Grpc :: new ( inner ) ; Self { inner } } pub fn with_interceptor ( inner : T , interceptor : impl Into < tonic :: Interceptor > ) -> Self { let inner = tonic :: client :: Grpc :: with_interceptor ( inner , interceptor ) ; Self { inner } } # [ doc = " Activate/Deactivate the auth API. 'Activate' sets an initial set of admins" ] # [ doc = " for the Pachyderm cluster, and 'Deactivate' removes all ACLs, tokens, and" ] # [ doc = " admins from the Pachyderm cluster, making all data publicly accessable" ] pub async fn activate ( & mut self , request : impl tonic :: IntoRequest < super :: ActivateRequest > , ) -> Result < tonic :: Response < super :: ActivateResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/Activate" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } pub async fn deactivate ( & mut self , request : impl tonic :: IntoRequest < super :: DeactivateRequest > , ) -> Result < tonic :: Response < super :: DeactivateResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/Deactivate" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } pub async fn get_configuration ( & mut self , request : impl tonic :: IntoRequest < super :: GetConfigurationRequest > , ) -> Result < tonic :: Response < super :: GetConfigurationResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/GetConfiguration" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } pub async fn set_configuration ( & mut self , request : impl tonic :: IntoRequest < super :: SetConfigurationRequest > , ) -> Result < tonic :: Response < super :: SetConfigurationResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/SetConfiguration" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } # [ doc = " Deprecated. GetAdmins returns the current list of cluster super admins" ] pub async fn get_admins ( & mut self , request : impl tonic :: IntoRequest < super :: GetAdminsRequest > , ) -> Result < tonic :: Response < super :: GetAdminsResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/GetAdmins" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } # [ doc = " Deprecated. ModifyAdmins adds or removes super admins from the cluster" ] pub async fn modify_admins ( & mut self , request : impl tonic :: IntoRequest < super :: ModifyAdminsRequest > , ) -> Result < tonic :: Response < super :: ModifyAdminsResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/ModifyAdmins" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } # [ doc = " GetClusterRoleBindings returns the current set of cluster role bindings" ] pub async fn get_cluster_role_bindings ( & mut self , request : impl tonic :: IntoRequest < super :: GetClusterRoleBindingsRequest > , ) -> Result < tonic :: Response < super :: GetClusterRoleBindingsResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/GetClusterRoleBindings" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } # [ doc = " ModifyAdmin sets the list of admin roles for a principal" ] pub async fn modify_cluster_role_binding ( & mut self , request : impl tonic :: IntoRequest < super :: ModifyClusterRoleBindingRequest > , ) -> Result < tonic :: Response < super :: ModifyClusterRoleBindingResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/ModifyClusterRoleBinding" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } pub async fn authenticate ( & mut self , request : impl tonic :: IntoRequest < super :: AuthenticateRequest > , ) -> Result < tonic :: Response < super :: AuthenticateResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/Authenticate" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } pub async fn authorize ( & mut self , request : impl tonic :: IntoRequest < super :: AuthorizeRequest > , ) -> Result < tonic :: Response < super :: AuthorizeResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/Authorize" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } pub async fn who_am_i ( & mut self , request : impl tonic :: IntoRequest < super :: WhoAmIRequest > , ) -> Result < tonic :: Response < super :: WhoAmIResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/WhoAmI" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } pub async fn get_scope ( & mut self , request : impl tonic :: IntoRequest < super :: GetScopeRequest > , ) -> Result < tonic :: Response < super :: GetScopeResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/GetScope" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } pub async fn set_scope ( & mut self , request : impl tonic :: IntoRequest < super :: SetScopeRequest > , ) -> Result < tonic :: Response < super :: SetScopeResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/SetScope" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } pub async fn get_acl ( & mut self , request : impl tonic :: IntoRequest < super :: GetAclRequest > , ) -> Result < tonic :: Response < super :: GetAclResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/GetACL" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } pub async fn set_acl ( & mut self , request : impl tonic :: IntoRequest < super :: SetAclRequest > , ) -> Result < tonic :: Response < super :: SetAclResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/SetACL" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } pub async fn get_oidc_login ( & mut self , request : impl tonic :: IntoRequest < super :: GetOidcLoginRequest > , ) -> Result < tonic :: Response < super :: GetOidcLoginResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/GetOIDCLogin" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } pub async fn get_auth_token ( & mut self , request : impl tonic :: IntoRequest < super :: GetAuthTokenRequest > , ) -> Result < tonic :: Response < super :: GetAuthTokenResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/GetAuthToken" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } pub async fn extend_auth_token ( & mut self , request : impl tonic :: IntoRequest < super :: ExtendAuthTokenRequest > , ) -> Result < tonic :: Response < super :: ExtendAuthTokenResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/ExtendAuthToken" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } pub async fn revoke_auth_token ( & mut self , request : impl tonic :: IntoRequest < super :: RevokeAuthTokenRequest > , ) -> Result < tonic :: Response < super :: RevokeAuthTokenResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/RevokeAuthToken" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } pub async fn set_groups_for_user ( & mut self , request : impl tonic :: IntoRequest < super :: SetGroupsForUserRequest > , ) -> Result < tonic :: Response < super :: SetGroupsForUserResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/SetGroupsForUser" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } pub async fn modify_members ( & mut self , request : impl tonic :: IntoRequest < super :: ModifyMembersRequest > , ) -> Result < tonic :: Response < super :: ModifyMembersResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/ModifyMembers" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } pub async fn get_groups ( & mut self , request : impl tonic :: IntoRequest < super :: GetGroupsRequest > , ) -> Result < tonic :: Response < super :: GetGroupsResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/GetGroups" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } pub async fn get_users ( & mut self , request : impl tonic :: IntoRequest < super :: GetUsersRequest > , ) -> Result < tonic :: Response < super :: GetUsersResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/GetUsers" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } pub async fn get_one_time_password ( & mut self , request : impl tonic :: IntoRequest < super :: GetOneTimePasswordRequest > , ) -> Result < tonic :: Response < super :: GetOneTimePasswordResponse > , tonic :: Status > { self . inner . ready ( ) . await . map_err ( | e | { tonic :: Status :: new ( tonic :: Code :: Unknown , format ! ( "Service was not ready: {}" , e . into ( ) ) ) } ) ? ; let codec = tonic :: codec :: ProstCodec :: default ( ) ; let path = http :: uri :: PathAndQuery :: from_static ( "/auth.API/GetOneTimePassword" ) ; self . inner . unary ( request . into_request ( ) , path , codec ) . await } } impl < T : Clone > Clone for ApiClient < T > { fn clone ( & self ) -> Self { Self { inner : self . inner . clone ( ) , } } } impl < T > std :: fmt :: Debug for ApiClient < T > { fn fmt ( & self , f : & mut std :: fmt :: Formatter < '_ > ) -> std :: fmt :: Result { write ! ( f , "ApiClient {{ ... }}" ) } } }