| @@ 23-97 (lines=75) @@ | ||
| 20 | * | |
| 21 | * @author VEBER Arnaud <https://github.com/VEBERArnaud> | |
| 22 | */ | |
| 23 | class ApiNode extends AbstractNode | |
| 24 | { | |
| 25 | /** | |
| 26 | * add api | |
| 27 | * | |
| 28 | * @param \Unikorp\KongAdminApi\Document\ApiDocument $document | |
| 29 | * | |
| 30 | * @return \Psr\Http\Message\ResponseInterface | |
| 31 | */ | |
| 32 | public function addApi(Document $document): ResponseInterface | |
| 33 |     { | |
| 34 |         return $this->post('/apis/', $document); | |
| 35 | } | |
| 36 | ||
| 37 | /** | |
| 38 | * retrieve api | |
| 39 | * | |
| 40 | * @param string $nameOrId | |
| 41 | * | |
| 42 | * @return \Psr\Http\Message\ResponseInterface | |
| 43 | */ | |
| 44 | public function retrieveApi(string $nameOrId): ResponseInterface | |
| 45 |     { | |
| 46 |         return $this->get(sprintf('/apis/%1$s', $nameOrId)); | |
| 47 | } | |
| 48 | ||
| 49 | /** | |
| 50 | * list apis | |
| 51 | * | |
| 52 | * @param \Unikorp\KongAdminApi\Document\ApiDocument $document | |
| 53 | * | |
| 54 | * @return \Psr\Http\Message\ResponseInterface | |
| 55 | */ | |
| 56 | public function listApis(Document $document = null): ResponseInterface | |
| 57 |     { | |
| 58 |         return $this->get('/apis/', $document); | |
| 59 | } | |
| 60 | ||
| 61 | /** | |
| 62 | * update api | |
| 63 | * | |
| 64 | * @param string $nameOrId | |
| 65 | * @param \Unikorp\KongAdminApi\Document\ApiDocument $document | |
| 66 | * | |
| 67 | * @return \Psr\Http\Message\ResponseInterface | |
| 68 | */ | |
| 69 | public function updateApi(string $nameOrId, Document $document): ResponseInterface | |
| 70 |     { | |
| 71 |         return $this->patch(sprintf('/apis/%1$s', $nameOrId), $document); | |
| 72 | } | |
| 73 | ||
| 74 | /** | |
| 75 | * update or create api | |
| 76 | * | |
| 77 | * @param \Unikorp\KongAdminApi\Document\ApiDocument $document | |
| 78 | * | |
| 79 | * @return \Psr\Http\Message\ResponseInterface | |
| 80 | */ | |
| 81 | public function updateOrCreateApi(Document $document): ResponseInterface | |
| 82 |     { | |
| 83 |         return $this->put('/apis/', $document); | |
| 84 | } | |
| 85 | ||
| 86 | /** | |
| 87 | * delete api | |
| 88 | * | |
| 89 | * @param string $nameOrId | |
| 90 | * | |
| 91 | * @return \Psr\Http\Message\ResponseInterface | |
| 92 | */ | |
| 93 | public function deleteApi(string $nameOrId): ResponseInterface | |
| 94 |     { | |
| 95 |         return $this->delete(sprintf('/apis/%1$s', $nameOrId)); | |
| 96 | } | |
| 97 | } | |
| 98 | ||
| @@ 23-95 (lines=73) @@ | ||
| 20 | * | |
| 21 | * @author VEBER Arnaud <https://github.com/VEBERArnaud> | |
| 22 | */ | |
| 23 | class CertificateNode extends AbstractNode | |
| 24 | { | |
| 25 | /** | |
| 26 | * add certificate | |
| 27 | * | |
| 28 | * @param \Unikorp\KongAdminApi\Document\CertificateDocument $document | |
| 29 | * | |
| 30 | * @return \Psr\Http\Message\ResponseInterface | |
| 31 | */ | |
| 32 | public function addCertificate(Document $document): ResponseInterface | |
| 33 |     { | |
| 34 |         return $this->post('/certificates/', $document); | |
| 35 | } | |
| 36 | ||
| 37 | /** | |
| 38 | * retrieve certificate | |
| 39 | * | |
| 40 | * @param string $sniOrId | |
| 41 | * | |
| 42 | * @return \Psr\Http\Message\ResponseInterface | |
| 43 | */ | |
| 44 | public function retrieveCertificate(string $sniOrId): ResponseInterface | |
| 45 |     { | |
| 46 |         return $this->get(sprintf('/certificates/%1$s', $sniOrId)); | |
| 47 | } | |
| 48 | ||
| 49 | /** | |
| 50 | * list certificates | |
| 51 | * | |
| 52 | * @return \Psr\Http\Message\ResponseInterface | |
| 53 | */ | |
| 54 | public function listCertificates(): ResponseInterface | |
| 55 |     { | |
| 56 |         return $this->get('/certificates/'); | |
| 57 | } | |
| 58 | ||
| 59 | /** | |
| 60 | * update certificate | |
| 61 | * | |
| 62 | * @param string $sniOrId | |
| 63 | * @param \Unikorp\KongAdminApi\Document\CertificateDocument $document | |
| 64 | * | |
| 65 | * @return \Psr\Http\Message\ResponseInterface | |
| 66 | */ | |
| 67 | public function updateCertificate(string $sniOrId, Document $document): ResponseInterface | |
| 68 |     { | |
| 69 |         return $this->patch(sprintf('/certificates/%1$s', $sniOrId), $document); | |
| 70 | } | |
| 71 | ||
| 72 | /** | |
| 73 | * update or create certificate | |
| 74 | * | |
| 75 | * @param \Unikorp\KongAdminApi\Document\CertificateDocument $document | |
| 76 | * | |
| 77 | * @return \Psr\Http\Message\ResponseInterface | |
| 78 | */ | |
| 79 | public function updateOrCreateCertificate(Document $document): ResponseInterface | |
| 80 |     { | |
| 81 |         return $this->put('/certificates/', $document); | |
| 82 | } | |
| 83 | ||
| 84 | /** | |
| 85 | * delete certificate | |
| 86 | * | |
| 87 | * @param string $sniOrId | |
| 88 | * | |
| 89 | * @return \Psr\Http\Message\ResponseInterface | |
| 90 | */ | |
| 91 | public function deleteCertificate(string $sniOrId): ResponseInterface | |
| 92 |     { | |
| 93 |         return $this->delete(sprintf('/certificates/%1$s', $sniOrId)); | |
| 94 | } | |
| 95 | } | |
| 96 | ||
| @@ 23-97 (lines=75) @@ | ||
| 20 | * | |
| 21 | * @author VEBER Arnaud <https://github.com/VEBERArnaud> | |
| 22 | */ | |
| 23 | class ConsumerNode extends AbstractNode | |
| 24 | { | |
| 25 | /** | |
| 26 | * create consumer | |
| 27 | * | |
| 28 | * @param \Unikorp\KongAdminApi\Document\ConsumerDocument $document | |
| 29 | * | |
| 30 | * @return \Psr\Http\Message\ResponseInterface | |
| 31 | */ | |
| 32 | public function createConsumer(Document $document): ResponseInterface | |
| 33 |     { | |
| 34 |         return $this->post('/consumers/', $document); | |
| 35 | } | |
| 36 | ||
| 37 | /** | |
| 38 | * retrieve consumer | |
| 39 | * | |
| 40 | * @param string $usernameOrId | |
| 41 | * | |
| 42 | * @return \Psr\Http\Message\ResponseInterface | |
| 43 | */ | |
| 44 | public function retrieveConsumer(string $usernameOrId): ResponseInterface | |
| 45 |     { | |
| 46 |         return $this->get(sprintf('/consumers/%1$s', $usernameOrId)); | |
| 47 | } | |
| 48 | ||
| 49 | /** | |
| 50 | * list consumers | |
| 51 | * | |
| 52 | * @param \Unikorp\KongAdminApi\Document\ConsumerDocument $document | |
| 53 | * | |
| 54 | * @return \Psr\Http\Message\ResponseInterface | |
| 55 | */ | |
| 56 | public function listConsumers(Document $document = null): ResponseInterface | |
| 57 |     { | |
| 58 |         return $this->get('/consumers/', $document); | |
| 59 | } | |
| 60 | ||
| 61 | /** | |
| 62 | * update consumer | |
| 63 | * | |
| 64 | * @param string $usernameOrId | |
| 65 | * @param \Unikorp\KongAdminApi\Document\ConsumerDocument $document | |
| 66 | * | |
| 67 | * @return \Psr\Http\Message\ResponseInterface | |
| 68 | */ | |
| 69 | public function updateConsumer(string $usernameOrId, Document $document): ResponseInterface | |
| 70 |     { | |
| 71 |         return $this->patch(sprintf('/consumers/%1$s', $usernameOrId), $document); | |
| 72 | } | |
| 73 | ||
| 74 | /** | |
| 75 | * update or create consumer | |
| 76 | * | |
| 77 | * @param \Unikorp\KongAdminApi\Document\ConsumerDocument $document | |
| 78 | * | |
| 79 | * @return \Psr\Http\Message\ResponseInterface | |
| 80 | */ | |
| 81 | public function updateOrCreateConsumer(Document $document): ResponseInterface | |
| 82 |     { | |
| 83 |         return $this->put('/consumers/', $document); | |
| 84 | } | |
| 85 | ||
| 86 | /** | |
| 87 | * delete consumer | |
| 88 | * | |
| 89 | * @param string $usernameOrId | |
| 90 | * | |
| 91 | * @return \Psr\Http\Message\ResponseInterface | |
| 92 | */ | |
| 93 | public function deleteConsumer(string $usernameOrId): ResponseInterface | |
| 94 |     { | |
| 95 |         return $this->delete(sprintf('/consumers/%1$s', $usernameOrId)); | |
| 96 | } | |
| 97 | } | |
| 98 | ||
| @@ 23-95 (lines=73) @@ | ||
| 20 | * | |
| 21 | * @author VEBER Arnaud <https://github.com/VEBERArnaud> | |
| 22 | */ | |
| 23 | class SniNode extends AbstractNode | |
| 24 | { | |
| 25 | /** | |
| 26 | * add sni | |
| 27 | * | |
| 28 | * @param \Unikorp\KongAdminApi\Document\SniDocument $document | |
| 29 | * | |
| 30 | * @return \Psr\Http\Message\ResponseInterface | |
| 31 | */ | |
| 32 | public function addSni(Document $document): ResponseInterface | |
| 33 |     { | |
| 34 |         return $this->post('/snis/', $document); | |
| 35 | } | |
| 36 | ||
| 37 | /** | |
| 38 | * retrieve sni | |
| 39 | * | |
| 40 | * @param string $name | |
| 41 | * | |
| 42 | * @return \Psr\Http\Message\ResponseInterface | |
| 43 | */ | |
| 44 | public function retrieveSni(string $name): ResponseInterface | |
| 45 |     { | |
| 46 |         return $this->get(sprintf('/snis/%1$s', $name)); | |
| 47 | } | |
| 48 | ||
| 49 | /** | |
| 50 | * list snis | |
| 51 | * | |
| 52 | * @return \Psr\Http\Message\ResponseInterface | |
| 53 | */ | |
| 54 | public function listSnis(): ResponseInterface | |
| 55 |     { | |
| 56 |         return $this->get('/snis/'); | |
| 57 | } | |
| 58 | ||
| 59 | /** | |
| 60 | * update sni | |
| 61 | * | |
| 62 | * @param string $name | |
| 63 | * @param \Unikorp\KongAdminApi\Document\SniDocument $document | |
| 64 | * | |
| 65 | * @return \Psr\Http\Message\ResponseInterface | |
| 66 | */ | |
| 67 | public function updateSni(string $name, Document $document): ResponseInterface | |
| 68 |     { | |
| 69 |         return $this->patch(sprintf('/snis/%1$s', $name), $document); | |
| 70 | } | |
| 71 | ||
| 72 | /** | |
| 73 | * update or create sni | |
| 74 | * | |
| 75 | * @param \Unikorp\KongAdminApi\Document\SniDocument $document | |
| 76 | * | |
| 77 | * @return \Psr\Http\Message\ResponseInterface | |
| 78 | */ | |
| 79 | public function updateOrCreateSni(Document $document): ResponseInterface | |
| 80 |     { | |
| 81 |         return $this->put('/snis/', $document); | |
| 82 | } | |
| 83 | ||
| 84 | /** | |
| 85 | * delete sni | |
| 86 | * | |
| 87 | * @param string $name | |
| 88 | * | |
| 89 | * @return \Psr\Http\Message\ResponseInterface | |
| 90 | */ | |
| 91 | public function deleteSni(string $name): ResponseInterface | |
| 92 |     { | |
| 93 |         return $this->delete(sprintf('/snis/%1$s', $name)); | |
| 94 | } | |
| 95 | } | |
| 96 | ||
| @@ 23-97 (lines=75) @@ | ||
| 20 | * | |
| 21 | * @author VEBER Arnaud <https://github.com/VEBERArnaud> | |
| 22 | */ | |
| 23 | class UpstreamNode extends AbstractNode | |
| 24 | { | |
| 25 | /** | |
| 26 | * add upstream | |
| 27 | * | |
| 28 | * @param \Unikorp\KongAdminApi\Document\UpstreamDocument $document | |
| 29 | * | |
| 30 | * @return \Psr\Http\Message\ResponseInterface | |
| 31 | */ | |
| 32 | public function addUpstream(Document $document): ResponseInterface | |
| 33 |     { | |
| 34 |         return $this->post('/upstreams/', $document); | |
| 35 | } | |
| 36 | ||
| 37 | /** | |
| 38 | * retrieve upstream | |
| 39 | * | |
| 40 | * @param string $nameOrId | |
| 41 | * | |
| 42 | * @return \Psr\Http\Message\ResponseInterface | |
| 43 | */ | |
| 44 | public function retrieveUpstream(string $nameOrId): ResponseInterface | |
| 45 |     { | |
| 46 |         return $this->get(sprintf('/upstreams/%1$s', $nameOrId)); | |
| 47 | } | |
| 48 | ||
| 49 | /** | |
| 50 | * list upstreams | |
| 51 | * | |
| 52 | * @param \Unikorp\KongAdminApi\Document\UpstreamDocument $document | |
| 53 | * | |
| 54 | * @return \Psr\Http\Message\ResponseInterface | |
| 55 | */ | |
| 56 | public function listUpstreams(Document $document = null): ResponseInterface | |
| 57 |     { | |
| 58 |         return $this->get('/upstreams/', $document); | |
| 59 | } | |
| 60 | ||
| 61 | /** | |
| 62 | * update upstream | |
| 63 | * | |
| 64 | * @param string $nameOrId | |
| 65 | * @param \Unikorp\KongAdminApi\Document\UpstreamDocument $document | |
| 66 | * | |
| 67 | * @return \Psr\Http\Message\ResponseInterface | |
| 68 | */ | |
| 69 | public function updateUpstream(string $nameOrId, Document $document): ResponseInterface | |
| 70 |     { | |
| 71 |         return $this->patch(sprintf('/upstreams/%1$s', $nameOrId), $document); | |
| 72 | } | |
| 73 | ||
| 74 | /** | |
| 75 | * update or create upstream | |
| 76 | * | |
| 77 | * @param \Unikorp\KongAdminApi\Document\UpstreamDocument $document | |
| 78 | * | |
| 79 | * @return \Psr\Http\Message\ResponseInterface | |
| 80 | */ | |
| 81 | public function updateOrCreateUpstream(Document $document): ResponseInterface | |
| 82 |     { | |
| 83 |         return $this->put('/upstreams/', $document); | |
| 84 | } | |
| 85 | ||
| 86 | /** | |
| 87 | * delete upstream | |
| 88 | * | |
| 89 | * @param string $nameOrId | |
| 90 | * | |
| 91 | * @return \Psr\Http\Message\ResponseInterface | |
| 92 | */ | |
| 93 | public function deleteUpstream(string $nameOrId): ResponseInterface | |
| 94 |     { | |
| 95 |         return $this->delete(sprintf('/upstreams/%1$s', $nameOrId)); | |
| 96 | } | |
| 97 | } | |
| 98 | ||