openapi

package
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 30, 2021 License: MIT Imports: 12 Imported by: 0

Documentation

Overview

Package openapi provides primitives to interact with the openapi HTTP API.

Code generated by github.com/deepmap/oapi-codegen version v1.8.3 DO NOT EDIT.

Index

Constants

View Source
const (
	TokenScopes = "token.Scopes"
)

Variables

This section is empty.

Functions

func GetSwagger

func GetSwagger() (swagger *openapi3.T, err error)

GetSwagger returns the Swagger specification corresponding to the generated code in this file. The external references of Swagger specification are resolved. The logic of resolving external references is tightly connected to "import-mapping" feature. Externally referenced files must be embedded in the corresponding golang packages. Urls can be supported but this task was out of the scope.

func PathToRawSpec

func PathToRawSpec(pathToFile string) map[string]func() ([]byte, error)

Constructs a synthetic filesystem for resolving external references when loading openapi specifications.

func RegisterHandlers

func RegisterHandlers(router EchoRouter, si ServerInterface)

RegisterHandlers adds each server route to the EchoRouter.

func RegisterHandlersWithBaseURL

func RegisterHandlersWithBaseURL(router EchoRouter, si ServerInterface, baseURL string)

Registers handlers, and prepends BaseURL to the paths, so that the paths can be served under a prefix.

Types

type AddRestaurantRequest

type AddRestaurantRequest struct {
	RestaurantId Long `json:"restaurant_id"`
}

Add a restaurant to a community

type AddRestaurantToCommunityJSONBody

type AddRestaurantToCommunityJSONBody AddRestaurantRequest

AddRestaurantToCommunityJSONBody defines parameters for AddRestaurantToCommunity.

type AddRestaurantToCommunityJSONRequestBody

type AddRestaurantToCommunityJSONRequestBody AddRestaurantToCommunityJSONBody

AddRestaurantToCommunityJSONRequestBody defines body for AddRestaurantToCommunity for application/json ContentType.

type AuthInfo

type AuthInfo struct {
	Token  string     `json:"token"`
	Vendor AuthVendor `json:"vendor"`
}

AuthInfo defines model for authInfo.

type AuthVendor

type AuthVendor string

AuthVendor defines model for authVendor.

const (
	AuthVendorAnonymous AuthVendor = "Anonymous"

	AuthVendorApple AuthVendor = "Apple"

	AuthVendorGoogle AuthVendor = "Google"
)

Defines values for AuthVendor.

type Comment

type Comment struct {
	Body         *string `json:"body,omitempty"`
	CommunityId  *Long   `json:"community_id,omitempty"`
	RestaurantId *Long   `json:"restaurant_id,omitempty"`

	// Updated date and time
	UpdatedAt *time.Time `json:"updated_at,omitempty"`
}

Private comments for a restaurant

type Community

type Community struct {
	Description   string   `json:"description"`
	Id            Long     `json:"id"`
	ImageUrls     []string `json:"imageUrls"`
	Location      Location `json:"location"`
	Name          string   `json:"name"`
	NumRestaurant int      `json:"num_restaurant"`
	NumUser       int      `json:"num_user"`
}

Goyotashi community

type CreateCommunityRequest

type CreateCommunityRequest struct {
	Description string   `json:"description"`
	Location    Location `json:"location"`
	Name        string   `json:"name"`
}

CreateCommunityRequest defines model for createCommunityRequest.

type CreateUserRequest

type CreateUserRequest struct {
	Name   string     `json:"name"`
	Vendor AuthVendor `json:"vendor"`
}

CreateUserRequest defines model for createUserRequest.

type CreateUserResponse

type CreateUserResponse struct {
	AuthInfo AuthInfo `json:"auth_info"`

	// Reperesents user
	User User `json:"user"`
}

CreateUserResponse defines model for createUserResponse.

type EchoRouter

type EchoRouter interface {
	CONNECT(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	DELETE(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	GET(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	HEAD(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	OPTIONS(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	PATCH(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	POST(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	PUT(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	TRACE(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
}

This is a simple interface which specifies echo.Route addition functions which are present on both echo.Echo and echo.Group, since we want to allow using either of them for path registration

type GetCommunityIdTokenResponse

type GetCommunityIdTokenResponse struct {
	// Token dulation (seconds)
	ExpiresIn   int    `json:"expires_in"`
	InviteToken string `json:"invite_token"`
}

GetCommunityIdTokenResponse defines model for getCommunityIdTokenResponse.

type GetOtherCommunityResponse

type GetOtherCommunityResponse struct {
	Communities []Community `json:"communities"`
}

GetOtherCommunityResponse defines model for getOtherCommunityResponse.

type GetRestaurantIdOtherParams

type GetRestaurantIdOtherParams struct {
	CommunityId Long `json:"community_id"`
}

GetRestaurantIdOtherParams defines parameters for GetRestaurantIdOther.

type JoinCommunityRequest

type JoinCommunityRequest struct {
	InviteToken string `json:"invite_token"`
}

JoinCommunityRequest defines model for joinCommunityRequest.

type ListCommunityRestaurantsParams

type ListCommunityRestaurantsParams struct {
	After *PageQuery `json:"after,omitempty"`
}

ListCommunityRestaurantsParams defines parameters for ListCommunityRestaurants.

type ListCommunityRestaurantsResponse

type ListCommunityRestaurantsResponse struct {
	// Embedded struct due to allOf(#/components/schemas/pageInfo)
	PageInfo `yaml:",inline"`
	// Embedded fields due to inline allOf schema
	Restaurants *[]Restaurant `json:"restaurants,omitempty"`
}

ListCommunityRestaurantsResponse defines model for listCommunityRestaurantsResponse.

type ListCommunityUsersResponse

type ListCommunityUsersResponse struct {
	// Embedded struct due to allOf(#/components/schemas/user)
	User `yaml:",inline"`
	// Embedded fields due to inline allOf schema
	Users *[]User `json:"users,omitempty"`
}

ListCommunityUsersResponse defines model for listCommunityUsersResponse.

type ListUserBookmarkResponse

type ListUserBookmarkResponse struct {
	// Embedded struct due to allOf(#/components/schemas/pageInfo)
	PageInfo `yaml:",inline"`
	// Embedded fields due to inline allOf schema
	Communities *[]Community `json:"communities,omitempty"`
}

ListUserBookmarkResponse defines model for listUserBookmarkResponse.

type ListUserCommunitiesParams

type ListUserCommunitiesParams struct {
	After *PageQuery `json:"after,omitempty"`
}

ListUserCommunitiesParams defines parameters for ListUserCommunities.

type ListUserCommunityResponse

type ListUserCommunityResponse struct {
	// Embedded fields due to inline allOf schema
	Communities *[]Community `json:"communities,omitempty"`
	// Embedded struct due to allOf(#/components/schemas/pageInfo)
	PageInfo `yaml:",inline"`
}

ListUserCommunityResponse defines model for listUserCommunityResponse.

type ListUsersOfCommunityParams

type ListUsersOfCommunityParams struct {
	After *PageQuery `json:"after,omitempty"`
}

ListUsersOfCommunityParams defines parameters for ListUsersOfCommunity.

type Location

type Location struct {
	// latitude
	Lat float64 `json:"lat"`

	// longitude
	Lng float64 `json:"lng"`
}

Location defines model for location.

type Long

type Long int64

Long defines model for long.

type NewCommunityJSONBody

type NewCommunityJSONBody CreateCommunityRequest

NewCommunityJSONBody defines parameters for NewCommunity.

type NewCommunityJSONRequestBody

type NewCommunityJSONRequestBody NewCommunityJSONBody

NewCommunityJSONRequestBody defines body for NewCommunity for application/json ContentType.

type NewUserJSONBody

type NewUserJSONBody CreateUserRequest

NewUserJSONBody defines parameters for NewUser.

type NewUserJSONRequestBody

type NewUserJSONRequestBody NewUserJSONBody

NewUserJSONRequestBody defines body for NewUser for application/json ContentType.

type PageInfo

type PageInfo struct {
	BeginCursor *int  `json:"begin_cursor,omitempty"`
	EndCursor   *int  `json:"end_cursor,omitempty"`
	HasNext     *bool `json:"has_next,omitempty"`
	HasPrevious *bool `json:"has_previous,omitempty"`
}

PageInfo defines model for pageInfo.

type PageQuery

type PageQuery Long

PageQuery defines model for pageQuery.

type PostUserIdBookmarkJSONBody

type PostUserIdBookmarkJSONBody struct {
	CommunityId Long `json:"community_id"`
}

PostUserIdBookmarkJSONBody defines parameters for PostUserIdBookmark.

type PostUserIdBookmarkJSONRequestBody

type PostUserIdBookmarkJSONRequestBody PostUserIdBookmarkJSONBody

PostUserIdBookmarkJSONRequestBody defines body for PostUserIdBookmark for application/json ContentType.

type PostUserMeCommunitiesJSONBody

type PostUserMeCommunitiesJSONBody JoinCommunityRequest

PostUserMeCommunitiesJSONBody defines parameters for PostUserMeCommunities.

type PostUserMeCommunitiesJSONRequestBody

type PostUserMeCommunitiesJSONRequestBody PostUserMeCommunitiesJSONBody

PostUserMeCommunitiesJSONRequestBody defines body for PostUserMeCommunities for application/json ContentType.

type PutUserMeJSONBody

type PutUserMeJSONBody PutUserMeRequest

PutUserMeJSONBody defines parameters for PutUserMe.

type PutUserMeJSONRequestBody

type PutUserMeJSONRequestBody PutUserMeJSONBody

PutUserMeJSONRequestBody defines body for PutUserMe for application/json ContentType.

type PutUserMeRequest

type PutUserMeRequest struct {
	Name *string `json:"name,omitempty"`
}

PutUserMeRequest defines model for putUserMeRequest.

type Restaurant

type Restaurant struct {
	Id       Long     `json:"id"`
	ImageUrl *string  `json:"image_url,omitempty"`
	Location Location `json:"location"`
	Name     string   `json:"name"`
}

Restaurant

type SearchCommunitiesParams

type SearchCommunitiesParams struct {
	After     *PageQuery `json:"after,omitempty"`
	Keyword   string     `json:"keyword"`
	CenterLat *float64   `json:"center_lat,omitempty"`
	CenterLng *float64   `json:"center_lng,omitempty"`
}

SearchCommunitiesParams defines parameters for SearchCommunities.

type SearchCommunityResponse

type SearchCommunityResponse struct {
	// Embedded struct due to allOf(#/components/schemas/pageInfo)
	PageInfo `yaml:",inline"`
	// Embedded fields due to inline allOf schema
	Communities *[]Community `json:"communities,omitempty"`
}

SearchCommunityResponse defines model for searchCommunityResponse.

type SearchRestaurantResponse

type SearchRestaurantResponse struct {
	// Embedded struct due to allOf(#/components/schemas/pageInfo)
	PageInfo `yaml:",inline"`
	// Embedded fields due to inline allOf schema
	Restaurants *[]Restaurant `json:"restaurants,omitempty"`
}

SearchRestaurantResponse defines model for searchRestaurantResponse.

type SearchRestaurantsParams

type SearchRestaurantsParams struct {
	After     *PageQuery `json:"after,omitempty"`
	Keyword   string     `json:"keyword"`
	CenterLat *float64   `json:"center_lat,omitempty"`
	CenterLng *float64   `json:"center_lng,omitempty"`
}

SearchRestaurantsParams defines parameters for SearchRestaurants.

type ServerInterface

type ServerInterface interface {
	// Create a new community
	// (POST /community)
	NewCommunity(ctx echo.Context) error
	// Search communities using keyword and location
	// (GET /community/search)
	SearchCommunities(ctx echo.Context, params SearchCommunitiesParams) error
	// Get a community by id
	// (GET /community/{id})
	GetCommunityById(ctx echo.Context, id int) error
	// Update community infomation
	// (PUT /community/{id})
	UpdateCommunity(ctx echo.Context, id int64) error
	// List restaurants in a community
	// (GET /community/{id}/restaurants)
	ListCommunityRestaurants(ctx echo.Context, id int, params ListCommunityRestaurantsParams) error
	// Add a restaurant to a community
	// (POST /community/{id}/restaurants)
	AddRestaurantToCommunity(ctx echo.Context, id int) error
	// Remove a restrant from the specified community
	// (DELETE /community/{id}/restaurants/{restaurant_id})
	RemoveRestaurantFromCommunity(ctx echo.Context, id int64, restaurantId int64) error
	// Get private comments for a restaurant
	// (GET /community/{id}/restaurants/{restaurant_id}/comments)
	GetRestaurantComment(ctx echo.Context, id int, restaurantId int) error
	// Update comment of the restaurant
	// (PUT /community/{id}/restaurants/{restaurant_id}/comments)
	UpdateRestaurantComment(ctx echo.Context, id int, restaurantId int) error
	// Get an invite token
	// (GET /community/{id}/token)
	GetCommunityIdToken(ctx echo.Context, id int) error
	// List users in a community
	// (GET /community/{id}/users)
	ListUsersOfCommunity(ctx echo.Context, id int, params ListUsersOfCommunityParams) error
	// Search restaurants using keyword and location
	// (GET /restaurant/search)
	SearchRestaurants(ctx echo.Context, params SearchRestaurantsParams) error
	// Get information about the speicifed restaurant.
	// (GET /restaurant/{id})
	GetRestaurantId(ctx echo.Context, id int64) error
	// Get other communities which have the secified in thier lists
	// (GET /restaurant/{id}/other)
	GetRestaurantIdOther(ctx echo.Context, id Long, params GetRestaurantIdOtherParams) error
	// Create a new user
	// (POST /user)
	NewUser(ctx echo.Context) error
	// Get my profile in detail
	// (GET /user/me)
	GetMyProfile(ctx echo.Context) error
	// Update my profile
	// (PUT /user/me)
	PutUserMe(ctx echo.Context) error
	// Join a community
	// (POST /user/me/communities)
	PostUserMeCommunities(ctx echo.Context) error

	// (POST /user/profile)
	UploadProfileImage(ctx echo.Context) error
	// Get bookmarking list of the specified user
	// (GET /user/{id}/bookmark)
	GetUserIdBookmark(ctx echo.Context, id Long) error
	// Create a new bookmark
	// (POST /user/{id}/bookmark)
	PostUserIdBookmark(ctx echo.Context, id Long) error
	// Delete bookmark from the specified user
	// (DELETE /user/{id}/bookmark/{community_id})
	DeleteUserIdBookmarkCommunityId(ctx echo.Context, id Long, communityId Long) error
	// Get communities where the specified user joins
	// (GET /user/{id}/communities)
	ListUserCommunities(ctx echo.Context, id Long, params ListUserCommunitiesParams) error
	// Leave a community
	// (DELETE /user/{id}/communities/{community_id})
	DeleteUserIdCommunitiesCommunityId(ctx echo.Context, id Long, communityId Long) error
}

ServerInterface represents all server handlers.

type ServerInterfaceWrapper

type ServerInterfaceWrapper struct {
	Handler ServerInterface
}

ServerInterfaceWrapper converts echo contexts to parameters.

func (*ServerInterfaceWrapper) AddRestaurantToCommunity

func (w *ServerInterfaceWrapper) AddRestaurantToCommunity(ctx echo.Context) error

AddRestaurantToCommunity converts echo context to params.

func (*ServerInterfaceWrapper) DeleteUserIdBookmarkCommunityId

func (w *ServerInterfaceWrapper) DeleteUserIdBookmarkCommunityId(ctx echo.Context) error

DeleteUserIdBookmarkCommunityId converts echo context to params.

func (*ServerInterfaceWrapper) DeleteUserIdCommunitiesCommunityId

func (w *ServerInterfaceWrapper) DeleteUserIdCommunitiesCommunityId(ctx echo.Context) error

DeleteUserIdCommunitiesCommunityId converts echo context to params.

func (*ServerInterfaceWrapper) GetCommunityById

func (w *ServerInterfaceWrapper) GetCommunityById(ctx echo.Context) error

GetCommunityById converts echo context to params.

func (*ServerInterfaceWrapper) GetCommunityIdToken

func (w *ServerInterfaceWrapper) GetCommunityIdToken(ctx echo.Context) error

GetCommunityIdToken converts echo context to params.

func (*ServerInterfaceWrapper) GetMyProfile

func (w *ServerInterfaceWrapper) GetMyProfile(ctx echo.Context) error

GetMyProfile converts echo context to params.

func (*ServerInterfaceWrapper) GetRestaurantComment

func (w *ServerInterfaceWrapper) GetRestaurantComment(ctx echo.Context) error

GetRestaurantComment converts echo context to params.

func (*ServerInterfaceWrapper) GetRestaurantId

func (w *ServerInterfaceWrapper) GetRestaurantId(ctx echo.Context) error

GetRestaurantId converts echo context to params.

func (*ServerInterfaceWrapper) GetRestaurantIdOther

func (w *ServerInterfaceWrapper) GetRestaurantIdOther(ctx echo.Context) error

GetRestaurantIdOther converts echo context to params.

func (*ServerInterfaceWrapper) GetUserIdBookmark

func (w *ServerInterfaceWrapper) GetUserIdBookmark(ctx echo.Context) error

GetUserIdBookmark converts echo context to params.

func (*ServerInterfaceWrapper) ListCommunityRestaurants

func (w *ServerInterfaceWrapper) ListCommunityRestaurants(ctx echo.Context) error

ListCommunityRestaurants converts echo context to params.

func (*ServerInterfaceWrapper) ListUserCommunities

func (w *ServerInterfaceWrapper) ListUserCommunities(ctx echo.Context) error

ListUserCommunities converts echo context to params.

func (*ServerInterfaceWrapper) ListUsersOfCommunity

func (w *ServerInterfaceWrapper) ListUsersOfCommunity(ctx echo.Context) error

ListUsersOfCommunity converts echo context to params.

func (*ServerInterfaceWrapper) NewCommunity

func (w *ServerInterfaceWrapper) NewCommunity(ctx echo.Context) error

NewCommunity converts echo context to params.

func (*ServerInterfaceWrapper) NewUser

func (w *ServerInterfaceWrapper) NewUser(ctx echo.Context) error

NewUser converts echo context to params.

func (*ServerInterfaceWrapper) PostUserIdBookmark

func (w *ServerInterfaceWrapper) PostUserIdBookmark(ctx echo.Context) error

PostUserIdBookmark converts echo context to params.

func (*ServerInterfaceWrapper) PostUserMeCommunities

func (w *ServerInterfaceWrapper) PostUserMeCommunities(ctx echo.Context) error

PostUserMeCommunities converts echo context to params.

func (*ServerInterfaceWrapper) PutUserMe

func (w *ServerInterfaceWrapper) PutUserMe(ctx echo.Context) error

PutUserMe converts echo context to params.

func (*ServerInterfaceWrapper) RemoveRestaurantFromCommunity

func (w *ServerInterfaceWrapper) RemoveRestaurantFromCommunity(ctx echo.Context) error

RemoveRestaurantFromCommunity converts echo context to params.

func (*ServerInterfaceWrapper) SearchCommunities

func (w *ServerInterfaceWrapper) SearchCommunities(ctx echo.Context) error

SearchCommunities converts echo context to params.

func (*ServerInterfaceWrapper) SearchRestaurants

func (w *ServerInterfaceWrapper) SearchRestaurants(ctx echo.Context) error

SearchRestaurants converts echo context to params.

func (*ServerInterfaceWrapper) UpdateCommunity

func (w *ServerInterfaceWrapper) UpdateCommunity(ctx echo.Context) error

UpdateCommunity converts echo context to params.

func (*ServerInterfaceWrapper) UpdateRestaurantComment

func (w *ServerInterfaceWrapper) UpdateRestaurantComment(ctx echo.Context) error

UpdateRestaurantComment converts echo context to params.

func (*ServerInterfaceWrapper) UploadProfileImage

func (w *ServerInterfaceWrapper) UploadProfileImage(ctx echo.Context) error

UploadProfileImage converts echo context to params.

type UpdateCommentRequest

type UpdateCommentRequest struct {
	Body *string `json:"body,omitempty"`
}

Update private comments for a restaurant

type UpdateCommunityJSONBody

type UpdateCommunityJSONBody struct {
	Description string   `json:"description"`
	Location    Location `json:"location"`
	Name        string   `json:"name"`
}

UpdateCommunityJSONBody defines parameters for UpdateCommunity.

type UpdateCommunityJSONRequestBody

type UpdateCommunityJSONRequestBody UpdateCommunityJSONBody

UpdateCommunityJSONRequestBody defines body for UpdateCommunity for application/json ContentType.

type UpdateRestaurantCommentJSONBody

type UpdateRestaurantCommentJSONBody UpdateCommentRequest

UpdateRestaurantCommentJSONBody defines parameters for UpdateRestaurantComment.

type UpdateRestaurantCommentJSONRequestBody

type UpdateRestaurantCommentJSONRequestBody UpdateRestaurantCommentJSONBody

UpdateRestaurantCommentJSONRequestBody defines body for UpdateRestaurantComment for application/json ContentType.

type UploadImageProfileResponse

type UploadImageProfileResponse struct {
	ImageUrl string `json:"imageUrl"`
}

UploadImageProfileResponse defines model for uploadImageProfileResponse.

type User

type User struct {
	Id              Long    `json:"id"`
	Name            string  `json:"name"`
	ProfileImageUrl *string `json:"profile_image_url,omitempty"`
}

Reperesents user

type UserDetail

type UserDetail struct {
	// Embedded struct due to allOf(#/components/schemas/user)
	User `yaml:",inline"`
	// Embedded fields due to inline allOf schema
	BookmarkCount  int `json:"bookmark_count"`
	CommunityCount int `json:"community_count"`
}

UserDetail defines model for userDetail.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL