ing to service or custom semantics
* Stripping extraneous information from responses

These use cases and more can be enabled by injecting an
instance of a custom subclass when constructing the DiscussServiceRestTransport.

.. code-block:: python
    class MyCustomDiscussServiceInterceptor(DiscussServiceRestInterceptor):
        def pre_count_message_tokens(self, request, metadata):
            logging.log(f"Received request: {request}")
            return request, metadata

        def post_count_message_tokens(self, response):
            logging.log(f"Received response: {response}")
            return response

        def pre_generate_message(self, request, metadata):
            logging.log(f"Received request: {request}")
            return request, metadata

        def post_generate_message(self, response):
            logging.log(f"Received response: {response}")
            return response

    transport = DiscussServiceRestTransport(interceptor=MyCustomDiscussServiceInterceptor())
    client = DiscussServiceClient(transport=transport)


Ú