Documentation
¶
Index ¶
- Constants
- func NewItemFilter(r *http.Request) (asset.ItemFilter, error)
- func NewLinkFilter(r *http.Request) (asset.LinkFilter, error)
- func NewPlayerFilter(r *http.Request) (asset.PlayerFilter, error)
- func NewRoomFilter(r *http.Request) (asset.RoomFilter, error)
- func TranslateItem(i *asset.Item) rest.Item
- func TranslateItemRequest(i rest.ItemRequest) (asset.ItemChange, error)
- func TranslateLink(l *asset.Link) rest.Link
- func TranslateLinkRequest(l rest.LinkRequest) (asset.LinkChange, error)
- func TranslatePlayer(p *asset.Player) rest.Player
- func TranslatePlayerRequest(p rest.PlayerRequest) (asset.PlayerChange, error)
- func TranslateRoom(r *asset.Room) rest.Room
- func TranslateRoomRequest(r rest.RoomRequest) (asset.RoomChange, error)
- type ItemStorage
- type ItemsService
- func (s ItemsService) Create(w http.ResponseWriter, r *http.Request)
- func (s ItemsService) Get(w http.ResponseWriter, r *http.Request)
- func (s ItemsService) List(w http.ResponseWriter, r *http.Request)
- func (ItemsService) Name() string
- func (s ItemsService) Register(router *mux.Router)
- func (s ItemsService) Remove(w http.ResponseWriter, r *http.Request)
- func (ItemsService) Shutdown(context.Context)
- func (s ItemsService) Update(w http.ResponseWriter, r *http.Request)
- type LinkStorage
- type LinksService
- func (s LinksService) Create(w http.ResponseWriter, r *http.Request)
- func (s LinksService) Get(w http.ResponseWriter, r *http.Request)
- func (s LinksService) List(w http.ResponseWriter, r *http.Request)
- func (LinksService) Name() string
- func (s LinksService) Register(router *mux.Router)
- func (s LinksService) Remove(w http.ResponseWriter, r *http.Request)
- func (LinksService) Shutdown(context.Context)
- func (s LinksService) Update(w http.ResponseWriter, r *http.Request)
- type PlayerStorage
- type PlayersService
- func (s PlayersService) Create(w http.ResponseWriter, r *http.Request)
- func (s PlayersService) Get(w http.ResponseWriter, r *http.Request)
- func (s PlayersService) List(w http.ResponseWriter, r *http.Request)
- func (PlayersService) Name() string
- func (s PlayersService) Register(router *mux.Router)
- func (s PlayersService) Remove(w http.ResponseWriter, r *http.Request)
- func (PlayersService) Shutdown(context.Context)
- func (s PlayersService) Update(w http.ResponseWriter, r *http.Request)
- type RoomStorage
- type RoomsService
- func (s RoomsService) Create(w http.ResponseWriter, r *http.Request)
- func (s RoomsService) Get(w http.ResponseWriter, r *http.Request)
- func (s RoomsService) List(w http.ResponseWriter, r *http.Request)
- func (RoomsService) Name() string
- func (s RoomsService) Register(router *mux.Router)
- func (s RoomsService) Remove(w http.ResponseWriter, r *http.Request)
- func (RoomsService) Shutdown(context.Context)
- func (s RoomsService) Update(w http.ResponseWriter, r *http.Request)
Constants ¶
const (
V1ItemRoute string = "/v1/item"
)
const (
V1LinkRoute string = "/v1/link"
)
const (
V1PlayerRoute string = "/v1/player"
)
const (
V1RoomRoute string = "/v1/room"
)
Variables ¶
This section is empty.
Functions ¶
func NewItemFilter ¶
func NewItemFilter(r *http.Request) (asset.ItemFilter, error)
NewItemFilter creates an asset items filter from the the given request's query parameters.
func NewLinkFilter ¶
func NewLinkFilter(r *http.Request) (asset.LinkFilter, error)
NewLinkFilter creates an asset links filter from the the given request's URL query parameters.
func NewPlayerFilter ¶
func NewPlayerFilter(r *http.Request) (asset.PlayerFilter, error)
NewPlayerFilter creates an asset players filter from the given request's URL query parameters.
func NewRoomFilter ¶
func NewRoomFilter(r *http.Request) (asset.RoomFilter, error)
NewRoomFilter creates an asset rooms filter from the given request's URL query parameters.
func TranslateItem ¶
TranslateItem translates an asset item to a network item.
func TranslateItemRequest ¶
func TranslateItemRequest(i rest.ItemRequest) (asset.ItemChange, error)
TranslateItemRequest translates a network asset item request to an asset item request.
func TranslateLink ¶
TranslateLink translates an asset link to a network link.
func TranslateLinkRequest ¶
func TranslateLinkRequest(l rest.LinkRequest) (asset.LinkChange, error)
TranslateLinkRequest translates a network link request to an asset link request.
func TranslatePlayer ¶
TranslatePlayer translates an arcade player to a network player.
func TranslatePlayerRequest ¶
func TranslatePlayerRequest(p rest.PlayerRequest) (asset.PlayerChange, error)
TranslatesPlayerRequest translates a network request to an asset player request.
func TranslateRoom ¶
TranslateRoom translates an asset room to a network room.
func TranslateRoomRequest ¶
func TranslateRoomRequest(r rest.RoomRequest) (asset.RoomChange, error)
TranslateRoomRequest translates a network room request to an asset room request.
Types ¶
type ItemStorage ¶
type ItemStorage interface {
List(context.Context, asset.ItemFilter) ([]*asset.Item, error)
Get(context.Context, asset.ItemID) (*asset.Item, error)
Create(context.Context, asset.ItemCreate) (*asset.Item, error)
Update(context.Context, asset.ItemID, asset.ItemUpdate) (*asset.Item, error)
Remove(context.Context, asset.ItemID) error
}
ItemStorage defines the expected behavior of the item manager in the domain layer.
type ItemsService ¶
type ItemsService struct {
Storage ItemStorage
}
ItemService services item related network requests.
func (ItemsService) Create ¶
func (s ItemsService) Create(w http.ResponseWriter, r *http.Request)
Create handles a request to create an item.
func (ItemsService) Get ¶
func (s ItemsService) Get(w http.ResponseWriter, r *http.Request)
Get handles a request to retrieve an item.
func (ItemsService) List ¶
func (s ItemsService) List(w http.ResponseWriter, r *http.Request)
List handles a request to retrieve multiple items.
func (ItemsService) Register ¶
func (s ItemsService) Register(router *mux.Router)
Register sets up the http handler for this service with the given router.
func (ItemsService) Remove ¶
func (s ItemsService) Remove(w http.ResponseWriter, r *http.Request)
Remove handles a request to remove an item.
func (ItemsService) Shutdown ¶
func (ItemsService) Shutdown(context.Context)
Shutdown is a no-op since there no long running processes for this service.
func (ItemsService) Update ¶
func (s ItemsService) Update(w http.ResponseWriter, r *http.Request)
Update handles a request to update an item.
type LinkStorage ¶
type LinkStorage interface {
List(context.Context, asset.LinkFilter) ([]*asset.Link, error)
Get(context.Context, asset.LinkID) (*asset.Link, error)
Create(context.Context, asset.LinkCreate) (*asset.Link, error)
Update(context.Context, asset.LinkID, asset.LinkUpdate) (*asset.Link, error)
Remove(context.Context, asset.LinkID) error
}
LinkStorage defines the expected behavior of the link manager in the domain layer.
type LinksService ¶
type LinksService struct {
Storage LinkStorage
}
LinkService services link related network requests.
func (LinksService) Create ¶
func (s LinksService) Create(w http.ResponseWriter, r *http.Request)
Create handles a request to create a link.
func (LinksService) Get ¶
func (s LinksService) Get(w http.ResponseWriter, r *http.Request)
Get handles a request to retrieve a link.
func (LinksService) List ¶
func (s LinksService) List(w http.ResponseWriter, r *http.Request)
List handles a request to retrieve multiple links.
func (LinksService) Register ¶
func (s LinksService) Register(router *mux.Router)
Register sets up the http handler for this service with the given router.
func (LinksService) Remove ¶
func (s LinksService) Remove(w http.ResponseWriter, r *http.Request)
Remove handles a request to remove a link.
func (LinksService) Shutdown ¶
func (LinksService) Shutdown(context.Context)
Shutdown is a no-op since there no long running processes for this service.
func (LinksService) Update ¶
func (s LinksService) Update(w http.ResponseWriter, r *http.Request)
Update handles a request to update a link.
type PlayerStorage ¶
type PlayerStorage interface {
List(context.Context, asset.PlayerFilter) ([]*asset.Player, error)
Get(context.Context, asset.PlayerID) (*asset.Player, error)
Create(context.Context, asset.PlayerCreate) (*asset.Player, error)
Update(context.Context, asset.PlayerID, asset.PlayerUpdate) (*asset.Player, error)
Remove(context.Context, asset.PlayerID) error
}
PlayerStorage defines the expected behavior of the player manager in the domain layer.
type PlayersService ¶
type PlayersService struct {
Storage PlayerStorage
}
PlayerService services player related network requests.
func (PlayersService) Create ¶
func (s PlayersService) Create(w http.ResponseWriter, r *http.Request)
Create handles a request to create a player.
func (PlayersService) Get ¶
func (s PlayersService) Get(w http.ResponseWriter, r *http.Request)
Get handles a request to retrieve a player.
func (PlayersService) List ¶
func (s PlayersService) List(w http.ResponseWriter, r *http.Request)
List handles a request to retrieve multiple players.
func (PlayersService) Name ¶
func (PlayersService) Name() string
Name returns the name of the service.
func (PlayersService) Register ¶
func (s PlayersService) Register(router *mux.Router)
Register sets up the http handler for this service with the given router.
func (PlayersService) Remove ¶
func (s PlayersService) Remove(w http.ResponseWriter, r *http.Request)
Remove handles a request to remove a player.
func (PlayersService) Shutdown ¶
func (PlayersService) Shutdown(context.Context)
Shutdown is a no-op since there no long running processes for this service.
func (PlayersService) Update ¶
func (s PlayersService) Update(w http.ResponseWriter, r *http.Request)
Update handles a request to update a player.
type RoomStorage ¶
type RoomStorage interface {
List(context.Context, asset.RoomFilter) ([]*asset.Room, error)
Get(context.Context, asset.RoomID) (*asset.Room, error)
Create(context.Context, asset.RoomCreate) (*asset.Room, error)
Update(context.Context, asset.RoomID, asset.RoomUpdate) (*asset.Room, error)
Remove(context.Context, asset.RoomID) error
}
RoomStorage defines the expected behavior of the room manager in the domain layer.
type RoomsService ¶
type RoomsService struct {
Storage RoomStorage
}
RoomService services room related network requests.
func (RoomsService) Create ¶
func (s RoomsService) Create(w http.ResponseWriter, r *http.Request)
Create handles a request to create a room.
func (RoomsService) Get ¶
func (s RoomsService) Get(w http.ResponseWriter, r *http.Request)
Get handles a request to retrieve a room.
func (RoomsService) List ¶
func (s RoomsService) List(w http.ResponseWriter, r *http.Request)
List handles a request to retrieve multiple rooms.
func (RoomsService) Register ¶
func (s RoomsService) Register(router *mux.Router)
Register sets up the http handler for this service with the given router.
func (RoomsService) Remove ¶
func (s RoomsService) Remove(w http.ResponseWriter, r *http.Request)
Remove handles a request to remove a room.
func (RoomsService) Shutdown ¶
func (RoomsService) Shutdown(context.Context)
Shutdown is a no-op since there no long running processes for this service.
func (RoomsService) Update ¶
func (s RoomsService) Update(w http.ResponseWriter, r *http.Request)
Update handles a request to update a room.