Class SingleConnection<StreamRequestT,StreamResponseT,ClientResponseT> (1.13.8) 
  
      
     
  
  
  
   
  
    
  
  
    
    
    
  Version 1.13.8keyboard_arrow_down  
  
 
    
    
     
    
    
    
    
    
      
  
  
  
    
public   abstract   class  SingleConnection<StreamRequestT , StreamResponseT , ClientResponseT >  implements   ResponseObserver<StreamResponseT> ,   AutoCloseable  
   
  A SingleConnection handles the state for a stream with an initial connection request that may
 only be sent once and needs to wait for a response before sending other requests.
 
  
    Inheritance 
    java.lang.Object    >  
    SingleConnection<StreamRequestT,StreamResponseT,ClientResponseT> 
   
  
    Implements 
    com.google.api.gax.rpc.ResponseObserver<StreamResponseT> , 
    AutoCloseable  
   
  
  
    
      
        Type Parameters  
       
      
        Name  
        Description  
       
      
        StreamRequestT 
         
       
      
        StreamResponseT 
         
       
      
        ClientResponseT 
         
       
     
  
  Static Fields
   
  DEFAULT_STREAM_IDLE_TIMEOUT 
  
    
protected   static   final   Duration   DEFAULT_STREAM_IDLE_TIMEOUT  
   
  
  Constructors
   
   
  SingleConnection(StreamFactory<StreamRequestT,StreamResponseT> streamFactory, ResponseObserver<ClientResponseT> clientStream) 
  
    
protected   SingleConnection ( StreamFactory<StreamRequestT , StreamResponseT >  streamFactory ,   ResponseObserver<ClientResponseT>   clientStream )  
   
  
   
  SingleConnection(StreamFactory<StreamRequestT,StreamResponseT> streamFactory, ResponseObserver<ClientResponseT> clientStream, Duration streamIdleTimeout) 
  
    
protected   SingleConnection ( StreamFactory<StreamRequestT , StreamResponseT >  streamFactory ,   ResponseObserver<ClientResponseT>   clientStream ,   Duration   streamIdleTimeout )  
   
  
  Methods
   
   
  close() 
  
   
  handleStreamResponse(StreamResponseT response) 
  
    
protected   abstract   void   handleStreamResponse ( StreamResponseT   response )  
   
  
    
      
        Parameter  
       
      
        Name  
        Description  
       
      
        response 
        StreamResponseT  
       
     
  
  
   
  initialize(StreamRequestT initialRequest) 
  
    
protected   void   initialize ( StreamRequestT   initialRequest )  
   
  
    
      
        Parameter  
       
      
        Name  
        Description  
       
      
        initialRequest 
        StreamRequestT  
       
     
  
   
  onComplete() 
  
   
  onError(Throwable t) 
  
    
public   void   onError ( Throwable   t )  
   
  
   
  onResponse(StreamResponseT response) 
  
    
public   void   onResponse ( StreamResponseT   response )  
   
  
    
      
        Parameter  
       
      
        Name  
        Description  
       
      
        response 
        StreamResponseT  
       
     
  
   
  onStart(StreamController streamController) 
  
    
public   void   onStart ( StreamController   streamController )  
   
  
   
  sendToClient(ClientResponseT response) 
  
    
protected   void   sendToClient ( ClientResponseT   response )  
   
  
    
      
        Parameter  
       
      
        Name  
        Description  
       
      
        response 
        ClientResponseT  
       
     
  
   
  sendToStream(StreamRequestT request) 
  
    
protected   synchronized   void   sendToStream ( StreamRequestT   request )  
   
  
    
      
        Parameter  
       
      
        Name  
        Description  
       
      
        request 
        StreamRequestT  
       
     
  
   
  setError(CheckedApiException error) 
  
    
protected   void   setError ( CheckedApiException   error )  
   
  
 
     
    
  
  
  
     
  
 
  
    
    
      
       
    
    
  
  
 
  Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License , and code samples are licensed under the Apache 2.0 License . For details, see the Google Developers Site Policies . Java is a registered trademark of Oracle and/or its affiliates.
  Last updated 2025-10-30 UTC.
 
 
  
  
  
    
      [[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-10-30 UTC."],[],[]]