Commit 9d0da237 by Qiang Xue

Merge branch 'master' of github.com:yiisoft/yii2

parents b9f9b165 9b5f3fab
...@@ -55,6 +55,7 @@ ...@@ -55,6 +55,7 @@
"yiisoft/yii2-elasticsearch": "self.version", "yiisoft/yii2-elasticsearch": "self.version",
"yiisoft/yii2-gii": "self.version", "yiisoft/yii2-gii": "self.version",
"yiisoft/yii2-jui": "self.version", "yiisoft/yii2-jui": "self.version",
"yiisoft/yii2-mongo": "self.version",
"yiisoft/yii2-redis": "self.version", "yiisoft/yii2-redis": "self.version",
"yiisoft/yii2-smarty": "self.version", "yiisoft/yii2-smarty": "self.version",
"yiisoft/yii2-swiftmailer": "self.version", "yiisoft/yii2-swiftmailer": "self.version",
...@@ -83,6 +84,7 @@ ...@@ -83,6 +84,7 @@
"yii\\elasticsearch\\": "extensions/elasticsearch/", "yii\\elasticsearch\\": "extensions/elasticsearch/",
"yii\\gii\\": "extensions/gii/", "yii\\gii\\": "extensions/gii/",
"yii\\jui\\": "extensions/jui/", "yii\\jui\\": "extensions/jui/",
"yii\\mongo\\": "extensions/mongo/",
"yii\\redis\\": "extensions/redis/", "yii\\redis\\": "extensions/redis/",
"yii\\smarty\\": "extensions/smarty/", "yii\\smarty\\": "extensions/smarty/",
"yii\\swiftmailer\\": "extensions/swiftmailer/", "yii\\swiftmailer\\": "extensions/swiftmailer/",
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
* @license http://www.yiiframework.com/license/ * @license http://www.yiiframework.com/license/
*/ */
namespace yii\mongo; namespace yii\mongodb;
use yii\db\ActiveQueryInterface; use yii\db\ActiveQueryInterface;
use yii\db\ActiveQueryTrait; use yii\db\ActiveQueryTrait;
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
* @license http://www.yiiframework.com/license/ * @license http://www.yiiframework.com/license/
*/ */
namespace yii\mongo; namespace yii\mongodb;
use yii\base\InvalidConfigException; use yii\base\InvalidConfigException;
use yii\base\InvalidParamException; use yii\base\InvalidParamException;
...@@ -25,13 +25,13 @@ abstract class ActiveRecord extends BaseActiveRecord ...@@ -25,13 +25,13 @@ abstract class ActiveRecord extends BaseActiveRecord
{ {
/** /**
* Returns the Mongo connection used by this AR class. * Returns the Mongo connection used by this AR class.
* By default, the "mongo" application component is used as the Mongo connection. * By default, the "mongodb" application component is used as the Mongo connection.
* You may override this method if you want to use a different database connection. * You may override this method if you want to use a different database connection.
* @return Connection the database connection used by this AR class. * @return Connection the database connection used by this AR class.
*/ */
public static function getDb() public static function getDb()
{ {
return \Yii::$app->getComponent('mongo'); return \Yii::$app->getComponent('mongodb');
} }
/** /**
...@@ -174,7 +174,7 @@ abstract class ActiveRecord extends BaseActiveRecord ...@@ -174,7 +174,7 @@ abstract class ActiveRecord extends BaseActiveRecord
*/ */
public function attributes() public function attributes()
{ {
throw new InvalidConfigException('The attributes() method of mongo ActiveRecord has to be implemented by child classes.'); throw new InvalidConfigException('The attributes() method of mongodb ActiveRecord has to be implemented by child classes.');
} }
/** /**
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
* @license http://www.yiiframework.com/license/ * @license http://www.yiiframework.com/license/
*/ */
namespace yii\mongo; namespace yii\mongodb;
use yii\db\ActiveRelationInterface; use yii\db\ActiveRelationInterface;
use yii\db\ActiveRelationTrait; use yii\db\ActiveRelationTrait;
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
* @license http://www.yiiframework.com/license/ * @license http://www.yiiframework.com/license/
*/ */
namespace yii\mongo; namespace yii\mongodb;
use yii\base\InvalidParamException; use yii\base\InvalidParamException;
use yii\base\Object; use yii\base\Object;
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
* @license http://www.yiiframework.com/license/ * @license http://www.yiiframework.com/license/
*/ */
namespace yii\mongo; namespace yii\mongodb;
use yii\base\Component; use yii\base\Component;
use yii\base\InvalidConfigException; use yii\base\InvalidConfigException;
...@@ -23,7 +23,7 @@ use Yii; ...@@ -23,7 +23,7 @@ use Yii;
* the DB connection: * the DB connection:
* *
* ~~~ * ~~~
* $connection = new \yii\mongo\Connection([ * $connection = new \yii\mongodb\Connection([
* 'dsn' => $dsn, * 'dsn' => $dsn,
* ]); * ]);
* $connection->open(); * $connection->open();
...@@ -55,8 +55,8 @@ use Yii; ...@@ -55,8 +55,8 @@ use Yii;
* ~~~ * ~~~
* [ * [
* 'components' => [ * 'components' => [
* 'mongo' => [ * 'mongodb' => [
* 'class' => '\yii\mongo\Connection', * 'class' => '\yii\mongodb\Connection',
* 'dsn' => 'mongodb://developer:password@localhost:27017/mydatabase', * 'dsn' => 'mongodb://developer:password@localhost:27017/mydatabase',
* ], * ],
* ], * ],
...@@ -102,7 +102,7 @@ class Connection extends Component ...@@ -102,7 +102,7 @@ class Connection extends Component
*/ */
public $defaultDatabaseName; public $defaultDatabaseName;
/** /**
* @var \MongoClient mongo client instance. * @var \MongoClient Mongo client instance.
*/ */
public $mongoClient; public $mongoClient;
/** /**
...@@ -156,7 +156,7 @@ class Connection extends Component ...@@ -156,7 +156,7 @@ class Connection extends Component
{ {
$this->open(); $this->open();
return Yii::createObject([ return Yii::createObject([
'class' => 'yii\mongo\Database', 'class' => 'yii\mongodb\Database',
'mongoDb' => $this->mongoClient->selectDB($name) 'mongoDb' => $this->mongoClient->selectDB($name)
]); ]);
} }
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
* @license http://www.yiiframework.com/license/ * @license http://www.yiiframework.com/license/
*/ */
namespace yii\mongo; namespace yii\mongodb;
use yii\base\Object; use yii\base\Object;
use Yii; use Yii;
...@@ -46,7 +46,7 @@ class Database extends Object ...@@ -46,7 +46,7 @@ class Database extends Object
* Returns the Mongo collection with the given name. * Returns the Mongo collection with the given name.
* @param string $name collection name * @param string $name collection name
* @param boolean $refresh whether to reload the collection instance even if it is found in the cache. * @param boolean $refresh whether to reload the collection instance even if it is found in the cache.
* @return Collection mongo collection instance. * @return Collection Mongo collection instance.
*/ */
public function getCollection($name, $refresh = false) public function getCollection($name, $refresh = false)
{ {
...@@ -60,7 +60,7 @@ class Database extends Object ...@@ -60,7 +60,7 @@ class Database extends Object
* Returns Mongo GridFS collection with given prefix. * Returns Mongo GridFS collection with given prefix.
* @param string $prefix collection prefix. * @param string $prefix collection prefix.
* @param boolean $refresh whether to reload the collection instance even if it is found in the cache. * @param boolean $refresh whether to reload the collection instance even if it is found in the cache.
* @return file\Collection mongo GridFS collection. * @return file\Collection Mongo GridFS collection.
*/ */
public function getFileCollection($prefix = 'fs', $refresh = false) public function getFileCollection($prefix = 'fs', $refresh = false)
{ {
...@@ -78,7 +78,7 @@ class Database extends Object ...@@ -78,7 +78,7 @@ class Database extends Object
protected function selectCollection($name) protected function selectCollection($name)
{ {
return Yii::createObject([ return Yii::createObject([
'class' => 'yii\mongo\Collection', 'class' => 'yii\mongodb\Collection',
'mongoCollection' => $this->mongoDb->selectCollection($name) 'mongoCollection' => $this->mongoDb->selectCollection($name)
]); ]);
} }
...@@ -91,7 +91,7 @@ class Database extends Object ...@@ -91,7 +91,7 @@ class Database extends Object
protected function selectFileCollection($prefix) protected function selectFileCollection($prefix)
{ {
return Yii::createObject([ return Yii::createObject([
'class' => 'yii\mongo\file\Collection', 'class' => 'yii\mongodb\file\Collection',
'mongoCollection' => $this->mongoDb->getGridFS($prefix) 'mongoCollection' => $this->mongoDb->getGridFS($prefix)
]); ]);
} }
...@@ -103,7 +103,7 @@ class Database extends Object ...@@ -103,7 +103,7 @@ class Database extends Object
* you need to create collection with the specific options. * you need to create collection with the specific options.
* @param string $name name of the collection * @param string $name name of the collection
* @param array $options collection options in format: "name" => "value" * @param array $options collection options in format: "name" => "value"
* @return \MongoCollection new mongo collection instance. * @return \MongoCollection new Mongo collection instance.
* @throws Exception on failure. * @throws Exception on failure.
*/ */
public function createCollection($name, $options = []) public function createCollection($name, $options = [])
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
* @license http://www.yiiframework.com/license/ * @license http://www.yiiframework.com/license/
*/ */
namespace yii\mongo; namespace yii\mongodb;
/** /**
* Exception represents an exception that is caused by some Mongo-related operations. * Exception represents an exception that is caused by some Mongo-related operations.
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
* @license http://www.yiiframework.com/license/ * @license http://www.yiiframework.com/license/
*/ */
namespace yii\mongo; namespace yii\mongodb;
use yii\base\Component; use yii\base\Component;
use yii\db\QueryInterface; use yii\db\QueryInterface;
...@@ -60,7 +60,7 @@ class Query extends Component implements QueryInterface ...@@ -60,7 +60,7 @@ class Query extends Component implements QueryInterface
public function getCollection($db = null) public function getCollection($db = null)
{ {
if ($db === null) { if ($db === null) {
$db = Yii::$app->getComponent('mongo'); $db = Yii::$app->getComponent('mongodb');
} }
return $db->getCollection($this->from); return $db->getCollection($this->from);
} }
...@@ -180,7 +180,7 @@ class Query extends Component implements QueryInterface ...@@ -180,7 +180,7 @@ class Query extends Component implements QueryInterface
/** /**
* Executes the query and returns all results as an array. * Executes the query and returns all results as an array.
* @param Connection $db the Mongo connection used to execute the query. * @param Connection $db the Mongo connection used to execute the query.
* If this parameter is not given, the `mongo` application component will be used. * If this parameter is not given, the `mongodb` application component will be used.
* @return array the query results. If the query results in nothing, an empty array will be returned. * @return array the query results. If the query results in nothing, an empty array will be returned.
*/ */
public function all($db = null) public function all($db = null)
...@@ -192,7 +192,7 @@ class Query extends Component implements QueryInterface ...@@ -192,7 +192,7 @@ class Query extends Component implements QueryInterface
/** /**
* Executes the query and returns a single row of result. * Executes the query and returns a single row of result.
* @param Connection $db the Mongo connection used to execute the query. * @param Connection $db the Mongo connection used to execute the query.
* If this parameter is not given, the `mongo` application component will be used. * If this parameter is not given, the `mongodb` application component will be used.
* @return array|boolean the first row (in terms of an array) of the query result. False is returned if the query * @return array|boolean the first row (in terms of an array) of the query result. False is returned if the query
* results in nothing. * results in nothing.
*/ */
...@@ -206,7 +206,7 @@ class Query extends Component implements QueryInterface ...@@ -206,7 +206,7 @@ class Query extends Component implements QueryInterface
* Returns the number of records. * Returns the number of records.
* @param string $q kept to match [[QueryInterface]], its value is ignored. * @param string $q kept to match [[QueryInterface]], its value is ignored.
* @param Connection $db the Mongo connection used to execute the query. * @param Connection $db the Mongo connection used to execute the query.
* If this parameter is not given, the `mongo` application component will be used. * If this parameter is not given, the `mongodb` application component will be used.
* @return integer number of records * @return integer number of records
* @throws Exception on failure. * @throws Exception on failure.
*/ */
...@@ -229,7 +229,7 @@ class Query extends Component implements QueryInterface ...@@ -229,7 +229,7 @@ class Query extends Component implements QueryInterface
/** /**
* Returns a value indicating whether the query result contains any row of data. * Returns a value indicating whether the query result contains any row of data.
* @param Connection $db the Mongo connection used to execute the query. * @param Connection $db the Mongo connection used to execute the query.
* If this parameter is not given, the `mongo` application component will be used. * If this parameter is not given, the `mongodb` application component will be used.
* @return boolean whether the query result contains any row of data. * @return boolean whether the query result contains any row of data.
*/ */
public function exists($db = null) public function exists($db = null)
...@@ -242,7 +242,7 @@ class Query extends Component implements QueryInterface ...@@ -242,7 +242,7 @@ class Query extends Component implements QueryInterface
* @param string $q the column name. * @param string $q the column name.
* Make sure you properly quote column names in the expression. * Make sure you properly quote column names in the expression.
* @param Connection $db the Mongo connection used to execute the query. * @param Connection $db the Mongo connection used to execute the query.
* If this parameter is not given, the `mongo` application component will be used. * If this parameter is not given, the `mongodb` application component will be used.
* @return integer the sum of the specified column values * @return integer the sum of the specified column values
*/ */
public function sum($q, $db = null) public function sum($q, $db = null)
...@@ -255,7 +255,7 @@ class Query extends Component implements QueryInterface ...@@ -255,7 +255,7 @@ class Query extends Component implements QueryInterface
* @param string $q the column name. * @param string $q the column name.
* Make sure you properly quote column names in the expression. * Make sure you properly quote column names in the expression.
* @param Connection $db the Mongo connection used to execute the query. * @param Connection $db the Mongo connection used to execute the query.
* If this parameter is not given, the `mongo` application component will be used. * If this parameter is not given, the `mongodb` application component will be used.
* @return integer the average of the specified column values. * @return integer the average of the specified column values.
*/ */
public function average($q, $db = null) public function average($q, $db = null)
...@@ -281,7 +281,7 @@ class Query extends Component implements QueryInterface ...@@ -281,7 +281,7 @@ class Query extends Component implements QueryInterface
* @param string $q the column name. * @param string $q the column name.
* Make sure you properly quote column names in the expression. * Make sure you properly quote column names in the expression.
* @param Connection $db the Mongo connection used to execute the query. * @param Connection $db the Mongo connection used to execute the query.
* If this parameter is not given, the `mongo` application component will be used. * If this parameter is not given, the `mongodb` application component will be used.
* @return integer the maximum of the specified column values. * @return integer the maximum of the specified column values.
*/ */
public function max($q, $db = null) public function max($q, $db = null)
...@@ -323,7 +323,7 @@ class Query extends Component implements QueryInterface ...@@ -323,7 +323,7 @@ class Query extends Component implements QueryInterface
* Returns a list of distinct values for the given column across a collection. * Returns a list of distinct values for the given column across a collection.
* @param string $q column to use. * @param string $q column to use.
* @param Connection $db the Mongo connection used to execute the query. * @param Connection $db the Mongo connection used to execute the query.
* If this parameter is not given, the `mongo` application component will be used. * If this parameter is not given, the `mongodb` application component will be used.
* @return array array of distinct values * @return array array of distinct values
*/ */
public function distinct($q, $db = null) public function distinct($q, $db = null)
......
...@@ -21,12 +21,12 @@ The preferred way to install this extension is through [composer](http://getcomp ...@@ -21,12 +21,12 @@ The preferred way to install this extension is through [composer](http://getcomp
Either run Either run
``` ```
php composer.phar require yiisoft/yii2-mongo "*" php composer.phar require yiisoft/yii2-mongodb "*"
``` ```
or add or add
``` ```
"yiisoft/yii2-mongo": "*" "yiisoft/yii2-mongodb": "*"
``` ```
to the require section of your composer.json. to the require section of your composer.json.
...@@ -47,8 +47,8 @@ To use this extension, simply add the following code in your application configu ...@@ -47,8 +47,8 @@ To use this extension, simply add the following code in your application configu
return [ return [
//.... //....
'components' => [ 'components' => [
'mongo' => [ 'mongodb' => [
'class' => '\yii\mongo\Connection', 'class' => '\yii\mongodb\Connection',
'dsn' => 'mongodb://developer:password@localhost:27017/mydatabase', 'dsn' => 'mongodb://developer:password@localhost:27017/mydatabase',
], ],
], ],
...@@ -56,11 +56,11 @@ return [ ...@@ -56,11 +56,11 @@ return [
``` ```
This extension provides ActiveRecord solution similar ot the [[\yii\db\ActiveRecord]]. This extension provides ActiveRecord solution similar ot the [[\yii\db\ActiveRecord]].
To declare an ActiveRecord class you need to extend [[\yii\mongo\ActiveRecord]] and To declare an ActiveRecord class you need to extend [[\yii\mongodb\ActiveRecord]] and
implement the `collectionName` and 'attributes' methods: implement the `collectionName` and 'attributes' methods:
```php ```php
use yii\mongo\ActiveRecord; use yii\mongodb\ActiveRecord;
class Customer extends ActiveRecord class Customer extends ActiveRecord
{ {
...@@ -82,11 +82,11 @@ class Customer extends ActiveRecord ...@@ -82,11 +82,11 @@ class Customer extends ActiveRecord
} }
``` ```
You can use [[\yii\data\ActiveDataProvider]] with the [[\yii\mongo\Query]] and [[\yii\mongo\ActiveQuery]]: You can use [[\yii\data\ActiveDataProvider]] with the [[\yii\mongodb\Query]] and [[\yii\mongodb\ActiveQuery]]:
```php ```php
use yii\data\ActiveDataProvider; use yii\data\ActiveDataProvider;
use yii\mongo\Query; use yii\mongodb\Query;
$query = new Query; $query = new Query;
$query->from('customer')->where(['status' => 2]); $query->from('customer')->where(['status' => 2]);
......
{ {
"name": "yiisoft/yii2-mongo", "name": "yiisoft/yii2-mongodb",
"description": "MongoDb extension for the Yii framework", "description": "MongoDb extension for the Yii framework",
"keywords": ["yii", "mongo", "mongodb", "active-record"], "keywords": ["yii", "mongo", "mongodb", "active-record"],
"type": "yii2-extension", "type": "yii2-extension",
...@@ -17,12 +17,12 @@ ...@@ -17,12 +17,12 @@
"email": "klimov.paul@gmail.com" "email": "klimov.paul@gmail.com"
} }
], ],
"minimum-stability": "dev",
"require": { "require": {
"yiisoft/yii2": "*", "yiisoft/yii2": "*",
"ext-mongo": ">=1.3.0" "ext-mongo": ">=1.3.0"
}, },
"autoload": { "autoload": {
"psr-0": { "yii\\mongo\\": "" } "psr-0": { "yii\\mongodb\\": "" }
} },
"target-dir": "yii/mongodb"
} }
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
* @license http://www.yiiframework.com/license/ * @license http://www.yiiframework.com/license/
*/ */
namespace yii\mongo\file; namespace yii\mongodb\file;
use yii\db\ActiveQueryInterface; use yii\db\ActiveQueryInterface;
use yii\db\ActiveQueryTrait; use yii\db\ActiveQueryTrait;
...@@ -38,7 +38,7 @@ class ActiveQuery extends Query implements ActiveQueryInterface ...@@ -38,7 +38,7 @@ class ActiveQuery extends Query implements ActiveQueryInterface
/** /**
* Executes query and returns all results as an array. * Executes query and returns all results as an array.
* @param \yii\mongo\Connection $db the Mongo connection used to execute the query. * @param \yii\mongodb\Connection $db the Mongo connection used to execute the query.
* If null, the Mongo connection returned by [[modelClass]] will be used. * If null, the Mongo connection returned by [[modelClass]] will be used.
* @return array the query results. If the query results in nothing, an empty array will be returned. * @return array the query results. If the query results in nothing, an empty array will be returned.
*/ */
...@@ -59,7 +59,7 @@ class ActiveQuery extends Query implements ActiveQueryInterface ...@@ -59,7 +59,7 @@ class ActiveQuery extends Query implements ActiveQueryInterface
/** /**
* Executes query and returns a single row of result. * Executes query and returns a single row of result.
* @param \yii\mongo\Connection $db the Mongo connection used to execute the query. * @param \yii\mongodb\Connection $db the Mongo connection used to execute the query.
* If null, the Mongo connection returned by [[modelClass]] will be used. * If null, the Mongo connection returned by [[modelClass]] will be used.
* @return ActiveRecord|array|null a single row of query result. Depending on the setting of [[asArray]], * @return ActiveRecord|array|null a single row of query result. Depending on the setting of [[asArray]],
* the query result may be either an array or an ActiveRecord object. Null will be returned * the query result may be either an array or an ActiveRecord object. Null will be returned
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
* @license http://www.yiiframework.com/license/ * @license http://www.yiiframework.com/license/
*/ */
namespace yii\mongo\file; namespace yii\mongodb\file;
use yii\base\InvalidParamException; use yii\base\InvalidParamException;
use yii\db\StaleObjectException; use yii\db\StaleObjectException;
...@@ -48,7 +48,7 @@ use yii\web\UploadedFile; ...@@ -48,7 +48,7 @@ use yii\web\UploadedFile;
* @author Paul Klimov <klimov.paul@gmail.com> * @author Paul Klimov <klimov.paul@gmail.com>
* @since 2.0 * @since 2.0
*/ */
abstract class ActiveRecord extends \yii\mongo\ActiveRecord abstract class ActiveRecord extends \yii\mongodb\ActiveRecord
{ {
/** /**
* Creates an [[ActiveQuery]] instance. * Creates an [[ActiveQuery]] instance.
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
* @license http://www.yiiframework.com/license/ * @license http://www.yiiframework.com/license/
*/ */
namespace yii\mongo\file; namespace yii\mongodb\file;
use yii\db\ActiveRelationInterface; use yii\db\ActiveRelationInterface;
use yii\db\ActiveRelationTrait; use yii\db\ActiveRelationTrait;
......
...@@ -5,9 +5,9 @@ ...@@ -5,9 +5,9 @@
* @license http://www.yiiframework.com/license/ * @license http://www.yiiframework.com/license/
*/ */
namespace yii\mongo\file; namespace yii\mongodb\file;
use yii\mongo\Exception; use yii\mongodb\Exception;
use Yii; use Yii;
/** /**
...@@ -23,27 +23,27 @@ use Yii; ...@@ -23,27 +23,27 @@ use Yii;
* @author Paul Klimov <klimov.paul@gmail.com> * @author Paul Klimov <klimov.paul@gmail.com>
* @since 2.0 * @since 2.0
*/ */
class Collection extends \yii\mongo\Collection class Collection extends \yii\mongodb\Collection
{ {
/** /**
* @var \MongoGridFS Mongo GridFS collection instance. * @var \MongoGridFS Mongo GridFS collection instance.
*/ */
public $mongoCollection; public $mongoCollection;
/** /**
* @var \yii\mongo\Collection file chunks Mongo collection. * @var \yii\mongodb\Collection file chunks Mongo collection.
*/ */
private $_chunkCollection; private $_chunkCollection;
/** /**
* Returns the Mongo collection for the file chunks. * Returns the Mongo collection for the file chunks.
* @param boolean $refresh whether to reload the collection instance even if it is found in the cache. * @param boolean $refresh whether to reload the collection instance even if it is found in the cache.
* @return \yii\mongo\Collection mongo collection instance. * @return \yii\mongodb\Collection mongo collection instance.
*/ */
public function getChunkCollection($refresh = false) public function getChunkCollection($refresh = false)
{ {
if ($refresh || !is_object($this->_chunkCollection)) { if ($refresh || !is_object($this->_chunkCollection)) {
$this->_chunkCollection = Yii::createObject([ $this->_chunkCollection = Yii::createObject([
'class' => 'yii\mongo\Collection', 'class' => 'yii\mongodb\Collection',
'mongoCollection' => $this->mongoCollection->chunks 'mongoCollection' => $this->mongoCollection->chunks
]); ]);
} }
......
...@@ -5,33 +5,31 @@ ...@@ -5,33 +5,31 @@
* @license http://www.yiiframework.com/license/ * @license http://www.yiiframework.com/license/
*/ */
namespace yii\mongo\file; namespace yii\mongodb\file;
use Yii; use Yii;
use yii\helpers\Json;
use yii\mongo\Exception;
/** /**
* Query represents Mongo "find" operation for GridFS collection. * Query represents Mongo "find" operation for GridFS collection.
* *
* Query behaves exactly as regular [[\yii\mongo\Query]]. * Query behaves exactly as regular [[\yii\mongodb\Query]].
* Found files will be represented as arrays of file document attributes with * Found files will be represented as arrays of file document attributes with
* additional 'file' key, which stores [[\MongoGridFSFile]] instance. * additional 'file' key, which stores [[\MongoGridFSFile]] instance.
* *
* @author Paul Klimov <klimov.paul@gmail.com> * @author Paul Klimov <klimov.paul@gmail.com>
* @since 2.0 * @since 2.0
*/ */
class Query extends \yii\mongo\Query class Query extends \yii\mongodb\Query
{ {
/** /**
* Returns the Mongo collection for this query. * Returns the Mongo collection for this query.
* @param \yii\mongo\Connection $db Mongo connection. * @param \yii\mongodb\Connection $db Mongo connection.
* @return Collection collection instance. * @return Collection collection instance.
*/ */
public function getCollection($db = null) public function getCollection($db = null)
{ {
if ($db === null) { if ($db === null) {
$db = Yii::$app->getComponent('mongo'); $db = Yii::$app->getComponent('mongodb');
} }
return $db->getFileCollection($this->from); return $db->getFileCollection($this->from);
} }
......
<?php <?php
namespace yiiunit\data\ar\mongo; namespace yiiunit\data\ar\mongodb;
/** /**
* Test Mongo ActiveRecord * Test Mongo ActiveRecord
*/ */
class ActiveRecord extends \yii\mongo\ActiveRecord class ActiveRecord extends \yii\mongodb\ActiveRecord
{ {
public static $db; public static $db;
......
<?php <?php
namespace yiiunit\data\ar\mongo; namespace yiiunit\data\ar\mongodb;
class Customer extends ActiveRecord class Customer extends ActiveRecord
{ {
......
<?php <?php
namespace yiiunit\data\ar\mongo; namespace yiiunit\data\ar\mongodb;
class CustomerOrder extends ActiveRecord class CustomerOrder extends ActiveRecord
......
<?php <?php
namespace yiiunit\data\ar\mongo\file; namespace yiiunit\data\ar\mongodb\file;
/** /**
* Test Mongo ActiveRecord * Test Mongo ActiveRecord
*/ */
class ActiveRecord extends \yii\mongo\file\ActiveRecord class ActiveRecord extends \yii\mongodb\file\ActiveRecord
{ {
public static $db; public static $db;
......
<?php <?php
namespace yiiunit\data\ar\mongo\file; namespace yiiunit\data\ar\mongodb\file;
class CustomerFile extends ActiveRecord class CustomerFile extends ActiveRecord
{ {
......
...@@ -52,7 +52,7 @@ return [ ...@@ -52,7 +52,7 @@ return [
'fixture' => __DIR__ . '/sphinx/source.sql', 'fixture' => __DIR__ . '/sphinx/source.sql',
], ],
], ],
'mongo' => [ 'mongodb' => [
'dsn' => 'mongodb://travis:test@localhost:27017', 'dsn' => 'mongodb://travis:test@localhost:27017',
'defaultDatabaseName' => 'yii2test', 'defaultDatabaseName' => 'yii2test',
'options' => [], 'options' => [],
......
<?php <?php
namespace yiiunit\extensions\mongo; namespace yiiunit\extensions\mongodb;
use yii\data\ActiveDataProvider; use yii\data\ActiveDataProvider;
use yii\mongo\Query; use yii\mongodb\Query;
use yiiunit\data\ar\mongo\ActiveRecord; use yiiunit\data\ar\mongodb\ActiveRecord;
use yiiunit\data\ar\mongo\Customer; use yiiunit\data\ar\mongodb\Customer;
/** /**
* @group mongo * @group mongo
*/ */
class ActiveDataProviderTest extends MongoTestCase class ActiveDataProviderTest extends MongoDbTestCase
{ {
protected function setUp() protected function setUp()
{ {
......
<?php <?php
namespace yiiunit\extensions\mongo; namespace yiiunit\extensions\mongodb;
use yii\mongo\ActiveQuery; use yii\mongodb\ActiveQuery;
use yiiunit\data\ar\mongo\ActiveRecord; use yiiunit\data\ar\mongodb\ActiveRecord;
use yiiunit\data\ar\mongo\Customer; use yiiunit\data\ar\mongodb\Customer;
/** /**
* @group mongo * @group mongo
*/ */
class ActiveRecordTest extends MongoTestCase class ActiveRecordTest extends MongoDbTestCase
{ {
/** /**
* @var array[] list of test rows. * @var array[] list of test rows.
......
<?php <?php
namespace yiiunit\extensions\mongo; namespace yiiunit\extensions\mongodb;
use yiiunit\data\ar\mongo\ActiveRecord; use yiiunit\data\ar\mongodb\ActiveRecord;
use yiiunit\data\ar\mongo\Customer; use yiiunit\data\ar\mongodb\Customer;
use yiiunit\data\ar\mongo\CustomerOrder; use yiiunit\data\ar\mongodb\CustomerOrder;
/** /**
* @group mongo * @group mongo
*/ */
class ActiveRelationTest extends MongoTestCase class ActiveRelationTest extends MongoDbTestCase
{ {
protected function setUp() protected function setUp()
{ {
......
<?php <?php
namespace yiiunit\extensions\mongo; namespace yiiunit\extensions\mongodb;
/** /**
* @group mongo * @group mongo
*/ */
class CollectionTest extends MongoTestCase class CollectionTest extends MongoDbTestCase
{ {
protected function tearDown() protected function tearDown()
{ {
...@@ -21,7 +21,7 @@ class CollectionTest extends MongoTestCase ...@@ -21,7 +21,7 @@ class CollectionTest extends MongoTestCase
$collectionName = 'customer'; $collectionName = 'customer';
$collection = $this->getConnection()->getCollection($collectionName); $collection = $this->getConnection()->getCollection($collectionName);
$this->assertEquals($collectionName, $collection->getName()); $this->assertEquals($collectionName, $collection->getName());
$this->assertEquals($this->mongoConfig['defaultDatabaseName'] . '.' . $collectionName, $collection->getFullName()); $this->assertEquals($this->mongoDbConfig['defaultDatabaseName'] . '.' . $collectionName, $collection->getFullName());
} }
public function testFind() public function testFind()
...@@ -264,7 +264,7 @@ class CollectionTest extends MongoTestCase ...@@ -264,7 +264,7 @@ class CollectionTest extends MongoTestCase
$indexInfo = $collection->mongoCollection->getIndexInfo(); $indexInfo = $collection->mongoCollection->getIndexInfo();
$this->assertEquals(1, count($indexInfo)); $this->assertEquals(1, count($indexInfo));
$this->setExpectedException('\yii\mongo\Exception'); $this->setExpectedException('\yii\mongodb\Exception');
$collection->dropIndex('name'); $collection->dropIndex('name');
} }
......
<?php <?php
namespace yiiunit\extensions\mongo; namespace yiiunit\extensions\mongodb;
use yii\mongo\Collection; use yii\mongodb\Collection;
use yii\mongo\file\Collection as FileCollection; use yii\mongodb\file\Collection as FileCollection;
use yii\mongo\Connection; use yii\mongodb\Connection;
use yii\mongo\Database; use yii\mongodb\Database;
/** /**
* @group mongo * @group mongo
*/ */
class ConnectionTest extends MongoTestCase class ConnectionTest extends MongoDbTestCase
{ {
public function testConstruct() public function testConstruct()
{ {
$connection = $this->getConnection(false); $connection = $this->getConnection(false);
$params = $this->mongoConfig; $params = $this->mongoDbConfig;
$connection->open(); $connection->open();
...@@ -41,7 +41,7 @@ class ConnectionTest extends MongoTestCase ...@@ -41,7 +41,7 @@ class ConnectionTest extends MongoTestCase
$connection = new Connection; $connection = new Connection;
$connection->dsn = 'unknown::memory:'; $connection->dsn = 'unknown::memory:';
$this->setExpectedException('yii\mongo\Exception'); $this->setExpectedException('yii\mongodb\Exception');
$connection->open(); $connection->open();
} }
...@@ -66,19 +66,19 @@ class ConnectionTest extends MongoTestCase ...@@ -66,19 +66,19 @@ class ConnectionTest extends MongoTestCase
public function testGetDefaultDatabase() public function testGetDefaultDatabase()
{ {
$connection = new Connection(); $connection = new Connection();
$connection->dsn = $this->mongoConfig['dsn']; $connection->dsn = $this->mongoDbConfig['dsn'];
$connection->defaultDatabaseName = $this->mongoConfig['defaultDatabaseName']; $connection->defaultDatabaseName = $this->mongoDbConfig['defaultDatabaseName'];
$database = $connection->getDatabase(); $database = $connection->getDatabase();
$this->assertTrue($database instanceof Database, 'Unable to get default database!'); $this->assertTrue($database instanceof Database, 'Unable to get default database!');
$connection = new Connection(); $connection = new Connection();
$connection->dsn = $this->mongoConfig['dsn']; $connection->dsn = $this->mongoDbConfig['dsn'];
$connection->options = ['db' => $this->mongoConfig['defaultDatabaseName']]; $connection->options = ['db' => $this->mongoDbConfig['defaultDatabaseName']];
$database = $connection->getDatabase(); $database = $connection->getDatabase();
$this->assertTrue($database instanceof Database, 'Unable to determine default database from options!'); $this->assertTrue($database instanceof Database, 'Unable to determine default database from options!');
$connection = new Connection(); $connection = new Connection();
$connection->dsn = $this->mongoConfig['dsn'] . '/' . $this->mongoConfig['defaultDatabaseName']; $connection->dsn = $this->mongoDbConfig['dsn'] . '/' . $this->mongoDbConfig['defaultDatabaseName'];
$database = $connection->getDatabase(); $database = $connection->getDatabase();
$this->assertTrue($database instanceof Database, 'Unable to determine default database from dsn!'); $this->assertTrue($database instanceof Database, 'Unable to determine default database from dsn!');
} }
......
<?php <?php
namespace yiiunit\extensions\mongo; namespace yiiunit\extensions\mongodb;
use yii\mongo\Collection; use yii\mongodb\Collection;
use yii\mongo\file\Collection as FileCollection; use yii\mongodb\file\Collection as FileCollection;
/** /**
* @group mongo * @group mongo
*/ */
class DatabaseTest extends MongoTestCase class DatabaseTest extends MongoDbTestCase
{ {
protected function tearDown() protected function tearDown()
{ {
......
<?php <?php
namespace yiiunit\extensions\mongo; namespace yiiunit\extensions\mongodb;
use yii\helpers\FileHelper; use yii\helpers\FileHelper;
use yii\mongo\Connection; use yii\mongodb\Connection;
use Yii; use Yii;
use yii\mongo\Exception; use yii\mongodb\Exception;
use yiiunit\TestCase; use yiiunit\TestCase;
class MongoTestCase extends TestCase class MongoDbTestCase extends TestCase
{ {
/** /**
* @var array Mongo connection configuration. * @var array Mongo connection configuration.
*/ */
protected $mongoConfig = [ protected $mongoDbConfig = [
'dsn' => 'mongodb://localhost:27017', 'dsn' => 'mongodb://localhost:27017',
'defaultDatabaseName' => 'yii2test', 'defaultDatabaseName' => 'yii2test',
'options' => [], 'options' => [],
...@@ -21,7 +21,7 @@ class MongoTestCase extends TestCase ...@@ -21,7 +21,7 @@ class MongoTestCase extends TestCase
/** /**
* @var Connection Mongo connection instance. * @var Connection Mongo connection instance.
*/ */
protected $mongo; protected $mongodb;
public static function setUpBeforeClass() public static function setUpBeforeClass()
{ {
...@@ -34,9 +34,9 @@ class MongoTestCase extends TestCase ...@@ -34,9 +34,9 @@ class MongoTestCase extends TestCase
if (!extension_loaded('mongo')) { if (!extension_loaded('mongo')) {
$this->markTestSkipped('mongo extension required.'); $this->markTestSkipped('mongo extension required.');
} }
$config = $this->getParam('mongo'); $config = $this->getParam('mongodb');
if (!empty($config)) { if (!empty($config)) {
$this->mongoConfig = $config; $this->mongoDbConfig = $config;
} }
$this->mockApplication(); $this->mockApplication();
static::loadClassMap(); static::loadClassMap();
...@@ -44,8 +44,8 @@ class MongoTestCase extends TestCase ...@@ -44,8 +44,8 @@ class MongoTestCase extends TestCase
protected function tearDown() protected function tearDown()
{ {
if ($this->mongo) { if ($this->mongodb) {
$this->mongo->close(); $this->mongodb->close();
} }
$this->destroyApplication(); $this->destroyApplication();
} }
...@@ -56,8 +56,8 @@ class MongoTestCase extends TestCase ...@@ -56,8 +56,8 @@ class MongoTestCase extends TestCase
*/ */
protected static function loadClassMap() protected static function loadClassMap()
{ {
$baseNameSpace = 'yii/mongo'; $baseNameSpace = 'yii/mongodb';
$basePath = realpath(__DIR__. '/../../../../extensions/mongo'); $basePath = realpath(__DIR__. '/../../../../extensions/mongodb');
$files = FileHelper::findFiles($basePath); $files = FileHelper::findFiles($basePath);
foreach ($files as $file) { foreach ($files as $file) {
$classRelativePath = str_replace($basePath, '', $file); $classRelativePath = str_replace($basePath, '', $file);
...@@ -69,23 +69,23 @@ class MongoTestCase extends TestCase ...@@ -69,23 +69,23 @@ class MongoTestCase extends TestCase
/** /**
* @param boolean $reset whether to clean up the test database * @param boolean $reset whether to clean up the test database
* @param boolean $open whether to open test database * @param boolean $open whether to open test database
* @return \yii\mongo\Connection * @return \yii\mongodb\Connection
*/ */
public function getConnection($reset = false, $open = true) public function getConnection($reset = false, $open = true)
{ {
if (!$reset && $this->mongo) { if (!$reset && $this->mongodb) {
return $this->mongo; return $this->mongodb;
} }
$db = new Connection; $db = new Connection;
$db->dsn = $this->mongoConfig['dsn']; $db->dsn = $this->mongoDbConfig['dsn'];
$db->defaultDatabaseName = $this->mongoConfig['defaultDatabaseName']; $db->defaultDatabaseName = $this->mongoDbConfig['defaultDatabaseName'];
if (isset($this->mongoConfig['options'])) { if (isset($this->mongoDbConfig['options'])) {
$db->options = $this->mongoConfig['options']; $db->options = $this->mongoDbConfig['options'];
} }
if ($open) { if ($open) {
$db->open(); $db->open();
} }
$this->mongo = $db; $this->mongodb = $db;
return $db; return $db;
} }
...@@ -95,9 +95,9 @@ class MongoTestCase extends TestCase ...@@ -95,9 +95,9 @@ class MongoTestCase extends TestCase
*/ */
protected function dropCollection($name) protected function dropCollection($name)
{ {
if ($this->mongo) { if ($this->mongodb) {
try { try {
$this->mongo->getCollection($name)->drop(); $this->mongodb->getCollection($name)->drop();
} catch (Exception $e) { } catch (Exception $e) {
// shut down exception // shut down exception
} }
...@@ -110,9 +110,9 @@ class MongoTestCase extends TestCase ...@@ -110,9 +110,9 @@ class MongoTestCase extends TestCase
*/ */
protected function dropFileCollection($name = 'fs') protected function dropFileCollection($name = 'fs')
{ {
if ($this->mongo) { if ($this->mongodb) {
try { try {
$this->mongo->getFileCollection($name)->drop(); $this->mongodb->getFileCollection($name)->drop();
} catch (Exception $e) { } catch (Exception $e) {
// shut down exception // shut down exception
} }
...@@ -121,7 +121,7 @@ class MongoTestCase extends TestCase ...@@ -121,7 +121,7 @@ class MongoTestCase extends TestCase
/** /**
* Finds all records in collection. * Finds all records in collection.
* @param \yii\mongo\Collection $collection * @param \yii\mongodb\Collection $collection
* @param array $condition * @param array $condition
* @param array $fields * @param array $fields
* @return array rows * @return array rows
......
<?php <?php
namespace yiiunit\extensions\mongo; namespace yiiunit\extensions\mongodb;
use yii\mongo\Query; use yii\mongodb\Query;
/** /**
* @group mongo * @group mongo
*/ */
class QueryRunTest extends MongoTestCase class QueryRunTest extends MongoDbTestCase
{ {
protected function setUp() protected function setUp()
{ {
......
<?php <?php
namespace yiiunit\extensions\mongo; namespace yiiunit\extensions\mongodb;
use yii\mongo\Query; use yii\mongodb\Query;
/** /**
* @group mongo * @group mongo
*/ */
class QueryTest extends MongoTestCase class QueryTest extends MongoDbTestCase
{ {
public function testSelect() public function testSelect()
{ {
......
<?php <?php
namespace yiiunit\extensions\mongo\file; namespace yiiunit\extensions\mongodb\file;
use Yii; use Yii;
use yii\helpers\FileHelper; use yii\helpers\FileHelper;
use yiiunit\extensions\mongo\MongoTestCase; use yiiunit\extensions\mongodb\MongoDbTestCase;
use yii\mongo\file\ActiveQuery; use yii\mongodb\file\ActiveQuery;
use yiiunit\data\ar\mongo\file\ActiveRecord; use yiiunit\data\ar\mongodb\file\ActiveRecord;
use yiiunit\data\ar\mongo\file\CustomerFile; use yiiunit\data\ar\mongodb\file\CustomerFile;
/** /**
* @group mongo * @group mongo
*/ */
class ActiveRecordTest extends MongoTestCase class ActiveRecordTest extends MongoDbTestCase
{ {
/** /**
* @var array[] list of test rows. * @var array[] list of test rows.
......
<?php <?php
namespace yiiunit\extensions\mongo\file; namespace yiiunit\extensions\mongodb\file;
use yiiunit\extensions\mongo\MongoTestCase; use yiiunit\extensions\mongodb\MongoDbTestCase;
/** /**
* @group mongo * @group mongo
*/ */
class CollectionTest extends MongoTestCase class CollectionTest extends MongoDbTestCase
{ {
protected function tearDown() protected function tearDown()
{ {
...@@ -21,7 +21,7 @@ class CollectionTest extends MongoTestCase ...@@ -21,7 +21,7 @@ class CollectionTest extends MongoTestCase
{ {
$collection = $this->getConnection()->getFileCollection(); $collection = $this->getConnection()->getFileCollection();
$chunkCollection = $collection->getChunkCollection(); $chunkCollection = $collection->getChunkCollection();
$this->assertTrue($chunkCollection instanceof \yii\mongo\Collection); $this->assertTrue($chunkCollection instanceof \yii\mongodb\Collection);
$this->assertTrue($chunkCollection->mongoCollection instanceof \MongoCollection); $this->assertTrue($chunkCollection->mongoCollection instanceof \MongoCollection);
} }
......
<?php <?php
namespace yiiunit\extensions\mongo\file; namespace yiiunit\extensions\mongodb\file;
use yii\mongo\file\Query; use yii\mongodb\file\Query;
use yiiunit\extensions\mongo\MongoTestCase; use yiiunit\extensions\mongodb\MongoDbTestCase;
/** /**
* @group mongo * @group mongo
*/ */
class QueryTest extends MongoTestCase class QueryTest extends MongoDbTestCase
{ {
protected function setUp() protected function setUp()
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment