# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
"""Client and server classes corresponding to protobuf-defined services."""
import grpc

from python_pachyderm.proto.v2.auth import auth_pb2 as python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2


class APIStub(object):
    """Missing associated documentation comment in .proto file."""

    def __init__(self, channel):
        """Constructor.

        Args:
            channel: A grpc.Channel.
        """
        self.Activate = channel.unary_unary(
                '/auth_v2.API/Activate',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ActivateRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ActivateResponse.FromString,
                )
        self.Deactivate = channel.unary_unary(
                '/auth_v2.API/Deactivate',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.DeactivateRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.DeactivateResponse.FromString,
                )
        self.GetConfiguration = channel.unary_unary(
                '/auth_v2.API/GetConfiguration',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetConfigurationRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetConfigurationResponse.FromString,
                )
        self.SetConfiguration = channel.unary_unary(
                '/auth_v2.API/SetConfiguration',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.SetConfigurationRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.SetConfigurationResponse.FromString,
                )
        self.Authenticate = channel.unary_unary(
                '/auth_v2.API/Authenticate',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.AuthenticateRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.AuthenticateResponse.FromString,
                )
        self.Authorize = channel.unary_unary(
                '/auth_v2.API/Authorize',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.AuthorizeRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.AuthorizeResponse.FromString,
                )
        self.GetPermissions = channel.unary_unary(
                '/auth_v2.API/GetPermissions',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetPermissionsRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetPermissionsResponse.FromString,
                )
        self.GetPermissionsForPrincipal = channel.unary_unary(
                '/auth_v2.API/GetPermissionsForPrincipal',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetPermissionsForPrincipalRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetPermissionsResponse.FromString,
                )
        self.WhoAmI = channel.unary_unary(
                '/auth_v2.API/WhoAmI',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.WhoAmIRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.WhoAmIResponse.FromString,
                )
        self.GetRolesForPermission = channel.unary_unary(
                '/auth_v2.API/GetRolesForPermission',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetRolesForPermissionRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetRolesForPermissionResponse.FromString,
                )
        self.ModifyRoleBinding = channel.unary_unary(
                '/auth_v2.API/ModifyRoleBinding',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ModifyRoleBindingRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ModifyRoleBindingResponse.FromString,
                )
        self.GetRoleBinding = channel.unary_unary(
                '/auth_v2.API/GetRoleBinding',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetRoleBindingRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetRoleBindingResponse.FromString,
                )
        self.GetOIDCLogin = channel.unary_unary(
                '/auth_v2.API/GetOIDCLogin',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetOIDCLoginRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetOIDCLoginResponse.FromString,
                )
        self.GetRobotToken = channel.unary_unary(
                '/auth_v2.API/GetRobotToken',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetRobotTokenRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetRobotTokenResponse.FromString,
                )
        self.RevokeAuthToken = channel.unary_unary(
                '/auth_v2.API/RevokeAuthToken',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RevokeAuthTokenRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RevokeAuthTokenResponse.FromString,
                )
        self.RevokeAuthTokensForUser = channel.unary_unary(
                '/auth_v2.API/RevokeAuthTokensForUser',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RevokeAuthTokensForUserRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RevokeAuthTokensForUserResponse.FromString,
                )
        self.SetGroupsForUser = channel.unary_unary(
                '/auth_v2.API/SetGroupsForUser',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.SetGroupsForUserRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.SetGroupsForUserResponse.FromString,
                )
        self.ModifyMembers = channel.unary_unary(
                '/auth_v2.API/ModifyMembers',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ModifyMembersRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ModifyMembersResponse.FromString,
                )
        self.GetGroups = channel.unary_unary(
                '/auth_v2.API/GetGroups',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetGroupsRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetGroupsResponse.FromString,
                )
        self.GetGroupsForPrincipal = channel.unary_unary(
                '/auth_v2.API/GetGroupsForPrincipal',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetGroupsForPrincipalRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetGroupsResponse.FromString,
                )
        self.GetUsers = channel.unary_unary(
                '/auth_v2.API/GetUsers',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetUsersRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetUsersResponse.FromString,
                )
        self.ExtractAuthTokens = channel.unary_unary(
                '/auth_v2.API/ExtractAuthTokens',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ExtractAuthTokensRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ExtractAuthTokensResponse.FromString,
                )
        self.RestoreAuthToken = channel.unary_unary(
                '/auth_v2.API/RestoreAuthToken',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RestoreAuthTokenRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RestoreAuthTokenResponse.FromString,
                )
        self.DeleteExpiredAuthTokens = channel.unary_unary(
                '/auth_v2.API/DeleteExpiredAuthTokens',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.DeleteExpiredAuthTokensRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.DeleteExpiredAuthTokensResponse.FromString,
                )
        self.RotateRootToken = channel.unary_unary(
                '/auth_v2.API/RotateRootToken',
                request_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RotateRootTokenRequest.SerializeToString,
                response_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RotateRootTokenResponse.FromString,
                )


class APIServicer(object):
    """Missing associated documentation comment in .proto file."""

    def Activate(self, request, context):
        """Activate/Deactivate the auth API. 'Activate' sets an initial set of admins
        for the Pachyderm cluster, and 'Deactivate' removes all ACLs, tokens, and
        admins from the Pachyderm cluster, making all data publicly accessable
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def Deactivate(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetConfiguration(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetConfiguration(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def Authenticate(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def Authorize(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetPermissions(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetPermissionsForPrincipal(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def WhoAmI(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetRolesForPermission(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ModifyRoleBinding(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetRoleBinding(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetOIDCLogin(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetRobotToken(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def RevokeAuthToken(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def RevokeAuthTokensForUser(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetGroupsForUser(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ModifyMembers(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetGroups(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetGroupsForPrincipal(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetUsers(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ExtractAuthTokens(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def RestoreAuthToken(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteExpiredAuthTokens(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def RotateRootToken(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')


def add_APIServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'Activate': grpc.unary_unary_rpc_method_handler(
                    servicer.Activate,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ActivateRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ActivateResponse.SerializeToString,
            ),
            'Deactivate': grpc.unary_unary_rpc_method_handler(
                    servicer.Deactivate,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.DeactivateRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.DeactivateResponse.SerializeToString,
            ),
            'GetConfiguration': grpc.unary_unary_rpc_method_handler(
                    servicer.GetConfiguration,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetConfigurationRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetConfigurationResponse.SerializeToString,
            ),
            'SetConfiguration': grpc.unary_unary_rpc_method_handler(
                    servicer.SetConfiguration,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.SetConfigurationRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.SetConfigurationResponse.SerializeToString,
            ),
            'Authenticate': grpc.unary_unary_rpc_method_handler(
                    servicer.Authenticate,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.AuthenticateRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.AuthenticateResponse.SerializeToString,
            ),
            'Authorize': grpc.unary_unary_rpc_method_handler(
                    servicer.Authorize,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.AuthorizeRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.AuthorizeResponse.SerializeToString,
            ),
            'GetPermissions': grpc.unary_unary_rpc_method_handler(
                    servicer.GetPermissions,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetPermissionsRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetPermissionsResponse.SerializeToString,
            ),
            'GetPermissionsForPrincipal': grpc.unary_unary_rpc_method_handler(
                    servicer.GetPermissionsForPrincipal,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetPermissionsForPrincipalRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetPermissionsResponse.SerializeToString,
            ),
            'WhoAmI': grpc.unary_unary_rpc_method_handler(
                    servicer.WhoAmI,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.WhoAmIRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.WhoAmIResponse.SerializeToString,
            ),
            'GetRolesForPermission': grpc.unary_unary_rpc_method_handler(
                    servicer.GetRolesForPermission,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetRolesForPermissionRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetRolesForPermissionResponse.SerializeToString,
            ),
            'ModifyRoleBinding': grpc.unary_unary_rpc_method_handler(
                    servicer.ModifyRoleBinding,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ModifyRoleBindingRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ModifyRoleBindingResponse.SerializeToString,
            ),
            'GetRoleBinding': grpc.unary_unary_rpc_method_handler(
                    servicer.GetRoleBinding,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetRoleBindingRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetRoleBindingResponse.SerializeToString,
            ),
            'GetOIDCLogin': grpc.unary_unary_rpc_method_handler(
                    servicer.GetOIDCLogin,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetOIDCLoginRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetOIDCLoginResponse.SerializeToString,
            ),
            'GetRobotToken': grpc.unary_unary_rpc_method_handler(
                    servicer.GetRobotToken,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetRobotTokenRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetRobotTokenResponse.SerializeToString,
            ),
            'RevokeAuthToken': grpc.unary_unary_rpc_method_handler(
                    servicer.RevokeAuthToken,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RevokeAuthTokenRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RevokeAuthTokenResponse.SerializeToString,
            ),
            'RevokeAuthTokensForUser': grpc.unary_unary_rpc_method_handler(
                    servicer.RevokeAuthTokensForUser,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RevokeAuthTokensForUserRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RevokeAuthTokensForUserResponse.SerializeToString,
            ),
            'SetGroupsForUser': grpc.unary_unary_rpc_method_handler(
                    servicer.SetGroupsForUser,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.SetGroupsForUserRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.SetGroupsForUserResponse.SerializeToString,
            ),
            'ModifyMembers': grpc.unary_unary_rpc_method_handler(
                    servicer.ModifyMembers,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ModifyMembersRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ModifyMembersResponse.SerializeToString,
            ),
            'GetGroups': grpc.unary_unary_rpc_method_handler(
                    servicer.GetGroups,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetGroupsRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetGroupsResponse.SerializeToString,
            ),
            'GetGroupsForPrincipal': grpc.unary_unary_rpc_method_handler(
                    servicer.GetGroupsForPrincipal,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetGroupsForPrincipalRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetGroupsResponse.SerializeToString,
            ),
            'GetUsers': grpc.unary_unary_rpc_method_handler(
                    servicer.GetUsers,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetUsersRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetUsersResponse.SerializeToString,
            ),
            'ExtractAuthTokens': grpc.unary_unary_rpc_method_handler(
                    servicer.ExtractAuthTokens,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ExtractAuthTokensRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ExtractAuthTokensResponse.SerializeToString,
            ),
            'RestoreAuthToken': grpc.unary_unary_rpc_method_handler(
                    servicer.RestoreAuthToken,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RestoreAuthTokenRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RestoreAuthTokenResponse.SerializeToString,
            ),
            'DeleteExpiredAuthTokens': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteExpiredAuthTokens,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.DeleteExpiredAuthTokensRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.DeleteExpiredAuthTokensResponse.SerializeToString,
            ),
            'RotateRootToken': grpc.unary_unary_rpc_method_handler(
                    servicer.RotateRootToken,
                    request_deserializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RotateRootTokenRequest.FromString,
                    response_serializer=python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RotateRootTokenResponse.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'auth_v2.API', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


 # This class is part of an EXPERIMENTAL API.
class API(object):
    """Missing associated documentation comment in .proto file."""

    @staticmethod
    def Activate(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/Activate',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ActivateRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ActivateResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Deactivate(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/Deactivate',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.DeactivateRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.DeactivateResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetConfiguration(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/GetConfiguration',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetConfigurationRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetConfigurationResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetConfiguration(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/SetConfiguration',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.SetConfigurationRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.SetConfigurationResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Authenticate(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/Authenticate',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.AuthenticateRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.AuthenticateResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Authorize(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/Authorize',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.AuthorizeRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.AuthorizeResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetPermissions(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/GetPermissions',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetPermissionsRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetPermissionsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetPermissionsForPrincipal(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/GetPermissionsForPrincipal',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetPermissionsForPrincipalRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetPermissionsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def WhoAmI(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/WhoAmI',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.WhoAmIRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.WhoAmIResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetRolesForPermission(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/GetRolesForPermission',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetRolesForPermissionRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetRolesForPermissionResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ModifyRoleBinding(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/ModifyRoleBinding',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ModifyRoleBindingRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ModifyRoleBindingResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetRoleBinding(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/GetRoleBinding',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetRoleBindingRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetRoleBindingResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetOIDCLogin(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/GetOIDCLogin',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetOIDCLoginRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetOIDCLoginResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetRobotToken(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/GetRobotToken',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetRobotTokenRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetRobotTokenResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def RevokeAuthToken(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/RevokeAuthToken',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RevokeAuthTokenRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RevokeAuthTokenResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def RevokeAuthTokensForUser(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/RevokeAuthTokensForUser',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RevokeAuthTokensForUserRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RevokeAuthTokensForUserResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetGroupsForUser(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/SetGroupsForUser',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.SetGroupsForUserRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.SetGroupsForUserResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ModifyMembers(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/ModifyMembers',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ModifyMembersRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ModifyMembersResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetGroups(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/GetGroups',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetGroupsRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetGroupsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetGroupsForPrincipal(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/GetGroupsForPrincipal',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetGroupsForPrincipalRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetGroupsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetUsers(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/GetUsers',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetUsersRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.GetUsersResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ExtractAuthTokens(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/ExtractAuthTokens',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ExtractAuthTokensRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.ExtractAuthTokensResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def RestoreAuthToken(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/RestoreAuthToken',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RestoreAuthTokenRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RestoreAuthTokenResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteExpiredAuthTokens(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/DeleteExpiredAuthTokens',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.DeleteExpiredAuthTokensRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.DeleteExpiredAuthTokensResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def RotateRootToken(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/auth_v2.API/RotateRootToken',
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RotateRootTokenRequest.SerializeToString,
            python__pachyderm_dot_proto_dot_v2_dot_auth_dot_auth__pb2.RotateRootTokenResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
