// Code generated by protoc-gen-bm v0.1, DO NOT EDIT.
// source: api/grpc/v1/api.proto

/*
Package v1 is a generated blademaster stub package.
This code was generated with go-common/app/tool/bmgen/protoc-gen-bm v0.1.

It is generated from these files:
	api/grpc/v1/api.proto
*/
package v1

import (
	"context"

	bm "go-common/library/net/http/blademaster"
	"go-common/library/net/http/blademaster/binding"
)

// to suppressed 'imported but not used warning'
var _ *bm.Context
var _ context.Context
var _ binding.StructValidator

// =================
// XAnchor Interface
// =================

type XAnchor interface {
	// FetchRoomByIDs 查询房间信息
	FetchRoomByIDs(ctx context.Context, req *RoomByIDsReq) (resp *RoomByIDsResp, err error)

	// RoomOnlineList 在线房间列表
	RoomOnlineList(ctx context.Context, req *RoomOnlineListReq) (resp *RoomOnlineListResp, err error)

	// RoomCreate 房间创建
	RoomCreate(ctx context.Context, req *RoomCreateReq) (resp *RoomCreateResp, err error)

	// RoomUpdate 房间信息更新
	RoomUpdate(ctx context.Context, req *RoomUpdateReq) (resp *UpdateResp, err error)

	// RoomBatchUpdate 房间信息批量更新
	RoomBatchUpdate(ctx context.Context, req *RoomBatchUpdateReq) (resp *UpdateResp, err error)

	// RoomExtendUpdate 房间扩展信息更新
	RoomExtendUpdate(ctx context.Context, req *RoomExtendUpdateReq) (resp *UpdateResp, err error)

	// RoomExtendBatchUpdate 房间扩展信息批量更新
	RoomExtendBatchUpdate(ctx context.Context, req *RoomExtendBatchUpdateReq) (resp *UpdateResp, err error)

	// RoomExtendIncre 房间信息增量更新
	RoomExtendIncre(ctx context.Context, req *RoomExtendIncreReq) (resp *UpdateResp, err error)

	// RoomExtendBatchIncre 房间信息批量增量更新
	RoomExtendBatchIncre(ctx context.Context, req *RoomExtendBatchIncreReq) (resp *UpdateResp, err error)

	// RoomTagSet 房间Tag更新
	RoomTagSet(ctx context.Context, req *RoomTagSetReq) (resp *UpdateResp, err error)

	// AnchorUpdate 主播信息更新
	AnchorUpdate(ctx context.Context, req *AnchorUpdateReq) (resp *UpdateResp, err error)

	// AnchorBatchUpdate 主播信息批量更新
	AnchorBatchUpdate(ctx context.Context, req *AnchorBatchUpdateReq) (resp *UpdateResp, err error)

	// AnchorIncre 主播信息增量更新
	AnchorIncre(ctx context.Context, req *AnchorIncreReq) (resp *UpdateResp, err error)

	// AnchorBatchIncre 主播信息批量增量更新
	AnchorBatchIncre(ctx context.Context, req *AnchorBatchIncreReq) (resp *UpdateResp, err error)

	// AnchorTagSet 主播Tag更新
	AnchorTagSet(ctx context.Context, req *AnchorTagSetReq) (resp *UpdateResp, err error)
}

var v1XAnchorSvc XAnchor

// @params RoomByIDsReq
// @router GET /xlive/xanchor/v1/xAnchor/FetchRoomByIDs
// @response RoomByIDsResp
func xAnchorFetchRoomByIDs(c *bm.Context) {
	p := new(RoomByIDsReq)
	if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
		return
	}
	resp, err := v1XAnchorSvc.FetchRoomByIDs(c, p)
	c.JSON(resp, err)
}

// @params RoomOnlineListReq
// @router GET /xlive/xanchor/v1/xAnchor/RoomOnlineList
// @response RoomOnlineListResp
func xAnchorRoomOnlineList(c *bm.Context) {
	p := new(RoomOnlineListReq)
	if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
		return
	}
	resp, err := v1XAnchorSvc.RoomOnlineList(c, p)
	c.JSON(resp, err)
}

// @params RoomCreateReq
// @router GET /xlive/xanchor/v1/xAnchor/RoomCreate
// @response RoomCreateResp
func xAnchorRoomCreate(c *bm.Context) {
	p := new(RoomCreateReq)
	if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
		return
	}
	resp, err := v1XAnchorSvc.RoomCreate(c, p)
	c.JSON(resp, err)
}

// @params RoomUpdateReq
// @router GET /xlive/xanchor/v1/xAnchor/RoomUpdate
// @response UpdateResp
func xAnchorRoomUpdate(c *bm.Context) {
	p := new(RoomUpdateReq)
	if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
		return
	}
	resp, err := v1XAnchorSvc.RoomUpdate(c, p)
	c.JSON(resp, err)
}

// @params RoomBatchUpdateReq
// @router GET /xlive/xanchor/v1/xAnchor/RoomBatchUpdate
// @response UpdateResp
func xAnchorRoomBatchUpdate(c *bm.Context) {
	p := new(RoomBatchUpdateReq)
	if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
		return
	}
	resp, err := v1XAnchorSvc.RoomBatchUpdate(c, p)
	c.JSON(resp, err)
}

// @params RoomExtendUpdateReq
// @router GET /xlive/xanchor/v1/xAnchor/RoomExtendUpdate
// @response UpdateResp
func xAnchorRoomExtendUpdate(c *bm.Context) {
	p := new(RoomExtendUpdateReq)
	if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
		return
	}
	resp, err := v1XAnchorSvc.RoomExtendUpdate(c, p)
	c.JSON(resp, err)
}

// @params RoomExtendBatchUpdateReq
// @router GET /xlive/xanchor/v1/xAnchor/RoomExtendBatchUpdate
// @response UpdateResp
func xAnchorRoomExtendBatchUpdate(c *bm.Context) {
	p := new(RoomExtendBatchUpdateReq)
	if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
		return
	}
	resp, err := v1XAnchorSvc.RoomExtendBatchUpdate(c, p)
	c.JSON(resp, err)
}

// @params RoomExtendIncreReq
// @router GET /xlive/xanchor/v1/xAnchor/RoomExtendIncre
// @response UpdateResp
func xAnchorRoomExtendIncre(c *bm.Context) {
	p := new(RoomExtendIncreReq)
	if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
		return
	}
	resp, err := v1XAnchorSvc.RoomExtendIncre(c, p)
	c.JSON(resp, err)
}

// @params RoomExtendBatchIncreReq
// @router GET /xlive/xanchor/v1/xAnchor/RoomExtendBatchIncre
// @response UpdateResp
func xAnchorRoomExtendBatchIncre(c *bm.Context) {
	p := new(RoomExtendBatchIncreReq)
	if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
		return
	}
	resp, err := v1XAnchorSvc.RoomExtendBatchIncre(c, p)
	c.JSON(resp, err)
}

// @params RoomTagSetReq
// @router GET /xlive/xanchor/v1/xAnchor/RoomTagSet
// @response UpdateResp
func xAnchorRoomTagSet(c *bm.Context) {
	p := new(RoomTagSetReq)
	if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
		return
	}
	resp, err := v1XAnchorSvc.RoomTagSet(c, p)
	c.JSON(resp, err)
}

// @params AnchorUpdateReq
// @router GET /xlive/xanchor/v1/xAnchor/AnchorUpdate
// @response UpdateResp
func xAnchorAnchorUpdate(c *bm.Context) {
	p := new(AnchorUpdateReq)
	if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
		return
	}
	resp, err := v1XAnchorSvc.AnchorUpdate(c, p)
	c.JSON(resp, err)
}

// @params AnchorBatchUpdateReq
// @router GET /xlive/xanchor/v1/xAnchor/AnchorBatchUpdate
// @response UpdateResp
func xAnchorAnchorBatchUpdate(c *bm.Context) {
	p := new(AnchorBatchUpdateReq)
	if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
		return
	}
	resp, err := v1XAnchorSvc.AnchorBatchUpdate(c, p)
	c.JSON(resp, err)
}

// @params AnchorIncreReq
// @router GET /xlive/xanchor/v1/xAnchor/AnchorIncre
// @response UpdateResp
func xAnchorAnchorIncre(c *bm.Context) {
	p := new(AnchorIncreReq)
	if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
		return
	}
	resp, err := v1XAnchorSvc.AnchorIncre(c, p)
	c.JSON(resp, err)
}

// @params AnchorBatchIncreReq
// @router GET /xlive/xanchor/v1/xAnchor/AnchorBatchIncre
// @response UpdateResp
func xAnchorAnchorBatchIncre(c *bm.Context) {
	p := new(AnchorBatchIncreReq)
	if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
		return
	}
	resp, err := v1XAnchorSvc.AnchorBatchIncre(c, p)
	c.JSON(resp, err)
}

// @params AnchorTagSetReq
// @router GET /xlive/xanchor/v1/xAnchor/AnchorTagSet
// @response UpdateResp
func xAnchorAnchorTagSet(c *bm.Context) {
	p := new(AnchorTagSetReq)
	if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
		return
	}
	resp, err := v1XAnchorSvc.AnchorTagSet(c, p)
	c.JSON(resp, err)
}

// RegisterV1XAnchorService Register the blademaster route with middleware map
// midMap is the middleware map, the key is defined in proto
func RegisterV1XAnchorService(e *bm.Engine, svc XAnchor, midMap map[string]bm.HandlerFunc) {
	v1XAnchorSvc = svc
	e.GET("/xlive/xanchor/v1/xAnchor/FetchRoomByIDs", xAnchorFetchRoomByIDs)
	e.GET("/xlive/xanchor/v1/xAnchor/RoomOnlineList", xAnchorRoomOnlineList)
	e.GET("/xlive/xanchor/v1/xAnchor/RoomCreate", xAnchorRoomCreate)
	e.GET("/xlive/xanchor/v1/xAnchor/RoomUpdate", xAnchorRoomUpdate)
	e.GET("/xlive/xanchor/v1/xAnchor/RoomBatchUpdate", xAnchorRoomBatchUpdate)
	e.GET("/xlive/xanchor/v1/xAnchor/RoomExtendUpdate", xAnchorRoomExtendUpdate)
	e.GET("/xlive/xanchor/v1/xAnchor/RoomExtendBatchUpdate", xAnchorRoomExtendBatchUpdate)
	e.GET("/xlive/xanchor/v1/xAnchor/RoomExtendIncre", xAnchorRoomExtendIncre)
	e.GET("/xlive/xanchor/v1/xAnchor/RoomExtendBatchIncre", xAnchorRoomExtendBatchIncre)
	e.GET("/xlive/xanchor/v1/xAnchor/RoomTagSet", xAnchorRoomTagSet)
	e.GET("/xlive/xanchor/v1/xAnchor/AnchorUpdate", xAnchorAnchorUpdate)
	e.GET("/xlive/xanchor/v1/xAnchor/AnchorBatchUpdate", xAnchorAnchorBatchUpdate)
	e.GET("/xlive/xanchor/v1/xAnchor/AnchorIncre", xAnchorAnchorIncre)
	e.GET("/xlive/xanchor/v1/xAnchor/AnchorBatchIncre", xAnchorAnchorBatchIncre)
	e.GET("/xlive/xanchor/v1/xAnchor/AnchorTagSet", xAnchorAnchorTagSet)
}
