public function storeDoc($databaseName, $doc) { if (!$doc instanceof Document && !$doc instanceof \stdClass && !is_array($doc)) { throw new InvalidArgumentException("doc is not a instance of (Document or stdClass or Array)"); } if (!$doc instanceof Document) { $doc = new Document($doc, $this, $databaseName); } $uriOptions = array('database' => $databaseName, 'docId' => $doc->get('_id'), 'parameters' => $this->getRequestParameters()); $uri = $this->buildUri($uriOptions); $request = $this->getRequest(); $request->setUri($uri); $request->setMethod($doc->has('_id') ? $request::METHOD_PUT : $request::METHOD_POST); $request->setContent($doc->toJson()); $response = $this->sendRequest(); if (isset($response->error)) { throw $this->createExceptionInstance($response, $uriOptions, array('uri' => $uri, 'methode' => $request->getMethod(), 'content' => $request->getContent())); } return $response; }