173 lines
4.7 KiB
PHP
173 lines
4.7 KiB
PHP
<?php
|
|
|
|
namespace OpenApi\LinkExample;
|
|
|
|
class RepositoriesController
|
|
{
|
|
/**
|
|
* @OA\Get(path="/2.0/repositories/{username}",
|
|
* operationId="getRepositoriesByOwner",
|
|
* @OA\Parameter(
|
|
* name="username",
|
|
* in="path",
|
|
* required=true,
|
|
* @OA\Schema(type="string")
|
|
* ),
|
|
* @OA\Response(response=200,
|
|
* description="repositories owned by the supplied user",
|
|
* @OA\JsonContent(type="array",
|
|
* @OA\Items(ref="#/components/schemas/repository")
|
|
* ),
|
|
* @OA\Link(link="userRepository", ref="#/components/links/UserRepository")
|
|
* )
|
|
* )
|
|
* @OA\Link(link="UserRepositories",
|
|
* operationId="getRepositoriesByOwner",
|
|
* parameters={"username"="$response.body#/username"}
|
|
* )
|
|
*/
|
|
public function getRepositoriesByOwner($username)
|
|
{
|
|
}
|
|
|
|
/**
|
|
** @OA\Get(path="/2.0/repositories/{username}/{slug}",
|
|
* operationId="getRepository",
|
|
* @OA\Parameter(name="username",
|
|
* in="path",
|
|
* required=true,
|
|
* @OA\Schema(type="string")
|
|
* ),
|
|
* @OA\Parameter(name="slug",
|
|
* in="path",
|
|
* required=true,
|
|
* @OA\Schema(type="string")
|
|
* ),
|
|
* @OA\Response(response=200,
|
|
* description="The repository",
|
|
* @OA\JsonContent(ref="#/components/schemas/repository"),
|
|
* @OA\Link(link="repositoryPullRequests", ref="#/components/links/RepositoryPullRequests")
|
|
* )
|
|
* )
|
|
* )
|
|
* @OA\Link(link="UserRepository",
|
|
* operationId="getRepository",
|
|
* parameters={
|
|
* "username"="$response.body#/owner/username",
|
|
* "slug"="$response.body#/slug"
|
|
* }
|
|
* )
|
|
*/
|
|
public function getRepository()
|
|
{
|
|
}
|
|
|
|
/**
|
|
* @OA\Get(path="/2.0/repositories/{username}/{slug}/pullrequests",
|
|
* operationId="getPullRequestsByRepository",
|
|
* @OA\Parameter(name="username",
|
|
* in="path",
|
|
* required=true,
|
|
* @OA\Schema(type="string")
|
|
* ),
|
|
* @OA\Parameter(name="slug",
|
|
* in="path",
|
|
* required=true,
|
|
* @OA\Schema(type="string")
|
|
* ),
|
|
* @OA\Parameter(name="state",
|
|
* in="query",
|
|
* @OA\Schema(type="string",
|
|
* enum={"open", "merged", "declined"}
|
|
* )
|
|
* ),
|
|
* @OA\Response(response=200,
|
|
* description="an array of pull request objects",
|
|
* @OA\JsonContent(type="array",
|
|
* @OA\Items(ref="#/components/schemas/pullrequest")
|
|
* )
|
|
* )
|
|
* )
|
|
* @OA\Link(link="RepositoryPullRequests",
|
|
* operationId="getPullRequestsByRepository",
|
|
* parameters={
|
|
* "username"="$response.body#/owner/username",
|
|
* "slug"="$response.body#/slug"
|
|
* }
|
|
* )
|
|
*/
|
|
public function getPullRequestsByRepository()
|
|
{
|
|
}
|
|
|
|
/**
|
|
* @OA\Get(path="/2.0/repositories/{username}/{slug}/pullrequests/{pid}",
|
|
* operationId="getPullRequestsById",
|
|
* @OA\Parameter(name="username",
|
|
* in="path",
|
|
* required=true,
|
|
* @OA\Schema(type="string")
|
|
* ),
|
|
* @OA\Parameter(name="slug",
|
|
* in="path",
|
|
* required=true,
|
|
* @OA\Schema(type="string")
|
|
* ),
|
|
* @OA\Parameter(name="pid",
|
|
* in="path",
|
|
* required=true,
|
|
* @OA\Schema(type="string")
|
|
* ),
|
|
* @OA\Response(response=200,
|
|
* description="a pull request object",
|
|
* @OA\JsonContent(ref="#/components/schemas/pullrequest"),
|
|
* @OA\Link(link="pullRequestMerge", ref="#/components/links/PullRequestMerge")
|
|
* )
|
|
* )
|
|
*/
|
|
public function getPullRequestsById()
|
|
{
|
|
}
|
|
|
|
/**
|
|
* @OA\Post(path="/2.0/repositories/{username}/{slug}/pullrequests/{pid}/merge",
|
|
* operationId="mergePullRequest",
|
|
* @OA\Parameter(name="username",
|
|
* in="path",
|
|
* required=true,
|
|
* @OA\Schema(type="string")
|
|
* ),
|
|
* @OA\Parameter(name="slug",
|
|
* in="path",
|
|
* required=true,
|
|
* @OA\Schema(type="string")
|
|
* ),
|
|
* @OA\Parameter(name="pid",
|
|
* in="path",
|
|
* required=true,
|
|
* @OA\Schema(type="string")
|
|
* ),
|
|
* @OA\Response(response=204,
|
|
* description="the PR was successfully merged"
|
|
* )
|
|
* )
|
|
* @OA\Link(link="PullRequestMerge",
|
|
* operationId="mergePullRequest",
|
|
* parameters={
|
|
* "username"="$response.body#/author/username",
|
|
* "slug"="$response.body#/repository/slug",
|
|
* "pid"="$response.body#/id"
|
|
* }
|
|
* )
|
|
*/
|
|
public function mergePullRequest()
|
|
{
|
|
}
|
|
}
|
|
|
|
?>
|
|
|
|
|
|
|
|
|