/** * @covers WindowsAzure\Common\Internal\Http\BatchRequest::getHeaders */ public function testGetHeaders() { // Setup $batchReq = new BatchRequest(); $context = new HttpCallContext(); $body = 'test body'; $uri = 'http://www.someurl.com'; $context->setBody($body); $context->setUri($uri); // Test $batchReq->appendContext($context); $batchReq->encode(); $resultHeader = $batchReq->getHeaders(); // Assert $this->assertEquals(1, count($resultHeader)); $this->assertContains('multipart/mixed', $resultHeader['Content-Type']); }
/** * Create task template HTTP call context * * @param WindowsAzure\MediaServices\Models\TaskTemplate $taskTemplate Task * template object to be created * * @return WindowsAzure\Common\Internal\Http\HttpCallContext */ private function _getCreateTaskTemplateContext($taskTemplate) { Validate::isA($taskTemplate, 'WindowsAzure\\MediaServices\\Models\\TaskTemplate', 'taskTemplate'); $result = new HttpCallContext(); $result->setMethod(Resources::HTTP_POST); $result->setHeaders($this->_batchHeaders); $result->setUri($this->getUri()); $result->setPath('/$1/TaskTemplates'); $result->setBody($this->wrapAtomEntry($taskTemplate)); $result->addStatusCode(Resources::STATUS_CREATED); return $result; }
/** * Sends HTTP request with the specified HTTP call context. * * @param WindowsAzure\Common\Internal\Http\HttpCallContext $context The HTTP * call context. * * @return \HTTP_Request2_Response */ protected function sendContext($context) { $context->setUri($this->getUri()); return parent::sendContext($context); }
/** * Constructs HTTP call context for insertEntity API. * * @param string $table The name of the table. * @param Models\Entity $entity The table entity. * @param Models\TableServiceOptions $options The optional parameters. * * @return HttpCallContext */ private function _constructInsertEntityContext($table, $entity, $options) { Validate::isString($table, 'table'); Validate::notNullOrEmpty($table, 'table'); Validate::notNullOrEmpty($entity, 'entity'); Validate::isTrue($entity->isValid($msg), $msg); $method = Resources::HTTP_POST; $context = new HttpCallContext(); $headers = array(); $queryParams = array(); $statusCode = Resources::STATUS_CREATED; $path = $table; $body = $this->_atomSerializer->getEntity($entity); if (is_null($options)) { $options = new TableServiceOptions(); } $this->addOptionalQueryParam($queryParams, Resources::QP_TIMEOUT, $options->getTimeout()); $this->addOptionalHeader($headers, Resources::CONTENT_TYPE, Resources::XML_ATOM_CONTENT_TYPE); $context->setBody($body); $context->setHeaders($headers); $context->setMethod($method); $context->setPath($path); $context->setQueryParameters($queryParams); $context->addStatusCode($statusCode); $context->setUri($this->getUri()); return $context; }