Class/Object

com.twitter.finagle.Mysql

Client

Related Docs: object Client | package Mysql

Permalink

case class Client(stack: Stack[ServiceFactory[Request, Result]] = Client.stack, params: Params = Client.params) extends StdStackClient[Request, Result, Client] with WithSessionPool[Client] with WithDefaultLoadBalancer[Client] with MysqlRichClient with Product with Serializable

Implements a mysql client in terms of a com.twitter.finagle.client.StackClient. The client inherits a wealth of features from finagle including connection pooling and load balancing.

Additionally, this class provides methods via MysqlRichClient for constructing a client which exposes an API that has use case specific methods, for example mysql.Client.read, mysql.Client.modify, and mysql.Client.prepare. This is an easier experience for most users.

Example:
  1. import com.twitter.finagle.Mysql
    import com.twitter.finagle.mysql.Client
    import com.twitter.util.Future
    val client: Client = Mysql.client
      .withCredentials("username", "password")
      .withDatabase("database")
      .newRichClient("host:port")
    val names: Future[Seq[String]] =
      client.select("SELECT name FROM employee") { row =>
        row.stringOrNull("name")
      }
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Client
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. MysqlRichClient
  7. WithDefaultLoadBalancer
  8. WithSessionPool
  9. StdStackClient
  10. EndpointerStackClient
  11. WithSessionQualifier
  12. WithClientSession
  13. WithClientTransport
  14. WithClientAdmissionControl
  15. ClientParams
  16. CommonParams
  17. StackClient
  18. StackBasedClient
  19. Transformable
  20. Parameterized
  21. Client
  22. AnyRef
  23. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Client(stack: Stack[ServiceFactory[Request, Result]] = Client.stack, params: Params = Client.params)

    Permalink

Type Members

  1. type Context = TransportContext

    Permalink
    Attributes
    protected
    Definition Classes
    Client → StdStackClient
  2. type In = Buf

    Permalink
    Attributes
    protected
    Definition Classes
    Client → StdStackClient
  3. type Out = Buf

    Permalink
    Attributes
    protected
    Definition Classes
    Client → StdStackClient

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def configured[P](psp: (P, Param[P])): Client

    Permalink
    Definition Classes
    Client → EndpointerStackClient → StackClient → Parameterized
  7. def configured[P](p: P)(implicit arg0: Param[P]): Client

    Permalink
    Definition Classes
    EndpointerStackClient → StackClient → Parameterized
  8. def configuredParams(newParams: Params): Client

    Permalink
    Definition Classes
    EndpointerStackClient → StackClient → Parameterized
  9. def copy1(stack: Stack[ServiceFactory[Request, Result]] = this.stack, params: Params = this.params): Client

    Permalink
    Attributes
    protected
    Definition Classes
    Client → StdStackClient → EndpointerStackClient
  10. final def endpointer: Stackable[ServiceFactory[Request, Result]]

    Permalink
    Attributes
    protected
    Definition Classes
    StdStackClient → EndpointerStackClient
  11. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  12. def filtered(filter: Filter[Request, Result, Request, Result]): Client

    Permalink
    Definition Classes
    Client → EndpointerStackClient
  13. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  14. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  15. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  16. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  17. def newClient(dest: Name, label0: String): ServiceFactory[Request, Result]

    Permalink
    Definition Classes
    EndpointerStackClient → Client
  18. final def newClient(dest: String, label: String): ServiceFactory[Request, Result]

    Permalink
    Definition Classes
    Client
  19. final def newClient(dest: String): ServiceFactory[Request, Result]

    Permalink
    Definition Classes
    Client
  20. def newDispatcher(transport: Transport[Buf, Buf] { type Context <: Client.this.Context }): Service[Request, Result]

    Permalink
    Attributes
    protected
    Definition Classes
    Client → StdStackClient
  21. def newRichClient(dest: String): mysql.Client with Transactions

    Permalink

    Creates a new RichClient connected to the logical destination described by dest.

    Creates a new RichClient connected to the logical destination described by dest.

    dest

    the location to connect to, e.g. "host:port". See the user guide for details on destination names.

    Definition Classes
    MysqlRichClient
  22. def newRichClient(dest: Name, label: String): mysql.Client with Transactions

    Permalink

    Creates a new RichClient connected to the logical destination described by dest with the assigned label.

    Creates a new RichClient connected to the logical destination described by dest with the assigned label. The label is used to scope client stats.

    Definition Classes
    MysqlRichClient
  23. def newService(dest: Name, label: String): Service[Request, Result]

    Permalink
    Definition Classes
    EndpointerStackClient → Client
  24. final def newService(dest: String, label: String): Service[Request, Result]

    Permalink
    Definition Classes
    Client
  25. final def newService(dest: String): Service[Request, Result]

    Permalink
    Definition Classes
    Client
  26. def newTransporter(addr: SocketAddress): Transporter[In, Out, Context]

    Permalink
    Attributes
    protected
    Definition Classes
    Client → StdStackClient
  27. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  28. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  29. val params: Params

    Permalink
    Definition Classes
    Client → StackClient → Parameterized
  30. final def registerTransporter(transporterName: String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    StackClient
  31. def richClientStatsReceiver: StatsReceiver

    Permalink
    Definition Classes
    ClientMysqlRichClient
  32. val stack: Stack[ServiceFactory[Request, Result]]

    Permalink
    Definition Classes
    Client → StackClient
  33. val supportUnsigned: Boolean

    Permalink

    Whether the client supports unsigned integer fields

    Whether the client supports unsigned integer fields

    Attributes
    protected
    Definition Classes
    ClientMysqlRichClient
  34. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  35. def transformed(f: (Stack[ServiceFactory[Request, Result]]) ⇒ Stack[ServiceFactory[Request, Result]]): Client

    Permalink
    Definition Classes
    EndpointerStackClient
  36. def transformed(t: Transformer): StackClient[Request, Result]

    Permalink
    Definition Classes
    StackClient → Transformable
  37. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  38. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  39. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  40. val withAdmissionControl: ClientAdmissionControlParams[Client]

    Permalink
    Definition Classes
    Client → WithClientAdmissionControl
  41. def withAffectedRows(): Client

    Permalink

    Don't set the CLIENT_FOUND_ROWS flag when establishing a new session.

    Don't set the CLIENT_FOUND_ROWS flag when establishing a new session. This will make "INSERT ... ON DUPLICATE KEY UPDATE" statements return the "correct" update count.

    See https://dev.mysql.com/doc/refman/5.7/en/information-functions.html#function_row-count

  42. def withCharset(charset: Short): Client

    Permalink

    The default character set used when establishing a new session.

  43. def withCredentials(u: String, p: String): Client

    Permalink

    The credentials to use when authenticating a new session.

    The credentials to use when authenticating a new session.

    p

    if null, no password is used.

  44. def withDatabase(db: String): Client

    Permalink

    Database to use when this client establishes a new session.

  45. def withExceptionStatsHandler(exceptionStatsHandler: ExceptionStatsHandler): Client

    Permalink
    Definition Classes
    Client → CommonParams
  46. def withLabel(label: String): Client

    Permalink
    Definition Classes
    Client → CommonParams
  47. val withLoadBalancer: DefaultLoadBalancingParams[Client]

    Permalink
    Definition Classes
    Client → WithDefaultLoadBalancer
  48. def withMaxConcurrentPrepareStatements(num: Int): Client

    Permalink

    The maximum number of concurrent prepare statements.

  49. def withMonitor(monitor: Monitor): Client

    Permalink
    Definition Classes
    Client → CommonParams
  50. def withParams(params: Params): Client

    Permalink
    Definition Classes
    EndpointerStackClient → StackClient → Parameterized
  51. def withRequestTimeout(timeout: Duration): Client

    Permalink
    Definition Classes
    Client → CommonParams
  52. def withRequestTimeout(timeout: Tunable[Duration]): Client

    Permalink
    Definition Classes
    CommonParams
  53. def withResponseClassifier(responseClassifier: ResponseClassifier): Client

    Permalink
    Definition Classes
    Client → CommonParams
  54. def withRetryBackoff(backoff: Stream[Duration]): Client

    Permalink
    Definition Classes
    Client → ClientParams
  55. def withRetryBudget(budget: RetryBudget): Client

    Permalink
    Definition Classes
    Client → ClientParams
  56. val withSession: ClientSessionParams[Client]

    Permalink
    Definition Classes
    Client → WithClientSession
  57. val withSessionPool: SessionPoolingParams[Client]

    Permalink
    Definition Classes
    Client → WithSessionPool
  58. val withSessionQualifier: SessionQualificationParams[Client]

    Permalink
    Definition Classes
    Client → WithSessionQualifier
  59. def withStack(stack: Stack[ServiceFactory[Request, Result]]): Client

    Permalink
    Definition Classes
    Client → EndpointerStackClient → StackClient
  60. def withStatsReceiver(statsReceiver: StatsReceiver): Client

    Permalink
    Definition Classes
    Client → CommonParams
  61. def withTracer(tracer: Tracer): Client

    Permalink
    Definition Classes
    Client → CommonParams
  62. val withTransport: ClientTransportParams[Client]

    Permalink
    Definition Classes
    Client → WithClientTransport

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from MysqlRichClient

Inherited from WithSessionPool[Client]

Inherited from StdStackClient[Request, Result, Client]

Inherited from WithSessionQualifier[Client]

Inherited from WithClientSession[Client]

Inherited from WithClientTransport[Client]

Inherited from ClientParams[Client]

Inherited from CommonParams[Client]

Inherited from StackClient[Request, Result]

Inherited from StackBasedClient[Request, Result]

Inherited from Transformable[StackClient[Request, Result]]

Inherited from Parameterized[Client]

Inherited from finagle.Client[Request, Result]

Inherited from AnyRef

Inherited from Any

Ungrouped