Drizzled Public API Documentation

drizzled::plugin::Client Class Reference

#include <client.h>

Inheritance diagram for drizzled::plugin::Client:
drizzle_plugin::ClientMySQLProtocol drizzled::plugin::client::Concurrent drizzled::plugin::NullClient drizzle_plugin::drizzle_protocol::ClientDrizzleProtocol drizzle_plugin::mysql_unix_socket_protocol::ClientMySQLUnixSocketProtocol drizzled::plugin::client::Cached

List of all members.

Public Member Functions

virtual SessiongetSession (void)
virtual void setSession (Session *session_arg)
virtual int getFileDescriptor (void)=0
virtual bool isConnected (void)=0
virtual bool isReading (void)=0
virtual bool isWriting (void)=0
virtual bool flush (void)=0
virtual void close (void)=0
virtual bool authenticate (void)=0
virtual bool isConsole () const
virtual bool isInteractive () const
virtual bool isAdmin () const
virtual
catalog::Instance::shared_ptr 
catalog ()
virtual bool readCommand (char **packet, uint32_t *packet_length)=0
virtual void sendOK (void)=0
virtual void sendEOF (void)=0
virtual void sendError (const drizzled::error_t sql_errno, const char *err)=0
virtual bool sendFields (List< Item > *list)=0
virtual bool store (Field *from)=0
virtual bool store (void)=0
virtual bool store (int32_t from)=0
virtual bool store (uint32_t from)=0
virtual bool store (int64_t from)=0
virtual bool store (uint64_t from)=0
virtual bool store (double from, uint32_t decimals, String *buffer)=0
virtual bool store (const type::Time *from)
virtual bool store (const char *from)
virtual bool store (const char *from, size_t length)=0
virtual bool store (const std::string &from)
virtual bool haveMoreData (void)=0
virtual bool haveError (void)=0
virtual bool wasAborted (void)=0

Protected Attributes

Sessionsession

Detailed Description

This class allows new client sources to be written. This could be through network protocols, in-process threads, or any other client source that can provide commands and handle result sets. The current implementation is file-descriptor based, so for non-fd client sources (like from another thread), derived classes will need to use a pipe() for event notifications.

Definition at line 45 of file client.h.


Member Function Documentation

virtual bool drizzled::plugin::Client::authenticate ( void  ) [pure virtual]

Perform handshake and authorize client if needed.

Implemented in drizzle_plugin::ClientMySQLProtocol, drizzled::plugin::client::Concurrent, and drizzled::plugin::NullClient.

Referenced by drizzled::Session::authenticate().

virtual bool drizzled::plugin::Client::flush ( void  ) [pure virtual]

Flush all data that has been buffered with store() methods.

Return values:
Booleanindicating success or failure.

Implemented in drizzle_plugin::ClientMySQLProtocol, drizzled::plugin::client::Concurrent, and drizzled::plugin::NullClient.

virtual int drizzled::plugin::Client::getFileDescriptor ( void  ) [pure virtual]

Get file descriptor associated with client object.

Return values:
Filedescriptor that is attached, -1 if none.

Implemented in drizzle_plugin::ClientMySQLProtocol, drizzled::plugin::client::Concurrent, and drizzled::plugin::NullClient.

virtual Session* drizzled::plugin::Client::getSession ( void  ) [inline, virtual]

Get attached session from the client object.

Return values:
Sessionobject that is attached, NULL if none.

Definition at line 57 of file client.h.

virtual bool drizzled::plugin::Client::isConnected ( void  ) [pure virtual]

Check to see if the client is currently connected.

Return values:
Booleanvalue representing connected state.

Implemented in drizzle_plugin::ClientMySQLProtocol, drizzled::plugin::client::Concurrent, and drizzled::plugin::NullClient.

Referenced by drizzled::Session::disconnect().

virtual bool drizzled::plugin::Client::isReading ( void  ) [pure virtual]

Check to see if the client is actively reading.

Return values:
Booleanvalue representing reading state.

Implemented in drizzle_plugin::ClientMySQLProtocol, drizzled::plugin::client::Concurrent, and drizzled::plugin::NullClient.

virtual bool drizzled::plugin::Client::isWriting ( void  ) [pure virtual]

Check to see if the client is actively writing.

Return values:
Booleanvalue representing writing state.

Implemented in drizzle_plugin::ClientMySQLProtocol, drizzled::plugin::client::Concurrent, and drizzled::plugin::NullClient.

virtual bool drizzled::plugin::Client::readCommand ( char **  packet,
uint32_t *  packet_length 
) [pure virtual]
virtual void drizzled::plugin::Client::setSession ( Session session_arg) [inline, virtual]

Attach session to the client object.

Parameters:
[in]session_argSession object to attach, or NULL to clear.

Definition at line 66 of file client.h.


The documentation for this class was generated from the following files: