diff --git a/weMedia/biz/dal/mysql/init.go b/weMedia/biz/dal/mysql/init.go index adde5b6..d11eb78 100644 --- a/weMedia/biz/dal/mysql/init.go +++ b/weMedia/biz/dal/mysql/init.go @@ -34,7 +34,7 @@ func Init() { } // 自动迁移 err = DB.AutoMigrate(model.WeMediaUser{}, model.UserFans{}, model.UserBlacklist{}) - err = DB.AutoMigrate(model.Moment{}, model.MomentFile{}, model.MomentLike{}, model.MomentComment{}, model.CommentFile{}, model.MomentCollect{}) + err = DB.AutoMigrate(model.Moment{}, model.MomentFile{}, model.MomentLike{}, model.MomentComment{}, model.CommentFile{}, model.MomentCollect{}, model.Category{}, model.MomentCategory{}, model.Tag{}, model.MomentTag{}) if err != nil { hlog.Error("AutoMigrate failed: " + err.Error()) return diff --git a/weMedia/biz/dal/mysql/moment.go b/weMedia/biz/dal/mysql/moment.go index 0cd287e..873f7f7 100644 --- a/weMedia/biz/dal/mysql/moment.go +++ b/weMedia/biz/dal/mysql/moment.go @@ -761,3 +761,366 @@ func findAllChildCommentIDs(tx *gorm.DB, parentID int64) ([]uint, error) { return childIDs, nil } + +// CreateTag 创建tag +func CreateTag(req moment.CreateTagRequest) error { + if req.UserID == "" || req.TagName == "" { + return errors.New("缺少必须参数") + } + db := DB + db.Model(&model.Tag{}).Create(&model.Tag{ + TagName: req.TagName, + UserID: req.UserID, + }) + return db.Error +} + +// DeleteTag 删除tag +func DeleteTag(req moment.DeleteTagRequest) error { + if req.UserID == "" || req.TagName == "" { + return errors.New("缺少必须参数") + } + db := DB + db.Model(&model.Tag{}). + Where("tag_name = ? AND user_id = ?", req.TagName, req.UserID). + Delete(&model.Tag{}) + return db.Error +} + +// ListTag 获取tag列表 +func ListTag(req moment.ListTagRequest) ([]*moment.TagInfo, int32, error) { + // 参数验证 + if req.Page < 1 { + req.Page = 1 + } + if req.PageSize < 1 { + req.PageSize = 10 + } + if req.PageSize > 100 { // 限制最大分页大小,防止恶意请求 + req.PageSize = 100 + } + + db := DB + var total int64 + var result []*moment.TagInfo + + // 先查询总数 + if err := db.Model(&model.Tag{}).Count(&total).Error; err != nil { + return nil, 0, fmt.Errorf("查询tag总数失败: %v", err) + } + + // 计算偏移量 + offset := int(req.PageSize * (req.Page - 1)) + + // 再查询当前页数据 + if err := db.Model(&model.Tag{}). + Select("id,tag_name"). + Offset(int(offset)). + Limit(int(req.PageSize)). + Order("created_at DESC"). // 按时间倒序,最新创建的在前 + Find(&result).Error; err != nil { + return nil, 0, err + } + + return result, int32(total), nil +} + +// FindTag 模糊搜索tag列表 +func FindTag(keyword *string, page, pageSize int32) ([]*moment.TagInfo, int32, error) { + // 校验分页参数合理性 + if page < 1 { + page = 1 + } + if pageSize < 1 || pageSize > 100 { // 限制最大页大小,防止查询过大 + pageSize = 20 + } + offset := (page - 1) * pageSize + + db := DB.Model(&model.Tag{}) + var total int64 + var result []*moment.TagInfo + + // 处理关键词查询 + if keyword != nil && len(*keyword) > 0 { + likePattern := "%" + *keyword + "%" + // 多字段模糊匹配,使用括号确保OR条件正确分组 + db = db.Where("tag_name LIKE ?", likePattern) + } + + // 获取总条数,用于分页计算 + if err := db.Count(&total).Error; err != nil { + return nil, 0, fmt.Errorf("获取tags总数失败: %w", err) + } + + // 执行分页查询 + if err := db. + Model(model.Tag{}). + Select("id,tag_name"). + Offset(int(offset)). + Limit(int(pageSize)). + Order("created_at DESC"). // 按创建时间倒序,最新的在前 + Find(&result).Error; err != nil { + return nil, 0, fmt.Errorf("查询tag列表失败: %w", err) + } + + return result, int32(total), nil +} + +// BindTag 文章绑定标签 +func BindTag(req moment.BindTagRequest) error { + // 参数校验 + if len(req.MomentID) == 0 || req.TagID == 0 { + return errors.New("缺少必须参数") + } + + // 使用事务确保数据一致性 + return DB.Transaction(func(tx *gorm.DB) error { + // 转换TagID类型 + tagID := uint(req.TagID) + + // 遍历所有需要绑定的文章ID + for _, momentID := range req.MomentID { + mID := uint(momentID) + + // 检查是否已绑定,避免重复绑定 + var count int64 + if err := tx.Model(&model.MomentTag{}). + Where("moment_id = ? AND tag_id = ?", mID, tagID). + Count(&count).Error; err != nil { + return fmt.Errorf("检查绑定关系失败: %w", err) + } + + // 如果未绑定,则创建关联 + if count == 0 { + if err := tx.Create(&model.MomentTag{ + MomentID: mID, + TagID: tagID, + }).Error; err != nil { + return fmt.Errorf("创建绑定关系失败: %w", err) + } + } + } + return nil + }) +} + +// ListMomentsByTag 获取指定标签的文章列表 +func ListMomentsByTag(req moment.ListMomentsByTagRequest) ([]*moment.Moment, int32, error) { + // 1. 参数校验 + if req.Tag == "" { + return nil, 0, errors.New("标签ID不能为空") + } + + // 处理分页参数 + page := req.Page + if page < 1 { + page = 1 + } + pageSize := req.PageSize + if pageSize < 1 || pageSize > 50 { + pageSize = 10 // 限制最大页大小,避免查询压力过大 + } + offset := (page - 1) * pageSize + + // 2. 构建查询:通过标签关联表查询对应的文章 + // 先查询关联关系表,再关联文章主表 + db := DB.Model(&model.MomentTag{}). + Joins("JOIN moment ON moment_tag.moment_id = moment.id"). + Where("moment_tag.tag_id = ?", req.Tag) + //Where("moment.status = 0") // 只查询正常状态的文章 + + // 3. 统计符合条件的总条数 + var total int64 + if err := db.Count(&total).Error; err != nil { + return nil, 0, fmt.Errorf("统计标签下文章总数失败: %w", err) + } + + // 4. 分页查询文章基本信息 + var moments []*moment.Moment + if err := db. + Select(`moment.id, moment.user_id, moment.content, moment.visibility, + moment.location, moment.like_count, moment.collect_count, + moment.comment_count, moment.created_at`). + Offset(int(offset)). + Limit(int(pageSize)). + Order("moment.created_at DESC"). // 按文章发布时间倒序 + Scan(&moments).Error; err != nil { + if errors.Is(err, gorm.ErrRecordNotFound) { + return []*moment.Moment{}, 0, nil // 无数据时返回空列表 + } + return nil, 0, fmt.Errorf("查询标签下文章列表失败: %w", err) + } + + // 5. 批量查询文章图片(优化N+1查询问题) + if len(moments) > 0 { + // 收集所有文章ID + var momentIDs []uint64 + for _, m := range moments { + momentIDs = append(momentIDs, uint64(m.ID)) + } + + // 一次查询所有文章的图片 + var files []*model.MomentFile + if err := DB.Where("moment_id IN (?)", momentIDs).Find(&files).Error; err != nil { + return nil, 0, fmt.Errorf("查询文章图片失败: %w", err) + } + + // 建立文章ID到图片的映射 + fileMap := make(map[uint64][]*moment.MomentFile) + for _, f := range files { + dtoFile := &moment.MomentFile{ + ID: int64(f.ID), + MomentID: int64(f.MomentID), + FileURL: f.FileURL, + FileType: f.FileType, + SortOrder: int8(f.SortOrder), + } + fileMap[uint64(f.MomentID)] = append(fileMap[uint64(f.MomentID)], dtoFile) + } + + // 为每个文章分配图片 + for _, m := range moments { + m.Files = fileMap[uint64(m.ID)] + } + } + + // 6. 转换总条数为int32返回 + return moments, int32(total), nil +} + +// ListCategory 获取分类列表 +func ListCategory() ([]*moment.CategoryInfo, error) { + db := DB + var result []*moment.CategoryInfo + + // 查询数据 + if err := db.Model(&model.Category{}). + Select("id,category_name"). + Find(&result).Error; err != nil { + return nil, err + } + + return result, nil +} + +// BindCategory 文章绑定分类 +func BindCategory(req moment.BindCategoryRequest) error { + // 参数校验 + if len(req.MomentID) == 0 || req.CategoryID == 0 { + return errors.New("缺少必须参数") + } + + // 使用事务确保数据一致性 + return DB.Transaction(func(tx *gorm.DB) error { + // 转换类型 + categoryID := uint(req.CategoryID) + + // 遍历所有需要绑定的文章ID + for _, momentID := range req.MomentID { + mID := uint(momentID) + + // 检查是否已绑定,避免重复绑定 + var count int64 + if err := tx.Model(&model.MomentCategory{}). + Where("moment_id = ? AND category_id = ?", mID, categoryID). + Count(&count).Error; err != nil { + return fmt.Errorf("检查绑定关系失败: %w", err) + } + + // 如果未绑定,则创建关联 + if count == 0 { + if err := tx.Create(&model.MomentCategory{ + MomentID: mID, + CategoryID: categoryID, + }).Error; err != nil { + return fmt.Errorf("创建绑定关系失败: %w", err) + } + } + } + return nil + }) +} + +// ListMomentsByCategory 获取指定标签的文章列表 +func ListMomentsByCategory(req moment.ListMomentsByCategoryRequest) ([]*moment.Moment, int32, error) { + // 1. 参数校验 + if req.CategoryID == 0 { + return nil, 0, errors.New("分类不能为空") + } + + // 处理分页参数 + page := req.Page + if page < 1 { + page = 1 + } + pageSize := req.PageSize + if pageSize < 1 || pageSize > 50 { + pageSize = 10 // 限制最大页大小,避免查询压力过大 + } + offset := (page - 1) * pageSize + + // 2. 构建查询:通过标签关联表查询对应的文章 + // 先查询关联关系表,再关联文章主表 + db := DB.Model(&model.MomentCategory{}). + Joins("JOIN moment ON moment_category.moment_id = moment.id"). + Where("moment_category.category_id = ?", req.CategoryID) + //Where("moment.status = 0") // 只查询正常状态的文章 + + // 3. 统计符合条件的总条数 + var total int64 + if err := db.Count(&total).Error; err != nil { + return nil, 0, fmt.Errorf("统计标签下文章总数失败: %w", err) + } + + // 4. 分页查询文章基本信息 + var moments []*moment.Moment + if err := db. + Select(`moment.id, moment.user_id, moment.content, moment.visibility, + moment.location, moment.like_count, moment.collect_count, + moment.comment_count, moment.created_at`). + Offset(int(offset)). + Limit(int(pageSize)). + Order("moment.created_at DESC"). // 按文章发布时间倒序 + Scan(&moments).Error; err != nil { + if errors.Is(err, gorm.ErrRecordNotFound) { + return []*moment.Moment{}, 0, nil // 无数据时返回空列表 + } + return nil, 0, fmt.Errorf("查询标签下文章列表失败: %w", err) + } + + // 5. 批量查询文章图片(优化N+1查询问题) + if len(moments) > 0 { + // 收集所有文章ID + var momentIDs []uint64 + for _, m := range moments { + momentIDs = append(momentIDs, uint64(m.ID)) + } + + // 一次查询所有文章的图片 + var files []*model.MomentFile + if err := DB.Where("moment_id IN (?)", momentIDs).Find(&files).Error; err != nil { + return nil, 0, fmt.Errorf("查询文章图片失败: %w", err) + } + + // 建立文章ID到图片的映射 + fileMap := make(map[uint64][]*moment.MomentFile) + for _, f := range files { + dtoFile := &moment.MomentFile{ + ID: int64(f.ID), + MomentID: int64(f.MomentID), + FileURL: f.FileURL, + FileType: f.FileType, + SortOrder: int8(f.SortOrder), + } + fileMap[uint64(f.MomentID)] = append(fileMap[uint64(f.MomentID)], dtoFile) + } + + // 为每个文章分配图片 + for _, m := range moments { + m.Files = fileMap[uint64(m.ID)] + } + } + + // 6. 转换总条数为int32返回 + return moments, int32(total), nil +} diff --git a/weMedia/biz/handler/moment/moments_service.go b/weMedia/biz/handler/moment/moments_service.go index 33119c4..49b6319 100644 --- a/weMedia/biz/handler/moment/moments_service.go +++ b/weMedia/biz/handler/moment/moments_service.go @@ -311,3 +311,190 @@ func ListUserCollects(ctx context.Context, c *app.RequestContext) { c.JSON(consts.StatusOK, resp) } + +// CreateTag . +// @router /v1/weMedia/moments/tag/ [POST] +func CreateTag(ctx context.Context, c *app.RequestContext) { + var err error + var req moment.CreateTagRequest + err = c.BindAndValidate(&req) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + err = mysql.CreateTag(req) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + resp := new(moment.CreateTagResponse) + + c.JSON(consts.StatusOK, resp) +} + +// DeleteTag . +// @router /v1/weMedia/moments/tag/ [DELETE] +func DeleteTag(ctx context.Context, c *app.RequestContext) { + var err error + var req moment.DeleteTagRequest + err = c.BindAndValidate(&req) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + err = mysql.DeleteTag(req) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + resp := new(moment.DeleteTagResponse) + + c.JSON(consts.StatusOK, resp) +} + +// ListTag . +// @router /v1/weMedia/moments/tag/ [GET] +func ListTag(ctx context.Context, c *app.RequestContext) { + var err error + var req moment.ListTagRequest + err = c.BindAndValidate(&req) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + tag, total, err := mysql.ListTag(req) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + resp := new(moment.ListTagResponse) + resp.Tags = tag + resp.Total = int32(total) + + c.JSON(consts.StatusOK, resp) +} + +// FandTag . +// @router /v1/weMedia/moments/tag/find/ [GET] +func FandTag(ctx context.Context, c *app.RequestContext) { + var err error + var req moment.FindTagRequest + err = c.BindAndValidate(&req) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + data, total, err := mysql.FindTag(&req.Keyword, req.Page, req.PageSize) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + resp := new(moment.FindTagResponse) + resp.Tags = data + resp.Total = total + + c.JSON(consts.StatusOK, resp) +} + +// BindTag . +// @router /v1/weMedia/moments/tag/bind/ [POST] +func BindTag(ctx context.Context, c *app.RequestContext) { + var err error + var req moment.BindTagRequest + err = c.BindAndValidate(&req) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + err = mysql.BindTag(req) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + resp := new(moment.BindTagResponse) + + c.JSON(consts.StatusOK, resp) +} + +// ListMomentsByTag . +// @router /v1/weMedia/moments/tag/list/ [GET] +func ListMomentsByTag(ctx context.Context, c *app.RequestContext) { + var err error + var req moment.ListMomentsByTagRequest + err = c.BindAndValidate(&req) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + data, total, err := mysql.ListMomentsByTag(req) + if err != nil { + return + } + resp := new(moment.ListMomentsByTagResponse) + resp.Moments = data + resp.Total = total + + c.JSON(consts.StatusOK, resp) +} + +// ListCategory . +// @router /v1/weMedia/moments/category/ [GET] +func ListCategory(ctx context.Context, c *app.RequestContext) { + var err error + var req moment.ListCategoryRequest + err = c.BindAndValidate(&req) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + category, err := mysql.ListCategory() + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + resp := new(moment.ListCategoryResponse) + resp.Categorys = category + + c.JSON(consts.StatusOK, resp) +} + +// BindCategory . +// @router /v1/weMedia/moments/category/ [POST] +func BindCategory(ctx context.Context, c *app.RequestContext) { + var err error + var req moment.BindCategoryRequest + err = c.BindAndValidate(&req) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + err = mysql.BindCategory(req) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + resp := new(moment.BindCategoryResponse) + + c.JSON(consts.StatusOK, resp) +} + +// ListMomentsByCategory . +// @router /v1/weMedia/moments/category/list/ [GET] +func ListMomentsByCategory(ctx context.Context, c *app.RequestContext) { + var err error + var req moment.ListMomentsByCategoryRequest + err = c.BindAndValidate(&req) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + category, tatol, err := mysql.ListMomentsByCategory(req) + if err != nil { + return + } + resp := new(moment.ListMomentsByCategoryResponse) + resp.Moments = category + resp.Total = tatol + + c.JSON(consts.StatusOK, resp) +} diff --git a/weMedia/biz/model/moment/moment.go b/weMedia/biz/model/moment/moment.go index c3f45a2..f7775ae 100644 --- a/weMedia/biz/model/moment/moment.go +++ b/weMedia/biz/model/moment/moment.go @@ -8397,6 +8397,4248 @@ func (p *ListMomentsAppointResponse) String() string { } +type TagInfo struct { + ID int32 `thrift:"id,1" form:"id" json:"id" query:"id"` + TagName string `thrift:"tag_name,2" form:"tag_name" json:"tag_name" query:"tag_name"` +} + +func NewTagInfo() *TagInfo { + return &TagInfo{} +} + +func (p *TagInfo) InitDefault() { +} + +func (p *TagInfo) GetID() (v int32) { + return p.ID +} + +func (p *TagInfo) GetTagName() (v string) { + return p.TagName +} + +var fieldIDToName_TagInfo = map[int16]string{ + 1: "id", + 2: "tag_name", +} + +func (p *TagInfo) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.I32 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.STRING { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_TagInfo[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *TagInfo) ReadField1(iprot thrift.TProtocol) error { + + var _field int32 + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = v + } + p.ID = _field + return nil +} +func (p *TagInfo) ReadField2(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.TagName = _field + return nil +} + +func (p *TagInfo) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("TagInfo"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *TagInfo) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("id", thrift.I32, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(p.ID); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *TagInfo) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("tag_name", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.TagName); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *TagInfo) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("TagInfo(%+v)", *p) + +} + +type CreateTagResponse struct { + Code Code `thrift:"code,1" form:"code" json:"code" query:"code"` + Msg string `thrift:"msg,2" form:"msg" json:"msg" query:"msg"` +} + +func NewCreateTagResponse() *CreateTagResponse { + return &CreateTagResponse{} +} + +func (p *CreateTagResponse) InitDefault() { +} + +func (p *CreateTagResponse) GetCode() (v Code) { + return p.Code +} + +func (p *CreateTagResponse) GetMsg() (v string) { + return p.Msg +} + +var fieldIDToName_CreateTagResponse = map[int16]string{ + 1: "code", + 2: "msg", +} + +func (p *CreateTagResponse) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.I32 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.STRING { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_CreateTagResponse[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *CreateTagResponse) ReadField1(iprot thrift.TProtocol) error { + + var _field Code + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = Code(v) + } + p.Code = _field + return nil +} +func (p *CreateTagResponse) ReadField2(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Msg = _field + return nil +} + +func (p *CreateTagResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("CreateTagResponse"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *CreateTagResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("code", thrift.I32, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(int32(p.Code)); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *CreateTagResponse) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("msg", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Msg); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *CreateTagResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("CreateTagResponse(%+v)", *p) + +} + +type CreateTagRequest struct { + TagName string `thrift:"tag_name,1" form:"tag_name" json:"tag_name" query:"tag_name"` + UserID string `thrift:"user_id,2" form:"user_id" json:"user_id" query:"user_id"` +} + +func NewCreateTagRequest() *CreateTagRequest { + return &CreateTagRequest{} +} + +func (p *CreateTagRequest) InitDefault() { +} + +func (p *CreateTagRequest) GetTagName() (v string) { + return p.TagName +} + +func (p *CreateTagRequest) GetUserID() (v string) { + return p.UserID +} + +var fieldIDToName_CreateTagRequest = map[int16]string{ + 1: "tag_name", + 2: "user_id", +} + +func (p *CreateTagRequest) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRING { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.STRING { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_CreateTagRequest[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *CreateTagRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.TagName = _field + return nil +} +func (p *CreateTagRequest) ReadField2(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.UserID = _field + return nil +} + +func (p *CreateTagRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("CreateTagRequest"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *CreateTagRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("tag_name", thrift.STRING, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.TagName); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *CreateTagRequest) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("user_id", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.UserID); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *CreateTagRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("CreateTagRequest(%+v)", *p) + +} + +type DeleteTagResponse struct { + Code Code `thrift:"code,1" form:"code" json:"code" query:"code"` + Msg string `thrift:"msg,2" form:"msg" json:"msg" query:"msg"` +} + +func NewDeleteTagResponse() *DeleteTagResponse { + return &DeleteTagResponse{} +} + +func (p *DeleteTagResponse) InitDefault() { +} + +func (p *DeleteTagResponse) GetCode() (v Code) { + return p.Code +} + +func (p *DeleteTagResponse) GetMsg() (v string) { + return p.Msg +} + +var fieldIDToName_DeleteTagResponse = map[int16]string{ + 1: "code", + 2: "msg", +} + +func (p *DeleteTagResponse) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.I32 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.STRING { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_DeleteTagResponse[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *DeleteTagResponse) ReadField1(iprot thrift.TProtocol) error { + + var _field Code + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = Code(v) + } + p.Code = _field + return nil +} +func (p *DeleteTagResponse) ReadField2(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Msg = _field + return nil +} + +func (p *DeleteTagResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("DeleteTagResponse"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *DeleteTagResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("code", thrift.I32, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(int32(p.Code)); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *DeleteTagResponse) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("msg", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Msg); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *DeleteTagResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("DeleteTagResponse(%+v)", *p) + +} + +type DeleteTagRequest struct { + TagName string `thrift:"tag_name,1" form:"tag_name" json:"tag_name" query:"tag_name"` + UserID string `thrift:"user_id,2" form:"user_id" json:"user_id" query:"user_id"` +} + +func NewDeleteTagRequest() *DeleteTagRequest { + return &DeleteTagRequest{} +} + +func (p *DeleteTagRequest) InitDefault() { +} + +func (p *DeleteTagRequest) GetTagName() (v string) { + return p.TagName +} + +func (p *DeleteTagRequest) GetUserID() (v string) { + return p.UserID +} + +var fieldIDToName_DeleteTagRequest = map[int16]string{ + 1: "tag_name", + 2: "user_id", +} + +func (p *DeleteTagRequest) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRING { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.STRING { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_DeleteTagRequest[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *DeleteTagRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.TagName = _field + return nil +} +func (p *DeleteTagRequest) ReadField2(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.UserID = _field + return nil +} + +func (p *DeleteTagRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("DeleteTagRequest"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *DeleteTagRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("tag_name", thrift.STRING, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.TagName); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *DeleteTagRequest) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("user_id", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.UserID); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *DeleteTagRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("DeleteTagRequest(%+v)", *p) + +} + +type ListTagResponse struct { + Code Code `thrift:"code,1" form:"code" json:"code" query:"code"` + Msg string `thrift:"msg,2" form:"msg" json:"msg" query:"msg"` + Tags []*TagInfo `thrift:"tags,3" form:"tags" json:"tags" query:"tags"` + Total int32 `thrift:"total,4" form:"total" json:"total" query:"total"` +} + +func NewListTagResponse() *ListTagResponse { + return &ListTagResponse{} +} + +func (p *ListTagResponse) InitDefault() { +} + +func (p *ListTagResponse) GetCode() (v Code) { + return p.Code +} + +func (p *ListTagResponse) GetMsg() (v string) { + return p.Msg +} + +func (p *ListTagResponse) GetTags() (v []*TagInfo) { + return p.Tags +} + +func (p *ListTagResponse) GetTotal() (v int32) { + return p.Total +} + +var fieldIDToName_ListTagResponse = map[int16]string{ + 1: "code", + 2: "msg", + 3: "tags", + 4: "total", +} + +func (p *ListTagResponse) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.I32 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.STRING { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.LIST { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 4: + if fieldTypeId == thrift.I32 { + if err = p.ReadField4(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_ListTagResponse[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *ListTagResponse) ReadField1(iprot thrift.TProtocol) error { + + var _field Code + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = Code(v) + } + p.Code = _field + return nil +} +func (p *ListTagResponse) ReadField2(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Msg = _field + return nil +} +func (p *ListTagResponse) ReadField3(iprot thrift.TProtocol) error { + _, size, err := iprot.ReadListBegin() + if err != nil { + return err + } + _field := make([]*TagInfo, 0, size) + values := make([]TagInfo, size) + for i := 0; i < size; i++ { + _elem := &values[i] + _elem.InitDefault() + + if err := _elem.Read(iprot); err != nil { + return err + } + + _field = append(_field, _elem) + } + if err := iprot.ReadListEnd(); err != nil { + return err + } + p.Tags = _field + return nil +} +func (p *ListTagResponse) ReadField4(iprot thrift.TProtocol) error { + + var _field int32 + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = v + } + p.Total = _field + return nil +} + +func (p *ListTagResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListTagResponse"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + if err = p.writeField3(oprot); err != nil { + fieldId = 3 + goto WriteFieldError + } + if err = p.writeField4(oprot); err != nil { + fieldId = 4 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *ListTagResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("code", thrift.I32, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(int32(p.Code)); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *ListTagResponse) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("msg", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Msg); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} +func (p *ListTagResponse) writeField3(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("tags", thrift.LIST, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteListBegin(thrift.STRUCT, len(p.Tags)); err != nil { + return err + } + for _, v := range p.Tags { + if err := v.Write(oprot); err != nil { + return err + } + } + if err := oprot.WriteListEnd(); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 end error: ", p), err) +} +func (p *ListTagResponse) writeField4(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("total", thrift.I32, 4); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(p.Total); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 4 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 4 end error: ", p), err) +} + +func (p *ListTagResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ListTagResponse(%+v)", *p) + +} + +type ListTagRequest struct { + UserID string `thrift:"user_id,1" form:"user_id" json:"user_id" query:"user_id"` + // 页码,默认1 + Page int32 `thrift:"page,2" form:"page" json:"page" query:"page"` + // 每页数量 + PageSize int32 `thrift:"page_size,3" form:"page_size" json:"page_size" query:"page_size"` +} + +func NewListTagRequest() *ListTagRequest { + return &ListTagRequest{} +} + +func (p *ListTagRequest) InitDefault() { +} + +func (p *ListTagRequest) GetUserID() (v string) { + return p.UserID +} + +func (p *ListTagRequest) GetPage() (v int32) { + return p.Page +} + +func (p *ListTagRequest) GetPageSize() (v int32) { + return p.PageSize +} + +var fieldIDToName_ListTagRequest = map[int16]string{ + 1: "user_id", + 2: "page", + 3: "page_size", +} + +func (p *ListTagRequest) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRING { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.I32 { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.I32 { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_ListTagRequest[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *ListTagRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.UserID = _field + return nil +} +func (p *ListTagRequest) ReadField2(iprot thrift.TProtocol) error { + + var _field int32 + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = v + } + p.Page = _field + return nil +} +func (p *ListTagRequest) ReadField3(iprot thrift.TProtocol) error { + + var _field int32 + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = v + } + p.PageSize = _field + return nil +} + +func (p *ListTagRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListTagRequest"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + if err = p.writeField3(oprot); err != nil { + fieldId = 3 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *ListTagRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("user_id", thrift.STRING, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.UserID); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *ListTagRequest) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("page", thrift.I32, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(p.Page); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} +func (p *ListTagRequest) writeField3(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("page_size", thrift.I32, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(p.PageSize); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 end error: ", p), err) +} + +func (p *ListTagRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ListTagRequest(%+v)", *p) + +} + +type FindTagRequest struct { + // 关键字 + Keyword string `thrift:"keyword,1" form:"keyword" json:"keyword" query:"keyword"` + // 页码,默认1 + Page int32 `thrift:"page,2" form:"page" json:"page" query:"page"` + // 每页数量 + PageSize int32 `thrift:"page_size,3" form:"page_size" json:"page_size" query:"page_size"` +} + +func NewFindTagRequest() *FindTagRequest { + return &FindTagRequest{} +} + +func (p *FindTagRequest) InitDefault() { +} + +func (p *FindTagRequest) GetKeyword() (v string) { + return p.Keyword +} + +func (p *FindTagRequest) GetPage() (v int32) { + return p.Page +} + +func (p *FindTagRequest) GetPageSize() (v int32) { + return p.PageSize +} + +var fieldIDToName_FindTagRequest = map[int16]string{ + 1: "keyword", + 2: "page", + 3: "page_size", +} + +func (p *FindTagRequest) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRING { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.I32 { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.I32 { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_FindTagRequest[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *FindTagRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Keyword = _field + return nil +} +func (p *FindTagRequest) ReadField2(iprot thrift.TProtocol) error { + + var _field int32 + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = v + } + p.Page = _field + return nil +} +func (p *FindTagRequest) ReadField3(iprot thrift.TProtocol) error { + + var _field int32 + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = v + } + p.PageSize = _field + return nil +} + +func (p *FindTagRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("FindTagRequest"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + if err = p.writeField3(oprot); err != nil { + fieldId = 3 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *FindTagRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("keyword", thrift.STRING, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Keyword); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *FindTagRequest) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("page", thrift.I32, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(p.Page); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} +func (p *FindTagRequest) writeField3(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("page_size", thrift.I32, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(p.PageSize); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 end error: ", p), err) +} + +func (p *FindTagRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("FindTagRequest(%+v)", *p) + +} + +type FindTagResponse struct { + Code Code `thrift:"code,1" form:"code" json:"code" query:"code"` + Tags []*TagInfo `thrift:"tags,2" form:"tags" json:"tags" query:"tags"` + Total int32 `thrift:"total,3" form:"total" json:"total" query:"total"` +} + +func NewFindTagResponse() *FindTagResponse { + return &FindTagResponse{} +} + +func (p *FindTagResponse) InitDefault() { +} + +func (p *FindTagResponse) GetCode() (v Code) { + return p.Code +} + +func (p *FindTagResponse) GetTags() (v []*TagInfo) { + return p.Tags +} + +func (p *FindTagResponse) GetTotal() (v int32) { + return p.Total +} + +var fieldIDToName_FindTagResponse = map[int16]string{ + 1: "code", + 2: "tags", + 3: "total", +} + +func (p *FindTagResponse) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.I32 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.LIST { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.I32 { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_FindTagResponse[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *FindTagResponse) ReadField1(iprot thrift.TProtocol) error { + + var _field Code + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = Code(v) + } + p.Code = _field + return nil +} +func (p *FindTagResponse) ReadField2(iprot thrift.TProtocol) error { + _, size, err := iprot.ReadListBegin() + if err != nil { + return err + } + _field := make([]*TagInfo, 0, size) + values := make([]TagInfo, size) + for i := 0; i < size; i++ { + _elem := &values[i] + _elem.InitDefault() + + if err := _elem.Read(iprot); err != nil { + return err + } + + _field = append(_field, _elem) + } + if err := iprot.ReadListEnd(); err != nil { + return err + } + p.Tags = _field + return nil +} +func (p *FindTagResponse) ReadField3(iprot thrift.TProtocol) error { + + var _field int32 + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = v + } + p.Total = _field + return nil +} + +func (p *FindTagResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("FindTagResponse"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + if err = p.writeField3(oprot); err != nil { + fieldId = 3 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *FindTagResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("code", thrift.I32, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(int32(p.Code)); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *FindTagResponse) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("tags", thrift.LIST, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteListBegin(thrift.STRUCT, len(p.Tags)); err != nil { + return err + } + for _, v := range p.Tags { + if err := v.Write(oprot); err != nil { + return err + } + } + if err := oprot.WriteListEnd(); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} +func (p *FindTagResponse) writeField3(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("total", thrift.I32, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(p.Total); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 end error: ", p), err) +} + +func (p *FindTagResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("FindTagResponse(%+v)", *p) + +} + +type BindTagResponse struct { + Code Code `thrift:"code,1" form:"code" json:"code" query:"code"` + Msg string `thrift:"msg,2" form:"msg" json:"msg" query:"msg"` +} + +func NewBindTagResponse() *BindTagResponse { + return &BindTagResponse{} +} + +func (p *BindTagResponse) InitDefault() { +} + +func (p *BindTagResponse) GetCode() (v Code) { + return p.Code +} + +func (p *BindTagResponse) GetMsg() (v string) { + return p.Msg +} + +var fieldIDToName_BindTagResponse = map[int16]string{ + 1: "code", + 2: "msg", +} + +func (p *BindTagResponse) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.I32 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.STRING { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_BindTagResponse[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *BindTagResponse) ReadField1(iprot thrift.TProtocol) error { + + var _field Code + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = Code(v) + } + p.Code = _field + return nil +} +func (p *BindTagResponse) ReadField2(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Msg = _field + return nil +} + +func (p *BindTagResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("BindTagResponse"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *BindTagResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("code", thrift.I32, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(int32(p.Code)); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *BindTagResponse) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("msg", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Msg); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *BindTagResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("BindTagResponse(%+v)", *p) + +} + +type BindTagRequest struct { + MomentID []int32 `thrift:"moment_id,1" form:"moment_id" json:"moment_id" query:"moment_id"` + TagID int32 `thrift:"tag_id,2" form:"tag_id" json:"tag_id" query:"tag_id"` +} + +func NewBindTagRequest() *BindTagRequest { + return &BindTagRequest{} +} + +func (p *BindTagRequest) InitDefault() { +} + +func (p *BindTagRequest) GetMomentID() (v []int32) { + return p.MomentID +} + +func (p *BindTagRequest) GetTagID() (v int32) { + return p.TagID +} + +var fieldIDToName_BindTagRequest = map[int16]string{ + 1: "moment_id", + 2: "tag_id", +} + +func (p *BindTagRequest) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.LIST { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.I32 { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_BindTagRequest[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *BindTagRequest) ReadField1(iprot thrift.TProtocol) error { + _, size, err := iprot.ReadListBegin() + if err != nil { + return err + } + _field := make([]int32, 0, size) + for i := 0; i < size; i++ { + + var _elem int32 + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _elem = v + } + + _field = append(_field, _elem) + } + if err := iprot.ReadListEnd(); err != nil { + return err + } + p.MomentID = _field + return nil +} +func (p *BindTagRequest) ReadField2(iprot thrift.TProtocol) error { + + var _field int32 + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = v + } + p.TagID = _field + return nil +} + +func (p *BindTagRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("BindTagRequest"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *BindTagRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("moment_id", thrift.LIST, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteListBegin(thrift.I32, len(p.MomentID)); err != nil { + return err + } + for _, v := range p.MomentID { + if err := oprot.WriteI32(v); err != nil { + return err + } + } + if err := oprot.WriteListEnd(); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *BindTagRequest) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("tag_id", thrift.I32, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(p.TagID); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *BindTagRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("BindTagRequest(%+v)", *p) + +} + +// 获取指定tag动态列表请求 +type ListMomentsByTagRequest struct { + Tag string `thrift:"tag,1" form:"tag" json:"tag" query:"tag"` + // 页码,默认1 + Page int32 `thrift:"page,2" form:"page" json:"page" query:"page"` + // 每页数量,默认10 + PageSize int32 `thrift:"page_size,3" form:"page_size" json:"page_size" query:"page_size"` +} + +func NewListMomentsByTagRequest() *ListMomentsByTagRequest { + return &ListMomentsByTagRequest{} +} + +func (p *ListMomentsByTagRequest) InitDefault() { +} + +func (p *ListMomentsByTagRequest) GetTag() (v string) { + return p.Tag +} + +func (p *ListMomentsByTagRequest) GetPage() (v int32) { + return p.Page +} + +func (p *ListMomentsByTagRequest) GetPageSize() (v int32) { + return p.PageSize +} + +var fieldIDToName_ListMomentsByTagRequest = map[int16]string{ + 1: "tag", + 2: "page", + 3: "page_size", +} + +func (p *ListMomentsByTagRequest) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRING { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.I32 { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.I32 { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_ListMomentsByTagRequest[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *ListMomentsByTagRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Tag = _field + return nil +} +func (p *ListMomentsByTagRequest) ReadField2(iprot thrift.TProtocol) error { + + var _field int32 + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = v + } + p.Page = _field + return nil +} +func (p *ListMomentsByTagRequest) ReadField3(iprot thrift.TProtocol) error { + + var _field int32 + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = v + } + p.PageSize = _field + return nil +} + +func (p *ListMomentsByTagRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListMomentsByTagRequest"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + if err = p.writeField3(oprot); err != nil { + fieldId = 3 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *ListMomentsByTagRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("tag", thrift.STRING, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Tag); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *ListMomentsByTagRequest) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("page", thrift.I32, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(p.Page); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} +func (p *ListMomentsByTagRequest) writeField3(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("page_size", thrift.I32, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(p.PageSize); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 end error: ", p), err) +} + +func (p *ListMomentsByTagRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ListMomentsByTagRequest(%+v)", *p) + +} + +// 获取指定tag动态列表响应 +type ListMomentsByTagResponse struct { + Code Code `thrift:"code,1" form:"code" json:"code" query:"code"` + // 动态列表 + Moments []*Moment `thrift:"moments,2" form:"moments" json:"moments" query:"moments"` + // 总数量 + Total int32 `thrift:"total,3" form:"total" json:"total" query:"total"` +} + +func NewListMomentsByTagResponse() *ListMomentsByTagResponse { + return &ListMomentsByTagResponse{} +} + +func (p *ListMomentsByTagResponse) InitDefault() { +} + +func (p *ListMomentsByTagResponse) GetCode() (v Code) { + return p.Code +} + +func (p *ListMomentsByTagResponse) GetMoments() (v []*Moment) { + return p.Moments +} + +func (p *ListMomentsByTagResponse) GetTotal() (v int32) { + return p.Total +} + +var fieldIDToName_ListMomentsByTagResponse = map[int16]string{ + 1: "code", + 2: "moments", + 3: "total", +} + +func (p *ListMomentsByTagResponse) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.I32 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.LIST { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.I32 { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_ListMomentsByTagResponse[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *ListMomentsByTagResponse) ReadField1(iprot thrift.TProtocol) error { + + var _field Code + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = Code(v) + } + p.Code = _field + return nil +} +func (p *ListMomentsByTagResponse) ReadField2(iprot thrift.TProtocol) error { + _, size, err := iprot.ReadListBegin() + if err != nil { + return err + } + _field := make([]*Moment, 0, size) + values := make([]Moment, size) + for i := 0; i < size; i++ { + _elem := &values[i] + _elem.InitDefault() + + if err := _elem.Read(iprot); err != nil { + return err + } + + _field = append(_field, _elem) + } + if err := iprot.ReadListEnd(); err != nil { + return err + } + p.Moments = _field + return nil +} +func (p *ListMomentsByTagResponse) ReadField3(iprot thrift.TProtocol) error { + + var _field int32 + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = v + } + p.Total = _field + return nil +} + +func (p *ListMomentsByTagResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListMomentsByTagResponse"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + if err = p.writeField3(oprot); err != nil { + fieldId = 3 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *ListMomentsByTagResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("code", thrift.I32, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(int32(p.Code)); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *ListMomentsByTagResponse) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("moments", thrift.LIST, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteListBegin(thrift.STRUCT, len(p.Moments)); err != nil { + return err + } + for _, v := range p.Moments { + if err := v.Write(oprot); err != nil { + return err + } + } + if err := oprot.WriteListEnd(); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} +func (p *ListMomentsByTagResponse) writeField3(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("total", thrift.I32, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(p.Total); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 end error: ", p), err) +} + +func (p *ListMomentsByTagResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ListMomentsByTagResponse(%+v)", *p) + +} + +type CategoryInfo struct { + ID int32 `thrift:"id,1" form:"id" json:"id" query:"id"` + CategoryName string `thrift:"category_name,2" form:"category_name" json:"category_name" query:"category_name"` +} + +func NewCategoryInfo() *CategoryInfo { + return &CategoryInfo{} +} + +func (p *CategoryInfo) InitDefault() { +} + +func (p *CategoryInfo) GetID() (v int32) { + return p.ID +} + +func (p *CategoryInfo) GetCategoryName() (v string) { + return p.CategoryName +} + +var fieldIDToName_CategoryInfo = map[int16]string{ + 1: "id", + 2: "category_name", +} + +func (p *CategoryInfo) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.I32 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.STRING { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_CategoryInfo[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *CategoryInfo) ReadField1(iprot thrift.TProtocol) error { + + var _field int32 + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = v + } + p.ID = _field + return nil +} +func (p *CategoryInfo) ReadField2(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.CategoryName = _field + return nil +} + +func (p *CategoryInfo) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("CategoryInfo"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *CategoryInfo) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("id", thrift.I32, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(p.ID); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *CategoryInfo) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("category_name", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.CategoryName); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *CategoryInfo) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("CategoryInfo(%+v)", *p) + +} + +type ListCategoryResponse struct { + Code Code `thrift:"code,1" form:"code" json:"code" query:"code"` + Msg string `thrift:"msg,2" form:"msg" json:"msg" query:"msg"` + Categorys []*CategoryInfo `thrift:"categorys,3" form:"categorys" json:"categorys" query:"categorys"` +} + +func NewListCategoryResponse() *ListCategoryResponse { + return &ListCategoryResponse{} +} + +func (p *ListCategoryResponse) InitDefault() { +} + +func (p *ListCategoryResponse) GetCode() (v Code) { + return p.Code +} + +func (p *ListCategoryResponse) GetMsg() (v string) { + return p.Msg +} + +func (p *ListCategoryResponse) GetCategorys() (v []*CategoryInfo) { + return p.Categorys +} + +var fieldIDToName_ListCategoryResponse = map[int16]string{ + 1: "code", + 2: "msg", + 3: "categorys", +} + +func (p *ListCategoryResponse) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.I32 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.STRING { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.LIST { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_ListCategoryResponse[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *ListCategoryResponse) ReadField1(iprot thrift.TProtocol) error { + + var _field Code + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = Code(v) + } + p.Code = _field + return nil +} +func (p *ListCategoryResponse) ReadField2(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Msg = _field + return nil +} +func (p *ListCategoryResponse) ReadField3(iprot thrift.TProtocol) error { + _, size, err := iprot.ReadListBegin() + if err != nil { + return err + } + _field := make([]*CategoryInfo, 0, size) + values := make([]CategoryInfo, size) + for i := 0; i < size; i++ { + _elem := &values[i] + _elem.InitDefault() + + if err := _elem.Read(iprot); err != nil { + return err + } + + _field = append(_field, _elem) + } + if err := iprot.ReadListEnd(); err != nil { + return err + } + p.Categorys = _field + return nil +} + +func (p *ListCategoryResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListCategoryResponse"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + if err = p.writeField3(oprot); err != nil { + fieldId = 3 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *ListCategoryResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("code", thrift.I32, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(int32(p.Code)); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *ListCategoryResponse) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("msg", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Msg); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} +func (p *ListCategoryResponse) writeField3(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("categorys", thrift.LIST, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteListBegin(thrift.STRUCT, len(p.Categorys)); err != nil { + return err + } + for _, v := range p.Categorys { + if err := v.Write(oprot); err != nil { + return err + } + } + if err := oprot.WriteListEnd(); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 end error: ", p), err) +} + +func (p *ListCategoryResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ListCategoryResponse(%+v)", *p) + +} + +type ListCategoryRequest struct { + UserID string `thrift:"user_id,1" form:"user_id" json:"user_id" query:"user_id"` +} + +func NewListCategoryRequest() *ListCategoryRequest { + return &ListCategoryRequest{} +} + +func (p *ListCategoryRequest) InitDefault() { +} + +func (p *ListCategoryRequest) GetUserID() (v string) { + return p.UserID +} + +var fieldIDToName_ListCategoryRequest = map[int16]string{ + 1: "user_id", +} + +func (p *ListCategoryRequest) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRING { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_ListCategoryRequest[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *ListCategoryRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.UserID = _field + return nil +} + +func (p *ListCategoryRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListCategoryRequest"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *ListCategoryRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("user_id", thrift.STRING, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.UserID); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} + +func (p *ListCategoryRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ListCategoryRequest(%+v)", *p) + +} + +type BindCategoryResponse struct { + Code Code `thrift:"code,1" form:"code" json:"code" query:"code"` + Msg string `thrift:"msg,2" form:"msg" json:"msg" query:"msg"` +} + +func NewBindCategoryResponse() *BindCategoryResponse { + return &BindCategoryResponse{} +} + +func (p *BindCategoryResponse) InitDefault() { +} + +func (p *BindCategoryResponse) GetCode() (v Code) { + return p.Code +} + +func (p *BindCategoryResponse) GetMsg() (v string) { + return p.Msg +} + +var fieldIDToName_BindCategoryResponse = map[int16]string{ + 1: "code", + 2: "msg", +} + +func (p *BindCategoryResponse) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.I32 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.STRING { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_BindCategoryResponse[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *BindCategoryResponse) ReadField1(iprot thrift.TProtocol) error { + + var _field Code + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = Code(v) + } + p.Code = _field + return nil +} +func (p *BindCategoryResponse) ReadField2(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Msg = _field + return nil +} + +func (p *BindCategoryResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("BindCategoryResponse"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *BindCategoryResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("code", thrift.I32, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(int32(p.Code)); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *BindCategoryResponse) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("msg", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Msg); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *BindCategoryResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("BindCategoryResponse(%+v)", *p) + +} + +type BindCategoryRequest struct { + MomentID []int32 `thrift:"moment_id,1" form:"moment_id" json:"moment_id" query:"moment_id"` + CategoryID int32 `thrift:"category_id,2" form:"category_id" json:"category_id" query:"category_id"` +} + +func NewBindCategoryRequest() *BindCategoryRequest { + return &BindCategoryRequest{} +} + +func (p *BindCategoryRequest) InitDefault() { +} + +func (p *BindCategoryRequest) GetMomentID() (v []int32) { + return p.MomentID +} + +func (p *BindCategoryRequest) GetCategoryID() (v int32) { + return p.CategoryID +} + +var fieldIDToName_BindCategoryRequest = map[int16]string{ + 1: "moment_id", + 2: "category_id", +} + +func (p *BindCategoryRequest) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.LIST { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.I32 { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_BindCategoryRequest[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *BindCategoryRequest) ReadField1(iprot thrift.TProtocol) error { + _, size, err := iprot.ReadListBegin() + if err != nil { + return err + } + _field := make([]int32, 0, size) + for i := 0; i < size; i++ { + + var _elem int32 + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _elem = v + } + + _field = append(_field, _elem) + } + if err := iprot.ReadListEnd(); err != nil { + return err + } + p.MomentID = _field + return nil +} +func (p *BindCategoryRequest) ReadField2(iprot thrift.TProtocol) error { + + var _field int32 + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = v + } + p.CategoryID = _field + return nil +} + +func (p *BindCategoryRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("BindCategoryRequest"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *BindCategoryRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("moment_id", thrift.LIST, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteListBegin(thrift.I32, len(p.MomentID)); err != nil { + return err + } + for _, v := range p.MomentID { + if err := oprot.WriteI32(v); err != nil { + return err + } + } + if err := oprot.WriteListEnd(); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *BindCategoryRequest) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("category_id", thrift.I32, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(p.CategoryID); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *BindCategoryRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("BindCategoryRequest(%+v)", *p) + +} + +// 获取指定分类动态列表请求 +type ListMomentsByCategoryRequest struct { + CategoryID int32 `thrift:"category_id,1" form:"category_id" json:"category_id" query:"category_id"` + // 页码,默认1 + Page int32 `thrift:"page,2" form:"page" json:"page" query:"page"` + // 每页数量,默认10 + PageSize int32 `thrift:"page_size,3" form:"page_size" json:"page_size" query:"page_size"` +} + +func NewListMomentsByCategoryRequest() *ListMomentsByCategoryRequest { + return &ListMomentsByCategoryRequest{} +} + +func (p *ListMomentsByCategoryRequest) InitDefault() { +} + +func (p *ListMomentsByCategoryRequest) GetCategoryID() (v int32) { + return p.CategoryID +} + +func (p *ListMomentsByCategoryRequest) GetPage() (v int32) { + return p.Page +} + +func (p *ListMomentsByCategoryRequest) GetPageSize() (v int32) { + return p.PageSize +} + +var fieldIDToName_ListMomentsByCategoryRequest = map[int16]string{ + 1: "category_id", + 2: "page", + 3: "page_size", +} + +func (p *ListMomentsByCategoryRequest) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.I32 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.I32 { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.I32 { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_ListMomentsByCategoryRequest[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *ListMomentsByCategoryRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field int32 + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = v + } + p.CategoryID = _field + return nil +} +func (p *ListMomentsByCategoryRequest) ReadField2(iprot thrift.TProtocol) error { + + var _field int32 + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = v + } + p.Page = _field + return nil +} +func (p *ListMomentsByCategoryRequest) ReadField3(iprot thrift.TProtocol) error { + + var _field int32 + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = v + } + p.PageSize = _field + return nil +} + +func (p *ListMomentsByCategoryRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListMomentsByCategoryRequest"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + if err = p.writeField3(oprot); err != nil { + fieldId = 3 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *ListMomentsByCategoryRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("category_id", thrift.I32, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(p.CategoryID); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *ListMomentsByCategoryRequest) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("page", thrift.I32, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(p.Page); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} +func (p *ListMomentsByCategoryRequest) writeField3(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("page_size", thrift.I32, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(p.PageSize); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 end error: ", p), err) +} + +func (p *ListMomentsByCategoryRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ListMomentsByCategoryRequest(%+v)", *p) + +} + +// 获取指定分类动态列表响应 +type ListMomentsByCategoryResponse struct { + Code Code `thrift:"code,1" form:"code" json:"code" query:"code"` + // 动态列表 + Moments []*Moment `thrift:"moments,2" form:"moments" json:"moments" query:"moments"` + // 总数量 + Total int32 `thrift:"total,3" form:"total" json:"total" query:"total"` +} + +func NewListMomentsByCategoryResponse() *ListMomentsByCategoryResponse { + return &ListMomentsByCategoryResponse{} +} + +func (p *ListMomentsByCategoryResponse) InitDefault() { +} + +func (p *ListMomentsByCategoryResponse) GetCode() (v Code) { + return p.Code +} + +func (p *ListMomentsByCategoryResponse) GetMoments() (v []*Moment) { + return p.Moments +} + +func (p *ListMomentsByCategoryResponse) GetTotal() (v int32) { + return p.Total +} + +var fieldIDToName_ListMomentsByCategoryResponse = map[int16]string{ + 1: "code", + 2: "moments", + 3: "total", +} + +func (p *ListMomentsByCategoryResponse) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.I32 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.LIST { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.I32 { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_ListMomentsByCategoryResponse[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *ListMomentsByCategoryResponse) ReadField1(iprot thrift.TProtocol) error { + + var _field Code + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = Code(v) + } + p.Code = _field + return nil +} +func (p *ListMomentsByCategoryResponse) ReadField2(iprot thrift.TProtocol) error { + _, size, err := iprot.ReadListBegin() + if err != nil { + return err + } + _field := make([]*Moment, 0, size) + values := make([]Moment, size) + for i := 0; i < size; i++ { + _elem := &values[i] + _elem.InitDefault() + + if err := _elem.Read(iprot); err != nil { + return err + } + + _field = append(_field, _elem) + } + if err := iprot.ReadListEnd(); err != nil { + return err + } + p.Moments = _field + return nil +} +func (p *ListMomentsByCategoryResponse) ReadField3(iprot thrift.TProtocol) error { + + var _field int32 + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = v + } + p.Total = _field + return nil +} + +func (p *ListMomentsByCategoryResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListMomentsByCategoryResponse"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + if err = p.writeField3(oprot); err != nil { + fieldId = 3 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *ListMomentsByCategoryResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("code", thrift.I32, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(int32(p.Code)); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *ListMomentsByCategoryResponse) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("moments", thrift.LIST, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteListBegin(thrift.STRUCT, len(p.Moments)); err != nil { + return err + } + for _, v := range p.Moments { + if err := v.Write(oprot); err != nil { + return err + } + } + if err := oprot.WriteListEnd(); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} +func (p *ListMomentsByCategoryResponse) writeField3(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("total", thrift.I32, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(p.Total); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 end error: ", p), err) +} + +func (p *ListMomentsByCategoryResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ListMomentsByCategoryResponse(%+v)", *p) + +} + // 动态服务接口 type MomentsService interface { // 发布动态 @@ -8427,6 +12669,24 @@ type MomentsService interface { ListMomentComments(ctx context.Context, req *ListMomentCommentsRequest) (r *ListMomentCommentsResponse, err error) // 删除评论 DeleteComment(ctx context.Context, req *DeleteCommentRequest) (r *DeleteCommentResponse, err error) + //新增tag + CreateTag(ctx context.Context, req *CreateTagRequest) (r *CreateTagResponse, err error) + //删除tag + DeleteTag(ctx context.Context, req *DeleteTagRequest) (r *DeleteTagResponse, err error) + //获取tag列表 + ListTag(ctx context.Context, req *ListTagRequest) (r *ListTagResponse, err error) + //获取tag列表 + FandTag(ctx context.Context, req *FindTagRequest) (r *FindTagResponse, err error) + //绑定tag + BindTag(ctx context.Context, req *BindTagRequest) (r *BindTagResponse, err error) + //通过tag获取文章列表 + ListMomentsByTag(ctx context.Context, req *ListMomentsByTagRequest) (r *ListMomentsByTagResponse, err error) + //获取分类列表 + ListCategory(ctx context.Context, req *ListCategoryRequest) (r *ListCategoryResponse, err error) + //绑定分类 + BindCategory(ctx context.Context, req *BindCategoryRequest) (r *BindCategoryResponse, err error) + //通过分类获取文章列表 + ListMomentsByCategory(ctx context.Context, req *ListMomentsByCategoryRequest) (r *ListMomentsByCategoryResponse, err error) } type MomentsServiceClient struct { @@ -8581,6 +12841,87 @@ func (p *MomentsServiceClient) DeleteComment(ctx context.Context, req *DeleteCom } return _result.GetSuccess(), nil } +func (p *MomentsServiceClient) CreateTag(ctx context.Context, req *CreateTagRequest) (r *CreateTagResponse, err error) { + var _args MomentsServiceCreateTagArgs + _args.Req = req + var _result MomentsServiceCreateTagResult + if err = p.Client_().Call(ctx, "CreateTag", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *MomentsServiceClient) DeleteTag(ctx context.Context, req *DeleteTagRequest) (r *DeleteTagResponse, err error) { + var _args MomentsServiceDeleteTagArgs + _args.Req = req + var _result MomentsServiceDeleteTagResult + if err = p.Client_().Call(ctx, "DeleteTag", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *MomentsServiceClient) ListTag(ctx context.Context, req *ListTagRequest) (r *ListTagResponse, err error) { + var _args MomentsServiceListTagArgs + _args.Req = req + var _result MomentsServiceListTagResult + if err = p.Client_().Call(ctx, "ListTag", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *MomentsServiceClient) FandTag(ctx context.Context, req *FindTagRequest) (r *FindTagResponse, err error) { + var _args MomentsServiceFandTagArgs + _args.Req = req + var _result MomentsServiceFandTagResult + if err = p.Client_().Call(ctx, "FandTag", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *MomentsServiceClient) BindTag(ctx context.Context, req *BindTagRequest) (r *BindTagResponse, err error) { + var _args MomentsServiceBindTagArgs + _args.Req = req + var _result MomentsServiceBindTagResult + if err = p.Client_().Call(ctx, "BindTag", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *MomentsServiceClient) ListMomentsByTag(ctx context.Context, req *ListMomentsByTagRequest) (r *ListMomentsByTagResponse, err error) { + var _args MomentsServiceListMomentsByTagArgs + _args.Req = req + var _result MomentsServiceListMomentsByTagResult + if err = p.Client_().Call(ctx, "ListMomentsByTag", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *MomentsServiceClient) ListCategory(ctx context.Context, req *ListCategoryRequest) (r *ListCategoryResponse, err error) { + var _args MomentsServiceListCategoryArgs + _args.Req = req + var _result MomentsServiceListCategoryResult + if err = p.Client_().Call(ctx, "ListCategory", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *MomentsServiceClient) BindCategory(ctx context.Context, req *BindCategoryRequest) (r *BindCategoryResponse, err error) { + var _args MomentsServiceBindCategoryArgs + _args.Req = req + var _result MomentsServiceBindCategoryResult + if err = p.Client_().Call(ctx, "BindCategory", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *MomentsServiceClient) ListMomentsByCategory(ctx context.Context, req *ListMomentsByCategoryRequest) (r *ListMomentsByCategoryResponse, err error) { + var _args MomentsServiceListMomentsByCategoryArgs + _args.Req = req + var _result MomentsServiceListMomentsByCategoryResult + if err = p.Client_().Call(ctx, "ListMomentsByCategory", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} type MomentsServiceProcessor struct { processorMap map[string]thrift.TProcessorFunction @@ -8616,6 +12957,15 @@ func NewMomentsServiceProcessor(handler MomentsService) *MomentsServiceProcessor self.AddToProcessorMap("CommentMoment", &momentsServiceProcessorCommentMoment{handler: handler}) self.AddToProcessorMap("ListMomentComments", &momentsServiceProcessorListMomentComments{handler: handler}) self.AddToProcessorMap("DeleteComment", &momentsServiceProcessorDeleteComment{handler: handler}) + self.AddToProcessorMap("CreateTag", &momentsServiceProcessorCreateTag{handler: handler}) + self.AddToProcessorMap("DeleteTag", &momentsServiceProcessorDeleteTag{handler: handler}) + self.AddToProcessorMap("ListTag", &momentsServiceProcessorListTag{handler: handler}) + self.AddToProcessorMap("FandTag", &momentsServiceProcessorFandTag{handler: handler}) + self.AddToProcessorMap("BindTag", &momentsServiceProcessorBindTag{handler: handler}) + self.AddToProcessorMap("ListMomentsByTag", &momentsServiceProcessorListMomentsByTag{handler: handler}) + self.AddToProcessorMap("ListCategory", &momentsServiceProcessorListCategory{handler: handler}) + self.AddToProcessorMap("BindCategory", &momentsServiceProcessorBindCategory{handler: handler}) + self.AddToProcessorMap("ListMomentsByCategory", &momentsServiceProcessorListMomentsByCategory{handler: handler}) return self } func (p *MomentsServiceProcessor) Process(ctx context.Context, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { @@ -9308,6 +13658,438 @@ func (p *momentsServiceProcessorDeleteComment) Process(ctx context.Context, seqI return true, err } +type momentsServiceProcessorCreateTag struct { + handler MomentsService +} + +func (p *momentsServiceProcessorCreateTag) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := MomentsServiceCreateTagArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("CreateTag", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := MomentsServiceCreateTagResult{} + var retval *CreateTagResponse + if retval, err2 = p.handler.CreateTag(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing CreateTag: "+err2.Error()) + oprot.WriteMessageBegin("CreateTag", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("CreateTag", thrift.REPLY, seqId); err2 != nil { + err = err2 + } + if err2 = result.Write(oprot); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.WriteMessageEnd(); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.Flush(ctx); err == nil && err2 != nil { + err = err2 + } + if err != nil { + return + } + return true, err +} + +type momentsServiceProcessorDeleteTag struct { + handler MomentsService +} + +func (p *momentsServiceProcessorDeleteTag) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := MomentsServiceDeleteTagArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("DeleteTag", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := MomentsServiceDeleteTagResult{} + var retval *DeleteTagResponse + if retval, err2 = p.handler.DeleteTag(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing DeleteTag: "+err2.Error()) + oprot.WriteMessageBegin("DeleteTag", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("DeleteTag", thrift.REPLY, seqId); err2 != nil { + err = err2 + } + if err2 = result.Write(oprot); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.WriteMessageEnd(); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.Flush(ctx); err == nil && err2 != nil { + err = err2 + } + if err != nil { + return + } + return true, err +} + +type momentsServiceProcessorListTag struct { + handler MomentsService +} + +func (p *momentsServiceProcessorListTag) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := MomentsServiceListTagArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("ListTag", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := MomentsServiceListTagResult{} + var retval *ListTagResponse + if retval, err2 = p.handler.ListTag(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing ListTag: "+err2.Error()) + oprot.WriteMessageBegin("ListTag", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("ListTag", thrift.REPLY, seqId); err2 != nil { + err = err2 + } + if err2 = result.Write(oprot); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.WriteMessageEnd(); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.Flush(ctx); err == nil && err2 != nil { + err = err2 + } + if err != nil { + return + } + return true, err +} + +type momentsServiceProcessorFandTag struct { + handler MomentsService +} + +func (p *momentsServiceProcessorFandTag) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := MomentsServiceFandTagArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("FandTag", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := MomentsServiceFandTagResult{} + var retval *FindTagResponse + if retval, err2 = p.handler.FandTag(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing FandTag: "+err2.Error()) + oprot.WriteMessageBegin("FandTag", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("FandTag", thrift.REPLY, seqId); err2 != nil { + err = err2 + } + if err2 = result.Write(oprot); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.WriteMessageEnd(); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.Flush(ctx); err == nil && err2 != nil { + err = err2 + } + if err != nil { + return + } + return true, err +} + +type momentsServiceProcessorBindTag struct { + handler MomentsService +} + +func (p *momentsServiceProcessorBindTag) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := MomentsServiceBindTagArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("BindTag", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := MomentsServiceBindTagResult{} + var retval *BindTagResponse + if retval, err2 = p.handler.BindTag(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing BindTag: "+err2.Error()) + oprot.WriteMessageBegin("BindTag", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("BindTag", thrift.REPLY, seqId); err2 != nil { + err = err2 + } + if err2 = result.Write(oprot); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.WriteMessageEnd(); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.Flush(ctx); err == nil && err2 != nil { + err = err2 + } + if err != nil { + return + } + return true, err +} + +type momentsServiceProcessorListMomentsByTag struct { + handler MomentsService +} + +func (p *momentsServiceProcessorListMomentsByTag) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := MomentsServiceListMomentsByTagArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("ListMomentsByTag", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := MomentsServiceListMomentsByTagResult{} + var retval *ListMomentsByTagResponse + if retval, err2 = p.handler.ListMomentsByTag(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing ListMomentsByTag: "+err2.Error()) + oprot.WriteMessageBegin("ListMomentsByTag", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("ListMomentsByTag", thrift.REPLY, seqId); err2 != nil { + err = err2 + } + if err2 = result.Write(oprot); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.WriteMessageEnd(); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.Flush(ctx); err == nil && err2 != nil { + err = err2 + } + if err != nil { + return + } + return true, err +} + +type momentsServiceProcessorListCategory struct { + handler MomentsService +} + +func (p *momentsServiceProcessorListCategory) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := MomentsServiceListCategoryArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("ListCategory", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := MomentsServiceListCategoryResult{} + var retval *ListCategoryResponse + if retval, err2 = p.handler.ListCategory(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing ListCategory: "+err2.Error()) + oprot.WriteMessageBegin("ListCategory", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("ListCategory", thrift.REPLY, seqId); err2 != nil { + err = err2 + } + if err2 = result.Write(oprot); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.WriteMessageEnd(); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.Flush(ctx); err == nil && err2 != nil { + err = err2 + } + if err != nil { + return + } + return true, err +} + +type momentsServiceProcessorBindCategory struct { + handler MomentsService +} + +func (p *momentsServiceProcessorBindCategory) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := MomentsServiceBindCategoryArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("BindCategory", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := MomentsServiceBindCategoryResult{} + var retval *BindCategoryResponse + if retval, err2 = p.handler.BindCategory(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing BindCategory: "+err2.Error()) + oprot.WriteMessageBegin("BindCategory", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("BindCategory", thrift.REPLY, seqId); err2 != nil { + err = err2 + } + if err2 = result.Write(oprot); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.WriteMessageEnd(); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.Flush(ctx); err == nil && err2 != nil { + err = err2 + } + if err != nil { + return + } + return true, err +} + +type momentsServiceProcessorListMomentsByCategory struct { + handler MomentsService +} + +func (p *momentsServiceProcessorListMomentsByCategory) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := MomentsServiceListMomentsByCategoryArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("ListMomentsByCategory", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := MomentsServiceListMomentsByCategoryResult{} + var retval *ListMomentsByCategoryResponse + if retval, err2 = p.handler.ListMomentsByCategory(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing ListMomentsByCategory: "+err2.Error()) + oprot.WriteMessageBegin("ListMomentsByCategory", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("ListMomentsByCategory", thrift.REPLY, seqId); err2 != nil { + err = err2 + } + if err2 = result.Write(oprot); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.WriteMessageEnd(); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.Flush(ctx); err == nil && err2 != nil { + err = err2 + } + if err != nil { + return + } + return true, err +} + type MomentsServiceCreateMomentArgs struct { Req *CreateMomentRequest `thrift:"req,1"` } @@ -13395,3 +18177,2631 @@ func (p *MomentsServiceDeleteCommentResult) String() string { return fmt.Sprintf("MomentsServiceDeleteCommentResult(%+v)", *p) } + +type MomentsServiceCreateTagArgs struct { + Req *CreateTagRequest `thrift:"req,1"` +} + +func NewMomentsServiceCreateTagArgs() *MomentsServiceCreateTagArgs { + return &MomentsServiceCreateTagArgs{} +} + +func (p *MomentsServiceCreateTagArgs) InitDefault() { +} + +var MomentsServiceCreateTagArgs_Req_DEFAULT *CreateTagRequest + +func (p *MomentsServiceCreateTagArgs) GetReq() (v *CreateTagRequest) { + if !p.IsSetReq() { + return MomentsServiceCreateTagArgs_Req_DEFAULT + } + return p.Req +} + +var fieldIDToName_MomentsServiceCreateTagArgs = map[int16]string{ + 1: "req", +} + +func (p *MomentsServiceCreateTagArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *MomentsServiceCreateTagArgs) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MomentsServiceCreateTagArgs[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *MomentsServiceCreateTagArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewCreateTagRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *MomentsServiceCreateTagArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("CreateTag_args"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *MomentsServiceCreateTagArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("req", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Req.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} + +func (p *MomentsServiceCreateTagArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MomentsServiceCreateTagArgs(%+v)", *p) + +} + +type MomentsServiceCreateTagResult struct { + Success *CreateTagResponse `thrift:"success,0,optional"` +} + +func NewMomentsServiceCreateTagResult() *MomentsServiceCreateTagResult { + return &MomentsServiceCreateTagResult{} +} + +func (p *MomentsServiceCreateTagResult) InitDefault() { +} + +var MomentsServiceCreateTagResult_Success_DEFAULT *CreateTagResponse + +func (p *MomentsServiceCreateTagResult) GetSuccess() (v *CreateTagResponse) { + if !p.IsSetSuccess() { + return MomentsServiceCreateTagResult_Success_DEFAULT + } + return p.Success +} + +var fieldIDToName_MomentsServiceCreateTagResult = map[int16]string{ + 0: "success", +} + +func (p *MomentsServiceCreateTagResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *MomentsServiceCreateTagResult) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField0(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MomentsServiceCreateTagResult[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *MomentsServiceCreateTagResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewCreateTagResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *MomentsServiceCreateTagResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("CreateTag_result"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField0(oprot); err != nil { + fieldId = 0 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *MomentsServiceCreateTagResult) writeField0(oprot thrift.TProtocol) (err error) { + if p.IsSetSuccess() { + if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { + goto WriteFieldBeginError + } + if err := p.Success.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) +} + +func (p *MomentsServiceCreateTagResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MomentsServiceCreateTagResult(%+v)", *p) + +} + +type MomentsServiceDeleteTagArgs struct { + Req *DeleteTagRequest `thrift:"req,1"` +} + +func NewMomentsServiceDeleteTagArgs() *MomentsServiceDeleteTagArgs { + return &MomentsServiceDeleteTagArgs{} +} + +func (p *MomentsServiceDeleteTagArgs) InitDefault() { +} + +var MomentsServiceDeleteTagArgs_Req_DEFAULT *DeleteTagRequest + +func (p *MomentsServiceDeleteTagArgs) GetReq() (v *DeleteTagRequest) { + if !p.IsSetReq() { + return MomentsServiceDeleteTagArgs_Req_DEFAULT + } + return p.Req +} + +var fieldIDToName_MomentsServiceDeleteTagArgs = map[int16]string{ + 1: "req", +} + +func (p *MomentsServiceDeleteTagArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *MomentsServiceDeleteTagArgs) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MomentsServiceDeleteTagArgs[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *MomentsServiceDeleteTagArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewDeleteTagRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *MomentsServiceDeleteTagArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("DeleteTag_args"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *MomentsServiceDeleteTagArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("req", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Req.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} + +func (p *MomentsServiceDeleteTagArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MomentsServiceDeleteTagArgs(%+v)", *p) + +} + +type MomentsServiceDeleteTagResult struct { + Success *DeleteTagResponse `thrift:"success,0,optional"` +} + +func NewMomentsServiceDeleteTagResult() *MomentsServiceDeleteTagResult { + return &MomentsServiceDeleteTagResult{} +} + +func (p *MomentsServiceDeleteTagResult) InitDefault() { +} + +var MomentsServiceDeleteTagResult_Success_DEFAULT *DeleteTagResponse + +func (p *MomentsServiceDeleteTagResult) GetSuccess() (v *DeleteTagResponse) { + if !p.IsSetSuccess() { + return MomentsServiceDeleteTagResult_Success_DEFAULT + } + return p.Success +} + +var fieldIDToName_MomentsServiceDeleteTagResult = map[int16]string{ + 0: "success", +} + +func (p *MomentsServiceDeleteTagResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *MomentsServiceDeleteTagResult) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField0(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MomentsServiceDeleteTagResult[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *MomentsServiceDeleteTagResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewDeleteTagResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *MomentsServiceDeleteTagResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("DeleteTag_result"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField0(oprot); err != nil { + fieldId = 0 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *MomentsServiceDeleteTagResult) writeField0(oprot thrift.TProtocol) (err error) { + if p.IsSetSuccess() { + if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { + goto WriteFieldBeginError + } + if err := p.Success.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) +} + +func (p *MomentsServiceDeleteTagResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MomentsServiceDeleteTagResult(%+v)", *p) + +} + +type MomentsServiceListTagArgs struct { + Req *ListTagRequest `thrift:"req,1"` +} + +func NewMomentsServiceListTagArgs() *MomentsServiceListTagArgs { + return &MomentsServiceListTagArgs{} +} + +func (p *MomentsServiceListTagArgs) InitDefault() { +} + +var MomentsServiceListTagArgs_Req_DEFAULT *ListTagRequest + +func (p *MomentsServiceListTagArgs) GetReq() (v *ListTagRequest) { + if !p.IsSetReq() { + return MomentsServiceListTagArgs_Req_DEFAULT + } + return p.Req +} + +var fieldIDToName_MomentsServiceListTagArgs = map[int16]string{ + 1: "req", +} + +func (p *MomentsServiceListTagArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *MomentsServiceListTagArgs) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MomentsServiceListTagArgs[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *MomentsServiceListTagArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewListTagRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *MomentsServiceListTagArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListTag_args"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *MomentsServiceListTagArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("req", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Req.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} + +func (p *MomentsServiceListTagArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MomentsServiceListTagArgs(%+v)", *p) + +} + +type MomentsServiceListTagResult struct { + Success *ListTagResponse `thrift:"success,0,optional"` +} + +func NewMomentsServiceListTagResult() *MomentsServiceListTagResult { + return &MomentsServiceListTagResult{} +} + +func (p *MomentsServiceListTagResult) InitDefault() { +} + +var MomentsServiceListTagResult_Success_DEFAULT *ListTagResponse + +func (p *MomentsServiceListTagResult) GetSuccess() (v *ListTagResponse) { + if !p.IsSetSuccess() { + return MomentsServiceListTagResult_Success_DEFAULT + } + return p.Success +} + +var fieldIDToName_MomentsServiceListTagResult = map[int16]string{ + 0: "success", +} + +func (p *MomentsServiceListTagResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *MomentsServiceListTagResult) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField0(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MomentsServiceListTagResult[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *MomentsServiceListTagResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewListTagResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *MomentsServiceListTagResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListTag_result"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField0(oprot); err != nil { + fieldId = 0 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *MomentsServiceListTagResult) writeField0(oprot thrift.TProtocol) (err error) { + if p.IsSetSuccess() { + if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { + goto WriteFieldBeginError + } + if err := p.Success.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) +} + +func (p *MomentsServiceListTagResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MomentsServiceListTagResult(%+v)", *p) + +} + +type MomentsServiceFandTagArgs struct { + Req *FindTagRequest `thrift:"req,1"` +} + +func NewMomentsServiceFandTagArgs() *MomentsServiceFandTagArgs { + return &MomentsServiceFandTagArgs{} +} + +func (p *MomentsServiceFandTagArgs) InitDefault() { +} + +var MomentsServiceFandTagArgs_Req_DEFAULT *FindTagRequest + +func (p *MomentsServiceFandTagArgs) GetReq() (v *FindTagRequest) { + if !p.IsSetReq() { + return MomentsServiceFandTagArgs_Req_DEFAULT + } + return p.Req +} + +var fieldIDToName_MomentsServiceFandTagArgs = map[int16]string{ + 1: "req", +} + +func (p *MomentsServiceFandTagArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *MomentsServiceFandTagArgs) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MomentsServiceFandTagArgs[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *MomentsServiceFandTagArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewFindTagRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *MomentsServiceFandTagArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("FandTag_args"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *MomentsServiceFandTagArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("req", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Req.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} + +func (p *MomentsServiceFandTagArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MomentsServiceFandTagArgs(%+v)", *p) + +} + +type MomentsServiceFandTagResult struct { + Success *FindTagResponse `thrift:"success,0,optional"` +} + +func NewMomentsServiceFandTagResult() *MomentsServiceFandTagResult { + return &MomentsServiceFandTagResult{} +} + +func (p *MomentsServiceFandTagResult) InitDefault() { +} + +var MomentsServiceFandTagResult_Success_DEFAULT *FindTagResponse + +func (p *MomentsServiceFandTagResult) GetSuccess() (v *FindTagResponse) { + if !p.IsSetSuccess() { + return MomentsServiceFandTagResult_Success_DEFAULT + } + return p.Success +} + +var fieldIDToName_MomentsServiceFandTagResult = map[int16]string{ + 0: "success", +} + +func (p *MomentsServiceFandTagResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *MomentsServiceFandTagResult) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField0(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MomentsServiceFandTagResult[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *MomentsServiceFandTagResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewFindTagResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *MomentsServiceFandTagResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("FandTag_result"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField0(oprot); err != nil { + fieldId = 0 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *MomentsServiceFandTagResult) writeField0(oprot thrift.TProtocol) (err error) { + if p.IsSetSuccess() { + if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { + goto WriteFieldBeginError + } + if err := p.Success.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) +} + +func (p *MomentsServiceFandTagResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MomentsServiceFandTagResult(%+v)", *p) + +} + +type MomentsServiceBindTagArgs struct { + Req *BindTagRequest `thrift:"req,1"` +} + +func NewMomentsServiceBindTagArgs() *MomentsServiceBindTagArgs { + return &MomentsServiceBindTagArgs{} +} + +func (p *MomentsServiceBindTagArgs) InitDefault() { +} + +var MomentsServiceBindTagArgs_Req_DEFAULT *BindTagRequest + +func (p *MomentsServiceBindTagArgs) GetReq() (v *BindTagRequest) { + if !p.IsSetReq() { + return MomentsServiceBindTagArgs_Req_DEFAULT + } + return p.Req +} + +var fieldIDToName_MomentsServiceBindTagArgs = map[int16]string{ + 1: "req", +} + +func (p *MomentsServiceBindTagArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *MomentsServiceBindTagArgs) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MomentsServiceBindTagArgs[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *MomentsServiceBindTagArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewBindTagRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *MomentsServiceBindTagArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("BindTag_args"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *MomentsServiceBindTagArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("req", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Req.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} + +func (p *MomentsServiceBindTagArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MomentsServiceBindTagArgs(%+v)", *p) + +} + +type MomentsServiceBindTagResult struct { + Success *BindTagResponse `thrift:"success,0,optional"` +} + +func NewMomentsServiceBindTagResult() *MomentsServiceBindTagResult { + return &MomentsServiceBindTagResult{} +} + +func (p *MomentsServiceBindTagResult) InitDefault() { +} + +var MomentsServiceBindTagResult_Success_DEFAULT *BindTagResponse + +func (p *MomentsServiceBindTagResult) GetSuccess() (v *BindTagResponse) { + if !p.IsSetSuccess() { + return MomentsServiceBindTagResult_Success_DEFAULT + } + return p.Success +} + +var fieldIDToName_MomentsServiceBindTagResult = map[int16]string{ + 0: "success", +} + +func (p *MomentsServiceBindTagResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *MomentsServiceBindTagResult) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField0(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MomentsServiceBindTagResult[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *MomentsServiceBindTagResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewBindTagResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *MomentsServiceBindTagResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("BindTag_result"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField0(oprot); err != nil { + fieldId = 0 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *MomentsServiceBindTagResult) writeField0(oprot thrift.TProtocol) (err error) { + if p.IsSetSuccess() { + if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { + goto WriteFieldBeginError + } + if err := p.Success.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) +} + +func (p *MomentsServiceBindTagResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MomentsServiceBindTagResult(%+v)", *p) + +} + +type MomentsServiceListMomentsByTagArgs struct { + Req *ListMomentsByTagRequest `thrift:"req,1"` +} + +func NewMomentsServiceListMomentsByTagArgs() *MomentsServiceListMomentsByTagArgs { + return &MomentsServiceListMomentsByTagArgs{} +} + +func (p *MomentsServiceListMomentsByTagArgs) InitDefault() { +} + +var MomentsServiceListMomentsByTagArgs_Req_DEFAULT *ListMomentsByTagRequest + +func (p *MomentsServiceListMomentsByTagArgs) GetReq() (v *ListMomentsByTagRequest) { + if !p.IsSetReq() { + return MomentsServiceListMomentsByTagArgs_Req_DEFAULT + } + return p.Req +} + +var fieldIDToName_MomentsServiceListMomentsByTagArgs = map[int16]string{ + 1: "req", +} + +func (p *MomentsServiceListMomentsByTagArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *MomentsServiceListMomentsByTagArgs) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MomentsServiceListMomentsByTagArgs[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *MomentsServiceListMomentsByTagArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewListMomentsByTagRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *MomentsServiceListMomentsByTagArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListMomentsByTag_args"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *MomentsServiceListMomentsByTagArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("req", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Req.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} + +func (p *MomentsServiceListMomentsByTagArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MomentsServiceListMomentsByTagArgs(%+v)", *p) + +} + +type MomentsServiceListMomentsByTagResult struct { + Success *ListMomentsByTagResponse `thrift:"success,0,optional"` +} + +func NewMomentsServiceListMomentsByTagResult() *MomentsServiceListMomentsByTagResult { + return &MomentsServiceListMomentsByTagResult{} +} + +func (p *MomentsServiceListMomentsByTagResult) InitDefault() { +} + +var MomentsServiceListMomentsByTagResult_Success_DEFAULT *ListMomentsByTagResponse + +func (p *MomentsServiceListMomentsByTagResult) GetSuccess() (v *ListMomentsByTagResponse) { + if !p.IsSetSuccess() { + return MomentsServiceListMomentsByTagResult_Success_DEFAULT + } + return p.Success +} + +var fieldIDToName_MomentsServiceListMomentsByTagResult = map[int16]string{ + 0: "success", +} + +func (p *MomentsServiceListMomentsByTagResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *MomentsServiceListMomentsByTagResult) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField0(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MomentsServiceListMomentsByTagResult[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *MomentsServiceListMomentsByTagResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewListMomentsByTagResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *MomentsServiceListMomentsByTagResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListMomentsByTag_result"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField0(oprot); err != nil { + fieldId = 0 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *MomentsServiceListMomentsByTagResult) writeField0(oprot thrift.TProtocol) (err error) { + if p.IsSetSuccess() { + if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { + goto WriteFieldBeginError + } + if err := p.Success.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) +} + +func (p *MomentsServiceListMomentsByTagResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MomentsServiceListMomentsByTagResult(%+v)", *p) + +} + +type MomentsServiceListCategoryArgs struct { + Req *ListCategoryRequest `thrift:"req,1"` +} + +func NewMomentsServiceListCategoryArgs() *MomentsServiceListCategoryArgs { + return &MomentsServiceListCategoryArgs{} +} + +func (p *MomentsServiceListCategoryArgs) InitDefault() { +} + +var MomentsServiceListCategoryArgs_Req_DEFAULT *ListCategoryRequest + +func (p *MomentsServiceListCategoryArgs) GetReq() (v *ListCategoryRequest) { + if !p.IsSetReq() { + return MomentsServiceListCategoryArgs_Req_DEFAULT + } + return p.Req +} + +var fieldIDToName_MomentsServiceListCategoryArgs = map[int16]string{ + 1: "req", +} + +func (p *MomentsServiceListCategoryArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *MomentsServiceListCategoryArgs) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MomentsServiceListCategoryArgs[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *MomentsServiceListCategoryArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewListCategoryRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *MomentsServiceListCategoryArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListCategory_args"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *MomentsServiceListCategoryArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("req", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Req.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} + +func (p *MomentsServiceListCategoryArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MomentsServiceListCategoryArgs(%+v)", *p) + +} + +type MomentsServiceListCategoryResult struct { + Success *ListCategoryResponse `thrift:"success,0,optional"` +} + +func NewMomentsServiceListCategoryResult() *MomentsServiceListCategoryResult { + return &MomentsServiceListCategoryResult{} +} + +func (p *MomentsServiceListCategoryResult) InitDefault() { +} + +var MomentsServiceListCategoryResult_Success_DEFAULT *ListCategoryResponse + +func (p *MomentsServiceListCategoryResult) GetSuccess() (v *ListCategoryResponse) { + if !p.IsSetSuccess() { + return MomentsServiceListCategoryResult_Success_DEFAULT + } + return p.Success +} + +var fieldIDToName_MomentsServiceListCategoryResult = map[int16]string{ + 0: "success", +} + +func (p *MomentsServiceListCategoryResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *MomentsServiceListCategoryResult) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField0(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MomentsServiceListCategoryResult[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *MomentsServiceListCategoryResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewListCategoryResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *MomentsServiceListCategoryResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListCategory_result"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField0(oprot); err != nil { + fieldId = 0 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *MomentsServiceListCategoryResult) writeField0(oprot thrift.TProtocol) (err error) { + if p.IsSetSuccess() { + if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { + goto WriteFieldBeginError + } + if err := p.Success.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) +} + +func (p *MomentsServiceListCategoryResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MomentsServiceListCategoryResult(%+v)", *p) + +} + +type MomentsServiceBindCategoryArgs struct { + Req *BindCategoryRequest `thrift:"req,1"` +} + +func NewMomentsServiceBindCategoryArgs() *MomentsServiceBindCategoryArgs { + return &MomentsServiceBindCategoryArgs{} +} + +func (p *MomentsServiceBindCategoryArgs) InitDefault() { +} + +var MomentsServiceBindCategoryArgs_Req_DEFAULT *BindCategoryRequest + +func (p *MomentsServiceBindCategoryArgs) GetReq() (v *BindCategoryRequest) { + if !p.IsSetReq() { + return MomentsServiceBindCategoryArgs_Req_DEFAULT + } + return p.Req +} + +var fieldIDToName_MomentsServiceBindCategoryArgs = map[int16]string{ + 1: "req", +} + +func (p *MomentsServiceBindCategoryArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *MomentsServiceBindCategoryArgs) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MomentsServiceBindCategoryArgs[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *MomentsServiceBindCategoryArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewBindCategoryRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *MomentsServiceBindCategoryArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("BindCategory_args"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *MomentsServiceBindCategoryArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("req", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Req.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} + +func (p *MomentsServiceBindCategoryArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MomentsServiceBindCategoryArgs(%+v)", *p) + +} + +type MomentsServiceBindCategoryResult struct { + Success *BindCategoryResponse `thrift:"success,0,optional"` +} + +func NewMomentsServiceBindCategoryResult() *MomentsServiceBindCategoryResult { + return &MomentsServiceBindCategoryResult{} +} + +func (p *MomentsServiceBindCategoryResult) InitDefault() { +} + +var MomentsServiceBindCategoryResult_Success_DEFAULT *BindCategoryResponse + +func (p *MomentsServiceBindCategoryResult) GetSuccess() (v *BindCategoryResponse) { + if !p.IsSetSuccess() { + return MomentsServiceBindCategoryResult_Success_DEFAULT + } + return p.Success +} + +var fieldIDToName_MomentsServiceBindCategoryResult = map[int16]string{ + 0: "success", +} + +func (p *MomentsServiceBindCategoryResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *MomentsServiceBindCategoryResult) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField0(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MomentsServiceBindCategoryResult[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *MomentsServiceBindCategoryResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewBindCategoryResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *MomentsServiceBindCategoryResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("BindCategory_result"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField0(oprot); err != nil { + fieldId = 0 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *MomentsServiceBindCategoryResult) writeField0(oprot thrift.TProtocol) (err error) { + if p.IsSetSuccess() { + if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { + goto WriteFieldBeginError + } + if err := p.Success.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) +} + +func (p *MomentsServiceBindCategoryResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MomentsServiceBindCategoryResult(%+v)", *p) + +} + +type MomentsServiceListMomentsByCategoryArgs struct { + Req *ListMomentsByCategoryRequest `thrift:"req,1"` +} + +func NewMomentsServiceListMomentsByCategoryArgs() *MomentsServiceListMomentsByCategoryArgs { + return &MomentsServiceListMomentsByCategoryArgs{} +} + +func (p *MomentsServiceListMomentsByCategoryArgs) InitDefault() { +} + +var MomentsServiceListMomentsByCategoryArgs_Req_DEFAULT *ListMomentsByCategoryRequest + +func (p *MomentsServiceListMomentsByCategoryArgs) GetReq() (v *ListMomentsByCategoryRequest) { + if !p.IsSetReq() { + return MomentsServiceListMomentsByCategoryArgs_Req_DEFAULT + } + return p.Req +} + +var fieldIDToName_MomentsServiceListMomentsByCategoryArgs = map[int16]string{ + 1: "req", +} + +func (p *MomentsServiceListMomentsByCategoryArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *MomentsServiceListMomentsByCategoryArgs) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MomentsServiceListMomentsByCategoryArgs[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *MomentsServiceListMomentsByCategoryArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewListMomentsByCategoryRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *MomentsServiceListMomentsByCategoryArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListMomentsByCategory_args"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *MomentsServiceListMomentsByCategoryArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("req", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Req.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} + +func (p *MomentsServiceListMomentsByCategoryArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MomentsServiceListMomentsByCategoryArgs(%+v)", *p) + +} + +type MomentsServiceListMomentsByCategoryResult struct { + Success *ListMomentsByCategoryResponse `thrift:"success,0,optional"` +} + +func NewMomentsServiceListMomentsByCategoryResult() *MomentsServiceListMomentsByCategoryResult { + return &MomentsServiceListMomentsByCategoryResult{} +} + +func (p *MomentsServiceListMomentsByCategoryResult) InitDefault() { +} + +var MomentsServiceListMomentsByCategoryResult_Success_DEFAULT *ListMomentsByCategoryResponse + +func (p *MomentsServiceListMomentsByCategoryResult) GetSuccess() (v *ListMomentsByCategoryResponse) { + if !p.IsSetSuccess() { + return MomentsServiceListMomentsByCategoryResult_Success_DEFAULT + } + return p.Success +} + +var fieldIDToName_MomentsServiceListMomentsByCategoryResult = map[int16]string{ + 0: "success", +} + +func (p *MomentsServiceListMomentsByCategoryResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *MomentsServiceListMomentsByCategoryResult) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField0(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MomentsServiceListMomentsByCategoryResult[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *MomentsServiceListMomentsByCategoryResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewListMomentsByCategoryResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *MomentsServiceListMomentsByCategoryResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListMomentsByCategory_result"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField0(oprot); err != nil { + fieldId = 0 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *MomentsServiceListMomentsByCategoryResult) writeField0(oprot thrift.TProtocol) (err error) { + if p.IsSetSuccess() { + if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { + goto WriteFieldBeginError + } + if err := p.Success.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) +} + +func (p *MomentsServiceListMomentsByCategoryResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MomentsServiceListMomentsByCategoryResult(%+v)", *p) + +} diff --git a/weMedia/biz/model/moments.go b/weMedia/biz/model/moments.go index 3f295d4..9fb1319 100644 --- a/weMedia/biz/model/moments.go +++ b/weMedia/biz/model/moments.go @@ -62,6 +62,34 @@ type CommentFile struct { SortOrder int `gorm:"column:sort_order;type:int;default:0;comment:'文件排序'"` } +// Category 分类表 +type Category struct { + gorm.Model + CategoryName string `gorm:"column:category_name;size:50;not null;unique;comment:'分类名'"` // 分类名称 + ParentID uint `gorm:"column:parent_id;type:bigint unsigned;not null;comment:'父分类ID'"` // 父分类ID +} + +// MomentCategory 分类关系表 +type MomentCategory struct { + gorm.Model + MomentID uint `gorm:"column:moment_id;type:bigint unsigned;not null;comment:'动态ID'"` + CategoryID uint `gorm:"column:category_id;type:bigint unsigned;not null;comment:'分类ID'"` +} + +// Tag 标签表 +type Tag struct { + gorm.Model + TagName string `gorm:"column:tag_name;size:50;not null;unique;comment:'标签名'"` // 标签名称 + UserID string `gorm:"column:user_id;type:varchar(32);not null;comment:'创建者Id'"` +} + +// MomentTag 标签关系表 +type MomentTag struct { + gorm.Model + MomentID uint `gorm:"column:moment_id;type:bigint unsigned;not null;comment:'动态ID'"` + TagID uint `gorm:"column:tag_id;type:bigint unsigned;not null;comment:'标签ID'"` +} + func (Moment) TableName() string { return "moment" } @@ -85,3 +113,19 @@ func (MomentCollect) TableName() string { func (CommentFile) TableName() string { return "moment_comment_file" } + +func (Category) TableName() string { + return "category" +} + +func (MomentCategory) TableName() string { + return "moment_category" +} + +func (Tag) TableName() string { + return "tag" +} + +func (MomentTag) TableName() string { + return "moment_tag" +} diff --git a/weMedia/biz/router/moment/middleware.go b/weMedia/biz/router/moment/middleware.go index 4cd9e71..711d469 100644 --- a/weMedia/biz/router/moment/middleware.go +++ b/weMedia/biz/router/moment/middleware.go @@ -165,3 +165,78 @@ func _listuserlikesMw() []app.HandlerFunc { // your code... return nil } + +func _categoryMw() []app.HandlerFunc { + // your code... + return nil +} + +func _listcategoryMw() []app.HandlerFunc { + // your code... + return nil +} + +func _bindcategoryMw() []app.HandlerFunc { + // your code... + return nil +} + +func _listmomentsbycategoryMw() []app.HandlerFunc { + // your code... + return nil +} + +func _tagMw() []app.HandlerFunc { + // your code... + return nil +} + +func _deletetagMw() []app.HandlerFunc { + // your code... + return nil +} + +func _listtagMw() []app.HandlerFunc { + // your code... + return nil +} + +func _createtagMw() []app.HandlerFunc { + // your code... + return nil +} + +func _bindMw() []app.HandlerFunc { + // your code... + return nil +} + +func _bindtagMw() []app.HandlerFunc { + // your code... + return nil +} + +func _findMw() []app.HandlerFunc { + // your code... + return nil +} + +func _fandtagMw() []app.HandlerFunc { + // your code... + return nil +} + +func _listmomentsbytagMw() []app.HandlerFunc { + // your code... + return nil +} + +func _list5Mw() []app.HandlerFunc { + // your code... + return nil +} + +func _list6Mw() []app.HandlerFunc { + // your code... + return nil +} diff --git a/weMedia/biz/router/moment/moment.go b/weMedia/biz/router/moment/moment.go index 2590d5a..d0bc666 100644 --- a/weMedia/biz/router/moment/moment.go +++ b/weMedia/biz/router/moment/moment.go @@ -25,6 +25,15 @@ func Register(r *server.Hertz) { _moments := _wemedia.Group("/moments", _momentsMw()...) _moments.DELETE("/", append(_deletemomentMw(), moment.DeleteMoment)...) _moments.POST("/", append(_createmomentMw(), moment.CreateMoment)...) + { + _category := _moments.Group("/category", _categoryMw()...) + _category.GET("/", append(_listcategoryMw(), moment.ListCategory)...) + _category.POST("/", append(_bindcategoryMw(), moment.BindCategory)...) + { + _list := _category.Group("/list", _listMw()...) + _list.GET("/", append(_listmomentsbycategoryMw(), moment.ListMomentsByCategory)...) + } + } { _collect := _moments.Group("/collect", _collectMw()...) _collect.POST("/", append(_collectmomentMw(), moment.CollectMoment)...) @@ -34,8 +43,8 @@ func Register(r *server.Hertz) { _comment.DELETE("/", append(_deletecommentMw(), moment.DeleteComment)...) _comment.POST("/", append(_commentmomentMw(), moment.CommentMoment)...) { - _list := _comment.Group("/list", _listMw()...) - _list.GET("/", append(_listmomentcommentsMw(), moment.ListMomentComments)...) + _list0 := _comment.Group("/list", _list0Mw()...) + _list0.GET("/", append(_listmomentcommentsMw(), moment.ListMomentComments)...) } } { @@ -46,13 +55,31 @@ func Register(r *server.Hertz) { _like := _moments.Group("/like", _likeMw()...) _like.POST("/", append(_likemomentMw(), moment.LikeMoment)...) { - _list0 := _like.Group("/list", _list0Mw()...) - _list0.GET("/", append(_listmomentlikesMw(), moment.ListMomentLikes)...) + _list1 := _like.Group("/list", _list1Mw()...) + _list1.GET("/", append(_listmomentlikesMw(), moment.ListMomentLikes)...) } } { - _list1 := _moments.Group("/list", _list1Mw()...) - _list1.GET("/", append(_listmomentsMw(), moment.ListMoments)...) + _list2 := _moments.Group("/list", _list2Mw()...) + _list2.GET("/", append(_listmomentsMw(), moment.ListMoments)...) + } + { + _tag := _moments.Group("/tag", _tagMw()...) + _tag.DELETE("/", append(_deletetagMw(), moment.DeleteTag)...) + _tag.GET("/", append(_listtagMw(), moment.ListTag)...) + _tag.POST("/", append(_createtagMw(), moment.CreateTag)...) + { + _bind := _tag.Group("/bind", _bindMw()...) + _bind.POST("/", append(_bindtagMw(), moment.BindTag)...) + } + { + _find := _tag.Group("/find", _findMw()...) + _find.GET("/", append(_fandtagMw(), moment.FandTag)...) + } + { + _list3 := _tag.Group("/list", _list3Mw()...) + _list3.GET("/", append(_listmomentsbytagMw(), moment.ListMomentsByTag)...) + } } { _uncollect := _moments.Group("/unCollect", _uncollectMw()...) @@ -61,22 +88,22 @@ func Register(r *server.Hertz) { { _user := _moments.Group("/user", _userMw()...) { - _list2 := _user.Group("/list", _list2Mw()...) - _list2.GET("/", append(_listmomentsappointMw(), moment.ListMomentsAppoint)...) + _list4 := _user.Group("/list", _list4Mw()...) + _list4.GET("/", append(_listmomentsappointMw(), moment.ListMomentsAppoint)...) } } { _usercollects := _moments.Group("/userCollects", _usercollectsMw()...) { - _list3 := _usercollects.Group("/list", _list3Mw()...) - _list3.GET("/", append(_listusercollectsMw(), moment.ListUserCollects)...) + _list5 := _usercollects.Group("/list", _list5Mw()...) + _list5.GET("/", append(_listusercollectsMw(), moment.ListUserCollects)...) } } { _userlike := _moments.Group("/userlike", _userlikeMw()...) { - _list4 := _userlike.Group("/list", _list4Mw()...) - _list4.GET("/", append(_listuserlikesMw(), moment.ListUserLikes)...) + _list6 := _userlike.Group("/list", _list6Mw()...) + _list6.GET("/", append(_listuserlikesMw(), moment.ListUserLikes)...) } } } diff --git a/weMedia/idl/moment.thrift b/weMedia/idl/moment.thrift index ed914dd..ccb56fa 100644 --- a/weMedia/idl/moment.thrift +++ b/weMedia/idl/moment.thrift @@ -261,6 +261,119 @@ struct ListMomentsAppointResponse { 3: i32 total // 总数量 } +struct TagInfo{ + 1: i32 id + 2: string tag_name +} + +struct CreateTagResponse { + 1: Code code + 2: string msg +} + +struct CreateTagRequest { + 1: string tag_name + 2: string user_id +} + +struct DeleteTagResponse { + 1: Code code + 2: string msg +} + +struct DeleteTagRequest { + 1: string tag_name + 2: string user_id +} + +struct ListTagResponse{ + 1: Code code + 2: string msg + 3: list tags + 4: i32 total +} + +struct ListTagRequest{ + 1: string user_id + 2: i32 page // 页码,默认1 + 3: i32 page_size // 每页数量 +} + +struct FindTagRequest{ + 1: string keyword // 关键字 + 2: i32 page // 页码,默认1 + 3: i32 page_size // 每页数量 +} + +struct FindTagResponse{ + 1: Code code + 2: list tags + 3: i32 total +} + +struct BindTagResponse{ + 1: Code code + 2: string msg +} + +struct BindTagRequest{ + 1: list moment_id + 2: i32 tag_id +} + +// 获取指定tag动态列表请求 +struct ListMomentsByTagRequest { + 1: string tag + 2: i32 page // 页码,默认1 + 3: i32 page_size // 每页数量,默认10 +} + +// 获取指定tag动态列表响应 +struct ListMomentsByTagResponse { + 1: Code code + 2: list moments // 动态列表 + 3: i32 total // 总数量 +} + +struct CategoryInfo{ + 1: i32 id + 2: string category_name +} + +struct ListCategoryResponse{ + 1: Code code + 2: string msg + 3: list categorys +} + +struct ListCategoryRequest{ + 1: string user_id +} + +struct BindCategoryResponse{ + 1: Code code + 2: string msg +} + +struct BindCategoryRequest{ + 1: list moment_id + 2: i32 category_id +} + +// 获取指定分类动态列表请求 +struct ListMomentsByCategoryRequest { + 1: i32 category_id + 2: i32 page // 页码,默认1 + 3: i32 page_size // 每页数量,默认10 +} + +// 获取指定分类动态列表响应 +struct ListMomentsByCategoryResponse { + 1: Code code + 2: list moments // 动态列表 + 3: i32 total // 总数量 +} + // 动态服务接口 service MomentsService { // 发布动态 @@ -304,4 +417,31 @@ service MomentsService { // 删除评论 DeleteCommentResponse DeleteComment(1: DeleteCommentRequest req)(api.delete="/v1/weMedia/moments/comment/") + + //新增tag + CreateTagResponse CreateTag(1: CreateTagRequest req)(api.post="/v1/weMedia/moments/tag/") + + //删除tag + DeleteTagResponse DeleteTag(1: DeleteTagRequest req)(api.delete="/v1/weMedia/moments/tag/") + + //获取tag列表 + ListTagResponse ListTag(1: ListTagRequest req)(api.get="/v1/weMedia/moments/tag/") + + //获取tag列表 + FindTagResponse FandTag(1: FindTagRequest req)(api.get="/v1/weMedia/moments/tag/find/") + + //绑定tag + BindTagResponse BindTag(1: BindTagRequest req)(api.post="/v1/weMedia/moments/tag/bind/") + + //通过tag获取文章列表 + ListMomentsByTagResponse ListMomentsByTag(1: ListMomentsByTagRequest req)(api.get="/v1/weMedia/moments/tag/list/") + + //获取分类列表 + ListCategoryResponse ListCategory(1: ListCategoryRequest req)(api.get="/v1/weMedia/moments/category/") + + //绑定分类 + BindCategoryResponse BindCategory(1: BindCategoryRequest req)(api.post="/v1/weMedia/moments/category/") + + //通过分类获取文章列表 + ListMomentsByCategoryResponse ListMomentsByCategory(1: ListMomentsByCategoryRequest req)(api.get="/v1/weMedia/moments/category/list/") } \ No newline at end of file