github.com/ydb-platform/ydb-go-sdk/v3@v3.89.2/connection.go (about)

     1  package ydb
     2  
     3  import (
     4  	"context"
     5  
     6  	"github.com/ydb-platform/ydb-go-sdk/v3/coordination"
     7  	"github.com/ydb-platform/ydb-go-sdk/v3/discovery"
     8  	"github.com/ydb-platform/ydb-go-sdk/v3/ratelimiter"
     9  	"github.com/ydb-platform/ydb-go-sdk/v3/scheme"
    10  	"github.com/ydb-platform/ydb-go-sdk/v3/scripting"
    11  	"github.com/ydb-platform/ydb-go-sdk/v3/table"
    12  	"github.com/ydb-platform/ydb-go-sdk/v3/topic"
    13  )
    14  
    15  // Connection interface provide access to YDB service clients
    16  // Interface and list of clients may be changed in the future
    17  //
    18  // Deprecated: use Driver instance instead.
    19  // Will be removed at next major release.
    20  // Read about versioning policy: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#deprecated
    21  type Connection interface { //nolint:interfacebloat
    22  	// Endpoint returns initial endpoint
    23  	Endpoint() string
    24  
    25  	// Name returns database name
    26  	Name() string
    27  
    28  	// Secure returns true if database connection is secure
    29  	Secure() bool
    30  
    31  	// Close closes connection and clear resources
    32  	Close(ctx context.Context) error
    33  
    34  	// Table returns table client
    35  	Table() table.Client
    36  
    37  	// Scheme returns scheme client
    38  	Scheme() scheme.Client
    39  
    40  	// Coordination returns coordination client
    41  	Coordination() coordination.Client
    42  
    43  	// Ratelimiter returns ratelimiter client
    44  	Ratelimiter() ratelimiter.Client
    45  
    46  	// Discovery returns discovery client
    47  	Discovery() discovery.Client
    48  
    49  	// Scripting returns scripting client
    50  	Scripting() scripting.Client
    51  
    52  	// Topic returns topic client
    53  	Topic() topic.Client
    54  }