Skip to content

Commit fc39ebb

Browse files
committed
Added job domain
1 parent 3086079 commit fc39ebb

File tree

3 files changed

+85
-0
lines changed

3 files changed

+85
-0
lines changed

src/AiaConnector.php

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
use IntelligentsDev\AiaConnector\Requests\TextToSpeech\Voices\SynthesizeRequest;
2222
use IntelligentsDev\AiaConnector\Resources\ConversationResource;
2323
use IntelligentsDev\AiaConnector\Resources\ImageResource;
24+
use IntelligentsDev\AiaConnector\Resources\JobResource;
2425
use IntelligentsDev\AiaConnector\Resources\LanguageModelResource;
2526
use IntelligentsDev\AiaConnector\Resources\TextToSpeechResource;
2627
use Saloon\Http\Auth\TokenAuthenticator;
@@ -107,6 +108,14 @@ protected function getPageItems(Response $response, Request $request): array
107108
};
108109
}
109110

111+
/**
112+
* @return JobResource
113+
*/
114+
public function jobs(): JobResource
115+
{
116+
return new JobResource($this);
117+
}
118+
110119
/**
111120
* @return ConversationResource
112121
*/

src/Requests/Jobs/GetJobsRequest.php

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
<?php
2+
3+
namespace IntelligentsDev\AiaConnector\Requests\Jobs;
4+
5+
use Saloon\Contracts\Body\HasBody;
6+
use Saloon\Enums\Method;
7+
use Saloon\Http\Request;
8+
use Saloon\Traits\Body\HasJsonBody;
9+
10+
class GetJobsRequest extends Request implements HasBody
11+
{
12+
use HasJsonBody;
13+
/**
14+
* The method to send the request with.
15+
*
16+
* @var Method
17+
*/
18+
protected Method $method = Method::GET;
19+
20+
public function __construct(
21+
protected array $queueableIds = [],
22+
) {}
23+
24+
/**
25+
* The endpoint to send the request to.
26+
*
27+
* @return string
28+
*/
29+
public function resolveEndpoint(): string
30+
{
31+
return '/job';
32+
}
33+
34+
/**
35+
* The default body for the request.
36+
*
37+
* @return array
38+
*/
39+
protected function defaultBody(): array
40+
{
41+
return [
42+
'queueable_ids' => $this->queueableIds,
43+
];
44+
}
45+
}

src/Resources/JobResource.php

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
<?php
2+
3+
namespace IntelligentsDev\AiaConnector\Resources;
4+
5+
use IntelligentsDev\AiaConnector\Requests\Images\Data\TextToImageOptions;
6+
use IntelligentsDev\AiaConnector\Requests\Jobs\GetJobsRequest;
7+
use Saloon\Exceptions\Request\FatalRequestException;
8+
use Saloon\Exceptions\Request\RequestException;
9+
use Saloon\Http\BaseResource;
10+
use Saloon\Http\Response;
11+
12+
class JobResource extends BaseResource
13+
{
14+
/**
15+
* Get jobs.
16+
*
17+
* @param array $queueableIds
18+
* @return Response
19+
*
20+
* @throws FatalRequestException
21+
* @throws RequestException
22+
*/
23+
public function get(
24+
array $queueableIds = [],
25+
): Response
26+
{
27+
return $this->connector->send(
28+
new GetJobsRequest($queueableIds),
29+
);
30+
}
31+
}

0 commit comments

Comments
 (0)