|
@@ 297-304 (lines=8) @@
|
| 294 |
|
* @param string $documentName |
| 295 |
|
* @throws \InvalidArgumentException |
| 296 |
|
*/ |
| 297 |
|
public function deleteDocumentIndexes($documentName) |
| 298 |
|
{ |
| 299 |
|
$class = $this->dm->getClassMetadata($documentName); |
| 300 |
|
if ($class->isMappedSuperclass || $class->isEmbeddedDocument || $class->isQueryResultDocument) { |
| 301 |
|
throw new \InvalidArgumentException('Cannot delete document indexes for mapped super classes, embedded documents or query result documents.'); |
| 302 |
|
} |
| 303 |
|
$this->dm->getDocumentCollection($documentName)->deleteIndexes(); |
| 304 |
|
} |
| 305 |
|
|
| 306 |
|
/** |
| 307 |
|
* Create all the mapped document collections in the metadata factory. |
|
@@ 367-374 (lines=8) @@
|
| 364 |
|
* @param string $documentName |
| 365 |
|
* @throws \InvalidArgumentException |
| 366 |
|
*/ |
| 367 |
|
public function dropDocumentCollection($documentName) |
| 368 |
|
{ |
| 369 |
|
$class = $this->dm->getClassMetadata($documentName); |
| 370 |
|
if ($class->isMappedSuperclass || $class->isEmbeddedDocument || $class->isQueryResultDocument) { |
| 371 |
|
throw new \InvalidArgumentException('Cannot delete document indexes for mapped super classes, embedded documents or query result documents.'); |
| 372 |
|
} |
| 373 |
|
$this->dm->getDocumentCollection($documentName)->drop(); |
| 374 |
|
} |
| 375 |
|
|
| 376 |
|
/** |
| 377 |
|
* Drop all the mapped document databases in the metadata factory. |
|
@@ 395-402 (lines=8) @@
|
| 392 |
|
* @param string $documentName |
| 393 |
|
* @throws \InvalidArgumentException |
| 394 |
|
*/ |
| 395 |
|
public function dropDocumentDatabase($documentName) |
| 396 |
|
{ |
| 397 |
|
$class = $this->dm->getClassMetadata($documentName); |
| 398 |
|
if ($class->isMappedSuperclass || $class->isEmbeddedDocument || $class->isQueryResultDocument) { |
| 399 |
|
throw new \InvalidArgumentException('Cannot drop document database for mapped super classes, embedded documents or query result documents.'); |
| 400 |
|
} |
| 401 |
|
$this->dm->getDocumentDatabase($documentName)->drop(); |
| 402 |
|
} |
| 403 |
|
|
| 404 |
|
/** |
| 405 |
|
* Create all the mapped document databases in the metadata factory. |
|
@@ 427-434 (lines=8) @@
|
| 424 |
|
* |
| 425 |
|
* @deprecated A database is created automatically by MongoDB (>= 3.0). Deprecated since ODM 1.2, to be removed in ODM 2.0. |
| 426 |
|
*/ |
| 427 |
|
public function createDocumentDatabase($documentName) |
| 428 |
|
{ |
| 429 |
|
$class = $this->dm->getClassMetadata($documentName); |
| 430 |
|
if ($class->isMappedSuperclass || $class->isEmbeddedDocument || $class->isQueryResultDocument) { |
| 431 |
|
throw new \InvalidArgumentException('Cannot create databases for mapped super classes, embedded documents or query result documents.'); |
| 432 |
|
} |
| 433 |
|
|
| 434 |
|
$this->dm->getDocumentDatabase($documentName)->execute('function() { return true; }'); |
| 435 |
|
} |
| 436 |
|
|
| 437 |
|
/** |