Skip to content

Commit

Permalink
Lotus: include key
Browse files Browse the repository at this point in the history
  • Loading branch information
mabar authored and f3l1x committed Apr 30, 2020
1 parent 1dca78d commit 10c4564
Show file tree
Hide file tree
Showing 5 changed files with 55 additions and 13 deletions.
2 changes: 1 addition & 1 deletion composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
},
{
"name": "Marek Bartoš",
"homepage": "https://marek-bartos.cz"
"homepage": "https://github.com/mabar"
},
{
"name": "Tomáš Sedláček"
Expand Down
6 changes: 5 additions & 1 deletion src/App/Lotus/Client/PlanClient.php
Original file line number Diff line number Diff line change
Expand Up @@ -38,11 +38,15 @@ public function deleteOne(int $id): ResponseInterface
return $this->request('DELETE', sprintf('%s/%s', self::PATH, $id));
}

public function findMultiple(int $limit = 10, int $offset = 0): ResponseInterface
/**
* @param string[] $include
*/
public function findMultiple(int $limit = 10, int $offset = 0, array $include = []): ResponseInterface
{
$query = Helpers::buildQuery([
'limit' => $limit > 0 ? $limit : 10,
'offset' => $offset >= 0 ? $offset : 0,
'include' => implode(',', $include),
]);
return $this->request('GET', sprintf('%s?%s', self::PATH, $query));
}
Expand Down
43 changes: 35 additions & 8 deletions src/App/Lotus/Client/ProcessClient.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,15 @@ class ProcessClient extends AbstractLotusClient
private const PATH_PROCESS = 'processes';
private const PATH_TEMPLATE = 'template-processes';

public function listProcesses(int $limit = 10, int $offset = 0, ?ProcessListFilter $filter = NULL): ResponseInterface
/**
* @param string[] $include
*/
public function listProcesses(int $limit = 10, int $offset = 0, ?ProcessListFilter $filter = NULL, array $include = []): ResponseInterface
{
$parameters = [
'limit' => $limit > 0 ? $limit : 10,
'offset' => $offset >= 0 ? $offset : 0,
'include' => implode(',', $include),
];

if ($filter !== NULL) {
Expand Down Expand Up @@ -45,9 +49,16 @@ public function listProcesses(int $limit = 10, int $offset = 0, ?ProcessListFilt
return $this->request('GET', sprintf('%s?%s', self::PATH_PROCESS, Helpers::buildQuery($parameters)));
}

public function getProcess(int $id): ResponseInterface
/**
* @param string[] $include
*/
public function getProcess(int $id, array $include = []): ResponseInterface
{
return $this->request('GET', sprintf('%s/%d', self::PATH_PROCESS, $id));
$query = Helpers::buildQuery([
'include' => implode(',', $include),
]);

return $this->request('GET', sprintf('%s/%d?%s', self::PATH_PROCESS, $id, $query));
}

public function addTag(int $pid, int $ttid): ResponseInterface
Expand Down Expand Up @@ -97,12 +108,17 @@ public function uploadFile(

/**
* @param mixed[] $data
* @param string[] $include
*/
public function startProcess(int $tid, array $data = []): ResponseInterface
public function startProcess(int $tid, array $data = [], array $include = []): ResponseInterface
{
$query = Helpers::buildQuery([
'include' => implode(',', $include),
]);

return $this->request(
'POST',
sprintf('%s/%s/start-process', self::PATH_TEMPLATE, $tid),
sprintf('%s/%s/start-process?%s', self::PATH_TEMPLATE, $tid, $query),
[
'body' => Json::encode($data),
'headers' => [
Expand All @@ -112,19 +128,30 @@ public function startProcess(int $tid, array $data = []): ResponseInterface
);
}

public function listTemplates(int $limit = 10, int $offset = 0, bool $startableOnly = FALSE): ResponseInterface
/**
* @param string[] $include
*/
public function listTemplates(int $limit = 10, int $offset = 0, bool $startableOnly = FALSE, array $include = []): ResponseInterface
{
$query = Helpers::buildQuery([
'limit' => $limit > 0 ? $limit : 10,
'offset' => $offset >= 0 ? $offset : 0,
'startableOnly' => $startableOnly ? 'true' : 'false',
'include' => implode(',', $include),
]);
return $this->request('GET', sprintf('%s?%s', self::PATH_TEMPLATE, $query));
}

public function getTemplate(int $id): ResponseInterface
/**
* @param string[] $include
*/
public function getTemplate(int $id, array $include = []): ResponseInterface
{
return $this->request('GET', sprintf('%s/%d', self::PATH_TEMPLATE, $id));
$query = Helpers::buildQuery([
'include' => implode(',', $include),
]);

return $this->request('GET', sprintf('%s/%d?%s', self::PATH_TEMPLATE, $id, $query));
}

public function createTemplate(string $template): ResponseInterface
Expand Down
6 changes: 5 additions & 1 deletion src/App/Lotus/Client/SnippetClient.php
Original file line number Diff line number Diff line change
Expand Up @@ -34,11 +34,15 @@ public function deleteSnippet(int $id): ResponseInterface
return $this->request('DELETE', sprintf('%s/%s', self::PATH, $id));
}

public function listSnippets(int $limit = 10, int $offset = 0): ResponseInterface
/**
* @param string[] $include
*/
public function listSnippets(int $limit = 10, int $offset = 0, array $include = []): ResponseInterface
{
$query = Helpers::buildQuery([
'limit' => $limit > 0 ? $limit : 10,
'offset' => $offset >= 0 ? $offset : 0,
'include' => implode(',', $include),
]);
return $this->request('GET', sprintf('%s?%s', self::PATH, $query));
}
Expand Down
11 changes: 9 additions & 2 deletions src/App/Lotus/Client/UserGroupClient.php
Original file line number Diff line number Diff line change
Expand Up @@ -38,9 +38,16 @@ public function appendUsers(string $id, array $userIds, bool $includeSystemUsers
);
}

public function findOne(int $id): ResponseInterface
/**
* @param string[] $include
*/
public function findOne(int $id, array $include = []): ResponseInterface
{
return $this->request('GET', sprintf('%s/%d', self::PATH, $id));
$query = Helpers::buildQuery([
'include' => implode(',', $include),
]);

return $this->request('GET', sprintf('%s/%d?%s', self::PATH, $id, $query));
}

public function createOne(UserGroupCreateEntity $entity): ResponseInterface
Expand Down

0 comments on commit 10c4564

Please sign in to comment.