Class yii\elasticsearch\Connection
| Inheritance | yii\elasticsearch\Connection » yii\base\Component » yii\base\Object |
|---|---|
| Implements | yii\base\Configurable |
| Available since version | 2.0 |
| Source Code | https://github.com/yiisoft/yii2-elasticsearch/blob/master/Connection.php |
Elasticsearch Connection is used to connect to an elasticsearch cluster version 0.20 or higher
Public Properties
Public Methods
| Method | Description | Defined By |
|---|---|---|
| __call() | Calls the named method which is not a class method. | yii\base\Component |
| __clone() | This method is called after the object is created by cloning an existing one. | yii\base\Component |
| __construct() | Constructor. | yii\base\Object |
| __get() | Returns the value of a component property. | yii\base\Component |
| __isset() | Checks if a property is set, i.e. defined and not null. | yii\base\Component |
| __set() | Sets the value of a component property. | yii\base\Component |
| __sleep() | Closes the connection when this component is being serialized. | yii\elasticsearch\Connection |
| __unset() | Sets a component property to be null. | yii\base\Component |
| attachBehavior() | Attaches a behavior to this component. | yii\base\Component |
| attachBehaviors() | Attaches a list of behaviors to the component. | yii\base\Component |
| behaviors() | Returns a list of behaviors that this component should behave as. | yii\base\Component |
| canGetProperty() | Returns a value indicating whether a property can be read. | yii\base\Component |
| canSetProperty() | Returns a value indicating whether a property can be set. | yii\base\Component |
| className() | Returns the fully qualified name of this class. | yii\base\Object |
| close() | Closes the currently active DB connection. | yii\elasticsearch\Connection |
| createBulkCommand() | Creates a bulk command for execution. | yii\elasticsearch\Connection |
| createCommand() | Creates a command for execution. | yii\elasticsearch\Connection |
| delete() | Performs DELETE HTTP request | yii\elasticsearch\Connection |
| detachBehavior() | Detaches a behavior from the component. | yii\base\Component |
| detachBehaviors() | Detaches all behaviors from the component. | yii\base\Component |
| ensureBehaviors() | Makes sure that the behaviors declared in behaviors() are attached to this component. | yii\base\Component |
| get() | Performs GET HTTP request | yii\elasticsearch\Connection |
| getBehavior() | Returns the named behavior object. | yii\base\Component |
| getBehaviors() | Returns all behaviors attached to this component. | yii\base\Component |
| getClusterState() | yii\elasticsearch\Connection | |
| getDriverName() | Returns the name of the DB driver for the current \yii\elasticsearch\dsn. | yii\elasticsearch\Connection |
| getIsActive() | Returns a value indicating whether the DB connection is established. | yii\elasticsearch\Connection |
| getNodeInfo() | yii\elasticsearch\Connection | |
| getQueryBuilder() | Creates new query builder instance | yii\elasticsearch\Connection |
| hasEventHandlers() | Returns a value indicating whether there is any handler attached to the named event. | yii\base\Component |
| hasMethod() | Returns a value indicating whether a method is defined. | yii\base\Component |
| hasProperty() | Returns a value indicating whether a property is defined for this component. | yii\base\Component |
| head() | Performs HEAD HTTP request | yii\elasticsearch\Connection |
| init() | yii\elasticsearch\Connection | |
| off() | Detaches an existing event handler from this component. | yii\base\Component |
| on() | Attaches an event handler to an event. | yii\base\Component |
| open() | Establishes a DB connection. | yii\elasticsearch\Connection |
| post() | Performs POST HTTP request | yii\elasticsearch\Connection |
| put() | Performs PUT HTTP request | yii\elasticsearch\Connection |
| trigger() | Triggers an event. | yii\base\Component |
Protected Methods
| Method | Description | Defined By |
|---|---|---|
| decodeErrorBody() | Try to decode error information if it is valid json, return it if not. | yii\elasticsearch\Connection |
| httpRequest() | Performs HTTP request | yii\elasticsearch\Connection |
| initConnection() | Initializes the DB connection. | yii\elasticsearch\Connection |
| populateNodes() | Populates $nodes with the result of a cluster nodes request. | yii\elasticsearch\Connection |
| selectActiveNode() | Select active node randomly | yii\elasticsearch\Connection |
Events
| Event | Type | Description | Defined By |
|---|---|---|---|
| EVENT_AFTER_OPEN | \yii\elasticsearch\Event | An event that is triggered after a DB connection is established | yii\elasticsearch\Connection |
Property Details
$activeNode public property
The active node. Key of one of the $nodes. Will be randomly selected on open().
public string $activeNode = null
$auth public property
Authentication data used to connect to the ElasticSearch node.
Array elements:
-
username: the username for authentication. -
password: the password for authentication.
Array either MUST contain both username and password on not contain any authentication credentials.
public array $auth = []
$autodetectCluster public property
Whether to autodetect available cluster nodes on open()
public boolean $autodetectCluster = true
$clusterState public read-only property
public void getClusterState ( )
$connectionTimeout public property
Timeout to use for connecting to an elasticsearch node. This value will be used to configure the curl CURLOPT_CONNECTTIMEOUT option. If not set, no explicit timeout will be set for curl.
public float $connectionTimeout = null
$dataTimeout public property
Timeout to use when reading the response from an elasticsearch node. This value will be used to configure the curl CURLOPT_TIMEOUT option. If not set, no explicit timeout will be set for curl.
public float $dataTimeout = null
$defaultProtocol public property (available since version 2.0.5)
Default protocol to connect to nodes
public string $defaultProtocol = 'http'
$driverName public read-only property
Name of the DB driver
public string getDriverName ( )
$isActive public read-only property
Whether the DB connection is established
public boolean getIsActive ( )
$nodeInfo public read-only property
public void getNodeInfo ( )
$nodes public property
The elasticsearch cluster nodes to connect to.
This is populated with the result of a cluster nodes request when $autodetectCluster is true.
Additional special options:
-
auth: overrides $auth property. For example:
[ 'http_address' => 'inet[/127.0.0.1:9200]', 'auth' => ['username' => 'yiiuser', 'password' => 'yiipw'], // Overrides the `auth` property of the class with specific login and password //'auth' => ['username' => 'yiiuser', 'password' => 'yiipw'], // Disabled auth regardless of `auth` property of the class ]
-
protocol: explicitly sets the protocol for the current node (useful when manually defining a HTTPS cluster)
public array $nodes = [['http_address' => 'inet[/127.0.0.1:9200]']]
$queryBuilder public read-only property
public yii\elasticsearch\QueryBuilder getQueryBuilder ( )
Method Details
__sleep() public method
Closes the connection when this component is being serialized.
| public array __sleep ( ) |
|---|
close() public method
Closes the currently active DB connection.
It does nothing if the connection is already closed.
| public void close ( ) |
|---|
createBulkCommand() public method (available since version 2.0.5)
Creates a bulk command for execution.
| public yii\elasticsearch\BulkCommand createBulkCommand ( $config = [] ) | ||
|---|---|---|
| $config | array |
The configuration for the yii\elasticsearch\BulkCommand class |
| return | yii\elasticsearch\BulkCommand |
The DB command |
createCommand() public method
Creates a command for execution.
| public yii\elasticsearch\Command createCommand ( $config = [] ) | ||
|---|---|---|
| $config | array |
The configuration for the Command class |
| return | yii\elasticsearch\Command |
The DB command |
decodeErrorBody() protected method
Try to decode error information if it is valid json, return it if not.
| protected mixed decodeErrorBody ( $body ) | ||
|---|---|---|
| $body | ||
delete() public method
Performs DELETE HTTP request
| public mixed delete ( $url, $options = [], $body = null, $raw = false ) | ||
|---|---|---|
| $url | string|array |
URL |
| $options | array |
URL options |
| $body | string |
Request body |
| $raw | boolean |
If response body contains JSON and should be decoded |
| return | mixed |
Response |
| throws | yii\elasticsearch\Exception | |
| throws | yii\base\InvalidConfigException | |
get() public method
Performs GET HTTP request
| public mixed get ( $url, $options = [], $body = null, $raw = false ) | ||
|---|---|---|
| $url | string|array |
URL |
| $options | array |
URL options |
| $body | string |
Request body |
| $raw | boolean |
If response body contains JSON and should be decoded |
| return | mixed |
Response |
| throws | yii\elasticsearch\Exception | |
| throws | yii\base\InvalidConfigException | |
getClusterState() public method
| public void getClusterState ( ) |
|---|
getDriverName() public method
Returns the name of the DB driver for the current \yii\elasticsearch\dsn.
| public string getDriverName ( ) | ||
|---|---|---|
| return | string |
Name of the DB driver |
getIsActive() public method
Returns a value indicating whether the DB connection is established.
| public boolean getIsActive ( ) | ||
|---|---|---|
| return | boolean |
Whether the DB connection is established |
getNodeInfo() public method
| public void getNodeInfo ( ) |
|---|
getQueryBuilder() public method
Creates new query builder instance
| public yii\elasticsearch\QueryBuilder getQueryBuilder ( ) |
|---|
head() public method
Performs HEAD HTTP request
| public mixed head ( $url, $options = [], $body = null ) | ||
|---|---|---|
| $url | string|array |
URL |
| $options | array |
URL options |
| $body | string |
Request body |
| return | mixed |
Response |
| throws | yii\elasticsearch\Exception | |
| throws | yii\base\InvalidConfigException | |
httpRequest() protected method
Performs HTTP request
| protected mixed httpRequest ( $method, $url, $requestBody = null, $raw = false ) | ||
|---|---|---|
| $method | string |
Method name |
| $url | string |
URL |
| $requestBody | string |
Request body |
| $raw | boolean |
If response body contains JSON and should be decoded |
| return | mixed |
If request failed |
| throws | yii\elasticsearch\Exception |
if request failed |
| throws | yii\base\InvalidConfigException | |
init() public method
| public void init ( ) |
|---|
initConnection() protected method
Initializes the DB connection.
This method is invoked right after the DB connection is established. The default implementation triggers an EVENT_AFTER_OPEN event.
| protected void initConnection ( ) |
|---|
open() public method
Establishes a DB connection.
It does nothing if a DB connection has already been established.
| public void open ( ) | ||
|---|---|---|
| throws | yii\elasticsearch\Exception |
if connection fails |
populateNodes() protected method (available since version 2.0.4)
Populates $nodes with the result of a cluster nodes request.
| protected void populateNodes ( ) | ||
|---|---|---|
| throws | yii\elasticsearch\Exception |
if no active node(s) found |
post() public method
Performs POST HTTP request
| public mixed post ( $url, $options = [], $body = null, $raw = false ) | ||
|---|---|---|
| $url | string|array |
URL |
| $options | array |
URL options |
| $body | string |
Request body |
| $raw | boolean |
If response body contains JSON and should be decoded |
| return | mixed |
Response |
| throws | yii\elasticsearch\Exception | |
| throws | yii\base\InvalidConfigException | |
put() public method
Performs PUT HTTP request
| public mixed put ( $url, $options = [], $body = null, $raw = false ) | ||
|---|---|---|
| $url | string|array |
URL |
| $options | array |
URL options |
| $body | string |
Request body |
| $raw | boolean |
If response body contains JSON and should be decoded |
| return | mixed |
Response |
| throws | yii\elasticsearch\Exception | |
| throws | yii\base\InvalidConfigException | |
selectActiveNode() protected method
Select active node randomly
| protected void selectActiveNode ( ) |
|---|
Event Details
EVENT_AFTER_OPEN event of type \yii\elasticsearch\Event
An event that is triggered after a DB connection is established
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-elasticsearch-connection.html