From 064c56bcc092ec2c185965aac9125d46e0ab699f Mon Sep 17 00:00:00 2001 From: mutezebra Date: Tue, 15 Oct 2024 02:19:16 +0800 Subject: [PATCH 01/19] refactor: use zap instead of logrus --- cmd/template/main.go | 26 ++++--- go.mod | 4 +- go.sum | 8 +-- pkg/eslogrus/eslogrus.go | 151 --------------------------------------- pkg/eszap/eszap.go | 130 +++++++++++++++++++++++++++++++++ 5 files changed, 151 insertions(+), 168 deletions(-) delete mode 100644 pkg/eslogrus/eslogrus.go create mode 100644 pkg/eszap/eszap.go diff --git a/cmd/template/main.go b/cmd/template/main.go index 227ea79..cdfc084 100644 --- a/cmd/template/main.go +++ b/cmd/template/main.go @@ -21,22 +21,25 @@ import ( "fmt" "net" + "go.uber.org/zap" + "go.uber.org/zap/zapcore" + + "github.com/west2-online/fzuhelper-server/pkg/eszap" + "github.com/cloudwego/kitex/pkg/klog" "github.com/cloudwego/kitex/pkg/limit" "github.com/cloudwego/kitex/pkg/rpcinfo" "github.com/cloudwego/kitex/server" "github.com/elastic/go-elasticsearch" - kitexlogrus "github.com/kitex-contrib/obs-opentelemetry/logging/logrus" + kitexzap "github.com/kitex-contrib/obs-opentelemetry/logging/zap" etcd "github.com/kitex-contrib/registry-etcd" trace "github.com/kitex-contrib/tracer-opentracing" - "github.com/sirupsen/logrus" "github.com/west2-online/fzuhelper-server/cmd/template/dal" "github.com/west2-online/fzuhelper-server/cmd/template/rpc" "github.com/west2-online/fzuhelper-server/config" "github.com/west2-online/fzuhelper-server/kitex_gen/template/templateservice" "github.com/west2-online/fzuhelper-server/pkg/constants" - "github.com/west2-online/fzuhelper-server/pkg/eslogrus" "github.com/west2-online/fzuhelper-server/pkg/tracer" "github.com/west2-online/fzuhelper-server/pkg/utils" ) @@ -67,7 +70,7 @@ func Init() { // log EsInit() klog.SetLevel(klog.LevelDebug) - klog.SetLogger(kitexlogrus.NewLogger(kitexlogrus.WithHook(EsHookLog()))) + klog.SetLogger(kitexzap.NewLogger(EsHookLog()...)) } func main() { @@ -115,13 +118,14 @@ func main() { } } -func EsHookLog() *eslogrus.ElasticHook { - hook, err := eslogrus.NewElasticHook(EsClient, config.Elasticsearch.Host, logrus.DebugLevel, serviceName) - if err != nil { - panic(err) - } - - return hook +func EsHookLog() []kitexzap.Option { + hook := eszap.NewElasticHook(EsClient, config.Elasticsearch.Host, serviceName, zapcore.DebugLevel) + var options []kitexzap.Option + options = append(options, kitexzap.WithCoreEnc(hook.Enc())) + options = append(options, kitexzap.WithCoreLevel(hook.Lvl())) + options = append(options, kitexzap.WithCoreWs(hook.Ws())) + options = append(options, kitexzap.WithZapOptions(zap.Hooks(hook.Fire))) + return options } // InitEs 初始化es diff --git a/go.mod b/go.mod index 423068b..d9fcb58 100644 --- a/go.mod +++ b/go.mod @@ -10,13 +10,12 @@ require ( github.com/cloudwego/kitex v0.11.3 github.com/elastic/go-elasticsearch v0.0.0 github.com/fsnotify/fsnotify v1.7.0 - github.com/kitex-contrib/obs-opentelemetry/logging/logrus v0.0.0-20240515092919-1f776656cb66 + github.com/kitex-contrib/obs-opentelemetry/logging/zap v0.0.0-20241010093641-c58c6426d043 github.com/kitex-contrib/registry-etcd v0.2.5 github.com/kitex-contrib/tracer-opentracing v0.0.3 github.com/opentracing/opentracing-go v1.2.0 github.com/rabbitmq/amqp091-go v1.10.0 github.com/redis/go-redis/v9 v9.6.1 - github.com/sirupsen/logrus v1.9.3 github.com/spf13/viper v1.19.0 github.com/uber/jaeger-client-go v2.30.0+incompatible github.com/west2-online/jwch v0.1.4 @@ -57,6 +56,7 @@ require ( github.com/pkg/errors v0.9.1 // indirect github.com/sagikazarmark/locafero v0.6.0 // indirect github.com/sagikazarmark/slog-shim v0.1.0 // indirect + github.com/sirupsen/logrus v1.9.3 // indirect github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d // indirect github.com/smartystreets/goconvey v1.6.4 // indirect github.com/sourcegraph/conc v0.3.0 // indirect diff --git a/go.sum b/go.sum index 52d25ee..759ee9c 100644 --- a/go.sum +++ b/go.sum @@ -302,8 +302,8 @@ github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7V github.com/jung-kurt/gofpdf v1.0.3-0.20190309125859-24315acbbda5/go.mod h1:7Id9E/uU8ce6rXgefFLlgrJj/GYY22cpxn+r32jIOes= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= -github.com/kitex-contrib/obs-opentelemetry/logging/logrus v0.0.0-20240515092919-1f776656cb66 h1:KHEWSTCleXom38JQodofbpY7HNR2KQ4+ypIurCPFy/A= -github.com/kitex-contrib/obs-opentelemetry/logging/logrus v0.0.0-20240515092919-1f776656cb66/go.mod h1:naiLX9zwKBzVA41wtvvmtSZdbCihqIT9RnOb8GZv8A4= +github.com/kitex-contrib/obs-opentelemetry/logging/zap v0.0.0-20241010093641-c58c6426d043 h1:JlH4bwMt51FxWgMAmoCYmorPvYsaDVGSiyA5JPwusoc= +github.com/kitex-contrib/obs-opentelemetry/logging/zap v0.0.0-20241010093641-c58c6426d043/go.mod h1:iedxajZANlvR0u8ODF8TJ7ZAcx6Fg+CMgJT+WsGH5eg= github.com/kitex-contrib/registry-etcd v0.2.5 h1:16On5GQAmN9tdbFy95QtwGH3aTWnW/BfdvdDmzLIytE= github.com/kitex-contrib/registry-etcd v0.2.5/go.mod h1:Imgvy+EkqExHuJs4+VFK0g1bFWHaCJ0KuK1sofWYZf4= github.com/kitex-contrib/tracer-opentracing v0.0.3 h1:8SI0OrHTQ8u6eWpemnuaecMBSEVEvWKCWxg2HnnONQU= @@ -367,7 +367,6 @@ github.com/nats-io/nkeys v0.4.7 h1:RwNJbbIdYCoClSDNY7QVKZlyb/wfT6ugvFCiKy6vDvI= github.com/nats-io/nkeys v0.4.7/go.mod h1:kqXRgRDPlGy7nGaEDMuYzmiJCIAAWDK0IMBtDmGD0nc= github.com/nats-io/nuid v1.0.1 h1:5iA8DT8V7q8WK2EScv2padNa/rTESc1KdnPw4TC2paw= github.com/nats-io/nuid v1.0.1/go.mod h1:19wcPz3Ph3q0Jbyiqsd0kePYG7A95tJPxeL+1OSON2c= -github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= github.com/nyaruka/phonenumbers v1.0.55/go.mod h1:sDaTZ/KPX5f8qyV9qN+hIm+4ZBARJrupC6LuhshJq1U= github.com/nyaruka/phonenumbers v1.4.0 h1:ddhWiHnHCIX3n6ETDA58Zq5dkxkjlvgrDWM2OHHPCzU= @@ -716,8 +715,9 @@ gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLks gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f h1:BLraFXnmrev5lT+xlilqcH8XK9/i0At2xKjWk4p6zsU= gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= gopkg.in/ini.v1 v1.67.0 h1:Dgnx+6+nfE+IfzjUEISNeydPJh9AXNNsWbGP9KzCsOA= gopkg.in/ini.v1 v1.67.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= gopkg.in/natefinch/lumberjack.v2 v2.0.0 h1:1Lc07Kr7qY4U2YPouBjpCLxpiyxIVoxqXgkXLknAOE8= diff --git a/pkg/eslogrus/eslogrus.go b/pkg/eslogrus/eslogrus.go deleted file mode 100644 index 6574eba..0000000 --- a/pkg/eslogrus/eslogrus.go +++ /dev/null @@ -1,151 +0,0 @@ -/* -Copyright 2024 The west2-online Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package eslogrus - -import ( - "bytes" - "context" - "encoding/json" - "log" - "strings" - "time" - - elastic "github.com/elastic/go-elasticsearch" - "github.com/elastic/go-elasticsearch/esapi" - "github.com/sirupsen/logrus" -) - -// ElasticHook is a logrus -// hook for ElasticSearch -type ElasticHook struct { - client *elastic.Client // es的客户端 - host string // es 的 host - index IndexNameFunc // 获取索引的名字 - levels []logrus.Level // 日志的级别 info,error - ctx context.Context // 上下文 - ctxCancel context.CancelFunc // 上下文cancel的函数, - fireFunc fireFunc // 需要实现这个 -} - -// 发送到es的信息结构 -type message struct { - Host string - Timestamp string `json:"@timestamp"` - Message string - Data logrus.Fields - Level string -} - -// IndexNameFunc get index name -type IndexNameFunc func() string - -type fireFunc func(entry *logrus.Entry, hook *ElasticHook) error - -// NewElasticHook 新建一个es hook对象 -func NewElasticHook(client *elastic.Client, host string, level logrus.Level, index string) (*ElasticHook, error) { - return NewElasticHookWithFunc(client, host, level, func() string { return index }) -} - -func NewElasticHookWithFunc(client *elastic.Client, host string, level logrus.Level, indexFunc IndexNameFunc) (*ElasticHook, error) { - return newHookFuncAndFireFunc(client, host, level, indexFunc, syncFireFunc) -} - -// 新建一个hook -func newHookFuncAndFireFunc(client *elastic.Client, host string, level logrus.Level, indexFunc IndexNameFunc, fireFunc fireFunc) (*ElasticHook, error) { - var levels []logrus.Level - for _, l := range []logrus.Level{ - logrus.PanicLevel, - logrus.FatalLevel, - logrus.ErrorLevel, - logrus.WarnLevel, - logrus.InfoLevel, - logrus.DebugLevel, - } { - if l <= level { - levels = append(levels, l) - } - } - - ctx, cancel := context.WithCancel(context.TODO()) - - return &ElasticHook{ - client: client, - host: host, - index: indexFunc, - levels: levels, - ctx: ctx, - ctxCancel: cancel, - fireFunc: fireFunc, - }, nil -} - -// createMessage 创建信息 -func createMessage(entry *logrus.Entry, hook *ElasticHook) *message { - level := entry.Level.String() - - if e, ok := entry.Data[logrus.ErrorKey]; ok && e != nil { - if err, ok := e.(error); ok { - entry.Data[logrus.ErrorKey] = err.Error() - } - } - - return &message{ - hook.host, - entry.Time.UTC().Format(time.RFC3339Nano), - entry.Message, - entry.Data, - strings.ToUpper(level), - } -} - -// syncFireFunc 异步发送 -func syncFireFunc(entry *logrus.Entry, hook *ElasticHook) error { - data, err := json.Marshal(createMessage(entry, hook)) - if err != nil { - return err - } - - req := esapi.IndexRequest{ - Index: hook.index(), - Body: bytes.NewReader(data), - Refresh: "true", - } - - res, err := req.Do(hook.ctx, hook.client) - if err != nil { - log.Fatalf("Error getting response: %s", err) - } - - var r map[string]interface{} - if err = json.NewDecoder(res.Body).Decode(&r); err != nil { - log.Printf("Error parsing the response body: %s", err) - } else { - // Print the response status and indexed document version. - log.Printf("[%s] %s; version=%d", res.Status(), r["result"], int(r["_version"].(float64))) - } - return err -} - -// Fire 实现 logrus hook 必须要的接口函数 -func (hook *ElasticHook) Fire(entry *logrus.Entry) error { - return hook.fireFunc(entry, hook) -} - -// Levels 实现 logrus hook 必须要的接口函数 -func (hook *ElasticHook) Levels() []logrus.Level { - return hook.levels -} diff --git a/pkg/eszap/eszap.go b/pkg/eszap/eszap.go new file mode 100644 index 0000000..74ffa36 --- /dev/null +++ b/pkg/eszap/eszap.go @@ -0,0 +1,130 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package eszap + +import ( + "bytes" + "context" + "encoding/json" + "log" + "os" + "strings" + "time" + + elastic "github.com/elastic/go-elasticsearch" + "github.com/elastic/go-elasticsearch/esapi" + "go.uber.org/zap" + "go.uber.org/zap/zapcore" +) + +// ElasticHook is a zap hook for ElasticSearch +type ElasticHook struct { + client *elastic.Client // es 的客户端 + host string // es 的 host + index string // 获取索引的名字 + ctx context.Context + cancel func() + + enc zapcore.Encoder + lvl zap.AtomicLevel + ws zapcore.WriteSyncer +} + +// IndexNameFunc get index name +type IndexNameFunc func() string + +func NewElasticHook(client *elastic.Client, host string, index string, level zapcore.Level) *ElasticHook { + hook := defaultHookConfig() + + hook.client = client + hook.host = host + hook.index = index + hook.lvl = zap.NewAtomicLevelAt(level) + + return hook +} + +// 发送到 es 的信息结构 +type message struct { + Host string + Timestamp string `json:"@timestamp"` + Message string + Level string +} + +func createMessage(entry *zapcore.Entry, hook *ElasticHook) *message { + return &message{ + Host: hook.host, + Timestamp: entry.Time.UTC().Format(time.RFC3339), + Message: entry.Message, + Level: strings.ToUpper(entry.Level.String()), + } +} + +func (hook *ElasticHook) Fire(entry zapcore.Entry) error { + data, err := json.Marshal(createMessage(&entry, hook)) + if err != nil { + return err + } + + req := esapi.IndexRequest{ + Index: hook.index, + Body: bytes.NewReader(data), + Refresh: "true", + } + + res, err := req.Do(hook.ctx, hook.client) + if err != nil { + log.Fatalf("Error getting response: %s", err) + } + + var r map[string]interface{} + if err = json.NewDecoder(res.Body).Decode(&r); err != nil { + log.Printf("Error parsing the response body: %s", err) + } else { + // Print the response status and indexed document version. + log.Printf("[%s] %s; version=%d", res.Status(), r["result"], int(r["_version"].(float64))) + } + return err +} + +func (hook *ElasticHook) Enc() zapcore.Encoder { + return hook.enc +} + +func (hook *ElasticHook) Lvl() zap.AtomicLevel { + return hook.lvl +} + +func (hook *ElasticHook) Ws() zapcore.WriteSyncer { + return hook.ws +} + +func defaultHookConfig() *ElasticHook { + ctx, cancel := context.WithCancel(context.Background()) + enc := zapcore.NewConsoleEncoder(zap.NewDevelopmentEncoderConfig()) + lvl := zap.NewAtomicLevelAt(zap.DebugLevel) + ws := zapcore.AddSync(os.Stdout) + + return &ElasticHook{ + ctx: ctx, + cancel: cancel, + enc: enc, + lvl: lvl, + ws: ws, + } +} From fe1227f3fe3e08c5988839540bed3141e913f556 Mon Sep 17 00:00:00 2001 From: mutezebra Date: Wed, 16 Oct 2024 17:26:01 +0800 Subject: [PATCH 02/19] feat:Added eszap options --- pkg/eszap/eszap.go | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pkg/eszap/eszap.go b/pkg/eszap/eszap.go index 74ffa36..520cd14 100644 --- a/pkg/eszap/eszap.go +++ b/pkg/eszap/eszap.go @@ -58,6 +58,14 @@ func NewElasticHook(client *elastic.Client, host string, index string, level zap return hook } +func NewLoggerWithHook(client *elastic.Client, host string, index string, level zapcore.Level) *zap.SugaredLogger { + hook := NewElasticHook(client, host, index, level) + logger := zap.New( + zapcore.NewCore(hook.enc, hook.ws, hook.lvl), + zap.Hooks(hook.Fire)) + return logger.Sugar() +} + // 发送到 es 的信息结构 type message struct { Host string From 87b31be8b202f4125d8bb7b20b96d59deab7dff2 Mon Sep 17 00:00:00 2001 From: mutezebra Date: Wed, 16 Oct 2024 21:01:46 +0800 Subject: [PATCH 03/19] refactor: remove the eshook separately to reduce coupling --- cmd/template/main.go | 21 +-- pkg/client/cache.go | 45 ------- pkg/client/db.go | 17 --- pkg/client/rpc.go | 62 --------- pkg/constants/constants.go | 71 ---------- pkg/errno/code.go | 78 ----------- pkg/errno/default.go | 35 ----- pkg/errno/errno.go | 65 --------- pkg/{eszap/eszap.go => eshook/eshook.go} | 53 ++------ pkg/logger/logger.go | 110 --------------- pkg/middleware/common.go | 46 ------- pkg/tracer/tracer.go | 53 -------- pkg/utils/encode.go | 44 ------ pkg/utils/jwt.go | 60 --------- pkg/utils/rpc.go | 27 ---- pkg/utils/snowflake.go | 122 ----------------- pkg/utils/utils.go | 164 ----------------------- 17 files changed, 13 insertions(+), 1060 deletions(-) delete mode 100644 pkg/client/cache.go delete mode 100644 pkg/client/db.go delete mode 100644 pkg/client/rpc.go delete mode 100644 pkg/constants/constants.go delete mode 100644 pkg/errno/code.go delete mode 100644 pkg/errno/default.go delete mode 100644 pkg/errno/errno.go rename pkg/{eszap/eszap.go => eshook/eshook.go} (72%) delete mode 100644 pkg/logger/logger.go delete mode 100644 pkg/middleware/common.go delete mode 100644 pkg/tracer/tracer.go delete mode 100644 pkg/utils/encode.go delete mode 100644 pkg/utils/jwt.go delete mode 100644 pkg/utils/rpc.go delete mode 100644 pkg/utils/snowflake.go delete mode 100644 pkg/utils/utils.go diff --git a/cmd/template/main.go b/cmd/template/main.go index cdfc084..ea69fce 100644 --- a/cmd/template/main.go +++ b/cmd/template/main.go @@ -19,13 +19,9 @@ package main import ( "flag" "fmt" + "github.com/west2-online/fzuhelper-server/pkg/eshook" "net" - "go.uber.org/zap" - "go.uber.org/zap/zapcore" - - "github.com/west2-online/fzuhelper-server/pkg/eszap" - "github.com/cloudwego/kitex/pkg/klog" "github.com/cloudwego/kitex/pkg/limit" "github.com/cloudwego/kitex/pkg/rpcinfo" @@ -34,6 +30,7 @@ import ( kitexzap "github.com/kitex-contrib/obs-opentelemetry/logging/zap" etcd "github.com/kitex-contrib/registry-etcd" trace "github.com/kitex-contrib/tracer-opentracing" + "go.uber.org/zap" "github.com/west2-online/fzuhelper-server/cmd/template/dal" "github.com/west2-online/fzuhelper-server/cmd/template/rpc" @@ -50,6 +47,7 @@ var ( listenAddr string // listen port EsClient *elasticsearch.Client + EsHook *eshook.ElasticHook ) func Init() { @@ -70,7 +68,7 @@ func Init() { // log EsInit() klog.SetLevel(klog.LevelDebug) - klog.SetLogger(kitexzap.NewLogger(EsHookLog()...)) + klog.SetLogger(kitexzap.NewLogger(kitexzap.WithZapOptions(zap.Hooks(EsHook.Fire)))) } func main() { @@ -118,16 +116,6 @@ func main() { } } -func EsHookLog() []kitexzap.Option { - hook := eszap.NewElasticHook(EsClient, config.Elasticsearch.Host, serviceName, zapcore.DebugLevel) - var options []kitexzap.Option - options = append(options, kitexzap.WithCoreEnc(hook.Enc())) - options = append(options, kitexzap.WithCoreLevel(hook.Lvl())) - options = append(options, kitexzap.WithCoreWs(hook.Ws())) - options = append(options, kitexzap.WithZapOptions(zap.Hooks(hook.Fire))) - return options -} - // InitEs 初始化es func EsInit() { esConn := fmt.Sprintf("http://%s", config.Elasticsearch.Addr) @@ -139,4 +127,5 @@ func EsInit() { panic(err) } EsClient = client + EsHook = eshook.NewElasticHook(EsClient, config.Elasticsearch.Host, serviceName) } diff --git a/pkg/client/cache.go b/pkg/client/cache.go deleted file mode 100644 index 6fcbbf7..0000000 --- a/pkg/client/cache.go +++ /dev/null @@ -1,45 +0,0 @@ -/* -Copyright 2024 The west2-online Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package client - -import ( - "context" - "errors" - "fmt" - - "github.com/redis/go-redis/v9" - - "github.com/west2-online/fzuhelper-server/config" -) - -// NewRedisClient 传入dbName, 比如classroom将key放在db0中,user放在db1中 -func NewRedisClient(dbName int) (*redis.Client, error) { - // 首先判断config的redis是否初始化过。如果没有,则该field应该是空指针,我们需要报错返回 - if config.Redis == nil { - return nil, errors.New("redis config is nil") - } - client := redis.NewClient(&redis.Options{ - Addr: config.Redis.Addr, - Password: config.Redis.Password, - DB: dbName, - }) - _, err := client.Ping(context.TODO()).Result() - if err != nil { - return nil, fmt.Errorf("client.NewRedisClient: ping redis failed: %w", err) - } - return client, nil -} diff --git a/pkg/client/db.go b/pkg/client/db.go deleted file mode 100644 index db1478d..0000000 --- a/pkg/client/db.go +++ /dev/null @@ -1,17 +0,0 @@ -/* -Copyright 2024 The west2-online Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package client diff --git a/pkg/client/rpc.go b/pkg/client/rpc.go deleted file mode 100644 index 9e8a72f..0000000 --- a/pkg/client/rpc.go +++ /dev/null @@ -1,62 +0,0 @@ -/* -Copyright 2024 The west2-online Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package client - -import ( - "errors" - "fmt" - - "github.com/cloudwego/kitex/client" - etcd "github.com/kitex-contrib/registry-etcd" - - "github.com/west2-online/fzuhelper-server/config" - "github.com/west2-online/fzuhelper-server/kitex_gen/classroom/classroomservice" - "github.com/west2-online/fzuhelper-server/kitex_gen/user/userservice" - "github.com/west2-online/fzuhelper-server/pkg/constants" -) - -// 定义一系列的RPC客户端 - -func InitUserRPC() (*userservice.Client, error) { - if config.Etcd == nil || config.Etcd.Addr == "" { - return nil, errors.New("config.Etcd.Addr is nil") - } - r, err := etcd.NewEtcdResolver([]string{config.Etcd.Addr}) - if err != nil { - return nil, fmt.Errorf("InitUserRPC etcd.NewEtcdResolver failed: %w", err) - } - client, err := userservice.NewClient(constants.UserServiceName, client.WithResolver(r), client.WithMuxConnection(constants.MuxConnection)) - if err != nil { - return nil, fmt.Errorf("InitUserRPC NewClient failed: %w", err) - } - return &client, nil -} - -func InitClassroomRPC() (*classroomservice.Client, error) { - if config.Etcd == nil || config.Etcd.Addr == "" { - return nil, errors.New("config.Etcd.Addr is nil") - } - r, err := etcd.NewEtcdResolver([]string{config.Etcd.Addr}) - if err != nil { - return nil, fmt.Errorf("InitClassroomRPC etcd.NewEtcdResolver failed: %w", err) - } - client, err := classroomservice.NewClient(constants.ClassroomServiceName, client.WithResolver(r), client.WithMuxConnection(constants.MuxConnection)) - if err != nil { - return nil, fmt.Errorf("InitClassroomRPC NewClient failed: %w", err) - } - return &client, nil -} diff --git a/pkg/constants/constants.go b/pkg/constants/constants.go deleted file mode 100644 index d1c676d..0000000 --- a/pkg/constants/constants.go +++ /dev/null @@ -1,71 +0,0 @@ -/* -Copyright 2024 The west2-online Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package constants - -import "time" - -const ( - // auth - JWTValue = "MTAxNTkwMTg1Mw==" - StartID = 10000 - - // RPC - MuxConnection = 1 - RPCTimeout = 3 * time.Second - ConnectTimeout = 50 * time.Millisecond - - // service name - TemplateServiceName = "template" - ClassroomServiceName = "classroom" - UserServiceName = "user" - ApiServiceName = "api" - - // db table name - TemplateServiceTableName = "template" - - // redis - RedisDBEmptyRoom = 0 - ClassroomKeyExpire = 2 * 24 * time.Hour - // snowflake - SnowflakeWorkerID = 0 - SnowflakeDatacenterID = 0 - - // limit - MaxConnections = 1000 - MaxQPS = 100 - MaxVideoSize = 300000 - MaxListLength = 100 - MaxIdleConns = 10 - MaxGoroutines = 10 - MaxOpenConns = 100 - ConnMaxLifetime = 10 * time.Second - - NumWorkers = 10 // 最大的并发数量 - - // timeout - FailureRateLimiterBaseDelay = time.Minute - FailureRateLimiterMaxDelay = 30 * time.Minute - - // 定时任务 - ScheduledTime = 24 * time.Hour - - // retry - MaxRetries = 5 // 最大重试次数 - InitialDelay = 1 * time.Second // 初始等待时间 -) - -var CampusArray = []string{"旗山校区", "厦门工艺美院", "铜盘校区", "怡山校区", "晋江校区", "泉港校区"} diff --git a/pkg/errno/code.go b/pkg/errno/code.go deleted file mode 100644 index b499801..0000000 --- a/pkg/errno/code.go +++ /dev/null @@ -1,78 +0,0 @@ -/* -Copyright 2024 The west2-online Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -// This file is designed to define any error code -package errno - -const ( - // For microservices - SuccessCode = 10000 - SuccessMsg = "ok" - - // Error - /* - 200xx: 参数错误,Param 打头 - 300xx: 鉴权错误,Auth 打头 - 400xx: 业务错误,Biz 打头 - 500xx: 内部错误,Internal 打头 - */ - ParamErrorCode = 20001 // 参数错误 - ParamEmptyCode = 20002 // 参数为空 - ParamMissingHeaderCode = 20003 // 缺少请求头数据(id or cookies) - ParamInvalidCode = 20004 // 参数无效 - ParamMissingCode = 20005 // 参数缺失 - ParamTooLongCode = 20006 // 参数过长 - ParamTooShortCode = 20007 // 参数过短 - ParamTypeCode = 20008 // 参数类型错误 - ParamFormatCode = 20009 // 参数格式错误 - ParamRangeCode = 20010 // 参数范围错误 - ParamValueCode = 20011 // 参数值错误 - ParamFileNotExistCode = 20012 // 文件不存在 - ParamFileReadErrorCode = 20013 // 文件读取错误 - - AuthErrorCode = 30001 // 鉴权错误 - AuthInvalidCode = 30002 // 鉴权无效 - AuthExpiredCode = 30003 // 鉴权过期 - AuthMissingCode = 30004 // 鉴权缺失 - AuthNotEnoughCode = 30005 // 鉴权不足 - - BizErrorCode = 40001 // 业务错误 - BizLogicCode = 40002 // 业务逻辑错误 - BizLimitCode = 40003 // 业务限制错误 - BizNotExist = 40005 // 业务不存在错误 - BizFileUploadErrorCode = 40006 // 文件上传错误(service 层) - - InternalServiceErrorCode = 50001 // 未知服务错误 - InternalDatabaseErrorCode = 50002 // 数据库错误 - InternalRedisErrorCode = 50003 // Redis错误 - InternalNetworkErrorCode = 50004 // 网络错误 - InternalTimeoutErrorCode = 50005 // 超时错误 - InternalIOErrorCode = 50006 // IO错误 - InternalJSONErrorCode = 50007 // JSON错误 - InternalXMLErrorCode = 50008 // XML错误 - InternalURLEncodeErrorCode = 50009 // URL编码错误 - InternalHTTPErrorCode = 50010 // HTTP错误 - InternalHTTP2ErrorCode = 50011 // HTTP2错误 - InternalGRPCErrorCode = 50012 // GRPC错误 - InternalThriftErrorCode = 50013 // Thrift错误 - InternalProtobufErrorCode = 50014 // Protobuf错误 - InternalSQLErrorCode = 50015 // SQL错误 - InternalNoSQLErrorCode = 50016 // NoSQL错误 - InternalORMErrorCode = 50017 // ORM错误 - InternalQueueErrorCode = 50018 // 队列错误 - InternalETCDErrorCode = 50019 // ETCD错误 - InternalTraceErrorCode = 50020 // Trace错误 -) diff --git a/pkg/errno/default.go b/pkg/errno/default.go deleted file mode 100644 index 46bc868..0000000 --- a/pkg/errno/default.go +++ /dev/null @@ -1,35 +0,0 @@ -/* -Copyright 2024 The west2-online Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -// This file is be designed to define any common error so that we can use it in any service simply. - -package errno - -var ( - // Success - Success = NewErrNo(SuccessCode, "Success") - - ParamError = NewErrNo(ParamErrorCode, "parameter error") - ParamEmpty = NewErrNo(ParamEmptyCode, "some params that required are empty") - ParamMissingHeader = NewErrNo(ParamMissingHeaderCode, "missing request header data (id or cookies)") - - AuthFailedError = NewErrNo(AuthErrorCode, "authorization failed") - BizError = NewErrNo(BizErrorCode, "business error") - InternalServiceError = NewErrNo(InternalServiceErrorCode, "internal service error") - - // redis - RedisError = NewErrNo(InternalRedisErrorCode, "redis error") -) diff --git a/pkg/errno/errno.go b/pkg/errno/errno.go deleted file mode 100644 index ac0f27b..0000000 --- a/pkg/errno/errno.go +++ /dev/null @@ -1,65 +0,0 @@ -/* -Copyright 2024 The west2-online Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -// DO NOT EDIT - -package errno - -import ( - "errors" - "fmt" -) - -type ErrNo struct { - ErrorCode int64 - ErrorMsg string -} - -func (e ErrNo) Error() string { - return fmt.Sprintf("[%d] %s", e.ErrorCode, e.ErrorMsg) -} - -func NewErrNo(code int64, msg string) ErrNo { - return ErrNo{ - ErrorCode: code, - ErrorMsg: msg, - } -} - -// WithMessage will replace default msg to new -func (e ErrNo) WithMessage(msg string) ErrNo { - e.ErrorMsg = msg - return e -} - -// WithError will add error msg after Message -func (e ErrNo) WithError(err error) ErrNo { - e.ErrorMsg = e.ErrorMsg + ", " + err.Error() - return e -} - -// ConvertErr convert error to ErrNo -// in Default user ServiceErrorCode -func ConvertErr(err error) ErrNo { - errno := ErrNo{} - if errors.As(err, &errno) { - return errno - } - - s := InternalServiceError - s.ErrorMsg = err.Error() - return s -} diff --git a/pkg/eszap/eszap.go b/pkg/eshook/eshook.go similarity index 72% rename from pkg/eszap/eszap.go rename to pkg/eshook/eshook.go index 520cd14..60f736d 100644 --- a/pkg/eszap/eszap.go +++ b/pkg/eshook/eshook.go @@ -14,20 +14,18 @@ See the License for the specific language governing permissions and limitations under the License. */ -package eszap +package eshook import ( "bytes" "context" "encoding/json" "log" - "os" "strings" "time" elastic "github.com/elastic/go-elasticsearch" "github.com/elastic/go-elasticsearch/esapi" - "go.uber.org/zap" "go.uber.org/zap/zapcore" ) @@ -38,32 +36,24 @@ type ElasticHook struct { index string // 获取索引的名字 ctx context.Context cancel func() - - enc zapcore.Encoder - lvl zap.AtomicLevel - ws zapcore.WriteSyncer } -// IndexNameFunc get index name -type IndexNameFunc func() string - -func NewElasticHook(client *elastic.Client, host string, index string, level zapcore.Level) *ElasticHook { +func NewElasticHook(client *elastic.Client, host string, index string) *ElasticHook { hook := defaultHookConfig() hook.client = client hook.host = host hook.index = index - hook.lvl = zap.NewAtomicLevelAt(level) return hook } -func NewLoggerWithHook(client *elastic.Client, host string, index string, level zapcore.Level) *zap.SugaredLogger { - hook := NewElasticHook(client, host, index, level) - logger := zap.New( - zapcore.NewCore(hook.enc, hook.ws, hook.lvl), - zap.Hooks(hook.Fire)) - return logger.Sugar() +func defaultHookConfig() *ElasticHook { + ctx, cancel := context.WithCancel(context.Background()) + return &ElasticHook{ + ctx: ctx, + cancel: cancel, + } } // 发送到 es 的信息结构 @@ -109,30 +99,3 @@ func (hook *ElasticHook) Fire(entry zapcore.Entry) error { } return err } - -func (hook *ElasticHook) Enc() zapcore.Encoder { - return hook.enc -} - -func (hook *ElasticHook) Lvl() zap.AtomicLevel { - return hook.lvl -} - -func (hook *ElasticHook) Ws() zapcore.WriteSyncer { - return hook.ws -} - -func defaultHookConfig() *ElasticHook { - ctx, cancel := context.WithCancel(context.Background()) - enc := zapcore.NewConsoleEncoder(zap.NewDevelopmentEncoderConfig()) - lvl := zap.NewAtomicLevelAt(zap.DebugLevel) - ws := zapcore.AddSync(os.Stdout) - - return &ElasticHook{ - ctx: ctx, - cancel: cancel, - enc: enc, - lvl: lvl, - ws: ws, - } -} diff --git a/pkg/logger/logger.go b/pkg/logger/logger.go deleted file mode 100644 index ab9f5dc..0000000 --- a/pkg/logger/logger.go +++ /dev/null @@ -1,110 +0,0 @@ -/* -Copyright 2024 The west2-online Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package logger - -import ( - "sync" - - "go.uber.org/zap" - "go.uber.org/zap/zapcore" -) - -var ( - LoggerObj *zap.SugaredLogger - once sync.Once -) - -// 初始化 Logger 的函数 -func initLogger() { - // 配置 zap 的日志等级和输出格式 - config := zap.Config{ - Level: zap.NewAtomicLevelAt(zap.DebugLevel), // 设置日志等级 - Development: false, // 非开发模式 - Encoding: "console", // 输出格式(json 或 console) - OutputPaths: []string{"stdout"}, // 输出目标 - ErrorOutputPaths: []string{"stderr"}, // 错误输出目标 - EncoderConfig: zapcore.EncoderConfig{ - TimeKey: "time", - LevelKey: "level", - NameKey: "logger", - CallerKey: "caller", - MessageKey: "msg", - StacktraceKey: "stacktrace", - LineEnding: zapcore.DefaultLineEnding, - EncodeLevel: zapcore.CapitalLevelEncoder, // 日志等级大写 - EncodeTime: zapcore.ISO8601TimeEncoder, // 时间格式 - EncodeDuration: zapcore.StringDurationEncoder, - EncodeCaller: zapcore.ShortCallerEncoder, - }, - } - logger, err := config.Build(zap.AddCallerSkip(1)) // 创建基础 Logger - if err != nil { - panic(err) - } - - // 创建 SugaredLogger - LoggerObj = logger.Sugar() -} - -// 确保 LoggerObj 只初始化一次 -// 使用 init() 函数来替代 syncOnce 是个方法,而且不需要额外的代码来进行 check -// 但是这样损失了更多的 DIY 特性,比如可以在初始化的时候传入参数 -func ensureLoggerInit() { - once.Do(func() { - initLogger() - }) -} - -func Fatalf(template string, args ...interface{}) { - ensureLoggerInit() - LoggerObj.Fatalf(template, args...) -} - -func Errorf(template string, args ...interface{}) { - ensureLoggerInit() - LoggerObj.Errorf(template, args...) -} - -func Infof(template string, args ...interface{}) { - ensureLoggerInit() - LoggerObj.Infof(template, args...) -} - -func Debugf(template string, args ...interface{}) { - ensureLoggerInit() - LoggerObj.Debugf(template, args...) -} - -func Fatal(args ...interface{}) { - ensureLoggerInit() - LoggerObj.Fatal(args) -} - -func Info(args ...interface{}) { - ensureLoggerInit() - LoggerObj.Info(args) -} - -func Error(args ...interface{}) { - ensureLoggerInit() - LoggerObj.Error(args) -} - -func Debug(args ...interface{}) { - ensureLoggerInit() - LoggerObj.Debug(args) -} diff --git a/pkg/middleware/common.go b/pkg/middleware/common.go deleted file mode 100644 index bbbea4e..0000000 --- a/pkg/middleware/common.go +++ /dev/null @@ -1,46 +0,0 @@ -/* -Copyright 2024 The west2-online Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package middleware - -import ( - "context" - - "github.com/cloudwego/kitex/pkg/endpoint" - "github.com/cloudwego/kitex/pkg/klog" - "github.com/cloudwego/kitex/pkg/rpcinfo" -) - -var _ endpoint.Middleware = CommonMiddleware - -// server for api -func CommonMiddleware(next endpoint.Endpoint) endpoint.Endpoint { - return func(ctx context.Context, req, resp interface{}) (err error) { - ri := rpcinfo.GetRPCInfo(ctx) - - // get remote service information - klog.Infof("remote service name: %s, remote method: %s\n", ri.To().ServiceName(), ri.To().Method()) - - if err = next(ctx, req, resp); err != nil { - return err - } - - // get real response - klog.Infof("real response: %+v\n", resp) - - return nil - } -} diff --git a/pkg/tracer/tracer.go b/pkg/tracer/tracer.go deleted file mode 100644 index 9429453..0000000 --- a/pkg/tracer/tracer.go +++ /dev/null @@ -1,53 +0,0 @@ -/* -Copyright 2024 The west2-online Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package tracer - -import ( - "fmt" - - "github.com/opentracing/opentracing-go" - "github.com/uber/jaeger-client-go" - jaegerconfig "github.com/uber/jaeger-client-go/config" - - "github.com/west2-online/fzuhelper-server/config" -) - -func InitJaeger(service string) { - cfg := &jaegerconfig.Configuration{ - Disabled: false, - Sampler: &jaegerconfig.SamplerConfig{ - Type: "const", - Param: 1, - }, - Reporter: &jaegerconfig.ReporterConfig{ - LogSpans: true, - LocalAgentHostPort: config.Jaeger.Addr, - }, - } - - cfg.ServiceName = service - - tracer, _, err := cfg.NewTracer( - jaegerconfig.Logger(jaeger.StdLogger), - jaegerconfig.ZipkinSharedRPCSpan(true), - ) - if err != nil { - panic(fmt.Sprintf("cannot init jaeger: %v\n", err)) - } - - opentracing.SetGlobalTracer(tracer) -} diff --git a/pkg/utils/encode.go b/pkg/utils/encode.go deleted file mode 100644 index 6b556b6..0000000 --- a/pkg/utils/encode.go +++ /dev/null @@ -1,44 +0,0 @@ -/* -Copyright 2024 The west2-online Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package utils - -import ( - "crypto/md5" - "crypto/sha256" - "encoding/hex" - "fmt" -) - -// MD5 use md5 to encode string -func MD5(str string) string { - h := md5.New() - h.Write([]byte(str)) - return hex.EncodeToString(h.Sum(nil)) -} - -func MD5Bytes(str []byte) string { - h := md5.New() - h.Write(str) - return hex.EncodeToString(h.Sum(nil)) -} - -// SHA256 use sha256 to encode string -func SHA256(str string) string { - h := sha256.New() - h.Write([]byte(str)) - return fmt.Sprintf("%x", h.Sum(nil)) -} diff --git a/pkg/utils/jwt.go b/pkg/utils/jwt.go deleted file mode 100644 index 8eec819..0000000 --- a/pkg/utils/jwt.go +++ /dev/null @@ -1,60 +0,0 @@ -/* -Copyright 2024 The west2-online Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package utils - -import ( - "time" - - "github.com/golang-jwt/jwt" - - "github.com/west2-online/fzuhelper-server/pkg/constants" -) - -type Claims struct { - UserId int64 `json:"user_id"` - jwt.StandardClaims -} - -func CreateToken(userId int64) (string, error) { - expireTime := time.Now().Add(24 * 7 * time.Hour) // 过期时间为7天 - nowTime := time.Now() // 当前时间 - claims := Claims{ - UserId: userId, - StandardClaims: jwt.StandardClaims{ - ExpiresAt: expireTime.Unix(), // 过期时间戳 - IssuedAt: nowTime.Unix(), // 当前时间戳 - Issuer: "tiktok", // 颁发者签名 - }, - } - tokenStruct := jwt.NewWithClaims(jwt.SigningMethodHS256, claims) - return tokenStruct.SignedString([]byte(constants.JWTValue)) -} - -func CheckToken(token string) (*Claims, error) { - response, err := jwt.ParseWithClaims(token, &Claims{}, func(token *jwt.Token) (interface{}, error) { - return []byte(constants.JWTValue), nil - }) - if err != nil { - return nil, err - } - - if resp, ok := response.Claims.(*Claims); ok && response.Valid { - return resp, nil - } - - return nil, err -} diff --git a/pkg/utils/rpc.go b/pkg/utils/rpc.go deleted file mode 100644 index e781786..0000000 --- a/pkg/utils/rpc.go +++ /dev/null @@ -1,27 +0,0 @@ -/* -Copyright 2024 The west2-online Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package utils - -import ( - "github.com/west2-online/fzuhelper-server/kitex_gen/model" - "github.com/west2-online/fzuhelper-server/pkg/errno" -) - -// IsSuccess 通用的rpc结果处理 -func IsSuccess(baseResp *model.BaseResp) bool { - return baseResp.Code == errno.SuccessCode -} diff --git a/pkg/utils/snowflake.go b/pkg/utils/snowflake.go deleted file mode 100644 index 0a5cdbe..0000000 --- a/pkg/utils/snowflake.go +++ /dev/null @@ -1,122 +0,0 @@ -/* -Copyright 2024 The west2-online Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package utils - -import ( - "fmt" - "sync" - "time" -) - -const ( - epoch int64 = 1577808000000 // 设置起始时间(时间戳/毫秒):2020-01-01 00:00:00,有效期69年 - timestampBits int64 = 41 // 时间戳占用位数 - datacenteridBits int64 = 5 // 数据中心id所占位数 - workeridBits int64 = 5 // 机器id所占位数 - sequenceBits int64 = 12 // 序列所占的位数 - timestampMax int64 = 2199023255551 // (-1 ^ (-1 << timestampBits))时间戳最大值 - datacenteridMax int64 = 31 // (-1 ^ (-1 << datacenteridBits))支持的最大数据中心id数量 - workeridMax int64 = 31 // (-1 ^ (-1 << workeridBits)) 支持的最大机器id数量 - sequenceMask int64 = 4095 // (-1 ^ (-1 << sequenceBits))支持的最大序列id数量 - workeridShift int64 = 12 // sequenceBits 机器id左移位数 - datacenteridShift int64 = 17 // sequenceBits + workeridBits 数据中心id左移位数 - timestampShift int64 = 22 // sequenceBits + workeridBits + datacenteridBits 时间戳左移位数 -) - -type Snowflake struct { - sync.Mutex - timestamp int64 - workerid int64 - datacenterid int64 - sequence int64 -} - -func NewSnowflake(datacenterid, workerid int64) (*Snowflake, error) { - if datacenterid < 0 || datacenterid > datacenteridMax { - return nil, fmt.Errorf("datacenterid must be between 0 and %d", datacenteridMax-1) - } - if workerid < 0 || workerid > workeridMax { - return nil, fmt.Errorf("workerid must be between 0 and %d", workeridMax-1) - } - return &Snowflake{ - timestamp: 0, - datacenterid: datacenterid, - workerid: workerid, - sequence: 0, - }, nil -} - -// timestamp + 数据中心id + 工作节点id + 自旋id -func (s *Snowflake) NextVal() (int64, error) { - s.Lock() - now := time.Now().UnixNano() / 1000000 // 转毫秒 - if s.timestamp == now { - // 当同一时间戳(精度:毫秒)下多次生成id会增加序列号 - s.sequence = (s.sequence + 1) & sequenceMask - if s.sequence == 0 { - // 如果当前序列超出12bit长度,则需要等待下一毫秒 - // 下一毫秒将使用sequence:0 - for now <= s.timestamp { - now = time.Now().UnixNano() / 1000000 - } - } - } else { - // 不同时间戳(精度:毫秒)下直接使用序列号:0 - s.sequence = 0 - } - t := now - epoch - if t > timestampMax { - s.Unlock() - return 0, fmt.Errorf("epoch must be between 0 and %d", timestampMax-1) - } - s.timestamp = now - r := (t)<> datacenteridShift) & datacenteridMax - workerid = (sid >> workeridShift) & workeridMax - return -} - -// 获取时间戳 -func GetTimestamp(sid int64) (timestamp int64) { - timestamp = (sid >> timestampShift) & timestampMax - return -} - -// 获取创建ID时的时间戳 -func GetGenTimestamp(sid int64) (timestamp int64) { - timestamp = GetTimestamp(sid) + epoch - return -} - -// 获取创建ID时的时间字符串(精度:秒) -func GetGenTime(sid int64) (t string) { - // 需将GetGenTimestamp获取的时间戳/1000转换成秒 - t = time.Unix(GetGenTimestamp(sid)/1000, 0).Format("2006-01-02 15:04:05") - return -} - -// 获取时间戳已使用的占比:范围(0.0 - 1.0) -func GetTimestampStatus() (state float64) { - state = float64((time.Now().UnixNano()/1000000 - epoch)) / float64(timestampMax) - return -} diff --git a/pkg/utils/utils.go b/pkg/utils/utils.go deleted file mode 100644 index b806764..0000000 --- a/pkg/utils/utils.go +++ /dev/null @@ -1,164 +0,0 @@ -/* -Copyright 2024 The west2-online Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package utils - -import ( - "errors" - "fmt" - "net" - "net/http" - "strconv" - "strings" - "time" - - "github.com/west2-online/fzuhelper-server/pkg/constants" - "github.com/west2-online/jwch" - - config "github.com/west2-online/fzuhelper-server/config" -) - -func TimeParse(date string) (time.Time, error) { - return time.Parse("2006-01-02", date) -} - -func GetMysqlDSN() (string, error) { - if config.Mysql == nil { - return "", errors.New("config not found") - } - - dsn := strings.Join([]string{config.Mysql.Username, ":", config.Mysql.Password, "@tcp(", config.Mysql.Addr, ")/", config.Mysql.Database, "?charset=" + config.Mysql.Charset + "&parseTime=true"}, "") - - return dsn, nil -} - -func GetMQUrl() (string, error) { - if config.RabbitMQ == nil { - return "", errors.New("config not found") - } - - url := strings.Join([]string{"amqp://", config.RabbitMQ.Username, ":", config.RabbitMQ.Password, "@", config.RabbitMQ.Addr, "/"}, "") - - return url, nil -} - -func AddrCheck(addr string) bool { - l, err := net.Listen("tcp", addr) - if err != nil { - return false - } - - l.Close() - - return true -} - -// ParseCookies 将cookie字符串解析为http.Cookie -func ParseCookies(rawData []string) []*http.Cookie { - var cookies []*http.Cookie - for _, raw := range rawData { - cookie := &http.Cookie{} - parts := strings.Split(raw, ";") - for i, part := range parts { - if i == 0 { - cookieParts := strings.Split(part, "=") - cookie.Name = cookieParts[0] - cookie.Value = cookieParts[1] - } else { - cookieParts := strings.Split(part, "=") - switch cookieParts[0] { - case "Domain": - cookie.Domain = cookieParts[1] - case "Path": - cookie.Path = cookieParts[1] - case "Expires": - if expires, err := time.Parse(time.RFC1123, cookieParts[1]); err == nil { - cookie.Expires = expires - } - case "Max-Age": - if maxAge, err := strconv.Atoi(cookieParts[1]); err == nil { - cookie.MaxAge = maxAge - } - case "Secure": - cookie.Secure = true - case "HttpOnly": - cookie.HttpOnly = true - } - } - } - cookies = append(cookies, cookie) - } - return cookies -} - -func ParseCookiesToString(cookies []*http.Cookie) []string { - var cookieStrings []string - for _, cookie := range cookies { - var parts []string - parts = append(parts, cookie.Name+"="+cookie.Value) - if cookie.Domain != "" { - parts = append(parts, "Domain="+cookie.Domain) - } - if cookie.Path != "" { - parts = append(parts, "Path="+cookie.Path) - } - if !cookie.Expires.IsZero() { - parts = append(parts, "Expires="+cookie.Expires.Format(time.RFC1123)) - } - if cookie.MaxAge > 0 { - parts = append(parts, "Max-Age="+strconv.Itoa(cookie.MaxAge)) - } - if cookie.Secure { - parts = append(parts, "Secure") - } - if cookie.HttpOnly { - parts = append(parts, "HttpOnly") - } - cookieStrings = append(cookieStrings, strings.Join(parts, "; ")) - } - return cookieStrings -} - -func GetAvailablePort() (string, error) { - if config.Service.AddrList == nil { - return "", errors.New("utils.GetAvailablePort: config.Service.AddrList is nil") - } - for _, addr := range config.Service.AddrList { - if ok := AddrCheck(addr); ok { - return addr, nil - } - } - return "", errors.New("utils.GetAvailablePort: not available port from config") -} - -func RetryLogin(stu *jwch.Student) error { - var err error - delay := constants.InitialDelay - - for attempt := 1; attempt <= constants.MaxRetries; attempt++ { - err = stu.Login() - if err == nil { - return nil // 登录成功 - } - - if attempt < constants.MaxRetries { - time.Sleep(delay) // 等待一段时间后再重试 - delay *= 2 // 指数退避,逐渐增加等待时间 - } - } - - return fmt.Errorf("failed to login after %d attempts: %w", constants.MaxRetries, err) -} From 4d727fd852ca5c62b0556e305fa9539c3769ad28 Mon Sep 17 00:00:00 2001 From: mutezebra Date: Wed, 16 Oct 2024 21:09:02 +0800 Subject: [PATCH 04/19] refactor: wrap kitexzap into the logger --- cmd/template/main.go | 10 ++- pkg/client/cache.go | 45 ++++++++++ pkg/client/db.go | 17 ++++ pkg/client/rpc.go | 62 ++++++++++++++ pkg/constants/constants.go | 71 ++++++++++++++++ pkg/errno/code.go | 78 ++++++++++++++++++ pkg/errno/default.go | 35 ++++++++ pkg/errno/errno.go | 65 +++++++++++++++ pkg/logger/logger.go | 83 +++++++++++++++++++ pkg/logger/output.go | 51 ++++++++++++ pkg/middleware/common.go | 46 +++++++++++ pkg/tracer/tracer.go | 53 ++++++++++++ pkg/utils/encode.go | 44 ++++++++++ pkg/utils/jwt.go | 60 ++++++++++++++ pkg/utils/rpc.go | 27 ++++++ pkg/utils/snowflake.go | 122 +++++++++++++++++++++++++++ pkg/utils/utils.go | 164 +++++++++++++++++++++++++++++++++++++ 17 files changed, 1029 insertions(+), 4 deletions(-) create mode 100644 pkg/client/cache.go create mode 100644 pkg/client/db.go create mode 100644 pkg/client/rpc.go create mode 100644 pkg/constants/constants.go create mode 100644 pkg/errno/code.go create mode 100644 pkg/errno/default.go create mode 100644 pkg/errno/errno.go create mode 100644 pkg/logger/logger.go create mode 100644 pkg/logger/output.go create mode 100644 pkg/middleware/common.go create mode 100644 pkg/tracer/tracer.go create mode 100644 pkg/utils/encode.go create mode 100644 pkg/utils/jwt.go create mode 100644 pkg/utils/rpc.go create mode 100644 pkg/utils/snowflake.go create mode 100644 pkg/utils/utils.go diff --git a/cmd/template/main.go b/cmd/template/main.go index ea69fce..c06c861 100644 --- a/cmd/template/main.go +++ b/cmd/template/main.go @@ -19,18 +19,20 @@ package main import ( "flag" "fmt" - "github.com/west2-online/fzuhelper-server/pkg/eshook" "net" + "go.uber.org/zap" + + "github.com/west2-online/fzuhelper-server/pkg/eshook" + "github.com/west2-online/fzuhelper-server/pkg/logger" + "github.com/cloudwego/kitex/pkg/klog" "github.com/cloudwego/kitex/pkg/limit" "github.com/cloudwego/kitex/pkg/rpcinfo" "github.com/cloudwego/kitex/server" "github.com/elastic/go-elasticsearch" - kitexzap "github.com/kitex-contrib/obs-opentelemetry/logging/zap" etcd "github.com/kitex-contrib/registry-etcd" trace "github.com/kitex-contrib/tracer-opentracing" - "go.uber.org/zap" "github.com/west2-online/fzuhelper-server/cmd/template/dal" "github.com/west2-online/fzuhelper-server/cmd/template/rpc" @@ -68,7 +70,7 @@ func Init() { // log EsInit() klog.SetLevel(klog.LevelDebug) - klog.SetLogger(kitexzap.NewLogger(kitexzap.WithZapOptions(zap.Hooks(EsHook.Fire)))) + klog.SetLogger(logger.DefaultLogger(zap.Hooks(EsHook.Fire))) } func main() { diff --git a/pkg/client/cache.go b/pkg/client/cache.go new file mode 100644 index 0000000..6fcbbf7 --- /dev/null +++ b/pkg/client/cache.go @@ -0,0 +1,45 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package client + +import ( + "context" + "errors" + "fmt" + + "github.com/redis/go-redis/v9" + + "github.com/west2-online/fzuhelper-server/config" +) + +// NewRedisClient 传入dbName, 比如classroom将key放在db0中,user放在db1中 +func NewRedisClient(dbName int) (*redis.Client, error) { + // 首先判断config的redis是否初始化过。如果没有,则该field应该是空指针,我们需要报错返回 + if config.Redis == nil { + return nil, errors.New("redis config is nil") + } + client := redis.NewClient(&redis.Options{ + Addr: config.Redis.Addr, + Password: config.Redis.Password, + DB: dbName, + }) + _, err := client.Ping(context.TODO()).Result() + if err != nil { + return nil, fmt.Errorf("client.NewRedisClient: ping redis failed: %w", err) + } + return client, nil +} diff --git a/pkg/client/db.go b/pkg/client/db.go new file mode 100644 index 0000000..db1478d --- /dev/null +++ b/pkg/client/db.go @@ -0,0 +1,17 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package client diff --git a/pkg/client/rpc.go b/pkg/client/rpc.go new file mode 100644 index 0000000..9e8a72f --- /dev/null +++ b/pkg/client/rpc.go @@ -0,0 +1,62 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package client + +import ( + "errors" + "fmt" + + "github.com/cloudwego/kitex/client" + etcd "github.com/kitex-contrib/registry-etcd" + + "github.com/west2-online/fzuhelper-server/config" + "github.com/west2-online/fzuhelper-server/kitex_gen/classroom/classroomservice" + "github.com/west2-online/fzuhelper-server/kitex_gen/user/userservice" + "github.com/west2-online/fzuhelper-server/pkg/constants" +) + +// 定义一系列的RPC客户端 + +func InitUserRPC() (*userservice.Client, error) { + if config.Etcd == nil || config.Etcd.Addr == "" { + return nil, errors.New("config.Etcd.Addr is nil") + } + r, err := etcd.NewEtcdResolver([]string{config.Etcd.Addr}) + if err != nil { + return nil, fmt.Errorf("InitUserRPC etcd.NewEtcdResolver failed: %w", err) + } + client, err := userservice.NewClient(constants.UserServiceName, client.WithResolver(r), client.WithMuxConnection(constants.MuxConnection)) + if err != nil { + return nil, fmt.Errorf("InitUserRPC NewClient failed: %w", err) + } + return &client, nil +} + +func InitClassroomRPC() (*classroomservice.Client, error) { + if config.Etcd == nil || config.Etcd.Addr == "" { + return nil, errors.New("config.Etcd.Addr is nil") + } + r, err := etcd.NewEtcdResolver([]string{config.Etcd.Addr}) + if err != nil { + return nil, fmt.Errorf("InitClassroomRPC etcd.NewEtcdResolver failed: %w", err) + } + client, err := classroomservice.NewClient(constants.ClassroomServiceName, client.WithResolver(r), client.WithMuxConnection(constants.MuxConnection)) + if err != nil { + return nil, fmt.Errorf("InitClassroomRPC NewClient failed: %w", err) + } + return &client, nil +} diff --git a/pkg/constants/constants.go b/pkg/constants/constants.go new file mode 100644 index 0000000..d1c676d --- /dev/null +++ b/pkg/constants/constants.go @@ -0,0 +1,71 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package constants + +import "time" + +const ( + // auth + JWTValue = "MTAxNTkwMTg1Mw==" + StartID = 10000 + + // RPC + MuxConnection = 1 + RPCTimeout = 3 * time.Second + ConnectTimeout = 50 * time.Millisecond + + // service name + TemplateServiceName = "template" + ClassroomServiceName = "classroom" + UserServiceName = "user" + ApiServiceName = "api" + + // db table name + TemplateServiceTableName = "template" + + // redis + RedisDBEmptyRoom = 0 + ClassroomKeyExpire = 2 * 24 * time.Hour + // snowflake + SnowflakeWorkerID = 0 + SnowflakeDatacenterID = 0 + + // limit + MaxConnections = 1000 + MaxQPS = 100 + MaxVideoSize = 300000 + MaxListLength = 100 + MaxIdleConns = 10 + MaxGoroutines = 10 + MaxOpenConns = 100 + ConnMaxLifetime = 10 * time.Second + + NumWorkers = 10 // 最大的并发数量 + + // timeout + FailureRateLimiterBaseDelay = time.Minute + FailureRateLimiterMaxDelay = 30 * time.Minute + + // 定时任务 + ScheduledTime = 24 * time.Hour + + // retry + MaxRetries = 5 // 最大重试次数 + InitialDelay = 1 * time.Second // 初始等待时间 +) + +var CampusArray = []string{"旗山校区", "厦门工艺美院", "铜盘校区", "怡山校区", "晋江校区", "泉港校区"} diff --git a/pkg/errno/code.go b/pkg/errno/code.go new file mode 100644 index 0000000..b499801 --- /dev/null +++ b/pkg/errno/code.go @@ -0,0 +1,78 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file is designed to define any error code +package errno + +const ( + // For microservices + SuccessCode = 10000 + SuccessMsg = "ok" + + // Error + /* + 200xx: 参数错误,Param 打头 + 300xx: 鉴权错误,Auth 打头 + 400xx: 业务错误,Biz 打头 + 500xx: 内部错误,Internal 打头 + */ + ParamErrorCode = 20001 // 参数错误 + ParamEmptyCode = 20002 // 参数为空 + ParamMissingHeaderCode = 20003 // 缺少请求头数据(id or cookies) + ParamInvalidCode = 20004 // 参数无效 + ParamMissingCode = 20005 // 参数缺失 + ParamTooLongCode = 20006 // 参数过长 + ParamTooShortCode = 20007 // 参数过短 + ParamTypeCode = 20008 // 参数类型错误 + ParamFormatCode = 20009 // 参数格式错误 + ParamRangeCode = 20010 // 参数范围错误 + ParamValueCode = 20011 // 参数值错误 + ParamFileNotExistCode = 20012 // 文件不存在 + ParamFileReadErrorCode = 20013 // 文件读取错误 + + AuthErrorCode = 30001 // 鉴权错误 + AuthInvalidCode = 30002 // 鉴权无效 + AuthExpiredCode = 30003 // 鉴权过期 + AuthMissingCode = 30004 // 鉴权缺失 + AuthNotEnoughCode = 30005 // 鉴权不足 + + BizErrorCode = 40001 // 业务错误 + BizLogicCode = 40002 // 业务逻辑错误 + BizLimitCode = 40003 // 业务限制错误 + BizNotExist = 40005 // 业务不存在错误 + BizFileUploadErrorCode = 40006 // 文件上传错误(service 层) + + InternalServiceErrorCode = 50001 // 未知服务错误 + InternalDatabaseErrorCode = 50002 // 数据库错误 + InternalRedisErrorCode = 50003 // Redis错误 + InternalNetworkErrorCode = 50004 // 网络错误 + InternalTimeoutErrorCode = 50005 // 超时错误 + InternalIOErrorCode = 50006 // IO错误 + InternalJSONErrorCode = 50007 // JSON错误 + InternalXMLErrorCode = 50008 // XML错误 + InternalURLEncodeErrorCode = 50009 // URL编码错误 + InternalHTTPErrorCode = 50010 // HTTP错误 + InternalHTTP2ErrorCode = 50011 // HTTP2错误 + InternalGRPCErrorCode = 50012 // GRPC错误 + InternalThriftErrorCode = 50013 // Thrift错误 + InternalProtobufErrorCode = 50014 // Protobuf错误 + InternalSQLErrorCode = 50015 // SQL错误 + InternalNoSQLErrorCode = 50016 // NoSQL错误 + InternalORMErrorCode = 50017 // ORM错误 + InternalQueueErrorCode = 50018 // 队列错误 + InternalETCDErrorCode = 50019 // ETCD错误 + InternalTraceErrorCode = 50020 // Trace错误 +) diff --git a/pkg/errno/default.go b/pkg/errno/default.go new file mode 100644 index 0000000..46bc868 --- /dev/null +++ b/pkg/errno/default.go @@ -0,0 +1,35 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file is be designed to define any common error so that we can use it in any service simply. + +package errno + +var ( + // Success + Success = NewErrNo(SuccessCode, "Success") + + ParamError = NewErrNo(ParamErrorCode, "parameter error") + ParamEmpty = NewErrNo(ParamEmptyCode, "some params that required are empty") + ParamMissingHeader = NewErrNo(ParamMissingHeaderCode, "missing request header data (id or cookies)") + + AuthFailedError = NewErrNo(AuthErrorCode, "authorization failed") + BizError = NewErrNo(BizErrorCode, "business error") + InternalServiceError = NewErrNo(InternalServiceErrorCode, "internal service error") + + // redis + RedisError = NewErrNo(InternalRedisErrorCode, "redis error") +) diff --git a/pkg/errno/errno.go b/pkg/errno/errno.go new file mode 100644 index 0000000..ac0f27b --- /dev/null +++ b/pkg/errno/errno.go @@ -0,0 +1,65 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// DO NOT EDIT + +package errno + +import ( + "errors" + "fmt" +) + +type ErrNo struct { + ErrorCode int64 + ErrorMsg string +} + +func (e ErrNo) Error() string { + return fmt.Sprintf("[%d] %s", e.ErrorCode, e.ErrorMsg) +} + +func NewErrNo(code int64, msg string) ErrNo { + return ErrNo{ + ErrorCode: code, + ErrorMsg: msg, + } +} + +// WithMessage will replace default msg to new +func (e ErrNo) WithMessage(msg string) ErrNo { + e.ErrorMsg = msg + return e +} + +// WithError will add error msg after Message +func (e ErrNo) WithError(err error) ErrNo { + e.ErrorMsg = e.ErrorMsg + ", " + err.Error() + return e +} + +// ConvertErr convert error to ErrNo +// in Default user ServiceErrorCode +func ConvertErr(err error) ErrNo { + errno := ErrNo{} + if errors.As(err, &errno) { + return errno + } + + s := InternalServiceError + s.ErrorMsg = err.Error() + return s +} diff --git a/pkg/logger/logger.go b/pkg/logger/logger.go new file mode 100644 index 0000000..8eedca4 --- /dev/null +++ b/pkg/logger/logger.go @@ -0,0 +1,83 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package logger + +import ( + "os" + + kitexzap "github.com/kitex-contrib/obs-opentelemetry/logging/zap" + "go.uber.org/zap" + "go.uber.org/zap/zapcore" +) + +type Config struct { + Enc zapcore.Encoder + Ws zapcore.WriteSyncer + lvl zapcore.Level +} + +func NewLogger(lvl zapcore.Level, cfg Config, options ...zap.Option) *kitexzap.Logger { + if cfg.Enc == nil { + cfg.Enc = defaultEnc() + } + if cfg.Ws == nil { + cfg.Ws = defaultWs() + } + cfg.lvl = lvl + + var ops []kitexzap.Option + ops = append(ops, kitexzap.WithCoreEnc(cfg.Enc)) + ops = append(ops, kitexzap.WithCoreWs(cfg.Ws)) + ops = append(ops, kitexzap.WithCoreLevel(zap.NewAtomicLevelAt(cfg.lvl))) + ops = append(ops, kitexzap.WithZapOptions(options...)) + return kitexzap.NewLogger(ops...) +} + +func DefaultLogger(options ...zap.Option) *kitexzap.Logger { + var ops []kitexzap.Option + ops = append(ops, kitexzap.WithCoreEnc(defaultEnc())) + ops = append(ops, kitexzap.WithCoreWs(defaultWs())) + ops = append(ops, kitexzap.WithCoreLevel(zap.NewAtomicLevelAt(defaultLvl()))) + ops = append(ops, kitexzap.WithZapOptions(options...)) + return kitexzap.NewLogger(ops...) +} + +func defaultEnc() zapcore.Encoder { + cfg := zapcore.EncoderConfig{ + TimeKey: "time", + LevelKey: "level", + NameKey: "logger", + CallerKey: "caller", + MessageKey: "msg", + StacktraceKey: "stacktrace", + LineEnding: zapcore.DefaultLineEnding, + EncodeLevel: zapcore.CapitalLevelEncoder, // 日志等级大写 + EncodeTime: zapcore.ISO8601TimeEncoder, // 时间格式 + EncodeDuration: zapcore.StringDurationEncoder, + EncodeCaller: zapcore.ShortCallerEncoder, + } + + return zapcore.NewConsoleEncoder(cfg) +} + +func defaultWs() zapcore.WriteSyncer { + return os.Stdout +} + +func defaultLvl() zapcore.Level { + return zapcore.DebugLevel +} diff --git a/pkg/logger/output.go b/pkg/logger/output.go new file mode 100644 index 0000000..c91d92d --- /dev/null +++ b/pkg/logger/output.go @@ -0,0 +1,51 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package logger + +import "github.com/cloudwego/kitex/pkg/klog" + +func Fatalf(template string, args ...interface{}) { + klog.Fatalf(template, args...) +} + +func Errorf(template string, args ...interface{}) { + klog.Errorf(template, args...) +} + +func Infof(template string, args ...interface{}) { + klog.Infof(template, args...) +} + +func Debugf(template string, args ...interface{}) { + klog.Debugf(template, args...) +} + +func Fatal(args ...interface{}) { + klog.Fatal(args) +} + +func Info(args ...interface{}) { + klog.Info(args) +} + +func Error(args ...interface{}) { + klog.Error(args) +} + +func Debug(args ...interface{}) { + klog.Debug(args) +} diff --git a/pkg/middleware/common.go b/pkg/middleware/common.go new file mode 100644 index 0000000..bbbea4e --- /dev/null +++ b/pkg/middleware/common.go @@ -0,0 +1,46 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package middleware + +import ( + "context" + + "github.com/cloudwego/kitex/pkg/endpoint" + "github.com/cloudwego/kitex/pkg/klog" + "github.com/cloudwego/kitex/pkg/rpcinfo" +) + +var _ endpoint.Middleware = CommonMiddleware + +// server for api +func CommonMiddleware(next endpoint.Endpoint) endpoint.Endpoint { + return func(ctx context.Context, req, resp interface{}) (err error) { + ri := rpcinfo.GetRPCInfo(ctx) + + // get remote service information + klog.Infof("remote service name: %s, remote method: %s\n", ri.To().ServiceName(), ri.To().Method()) + + if err = next(ctx, req, resp); err != nil { + return err + } + + // get real response + klog.Infof("real response: %+v\n", resp) + + return nil + } +} diff --git a/pkg/tracer/tracer.go b/pkg/tracer/tracer.go new file mode 100644 index 0000000..9429453 --- /dev/null +++ b/pkg/tracer/tracer.go @@ -0,0 +1,53 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package tracer + +import ( + "fmt" + + "github.com/opentracing/opentracing-go" + "github.com/uber/jaeger-client-go" + jaegerconfig "github.com/uber/jaeger-client-go/config" + + "github.com/west2-online/fzuhelper-server/config" +) + +func InitJaeger(service string) { + cfg := &jaegerconfig.Configuration{ + Disabled: false, + Sampler: &jaegerconfig.SamplerConfig{ + Type: "const", + Param: 1, + }, + Reporter: &jaegerconfig.ReporterConfig{ + LogSpans: true, + LocalAgentHostPort: config.Jaeger.Addr, + }, + } + + cfg.ServiceName = service + + tracer, _, err := cfg.NewTracer( + jaegerconfig.Logger(jaeger.StdLogger), + jaegerconfig.ZipkinSharedRPCSpan(true), + ) + if err != nil { + panic(fmt.Sprintf("cannot init jaeger: %v\n", err)) + } + + opentracing.SetGlobalTracer(tracer) +} diff --git a/pkg/utils/encode.go b/pkg/utils/encode.go new file mode 100644 index 0000000..6b556b6 --- /dev/null +++ b/pkg/utils/encode.go @@ -0,0 +1,44 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package utils + +import ( + "crypto/md5" + "crypto/sha256" + "encoding/hex" + "fmt" +) + +// MD5 use md5 to encode string +func MD5(str string) string { + h := md5.New() + h.Write([]byte(str)) + return hex.EncodeToString(h.Sum(nil)) +} + +func MD5Bytes(str []byte) string { + h := md5.New() + h.Write(str) + return hex.EncodeToString(h.Sum(nil)) +} + +// SHA256 use sha256 to encode string +func SHA256(str string) string { + h := sha256.New() + h.Write([]byte(str)) + return fmt.Sprintf("%x", h.Sum(nil)) +} diff --git a/pkg/utils/jwt.go b/pkg/utils/jwt.go new file mode 100644 index 0000000..8eec819 --- /dev/null +++ b/pkg/utils/jwt.go @@ -0,0 +1,60 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package utils + +import ( + "time" + + "github.com/golang-jwt/jwt" + + "github.com/west2-online/fzuhelper-server/pkg/constants" +) + +type Claims struct { + UserId int64 `json:"user_id"` + jwt.StandardClaims +} + +func CreateToken(userId int64) (string, error) { + expireTime := time.Now().Add(24 * 7 * time.Hour) // 过期时间为7天 + nowTime := time.Now() // 当前时间 + claims := Claims{ + UserId: userId, + StandardClaims: jwt.StandardClaims{ + ExpiresAt: expireTime.Unix(), // 过期时间戳 + IssuedAt: nowTime.Unix(), // 当前时间戳 + Issuer: "tiktok", // 颁发者签名 + }, + } + tokenStruct := jwt.NewWithClaims(jwt.SigningMethodHS256, claims) + return tokenStruct.SignedString([]byte(constants.JWTValue)) +} + +func CheckToken(token string) (*Claims, error) { + response, err := jwt.ParseWithClaims(token, &Claims{}, func(token *jwt.Token) (interface{}, error) { + return []byte(constants.JWTValue), nil + }) + if err != nil { + return nil, err + } + + if resp, ok := response.Claims.(*Claims); ok && response.Valid { + return resp, nil + } + + return nil, err +} diff --git a/pkg/utils/rpc.go b/pkg/utils/rpc.go new file mode 100644 index 0000000..e781786 --- /dev/null +++ b/pkg/utils/rpc.go @@ -0,0 +1,27 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package utils + +import ( + "github.com/west2-online/fzuhelper-server/kitex_gen/model" + "github.com/west2-online/fzuhelper-server/pkg/errno" +) + +// IsSuccess 通用的rpc结果处理 +func IsSuccess(baseResp *model.BaseResp) bool { + return baseResp.Code == errno.SuccessCode +} diff --git a/pkg/utils/snowflake.go b/pkg/utils/snowflake.go new file mode 100644 index 0000000..0a5cdbe --- /dev/null +++ b/pkg/utils/snowflake.go @@ -0,0 +1,122 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package utils + +import ( + "fmt" + "sync" + "time" +) + +const ( + epoch int64 = 1577808000000 // 设置起始时间(时间戳/毫秒):2020-01-01 00:00:00,有效期69年 + timestampBits int64 = 41 // 时间戳占用位数 + datacenteridBits int64 = 5 // 数据中心id所占位数 + workeridBits int64 = 5 // 机器id所占位数 + sequenceBits int64 = 12 // 序列所占的位数 + timestampMax int64 = 2199023255551 // (-1 ^ (-1 << timestampBits))时间戳最大值 + datacenteridMax int64 = 31 // (-1 ^ (-1 << datacenteridBits))支持的最大数据中心id数量 + workeridMax int64 = 31 // (-1 ^ (-1 << workeridBits)) 支持的最大机器id数量 + sequenceMask int64 = 4095 // (-1 ^ (-1 << sequenceBits))支持的最大序列id数量 + workeridShift int64 = 12 // sequenceBits 机器id左移位数 + datacenteridShift int64 = 17 // sequenceBits + workeridBits 数据中心id左移位数 + timestampShift int64 = 22 // sequenceBits + workeridBits + datacenteridBits 时间戳左移位数 +) + +type Snowflake struct { + sync.Mutex + timestamp int64 + workerid int64 + datacenterid int64 + sequence int64 +} + +func NewSnowflake(datacenterid, workerid int64) (*Snowflake, error) { + if datacenterid < 0 || datacenterid > datacenteridMax { + return nil, fmt.Errorf("datacenterid must be between 0 and %d", datacenteridMax-1) + } + if workerid < 0 || workerid > workeridMax { + return nil, fmt.Errorf("workerid must be between 0 and %d", workeridMax-1) + } + return &Snowflake{ + timestamp: 0, + datacenterid: datacenterid, + workerid: workerid, + sequence: 0, + }, nil +} + +// timestamp + 数据中心id + 工作节点id + 自旋id +func (s *Snowflake) NextVal() (int64, error) { + s.Lock() + now := time.Now().UnixNano() / 1000000 // 转毫秒 + if s.timestamp == now { + // 当同一时间戳(精度:毫秒)下多次生成id会增加序列号 + s.sequence = (s.sequence + 1) & sequenceMask + if s.sequence == 0 { + // 如果当前序列超出12bit长度,则需要等待下一毫秒 + // 下一毫秒将使用sequence:0 + for now <= s.timestamp { + now = time.Now().UnixNano() / 1000000 + } + } + } else { + // 不同时间戳(精度:毫秒)下直接使用序列号:0 + s.sequence = 0 + } + t := now - epoch + if t > timestampMax { + s.Unlock() + return 0, fmt.Errorf("epoch must be between 0 and %d", timestampMax-1) + } + s.timestamp = now + r := (t)<> datacenteridShift) & datacenteridMax + workerid = (sid >> workeridShift) & workeridMax + return +} + +// 获取时间戳 +func GetTimestamp(sid int64) (timestamp int64) { + timestamp = (sid >> timestampShift) & timestampMax + return +} + +// 获取创建ID时的时间戳 +func GetGenTimestamp(sid int64) (timestamp int64) { + timestamp = GetTimestamp(sid) + epoch + return +} + +// 获取创建ID时的时间字符串(精度:秒) +func GetGenTime(sid int64) (t string) { + // 需将GetGenTimestamp获取的时间戳/1000转换成秒 + t = time.Unix(GetGenTimestamp(sid)/1000, 0).Format("2006-01-02 15:04:05") + return +} + +// 获取时间戳已使用的占比:范围(0.0 - 1.0) +func GetTimestampStatus() (state float64) { + state = float64((time.Now().UnixNano()/1000000 - epoch)) / float64(timestampMax) + return +} diff --git a/pkg/utils/utils.go b/pkg/utils/utils.go new file mode 100644 index 0000000..b806764 --- /dev/null +++ b/pkg/utils/utils.go @@ -0,0 +1,164 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package utils + +import ( + "errors" + "fmt" + "net" + "net/http" + "strconv" + "strings" + "time" + + "github.com/west2-online/fzuhelper-server/pkg/constants" + "github.com/west2-online/jwch" + + config "github.com/west2-online/fzuhelper-server/config" +) + +func TimeParse(date string) (time.Time, error) { + return time.Parse("2006-01-02", date) +} + +func GetMysqlDSN() (string, error) { + if config.Mysql == nil { + return "", errors.New("config not found") + } + + dsn := strings.Join([]string{config.Mysql.Username, ":", config.Mysql.Password, "@tcp(", config.Mysql.Addr, ")/", config.Mysql.Database, "?charset=" + config.Mysql.Charset + "&parseTime=true"}, "") + + return dsn, nil +} + +func GetMQUrl() (string, error) { + if config.RabbitMQ == nil { + return "", errors.New("config not found") + } + + url := strings.Join([]string{"amqp://", config.RabbitMQ.Username, ":", config.RabbitMQ.Password, "@", config.RabbitMQ.Addr, "/"}, "") + + return url, nil +} + +func AddrCheck(addr string) bool { + l, err := net.Listen("tcp", addr) + if err != nil { + return false + } + + l.Close() + + return true +} + +// ParseCookies 将cookie字符串解析为http.Cookie +func ParseCookies(rawData []string) []*http.Cookie { + var cookies []*http.Cookie + for _, raw := range rawData { + cookie := &http.Cookie{} + parts := strings.Split(raw, ";") + for i, part := range parts { + if i == 0 { + cookieParts := strings.Split(part, "=") + cookie.Name = cookieParts[0] + cookie.Value = cookieParts[1] + } else { + cookieParts := strings.Split(part, "=") + switch cookieParts[0] { + case "Domain": + cookie.Domain = cookieParts[1] + case "Path": + cookie.Path = cookieParts[1] + case "Expires": + if expires, err := time.Parse(time.RFC1123, cookieParts[1]); err == nil { + cookie.Expires = expires + } + case "Max-Age": + if maxAge, err := strconv.Atoi(cookieParts[1]); err == nil { + cookie.MaxAge = maxAge + } + case "Secure": + cookie.Secure = true + case "HttpOnly": + cookie.HttpOnly = true + } + } + } + cookies = append(cookies, cookie) + } + return cookies +} + +func ParseCookiesToString(cookies []*http.Cookie) []string { + var cookieStrings []string + for _, cookie := range cookies { + var parts []string + parts = append(parts, cookie.Name+"="+cookie.Value) + if cookie.Domain != "" { + parts = append(parts, "Domain="+cookie.Domain) + } + if cookie.Path != "" { + parts = append(parts, "Path="+cookie.Path) + } + if !cookie.Expires.IsZero() { + parts = append(parts, "Expires="+cookie.Expires.Format(time.RFC1123)) + } + if cookie.MaxAge > 0 { + parts = append(parts, "Max-Age="+strconv.Itoa(cookie.MaxAge)) + } + if cookie.Secure { + parts = append(parts, "Secure") + } + if cookie.HttpOnly { + parts = append(parts, "HttpOnly") + } + cookieStrings = append(cookieStrings, strings.Join(parts, "; ")) + } + return cookieStrings +} + +func GetAvailablePort() (string, error) { + if config.Service.AddrList == nil { + return "", errors.New("utils.GetAvailablePort: config.Service.AddrList is nil") + } + for _, addr := range config.Service.AddrList { + if ok := AddrCheck(addr); ok { + return addr, nil + } + } + return "", errors.New("utils.GetAvailablePort: not available port from config") +} + +func RetryLogin(stu *jwch.Student) error { + var err error + delay := constants.InitialDelay + + for attempt := 1; attempt <= constants.MaxRetries; attempt++ { + err = stu.Login() + if err == nil { + return nil // 登录成功 + } + + if attempt < constants.MaxRetries { + time.Sleep(delay) // 等待一段时间后再重试 + delay *= 2 // 指数退避,逐渐增加等待时间 + } + } + + return fmt.Errorf("failed to login after %d attempts: %w", constants.MaxRetries, err) +} From 29f8f83bb71873646985aecf5b92e5a6f018929b Mon Sep 17 00:00:00 2001 From: mutezebra Date: Thu, 17 Oct 2024 11:52:06 +0800 Subject: [PATCH 05/19] refactor: abstract logger initialization with hooks --- cmd/template/main.go | 26 +++----------------------- pkg/client/es.go | 24 ++++++++++++++++++++++++ pkg/logger/logger.go | 15 +++++++++++++++ pkg/logger/output.go | 4 ++++ 4 files changed, 46 insertions(+), 23 deletions(-) create mode 100644 pkg/client/es.go diff --git a/cmd/template/main.go b/cmd/template/main.go index c06c861..2638521 100644 --- a/cmd/template/main.go +++ b/cmd/template/main.go @@ -18,13 +18,8 @@ package main import ( "flag" - "fmt" - "net" - - "go.uber.org/zap" - - "github.com/west2-online/fzuhelper-server/pkg/eshook" "github.com/west2-online/fzuhelper-server/pkg/logger" + "net" "github.com/cloudwego/kitex/pkg/klog" "github.com/cloudwego/kitex/pkg/limit" @@ -33,6 +28,7 @@ import ( "github.com/elastic/go-elasticsearch" etcd "github.com/kitex-contrib/registry-etcd" trace "github.com/kitex-contrib/tracer-opentracing" + "github.com/west2-online/fzuhelper-server/pkg/eshook" "github.com/west2-online/fzuhelper-server/cmd/template/dal" "github.com/west2-online/fzuhelper-server/cmd/template/rpc" @@ -68,9 +64,7 @@ func Init() { rpc.Init() // log - EsInit() - klog.SetLevel(klog.LevelDebug) - klog.SetLogger(logger.DefaultLogger(zap.Hooks(EsHook.Fire))) + logger.InitLoggerWithHook(serviceName) } func main() { @@ -117,17 +111,3 @@ func main() { panic(err) } } - -// InitEs 初始化es -func EsInit() { - esConn := fmt.Sprintf("http://%s", config.Elasticsearch.Addr) - cfg := elasticsearch.Config{ - Addresses: []string{esConn}, - } - client, err := elasticsearch.NewClient(cfg) - if err != nil { - panic(err) - } - EsClient = client - EsHook = eshook.NewElasticHook(EsClient, config.Elasticsearch.Host, serviceName) -} diff --git a/pkg/client/es.go b/pkg/client/es.go new file mode 100644 index 0000000..cb70025 --- /dev/null +++ b/pkg/client/es.go @@ -0,0 +1,24 @@ +package client + +import ( + "errors" + "fmt" + + "github.com/elastic/go-elasticsearch" + "github.com/west2-online/fzuhelper-server/config" +) + +func NewEsClient() (*elasticsearch.Client, error) { + if config.Elasticsearch == nil { + return nil, errors.New("elasticsearch config is nil") + } + esConn := fmt.Sprintf("http://%s", config.Elasticsearch.Addr) + cfg := elasticsearch.Config{ + Addresses: []string{esConn}, + } + client, err := elasticsearch.NewClient(cfg) + if err != nil { + return nil, fmt.Errorf("Get es clint failed,error: %v", err) + } + return client, nil +} diff --git a/pkg/logger/logger.go b/pkg/logger/logger.go index 8eedca4..2bf15ea 100644 --- a/pkg/logger/logger.go +++ b/pkg/logger/logger.go @@ -17,6 +17,10 @@ limitations under the License. package logger import ( + "github.com/cloudwego/kitex/pkg/klog" + "github.com/west2-online/fzuhelper-server/config" + "github.com/west2-online/fzuhelper-server/pkg/client" + "github.com/west2-online/fzuhelper-server/pkg/eshook" "os" kitexzap "github.com/kitex-contrib/obs-opentelemetry/logging/zap" @@ -56,6 +60,17 @@ func DefaultLogger(options ...zap.Option) *kitexzap.Logger { return kitexzap.NewLogger(ops...) } +func InitLoggerWithHook(index string) { + c, err := client.NewEsClient() + if err != nil { + panic(err) + } + + hook := eshook.NewElasticHook(c, config.Elasticsearch.Host, index) + logger := DefaultLogger(zap.Hooks(hook.Fire)) + klog.SetLogger(logger) +} + func defaultEnc() zapcore.Encoder { cfg := zapcore.EncoderConfig{ TimeKey: "time", diff --git a/pkg/logger/output.go b/pkg/logger/output.go index c91d92d..fd55023 100644 --- a/pkg/logger/output.go +++ b/pkg/logger/output.go @@ -18,6 +18,10 @@ package logger import "github.com/cloudwego/kitex/pkg/klog" +func init() { + klog.SetLogger(DefaultLogger()) +} + func Fatalf(template string, args ...interface{}) { klog.Fatalf(template, args...) } From c8355cfbf5530b0d26f09e71e123220f4782e87a Mon Sep 17 00:00:00 2001 From: mutezebra Date: Thu, 17 Oct 2024 12:18:45 +0800 Subject: [PATCH 06/19] fix: solve the circular reference problem --- cmd/template/main.go | 8 +------- pkg/client/es.go | 1 + pkg/logger/logger.go | 15 --------------- pkg/utils/utils.go | 26 ++++++++++++++++++++++++++ 4 files changed, 28 insertions(+), 22 deletions(-) diff --git a/cmd/template/main.go b/cmd/template/main.go index 2638521..a8e39cb 100644 --- a/cmd/template/main.go +++ b/cmd/template/main.go @@ -18,17 +18,14 @@ package main import ( "flag" - "github.com/west2-online/fzuhelper-server/pkg/logger" "net" "github.com/cloudwego/kitex/pkg/klog" "github.com/cloudwego/kitex/pkg/limit" "github.com/cloudwego/kitex/pkg/rpcinfo" "github.com/cloudwego/kitex/server" - "github.com/elastic/go-elasticsearch" etcd "github.com/kitex-contrib/registry-etcd" trace "github.com/kitex-contrib/tracer-opentracing" - "github.com/west2-online/fzuhelper-server/pkg/eshook" "github.com/west2-online/fzuhelper-server/cmd/template/dal" "github.com/west2-online/fzuhelper-server/cmd/template/rpc" @@ -43,9 +40,6 @@ var ( serviceName = constants.TemplateServiceName path *string listenAddr string // listen port - - EsClient *elasticsearch.Client - EsHook *eshook.ElasticHook ) func Init() { @@ -64,7 +58,7 @@ func Init() { rpc.Init() // log - logger.InitLoggerWithHook(serviceName) + utils.InitLoggerWithHook(serviceName) } func main() { diff --git a/pkg/client/es.go b/pkg/client/es.go index cb70025..42de1a4 100644 --- a/pkg/client/es.go +++ b/pkg/client/es.go @@ -5,6 +5,7 @@ import ( "fmt" "github.com/elastic/go-elasticsearch" + "github.com/west2-online/fzuhelper-server/config" ) diff --git a/pkg/logger/logger.go b/pkg/logger/logger.go index 2bf15ea..8eedca4 100644 --- a/pkg/logger/logger.go +++ b/pkg/logger/logger.go @@ -17,10 +17,6 @@ limitations under the License. package logger import ( - "github.com/cloudwego/kitex/pkg/klog" - "github.com/west2-online/fzuhelper-server/config" - "github.com/west2-online/fzuhelper-server/pkg/client" - "github.com/west2-online/fzuhelper-server/pkg/eshook" "os" kitexzap "github.com/kitex-contrib/obs-opentelemetry/logging/zap" @@ -60,17 +56,6 @@ func DefaultLogger(options ...zap.Option) *kitexzap.Logger { return kitexzap.NewLogger(ops...) } -func InitLoggerWithHook(index string) { - c, err := client.NewEsClient() - if err != nil { - panic(err) - } - - hook := eshook.NewElasticHook(c, config.Elasticsearch.Host, index) - logger := DefaultLogger(zap.Hooks(hook.Fire)) - klog.SetLogger(logger) -} - func defaultEnc() zapcore.Encoder { cfg := zapcore.EncoderConfig{ TimeKey: "time", diff --git a/pkg/utils/utils.go b/pkg/utils/utils.go index b806764..c7ca67b 100644 --- a/pkg/utils/utils.go +++ b/pkg/utils/utils.go @@ -25,6 +25,13 @@ import ( "strings" "time" + "github.com/cloudwego/kitex/pkg/klog" + "go.uber.org/zap" + + "github.com/west2-online/fzuhelper-server/pkg/client" + "github.com/west2-online/fzuhelper-server/pkg/eshook" + "github.com/west2-online/fzuhelper-server/pkg/logger" + "github.com/west2-online/fzuhelper-server/pkg/constants" "github.com/west2-online/jwch" @@ -55,6 +62,25 @@ func GetMQUrl() (string, error) { return url, nil } +func GetEsHost() (string, error) { + if config.Elasticsearch == nil { + return "", errors.New("elasticsearch not found") + } + + return config.Elasticsearch.Host, nil +} + +func InitLoggerWithHook(index string) { + c, err := client.NewEsClient() + if err != nil { + panic(err) + } + + hook := eshook.NewElasticHook(c, config.Elasticsearch.Host, index) + v := logger.DefaultLogger(zap.Hooks(hook.Fire)) + klog.SetLogger(v) +} + func AddrCheck(addr string) bool { l, err := net.Listen("tcp", addr) if err != nil { From cc88a4ba84a7f9e7c301e3241492deacb86ec4bb Mon Sep 17 00:00:00 2001 From: FantasyRL <1845983502@qq.com> Date: Thu, 17 Oct 2024 20:24:58 +0800 Subject: [PATCH 07/19] refactor:get_validate_code service of user --- cmd/api/biz/handler/api/user_service.go | 25 + cmd/api/biz/model/api/api.go | 1810 ++++++++++++++------- cmd/api/biz/model/model/model.go | 4 +- cmd/api/biz/router/api/api.go | 1 + cmd/api/biz/router/api/middleware.go | 5 + cmd/api/biz/rpc/user.go | 12 + cmd/user/handler.go | 16 + cmd/user/service/get_validate_code.go | 26 + idl/api.thrift | 37 +- idl/model.thrift | 12 +- idl/user.thrift | 13 +- kitex_gen/model/k-model.go | 349 ++-- kitex_gen/model/model.go | 4 +- kitex_gen/user/k-user.go | 932 +++++++++-- kitex_gen/user/user.go | 1034 +++++++++++- kitex_gen/user/userservice/client.go | 8 +- kitex_gen/user/userservice/invoker.go | 41 + kitex_gen/user/userservice/server.go | 2 +- kitex_gen/user/userservice/userservice.go | 43 +- 19 files changed, 3527 insertions(+), 847 deletions(-) create mode 100644 cmd/user/service/get_validate_code.go create mode 100644 kitex_gen/user/userservice/invoker.go diff --git a/cmd/api/biz/handler/api/user_service.go b/cmd/api/biz/handler/api/user_service.go index 92ee3c1..e37022d 100644 --- a/cmd/api/biz/handler/api/user_service.go +++ b/cmd/api/biz/handler/api/user_service.go @@ -21,6 +21,8 @@ package api import ( "context" + "github.com/cloudwego/hertz/pkg/protocol/consts" + "github.com/cloudwego/hertz/pkg/app" api "github.com/west2-online/fzuhelper-server/cmd/api/biz/model/api" @@ -55,3 +57,26 @@ func GetLoginData(ctx context.Context, c *app.RequestContext) { resp.Cookies = cookies pack.RespData(c, resp) } + +// GetValidateCode . +// @router /api/v1/jwch/user/validateCode [POST] +func GetValidateCode(ctx context.Context, c *app.RequestContext) { + var err error + var req api.GetValidateCodeRequest + err = c.BindAndValidate(&req) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + + resp := new(api.GetValidateCodeResponse) + code, err := rpc.GetInvalidateCodeRPC(ctx, &user.GetValidateCodeRequest{ + Image: req.Image, + }) + if err != nil { + pack.RespError(c, err) + return + } + resp.Code = &code + pack.RespData(c, resp.Code) +} diff --git a/cmd/api/biz/model/api/api.go b/cmd/api/biz/model/api/api.go index e595058..9160230 100644 --- a/cmd/api/biz/model/api/api.go +++ b/cmd/api/biz/model/api/api.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -// Code generated by thriftgo (0.3.17). DO NOT EDIT. +// Code generated by thriftgo (0.3.13). DO NOT EDIT. package api @@ -27,38 +27,53 @@ import ( "github.com/west2-online/fzuhelper-server/cmd/api/biz/model/model" ) -// user -type GetLoginDataRequest struct { - ID string `thrift:"id,1,required" form:"id,required" json:"id,required" query:"id,required"` - Password string `thrift:"password,2,required" form:"password,required" json:"password,required" query:"password,required"` +// classroom +type EmptyClassroomRequest struct { + Date string `thrift:"date,1,required" form:"date,required" json:"date,required" query:"date,required"` + Campus string `thrift:"campus,2,required" form:"campus,required" json:"campus,required" query:"campus,required"` + //节数 + StartTime string `thrift:"startTime,3,required" form:"startTime,required" json:"startTime,required" query:"startTime,required"` + EndTime string `thrift:"endTime,4,required" form:"endTime,required" json:"endTime,required" query:"endTime,required"` } -func NewGetLoginDataRequest() *GetLoginDataRequest { - return &GetLoginDataRequest{} +func NewEmptyClassroomRequest() *EmptyClassroomRequest { + return &EmptyClassroomRequest{} } -func (p *GetLoginDataRequest) InitDefault() { +func (p *EmptyClassroomRequest) InitDefault() { } -func (p *GetLoginDataRequest) GetID() (v string) { - return p.ID +func (p *EmptyClassroomRequest) GetDate() (v string) { + return p.Date } -func (p *GetLoginDataRequest) GetPassword() (v string) { - return p.Password +func (p *EmptyClassroomRequest) GetCampus() (v string) { + return p.Campus } -var fieldIDToName_GetLoginDataRequest = map[int16]string{ - 1: "id", - 2: "password", +func (p *EmptyClassroomRequest) GetStartTime() (v string) { + return p.StartTime } -func (p *GetLoginDataRequest) Read(iprot thrift.TProtocol) (err error) { +func (p *EmptyClassroomRequest) GetEndTime() (v string) { + return p.EndTime +} + +var fieldIDToName_EmptyClassroomRequest = map[int16]string{ + 1: "date", + 2: "campus", + 3: "startTime", + 4: "endTime", +} + +func (p *EmptyClassroomRequest) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 - var issetID bool = false - var issetPassword bool = false + var issetDate bool = false + var issetCampus bool = false + var issetStartTime bool = false + var issetEndTime bool = false if _, err = iprot.ReadStructBegin(); err != nil { goto ReadStructBeginError @@ -79,7 +94,7 @@ func (p *GetLoginDataRequest) Read(iprot thrift.TProtocol) (err error) { if err = p.ReadField1(iprot); err != nil { goto ReadFieldError } - issetID = true + issetDate = true } else if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } @@ -88,7 +103,25 @@ func (p *GetLoginDataRequest) Read(iprot thrift.TProtocol) (err error) { if err = p.ReadField2(iprot); err != nil { goto ReadFieldError } - issetPassword = true + issetCampus = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.STRING { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + issetStartTime = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 4: + if fieldTypeId == thrift.STRING { + if err = p.ReadField4(iprot); err != nil { + goto ReadFieldError + } + issetEndTime = true } else if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } @@ -105,22 +138,32 @@ func (p *GetLoginDataRequest) Read(iprot thrift.TProtocol) (err error) { goto ReadStructEndError } - if !issetID { + if !issetDate { fieldId = 1 goto RequiredFieldNotSetError } - if !issetPassword { + if !issetCampus { fieldId = 2 goto RequiredFieldNotSetError } + + if !issetStartTime { + fieldId = 3 + goto RequiredFieldNotSetError + } + + if !issetEndTime { + fieldId = 4 + goto RequiredFieldNotSetError + } 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_GetLoginDataRequest[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_EmptyClassroomRequest[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -129,10 +172,10 @@ ReadFieldEndError: ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) RequiredFieldNotSetError: - return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_GetLoginDataRequest[fieldId])) + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_EmptyClassroomRequest[fieldId])) } -func (p *GetLoginDataRequest) ReadField1(iprot thrift.TProtocol) error { +func (p *EmptyClassroomRequest) ReadField1(iprot thrift.TProtocol) error { var _field string if v, err := iprot.ReadString(); err != nil { @@ -140,10 +183,10 @@ func (p *GetLoginDataRequest) ReadField1(iprot thrift.TProtocol) error { } else { _field = v } - p.ID = _field + p.Date = _field return nil } -func (p *GetLoginDataRequest) ReadField2(iprot thrift.TProtocol) error { +func (p *EmptyClassroomRequest) ReadField2(iprot thrift.TProtocol) error { var _field string if v, err := iprot.ReadString(); err != nil { @@ -151,13 +194,35 @@ func (p *GetLoginDataRequest) ReadField2(iprot thrift.TProtocol) error { } else { _field = v } - p.Password = _field + p.Campus = _field return nil } +func (p *EmptyClassroomRequest) ReadField3(iprot thrift.TProtocol) error { -func (p *GetLoginDataRequest) Write(oprot thrift.TProtocol) (err error) { + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.StartTime = _field + return nil +} +func (p *EmptyClassroomRequest) ReadField4(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.EndTime = _field + return nil +} + +func (p *EmptyClassroomRequest) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetLoginDataRequest"); err != nil { + if err = oprot.WriteStructBegin("EmptyClassroomRequest"); err != nil { goto WriteStructBeginError } if p != nil { @@ -169,6 +234,14 @@ func (p *GetLoginDataRequest) Write(oprot thrift.TProtocol) (err error) { 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 @@ -187,11 +260,11 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *GetLoginDataRequest) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("id", thrift.STRING, 1); err != nil { +func (p *EmptyClassroomRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("date", thrift.STRING, 1); err != nil { goto WriteFieldBeginError } - if err := oprot.WriteString(p.ID); err != nil { + if err := oprot.WriteString(p.Date); err != nil { return err } if err = oprot.WriteFieldEnd(); err != nil { @@ -204,11 +277,11 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *GetLoginDataRequest) writeField2(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("password", thrift.STRING, 2); err != nil { +func (p *EmptyClassroomRequest) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("campus", thrift.STRING, 2); err != nil { goto WriteFieldBeginError } - if err := oprot.WriteString(p.Password); err != nil { + if err := oprot.WriteString(p.Campus); err != nil { return err } if err = oprot.WriteFieldEnd(); err != nil { @@ -221,45 +294,72 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) } -func (p *GetLoginDataRequest) String() string { - if p == nil { - return "" +func (p *EmptyClassroomRequest) writeField3(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("startTime", thrift.STRING, 3); err != nil { + goto WriteFieldBeginError } - return fmt.Sprintf("GetLoginDataRequest(%+v)", *p) + if err := oprot.WriteString(p.StartTime); 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 *EmptyClassroomRequest) writeField4(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("endTime", thrift.STRING, 4); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.EndTime); 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) } -type GetLoginDataResponse struct { - ID string `thrift:"id,1,required" form:"id,required" json:"id,required" query:"id,required"` - Cookies []string `thrift:"cookies,2,required" form:"cookies,required" json:"cookies,required" query:"cookies,required"` +func (p *EmptyClassroomRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("EmptyClassroomRequest(%+v)", *p) + } -func NewGetLoginDataResponse() *GetLoginDataResponse { - return &GetLoginDataResponse{} +type EmptyClassroomResponse struct { + Classrooms []*model.Classroom `thrift:"classrooms,1,required" form:"classrooms,required" json:"classrooms,required" query:"classrooms,required"` } -func (p *GetLoginDataResponse) InitDefault() { +func NewEmptyClassroomResponse() *EmptyClassroomResponse { + return &EmptyClassroomResponse{} } -func (p *GetLoginDataResponse) GetID() (v string) { - return p.ID +func (p *EmptyClassroomResponse) InitDefault() { } -func (p *GetLoginDataResponse) GetCookies() (v []string) { - return p.Cookies +func (p *EmptyClassroomResponse) GetClassrooms() (v []*model.Classroom) { + return p.Classrooms } -var fieldIDToName_GetLoginDataResponse = map[int16]string{ - 1: "id", - 2: "cookies", +var fieldIDToName_EmptyClassroomResponse = map[int16]string{ + 1: "classrooms", } -func (p *GetLoginDataResponse) Read(iprot thrift.TProtocol) (err error) { +func (p *EmptyClassroomResponse) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 - var issetID bool = false - var issetCookies bool = false + var issetClassrooms bool = false if _, err = iprot.ReadStructBegin(); err != nil { goto ReadStructBeginError @@ -276,20 +376,11 @@ func (p *GetLoginDataResponse) Read(iprot thrift.TProtocol) (err error) { switch fieldId { case 1: - if fieldTypeId == thrift.STRING { - if err = p.ReadField1(iprot); err != nil { - goto ReadFieldError - } - issetID = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 2: if fieldTypeId == thrift.LIST { - if err = p.ReadField2(iprot); err != nil { + if err = p.ReadField1(iprot); err != nil { goto ReadFieldError } - issetCookies = true + issetClassrooms = true } else if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } @@ -306,22 +397,17 @@ func (p *GetLoginDataResponse) Read(iprot thrift.TProtocol) (err error) { goto ReadStructEndError } - if !issetID { + if !issetClassrooms { fieldId = 1 goto RequiredFieldNotSetError } - - if !issetCookies { - fieldId = 2 - goto RequiredFieldNotSetError - } 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_GetLoginDataResponse[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_EmptyClassroomResponse[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -330,33 +416,22 @@ ReadFieldEndError: ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) RequiredFieldNotSetError: - return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_GetLoginDataResponse[fieldId])) + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_EmptyClassroomResponse[fieldId])) } -func (p *GetLoginDataResponse) ReadField1(iprot thrift.TProtocol) error { - - var _field string - if v, err := iprot.ReadString(); err != nil { - return err - } else { - _field = v - } - p.ID = _field - return nil -} -func (p *GetLoginDataResponse) ReadField2(iprot thrift.TProtocol) error { +func (p *EmptyClassroomResponse) ReadField1(iprot thrift.TProtocol) error { _, size, err := iprot.ReadListBegin() if err != nil { return err } - _field := make([]string, 0, size) + _field := make([]*model.Classroom, 0, size) + values := make([]model.Classroom, size) for i := 0; i < size; i++ { + _elem := &values[i] + _elem.InitDefault() - var _elem string - if v, err := iprot.ReadString(); err != nil { + if err := _elem.Read(iprot); err != nil { return err - } else { - _elem = v } _field = append(_field, _elem) @@ -364,13 +439,13 @@ func (p *GetLoginDataResponse) ReadField2(iprot thrift.TProtocol) error { if err := iprot.ReadListEnd(); err != nil { return err } - p.Cookies = _field + p.Classrooms = _field return nil } -func (p *GetLoginDataResponse) Write(oprot thrift.TProtocol) (err error) { +func (p *EmptyClassroomResponse) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetLoginDataResponse"); err != nil { + if err = oprot.WriteStructBegin("EmptyClassroomResponse"); err != nil { goto WriteStructBeginError } if p != nil { @@ -378,10 +453,6 @@ func (p *GetLoginDataResponse) Write(oprot thrift.TProtocol) (err error) { fieldId = 1 goto WriteFieldError } - if err = p.writeField2(oprot); err != nil { - fieldId = 2 - goto WriteFieldError - } } if err = oprot.WriteFieldStop(); err != nil { goto WriteFieldStopError @@ -400,32 +471,15 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *GetLoginDataResponse) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("id", thrift.STRING, 1); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteString(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 *GetLoginDataResponse) writeField2(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("cookies", thrift.LIST, 2); err != nil { +func (p *EmptyClassroomResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("classrooms", thrift.LIST, 1); err != nil { goto WriteFieldBeginError } - if err := oprot.WriteListBegin(thrift.STRING, len(p.Cookies)); err != nil { + if err := oprot.WriteListBegin(thrift.STRUCT, len(p.Classrooms)); err != nil { return err } - for _, v := range p.Cookies { - if err := oprot.WriteString(v); err != nil { + for _, v := range p.Classrooms { + if err := v.Write(oprot); err != nil { return err } } @@ -437,65 +491,51 @@ func (p *GetLoginDataResponse) writeField2(oprot thrift.TProtocol) (err error) { } return nil WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *GetLoginDataResponse) String() string { +func (p *EmptyClassroomResponse) String() string { if p == nil { return "" } - return fmt.Sprintf("GetLoginDataResponse(%+v)", *p) - -} - -type EmptyClassroomRequest struct { - Date string `thrift:"date,1,required" form:"date,required" json:"date,required" query:"date,required"` - Campus string `thrift:"campus,2,required" form:"campus,required" json:"campus,required" query:"campus,required"` - //节数 - StartTime string `thrift:"startTime,3,required" form:"startTime,required" json:"startTime,required" query:"startTime,required"` - EndTime string `thrift:"endTime,4,required" form:"endTime,required" json:"endTime,required" query:"endTime,required"` -} + return fmt.Sprintf("EmptyClassroomResponse(%+v)", *p) -func NewEmptyClassroomRequest() *EmptyClassroomRequest { - return &EmptyClassroomRequest{} } -func (p *EmptyClassroomRequest) InitDefault() { +// user +type GetLoginDataRequest struct { + ID string `thrift:"id,1,required" form:"id,required" json:"id,required" query:"id,required"` + Password string `thrift:"password,2,required" form:"password,required" json:"password,required" query:"password,required"` } -func (p *EmptyClassroomRequest) GetDate() (v string) { - return p.Date +func NewGetLoginDataRequest() *GetLoginDataRequest { + return &GetLoginDataRequest{} } -func (p *EmptyClassroomRequest) GetCampus() (v string) { - return p.Campus +func (p *GetLoginDataRequest) InitDefault() { } -func (p *EmptyClassroomRequest) GetStartTime() (v string) { - return p.StartTime +func (p *GetLoginDataRequest) GetID() (v string) { + return p.ID } -func (p *EmptyClassroomRequest) GetEndTime() (v string) { - return p.EndTime +func (p *GetLoginDataRequest) GetPassword() (v string) { + return p.Password } -var fieldIDToName_EmptyClassroomRequest = map[int16]string{ - 1: "date", - 2: "campus", - 3: "startTime", - 4: "endTime", +var fieldIDToName_GetLoginDataRequest = map[int16]string{ + 1: "id", + 2: "password", } -func (p *EmptyClassroomRequest) Read(iprot thrift.TProtocol) (err error) { +func (p *GetLoginDataRequest) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 - var issetDate bool = false - var issetCampus bool = false - var issetStartTime bool = false - var issetEndTime bool = false + var issetID bool = false + var issetPassword bool = false if _, err = iprot.ReadStructBegin(); err != nil { goto ReadStructBeginError @@ -516,7 +556,7 @@ func (p *EmptyClassroomRequest) Read(iprot thrift.TProtocol) (err error) { if err = p.ReadField1(iprot); err != nil { goto ReadFieldError } - issetDate = true + issetID = true } else if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } @@ -525,25 +565,7 @@ func (p *EmptyClassroomRequest) Read(iprot thrift.TProtocol) (err error) { if err = p.ReadField2(iprot); err != nil { goto ReadFieldError } - issetCampus = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 3: - if fieldTypeId == thrift.STRING { - if err = p.ReadField3(iprot); err != nil { - goto ReadFieldError - } - issetStartTime = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 4: - if fieldTypeId == thrift.STRING { - if err = p.ReadField4(iprot); err != nil { - goto ReadFieldError - } - issetEndTime = true + issetPassword = true } else if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } @@ -560,32 +582,22 @@ func (p *EmptyClassroomRequest) Read(iprot thrift.TProtocol) (err error) { goto ReadStructEndError } - if !issetDate { + if !issetID { fieldId = 1 goto RequiredFieldNotSetError } - if !issetCampus { + if !issetPassword { fieldId = 2 goto RequiredFieldNotSetError } - - if !issetStartTime { - fieldId = 3 - goto RequiredFieldNotSetError - } - - if !issetEndTime { - fieldId = 4 - goto RequiredFieldNotSetError - } 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_EmptyClassroomRequest[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_GetLoginDataRequest[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -594,32 +606,10 @@ ReadFieldEndError: ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) RequiredFieldNotSetError: - return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_EmptyClassroomRequest[fieldId])) -} - -func (p *EmptyClassroomRequest) ReadField1(iprot thrift.TProtocol) error { - - var _field string - if v, err := iprot.ReadString(); err != nil { - return err - } else { - _field = v - } - p.Date = _field - return nil + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_GetLoginDataRequest[fieldId])) } -func (p *EmptyClassroomRequest) ReadField2(iprot thrift.TProtocol) error { - var _field string - if v, err := iprot.ReadString(); err != nil { - return err - } else { - _field = v - } - p.Campus = _field - return nil -} -func (p *EmptyClassroomRequest) ReadField3(iprot thrift.TProtocol) error { +func (p *GetLoginDataRequest) ReadField1(iprot thrift.TProtocol) error { var _field string if v, err := iprot.ReadString(); err != nil { @@ -627,10 +617,10 @@ func (p *EmptyClassroomRequest) ReadField3(iprot thrift.TProtocol) error { } else { _field = v } - p.StartTime = _field + p.ID = _field return nil } -func (p *EmptyClassroomRequest) ReadField4(iprot thrift.TProtocol) error { +func (p *GetLoginDataRequest) ReadField2(iprot thrift.TProtocol) error { var _field string if v, err := iprot.ReadString(); err != nil { @@ -638,13 +628,13 @@ func (p *EmptyClassroomRequest) ReadField4(iprot thrift.TProtocol) error { } else { _field = v } - p.EndTime = _field + p.Password = _field return nil } -func (p *EmptyClassroomRequest) Write(oprot thrift.TProtocol) (err error) { +func (p *GetLoginDataRequest) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("EmptyClassroomRequest"); err != nil { + if err = oprot.WriteStructBegin("GetLoginDataRequest"); err != nil { goto WriteStructBeginError } if p != nil { @@ -656,14 +646,6 @@ func (p *EmptyClassroomRequest) Write(oprot thrift.TProtocol) (err error) { 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 @@ -682,11 +664,11 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *EmptyClassroomRequest) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("date", thrift.STRING, 1); err != nil { +func (p *GetLoginDataRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("id", thrift.STRING, 1); err != nil { goto WriteFieldBeginError } - if err := oprot.WriteString(p.Date); err != nil { + if err := oprot.WriteString(p.ID); err != nil { return err } if err = oprot.WriteFieldEnd(); err != nil { @@ -699,11 +681,11 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *EmptyClassroomRequest) writeField2(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("campus", thrift.STRING, 2); err != nil { +func (p *GetLoginDataRequest) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("password", thrift.STRING, 2); err != nil { goto WriteFieldBeginError } - if err := oprot.WriteString(p.Campus); err != nil { + if err := oprot.WriteString(p.Password); err != nil { return err } if err = oprot.WriteFieldEnd(); err != nil { @@ -716,72 +698,45 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) } -func (p *EmptyClassroomRequest) writeField3(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("startTime", thrift.STRING, 3); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteString(p.StartTime); 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 *EmptyClassroomRequest) writeField4(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("endTime", thrift.STRING, 4); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteString(p.EndTime); 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 *EmptyClassroomRequest) String() string { +func (p *GetLoginDataRequest) String() string { if p == nil { return "" } - return fmt.Sprintf("EmptyClassroomRequest(%+v)", *p) + return fmt.Sprintf("GetLoginDataRequest(%+v)", *p) } -type EmptyClassroomResponse struct { - Classrooms []*model.Classroom `thrift:"classrooms,1,required" form:"classrooms,required" json:"classrooms,required" query:"classrooms,required"` +type GetLoginDataResponse struct { + ID string `thrift:"id,1,required" form:"id,required" json:"id,required" query:"id,required"` + Cookies []string `thrift:"cookies,2,required" form:"cookies,required" json:"cookies,required" query:"cookies,required"` } -func NewEmptyClassroomResponse() *EmptyClassroomResponse { - return &EmptyClassroomResponse{} +func NewGetLoginDataResponse() *GetLoginDataResponse { + return &GetLoginDataResponse{} } -func (p *EmptyClassroomResponse) InitDefault() { +func (p *GetLoginDataResponse) InitDefault() { } -func (p *EmptyClassroomResponse) GetClassrooms() (v []*model.Classroom) { - return p.Classrooms +func (p *GetLoginDataResponse) GetID() (v string) { + return p.ID } -var fieldIDToName_EmptyClassroomResponse = map[int16]string{ - 1: "classrooms", +func (p *GetLoginDataResponse) GetCookies() (v []string) { + return p.Cookies } -func (p *EmptyClassroomResponse) Read(iprot thrift.TProtocol) (err error) { +var fieldIDToName_GetLoginDataResponse = map[int16]string{ + 1: "id", + 2: "cookies", +} + +func (p *GetLoginDataResponse) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 - var issetClassrooms bool = false + var issetID bool = false + var issetCookies bool = false if _, err = iprot.ReadStructBegin(); err != nil { goto ReadStructBeginError @@ -798,11 +753,20 @@ func (p *EmptyClassroomResponse) Read(iprot thrift.TProtocol) (err error) { switch fieldId { case 1: - if fieldTypeId == thrift.LIST { + if fieldTypeId == thrift.STRING { if err = p.ReadField1(iprot); err != nil { goto ReadFieldError } - issetClassrooms = true + issetID = true + } 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 + } + issetCookies = true } else if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } @@ -819,17 +783,22 @@ func (p *EmptyClassroomResponse) Read(iprot thrift.TProtocol) (err error) { goto ReadStructEndError } - if !issetClassrooms { + if !issetID { fieldId = 1 goto RequiredFieldNotSetError } + + if !issetCookies { + fieldId = 2 + goto RequiredFieldNotSetError + } 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_EmptyClassroomResponse[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_GetLoginDataResponse[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -838,22 +807,33 @@ ReadFieldEndError: ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) RequiredFieldNotSetError: - return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_EmptyClassroomResponse[fieldId])) + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_GetLoginDataResponse[fieldId])) } -func (p *EmptyClassroomResponse) ReadField1(iprot thrift.TProtocol) error { +func (p *GetLoginDataResponse) ReadField1(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.ID = _field + return nil +} +func (p *GetLoginDataResponse) ReadField2(iprot thrift.TProtocol) error { _, size, err := iprot.ReadListBegin() if err != nil { return err } - _field := make([]*model.Classroom, 0, size) - values := make([]model.Classroom, size) + _field := make([]string, 0, size) for i := 0; i < size; i++ { - _elem := &values[i] - _elem.InitDefault() - if err := _elem.Read(iprot); err != nil { + var _elem string + if v, err := iprot.ReadString(); err != nil { return err + } else { + _elem = v } _field = append(_field, _elem) @@ -861,13 +841,13 @@ func (p *EmptyClassroomResponse) ReadField1(iprot thrift.TProtocol) error { if err := iprot.ReadListEnd(); err != nil { return err } - p.Classrooms = _field + p.Cookies = _field return nil } -func (p *EmptyClassroomResponse) Write(oprot thrift.TProtocol) (err error) { +func (p *GetLoginDataResponse) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("EmptyClassroomResponse"); err != nil { + if err = oprot.WriteStructBegin("GetLoginDataResponse"); err != nil { goto WriteStructBeginError } if p != nil { @@ -875,6 +855,10 @@ func (p *EmptyClassroomResponse) Write(oprot thrift.TProtocol) (err error) { fieldId = 1 goto WriteFieldError } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } } if err = oprot.WriteFieldStop(); err != nil { goto WriteFieldStopError @@ -893,15 +877,32 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *EmptyClassroomResponse) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("classrooms", thrift.LIST, 1); err != nil { +func (p *GetLoginDataResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("id", thrift.STRING, 1); err != nil { goto WriteFieldBeginError } - if err := oprot.WriteListBegin(thrift.STRUCT, len(p.Classrooms)); err != nil { + if err := oprot.WriteString(p.ID); err != nil { return err } - for _, v := range p.Classrooms { - if err := v.Write(oprot); err != nil { + 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 *GetLoginDataResponse) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("cookies", thrift.LIST, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteListBegin(thrift.STRING, len(p.Cookies)); err != nil { + return err + } + for _, v := range p.Cookies { + if err := oprot.WriteString(v); err != nil { return err } } @@ -913,150 +914,944 @@ func (p *EmptyClassroomResponse) writeField1(oprot thrift.TProtocol) (err error) } return nil WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) } -func (p *EmptyClassroomResponse) String() string { +func (p *GetLoginDataResponse) String() string { if p == nil { return "" } - return fmt.Sprintf("EmptyClassroomResponse(%+v)", *p) + return fmt.Sprintf("GetLoginDataResponse(%+v)", *p) } -type ClassRoomService interface { - GetEmptyClassrooms(ctx context.Context, request *EmptyClassroomRequest) (r *EmptyClassroomResponse, err error) +type GetValidateCodeRequest struct { + Image string `thrift:"image,1,required" form:"image,required" json:"image,required" query:"image,required"` } -type ClassRoomServiceClient struct { - c thrift.TClient +func NewGetValidateCodeRequest() *GetValidateCodeRequest { + return &GetValidateCodeRequest{} } -func NewClassRoomServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *ClassRoomServiceClient { - return &ClassRoomServiceClient{ - c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), - } +func (p *GetValidateCodeRequest) InitDefault() { } -func NewClassRoomServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *ClassRoomServiceClient { - return &ClassRoomServiceClient{ - c: thrift.NewTStandardClient(iprot, oprot), - } +func (p *GetValidateCodeRequest) GetImage() (v string) { + return p.Image } -func NewClassRoomServiceClient(c thrift.TClient) *ClassRoomServiceClient { - return &ClassRoomServiceClient{ - c: c, - } +var fieldIDToName_GetValidateCodeRequest = map[int16]string{ + 1: "image", } -func (p *ClassRoomServiceClient) Client_() thrift.TClient { - return p.c -} +func (p *GetValidateCodeRequest) Read(iprot thrift.TProtocol) (err error) { -func (p *ClassRoomServiceClient) GetEmptyClassrooms(ctx context.Context, request *EmptyClassroomRequest) (r *EmptyClassroomResponse, err error) { - var _args ClassRoomServiceGetEmptyClassroomsArgs - _args.Request = request - var _result ClassRoomServiceGetEmptyClassroomsResult - if err = p.Client_().Call(ctx, "GetEmptyClassrooms", &_args, &_result); err != nil { - return + var fieldTypeId thrift.TType + var fieldId int16 + var issetImage bool = false + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError } - return _result.GetSuccess(), nil -} -type UserService interface { - GetLoginData(ctx context.Context, request *GetLoginDataRequest) (r *GetLoginDataResponse, err error) + 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 + } + issetImage = true + } 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 + } + + if !issetImage { + fieldId = 1 + goto RequiredFieldNotSetError + } + 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_GetValidateCodeRequest[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) +RequiredFieldNotSetError: + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_GetValidateCodeRequest[fieldId])) } -type UserServiceClient struct { - c thrift.TClient +func (p *GetValidateCodeRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Image = _field + return nil } -func NewUserServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *UserServiceClient { - return &UserServiceClient{ - c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), +func (p *GetValidateCodeRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetValidateCodeRequest"); 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 NewUserServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *UserServiceClient { - return &UserServiceClient{ - c: thrift.NewTStandardClient(iprot, oprot), +func (p *GetValidateCodeRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("image", thrift.STRING, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Image); 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 NewUserServiceClient(c thrift.TClient) *UserServiceClient { - return &UserServiceClient{ - c: c, +func (p *GetValidateCodeRequest) String() string { + if p == nil { + return "" } + return fmt.Sprintf("GetValidateCodeRequest(%+v)", *p) + } -func (p *UserServiceClient) Client_() thrift.TClient { - return p.c +type GetValidateCodeResponse struct { + Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` + Code *string `thrift:"code,2,optional" form:"code" json:"code,omitempty" query:"code"` } -func (p *UserServiceClient) GetLoginData(ctx context.Context, request *GetLoginDataRequest) (r *GetLoginDataResponse, err error) { - var _args UserServiceGetLoginDataArgs - _args.Request = request - var _result UserServiceGetLoginDataResult - if err = p.Client_().Call(ctx, "GetLoginData", &_args, &_result); err != nil { - return - } - return _result.GetSuccess(), nil +func NewGetValidateCodeResponse() *GetValidateCodeResponse { + return &GetValidateCodeResponse{} } -type ClassRoomServiceProcessor struct { - processorMap map[string]thrift.TProcessorFunction - handler ClassRoomService +func (p *GetValidateCodeResponse) InitDefault() { } -func (p *ClassRoomServiceProcessor) AddToProcessorMap(key string, processor thrift.TProcessorFunction) { - p.processorMap[key] = processor +var GetValidateCodeResponse_Base_DEFAULT *model.BaseResp + +func (p *GetValidateCodeResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return GetValidateCodeResponse_Base_DEFAULT + } + return p.Base } -func (p *ClassRoomServiceProcessor) GetProcessorFunction(key string) (processor thrift.TProcessorFunction, ok bool) { - processor, ok = p.processorMap[key] - return processor, ok +var GetValidateCodeResponse_Code_DEFAULT string + +func (p *GetValidateCodeResponse) GetCode() (v string) { + if !p.IsSetCode() { + return GetValidateCodeResponse_Code_DEFAULT + } + return *p.Code } -func (p *ClassRoomServiceProcessor) ProcessorMap() map[string]thrift.TProcessorFunction { - return p.processorMap +var fieldIDToName_GetValidateCodeResponse = map[int16]string{ + 1: "base", + 2: "code", } -func NewClassRoomServiceProcessor(handler ClassRoomService) *ClassRoomServiceProcessor { - self := &ClassRoomServiceProcessor{handler: handler, processorMap: make(map[string]thrift.TProcessorFunction)} - self.AddToProcessorMap("GetEmptyClassrooms", &classRoomServiceProcessorGetEmptyClassrooms{handler: handler}) - return self +func (p *GetValidateCodeResponse) IsSetBase() bool { + return p.Base != nil +} + +func (p *GetValidateCodeResponse) IsSetCode() bool { + return p.Code != nil +} + +func (p *GetValidateCodeResponse) 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 + } + 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_GetValidateCodeResponse[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 *GetValidateCodeResponse) ReadField1(iprot thrift.TProtocol) error { + _field := model.NewBaseResp() + if err := _field.Read(iprot); err != nil { + return err + } + p.Base = _field + return nil +} +func (p *GetValidateCodeResponse) ReadField2(iprot thrift.TProtocol) error { + + var _field *string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = &v + } + p.Code = _field + return nil +} + +func (p *GetValidateCodeResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetValidateCodeResponse"); 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 *GetValidateCodeResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Base.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 *GetValidateCodeResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetCode() { + if err = oprot.WriteFieldBegin("code", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(*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 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *GetValidateCodeResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("GetValidateCodeResponse(%+v)", *p) + +} + +type ClassRoomService interface { + GetEmptyClassrooms(ctx context.Context, request *EmptyClassroomRequest) (r *EmptyClassroomResponse, err error) +} + +type ClassRoomServiceClient struct { + c thrift.TClient +} + +func NewClassRoomServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *ClassRoomServiceClient { + return &ClassRoomServiceClient{ + c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), + } +} + +func NewClassRoomServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *ClassRoomServiceClient { + return &ClassRoomServiceClient{ + c: thrift.NewTStandardClient(iprot, oprot), + } +} + +func NewClassRoomServiceClient(c thrift.TClient) *ClassRoomServiceClient { + return &ClassRoomServiceClient{ + c: c, + } +} + +func (p *ClassRoomServiceClient) Client_() thrift.TClient { + return p.c +} + +func (p *ClassRoomServiceClient) GetEmptyClassrooms(ctx context.Context, request *EmptyClassroomRequest) (r *EmptyClassroomResponse, err error) { + var _args ClassRoomServiceGetEmptyClassroomsArgs + _args.Request = request + var _result ClassRoomServiceGetEmptyClassroomsResult + if err = p.Client_().Call(ctx, "GetEmptyClassrooms", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} + +type UserService interface { + GetLoginData(ctx context.Context, request *GetLoginDataRequest) (r *GetLoginDataResponse, err error) + + GetValidateCode(ctx context.Context, request *GetValidateCodeRequest) (r *GetValidateCodeResponse, err error) +} + +type UserServiceClient struct { + c thrift.TClient +} + +func NewUserServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *UserServiceClient { + return &UserServiceClient{ + c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), + } +} + +func NewUserServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *UserServiceClient { + return &UserServiceClient{ + c: thrift.NewTStandardClient(iprot, oprot), + } +} + +func NewUserServiceClient(c thrift.TClient) *UserServiceClient { + return &UserServiceClient{ + c: c, + } +} + +func (p *UserServiceClient) Client_() thrift.TClient { + return p.c +} + +func (p *UserServiceClient) GetLoginData(ctx context.Context, request *GetLoginDataRequest) (r *GetLoginDataResponse, err error) { + var _args UserServiceGetLoginDataArgs + _args.Request = request + var _result UserServiceGetLoginDataResult + if err = p.Client_().Call(ctx, "GetLoginData", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *UserServiceClient) GetValidateCode(ctx context.Context, request *GetValidateCodeRequest) (r *GetValidateCodeResponse, err error) { + var _args UserServiceGetValidateCodeArgs + _args.Request = request + var _result UserServiceGetValidateCodeResult + if err = p.Client_().Call(ctx, "GetValidateCode", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} + +type ClassRoomServiceProcessor struct { + processorMap map[string]thrift.TProcessorFunction + handler ClassRoomService +} + +func (p *ClassRoomServiceProcessor) AddToProcessorMap(key string, processor thrift.TProcessorFunction) { + p.processorMap[key] = processor +} + +func (p *ClassRoomServiceProcessor) GetProcessorFunction(key string) (processor thrift.TProcessorFunction, ok bool) { + processor, ok = p.processorMap[key] + return processor, ok +} + +func (p *ClassRoomServiceProcessor) ProcessorMap() map[string]thrift.TProcessorFunction { + return p.processorMap +} + +func NewClassRoomServiceProcessor(handler ClassRoomService) *ClassRoomServiceProcessor { + self := &ClassRoomServiceProcessor{handler: handler, processorMap: make(map[string]thrift.TProcessorFunction)} + self.AddToProcessorMap("GetEmptyClassrooms", &classRoomServiceProcessorGetEmptyClassrooms{handler: handler}) + return self } func (p *ClassRoomServiceProcessor) Process(ctx context.Context, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { name, _, seqId, err := iprot.ReadMessageBegin() if err != nil { return false, err } - if processor, ok := p.GetProcessorFunction(name); ok { - return processor.Process(ctx, seqId, iprot, oprot) - } - iprot.Skip(thrift.STRUCT) + if processor, ok := p.GetProcessorFunction(name); ok { + return processor.Process(ctx, seqId, iprot, oprot) + } + iprot.Skip(thrift.STRUCT) + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.UNKNOWN_METHOD, "Unknown function "+name) + oprot.WriteMessageBegin(name, thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, x +} + +type classRoomServiceProcessorGetEmptyClassrooms struct { + handler ClassRoomService +} + +func (p *classRoomServiceProcessorGetEmptyClassrooms) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := ClassRoomServiceGetEmptyClassroomsArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("GetEmptyClassrooms", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := ClassRoomServiceGetEmptyClassroomsResult{} + var retval *EmptyClassroomResponse + if retval, err2 = p.handler.GetEmptyClassrooms(ctx, args.Request); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetEmptyClassrooms: "+err2.Error()) + oprot.WriteMessageBegin("GetEmptyClassrooms", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("GetEmptyClassrooms", 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 ClassRoomServiceGetEmptyClassroomsArgs struct { + Request *EmptyClassroomRequest `thrift:"request,1"` +} + +func NewClassRoomServiceGetEmptyClassroomsArgs() *ClassRoomServiceGetEmptyClassroomsArgs { + return &ClassRoomServiceGetEmptyClassroomsArgs{} +} + +func (p *ClassRoomServiceGetEmptyClassroomsArgs) InitDefault() { +} + +var ClassRoomServiceGetEmptyClassroomsArgs_Request_DEFAULT *EmptyClassroomRequest + +func (p *ClassRoomServiceGetEmptyClassroomsArgs) GetRequest() (v *EmptyClassroomRequest) { + if !p.IsSetRequest() { + return ClassRoomServiceGetEmptyClassroomsArgs_Request_DEFAULT + } + return p.Request +} + +var fieldIDToName_ClassRoomServiceGetEmptyClassroomsArgs = map[int16]string{ + 1: "request", +} + +func (p *ClassRoomServiceGetEmptyClassroomsArgs) IsSetRequest() bool { + return p.Request != nil +} + +func (p *ClassRoomServiceGetEmptyClassroomsArgs) 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_ClassRoomServiceGetEmptyClassroomsArgs[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 *ClassRoomServiceGetEmptyClassroomsArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewEmptyClassroomRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Request = _field + return nil +} + +func (p *ClassRoomServiceGetEmptyClassroomsArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetEmptyClassrooms_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 *ClassRoomServiceGetEmptyClassroomsArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("request", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Request.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 *ClassRoomServiceGetEmptyClassroomsArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ClassRoomServiceGetEmptyClassroomsArgs(%+v)", *p) + +} + +type ClassRoomServiceGetEmptyClassroomsResult struct { + Success *EmptyClassroomResponse `thrift:"success,0,optional"` +} + +func NewClassRoomServiceGetEmptyClassroomsResult() *ClassRoomServiceGetEmptyClassroomsResult { + return &ClassRoomServiceGetEmptyClassroomsResult{} +} + +func (p *ClassRoomServiceGetEmptyClassroomsResult) InitDefault() { +} + +var ClassRoomServiceGetEmptyClassroomsResult_Success_DEFAULT *EmptyClassroomResponse + +func (p *ClassRoomServiceGetEmptyClassroomsResult) GetSuccess() (v *EmptyClassroomResponse) { + if !p.IsSetSuccess() { + return ClassRoomServiceGetEmptyClassroomsResult_Success_DEFAULT + } + return p.Success +} + +var fieldIDToName_ClassRoomServiceGetEmptyClassroomsResult = map[int16]string{ + 0: "success", +} + +func (p *ClassRoomServiceGetEmptyClassroomsResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *ClassRoomServiceGetEmptyClassroomsResult) 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_ClassRoomServiceGetEmptyClassroomsResult[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 *ClassRoomServiceGetEmptyClassroomsResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewEmptyClassroomResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *ClassRoomServiceGetEmptyClassroomsResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetEmptyClassrooms_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 *ClassRoomServiceGetEmptyClassroomsResult) 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 *ClassRoomServiceGetEmptyClassroomsResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ClassRoomServiceGetEmptyClassroomsResult(%+v)", *p) + +} + +type UserServiceProcessor struct { + processorMap map[string]thrift.TProcessorFunction + handler UserService +} + +func (p *UserServiceProcessor) AddToProcessorMap(key string, processor thrift.TProcessorFunction) { + p.processorMap[key] = processor +} + +func (p *UserServiceProcessor) GetProcessorFunction(key string) (processor thrift.TProcessorFunction, ok bool) { + processor, ok = p.processorMap[key] + return processor, ok +} + +func (p *UserServiceProcessor) ProcessorMap() map[string]thrift.TProcessorFunction { + return p.processorMap +} + +func NewUserServiceProcessor(handler UserService) *UserServiceProcessor { + self := &UserServiceProcessor{handler: handler, processorMap: make(map[string]thrift.TProcessorFunction)} + self.AddToProcessorMap("GetLoginData", &userServiceProcessorGetLoginData{handler: handler}) + self.AddToProcessorMap("GetValidateCode", &userServiceProcessorGetValidateCode{handler: handler}) + return self +} +func (p *UserServiceProcessor) Process(ctx context.Context, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + name, _, seqId, err := iprot.ReadMessageBegin() + if err != nil { + return false, err + } + if processor, ok := p.GetProcessorFunction(name); ok { + return processor.Process(ctx, seqId, iprot, oprot) + } + iprot.Skip(thrift.STRUCT) + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.UNKNOWN_METHOD, "Unknown function "+name) + oprot.WriteMessageBegin(name, thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, x +} + +type userServiceProcessorGetLoginData struct { + handler UserService +} + +func (p *userServiceProcessorGetLoginData) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := UserServiceGetLoginDataArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("GetLoginData", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + iprot.ReadMessageEnd() - x := thrift.NewTApplicationException(thrift.UNKNOWN_METHOD, "Unknown function "+name) - oprot.WriteMessageBegin(name, thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return false, x + var err2 error + result := UserServiceGetLoginDataResult{} + var retval *GetLoginDataResponse + if retval, err2 = p.handler.GetLoginData(ctx, args.Request); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetLoginData: "+err2.Error()) + oprot.WriteMessageBegin("GetLoginData", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("GetLoginData", 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 classRoomServiceProcessorGetEmptyClassrooms struct { - handler ClassRoomService +type userServiceProcessorGetValidateCode struct { + handler UserService } -func (p *classRoomServiceProcessorGetEmptyClassrooms) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { - args := ClassRoomServiceGetEmptyClassroomsArgs{} +func (p *userServiceProcessorGetValidateCode) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := UserServiceGetValidateCodeArgs{} if err = args.Read(iprot); err != nil { iprot.ReadMessageEnd() x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) - oprot.WriteMessageBegin("GetEmptyClassrooms", thrift.EXCEPTION, seqId) + oprot.WriteMessageBegin("GetValidateCode", thrift.EXCEPTION, seqId) x.Write(oprot) oprot.WriteMessageEnd() oprot.Flush(ctx) @@ -1065,11 +1860,11 @@ func (p *classRoomServiceProcessorGetEmptyClassrooms) Process(ctx context.Contex iprot.ReadMessageEnd() var err2 error - result := ClassRoomServiceGetEmptyClassroomsResult{} - var retval *EmptyClassroomResponse - if retval, err2 = p.handler.GetEmptyClassrooms(ctx, args.Request); err2 != nil { - x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetEmptyClassrooms: "+err2.Error()) - oprot.WriteMessageBegin("GetEmptyClassrooms", thrift.EXCEPTION, seqId) + result := UserServiceGetValidateCodeResult{} + var retval *GetValidateCodeResponse + if retval, err2 = p.handler.GetValidateCode(ctx, args.Request); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetValidateCode: "+err2.Error()) + oprot.WriteMessageBegin("GetValidateCode", thrift.EXCEPTION, seqId) x.Write(oprot) oprot.WriteMessageEnd() oprot.Flush(ctx) @@ -1077,7 +1872,7 @@ func (p *classRoomServiceProcessorGetEmptyClassrooms) Process(ctx context.Contex } else { result.Success = retval } - if err2 = oprot.WriteMessageBegin("GetEmptyClassrooms", thrift.REPLY, seqId); err2 != nil { + if err2 = oprot.WriteMessageBegin("GetValidateCode", thrift.REPLY, seqId); err2 != nil { err = err2 } if err2 = result.Write(oprot); err == nil && err2 != nil { @@ -1095,35 +1890,35 @@ func (p *classRoomServiceProcessorGetEmptyClassrooms) Process(ctx context.Contex return true, err } -type ClassRoomServiceGetEmptyClassroomsArgs struct { - Request *EmptyClassroomRequest `thrift:"request,1"` +type UserServiceGetLoginDataArgs struct { + Request *GetLoginDataRequest `thrift:"request,1"` } -func NewClassRoomServiceGetEmptyClassroomsArgs() *ClassRoomServiceGetEmptyClassroomsArgs { - return &ClassRoomServiceGetEmptyClassroomsArgs{} +func NewUserServiceGetLoginDataArgs() *UserServiceGetLoginDataArgs { + return &UserServiceGetLoginDataArgs{} } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) InitDefault() { +func (p *UserServiceGetLoginDataArgs) InitDefault() { } -var ClassRoomServiceGetEmptyClassroomsArgs_Request_DEFAULT *EmptyClassroomRequest +var UserServiceGetLoginDataArgs_Request_DEFAULT *GetLoginDataRequest -func (p *ClassRoomServiceGetEmptyClassroomsArgs) GetRequest() (v *EmptyClassroomRequest) { +func (p *UserServiceGetLoginDataArgs) GetRequest() (v *GetLoginDataRequest) { if !p.IsSetRequest() { - return ClassRoomServiceGetEmptyClassroomsArgs_Request_DEFAULT + return UserServiceGetLoginDataArgs_Request_DEFAULT } return p.Request } -var fieldIDToName_ClassRoomServiceGetEmptyClassroomsArgs = map[int16]string{ +var fieldIDToName_UserServiceGetLoginDataArgs = map[int16]string{ 1: "request", } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) IsSetRequest() bool { +func (p *UserServiceGetLoginDataArgs) IsSetRequest() bool { return p.Request != nil } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) Read(iprot thrift.TProtocol) (err error) { +func (p *UserServiceGetLoginDataArgs) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -1169,7 +1964,7 @@ ReadStructBeginError: 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_ClassRoomServiceGetEmptyClassroomsArgs[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceGetLoginDataArgs[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -1179,8 +1974,8 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) ReadField1(iprot thrift.TProtocol) error { - _field := NewEmptyClassroomRequest() +func (p *UserServiceGetLoginDataArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewGetLoginDataRequest() if err := _field.Read(iprot); err != nil { return err } @@ -1188,9 +1983,9 @@ func (p *ClassRoomServiceGetEmptyClassroomsArgs) ReadField1(iprot thrift.TProtoc return nil } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) Write(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetLoginDataArgs) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetEmptyClassrooms_args"); err != nil { + if err = oprot.WriteStructBegin("GetLoginData_args"); err != nil { goto WriteStructBeginError } if p != nil { @@ -1216,7 +2011,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) writeField1(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetLoginDataArgs) writeField1(oprot thrift.TProtocol) (err error) { if err = oprot.WriteFieldBegin("request", thrift.STRUCT, 1); err != nil { goto WriteFieldBeginError } @@ -1233,43 +2028,43 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) String() string { +func (p *UserServiceGetLoginDataArgs) String() string { if p == nil { return "" } - return fmt.Sprintf("ClassRoomServiceGetEmptyClassroomsArgs(%+v)", *p) + return fmt.Sprintf("UserServiceGetLoginDataArgs(%+v)", *p) } -type ClassRoomServiceGetEmptyClassroomsResult struct { - Success *EmptyClassroomResponse `thrift:"success,0,optional"` +type UserServiceGetLoginDataResult struct { + Success *GetLoginDataResponse `thrift:"success,0,optional"` } -func NewClassRoomServiceGetEmptyClassroomsResult() *ClassRoomServiceGetEmptyClassroomsResult { - return &ClassRoomServiceGetEmptyClassroomsResult{} +func NewUserServiceGetLoginDataResult() *UserServiceGetLoginDataResult { + return &UserServiceGetLoginDataResult{} } -func (p *ClassRoomServiceGetEmptyClassroomsResult) InitDefault() { +func (p *UserServiceGetLoginDataResult) InitDefault() { } -var ClassRoomServiceGetEmptyClassroomsResult_Success_DEFAULT *EmptyClassroomResponse +var UserServiceGetLoginDataResult_Success_DEFAULT *GetLoginDataResponse -func (p *ClassRoomServiceGetEmptyClassroomsResult) GetSuccess() (v *EmptyClassroomResponse) { +func (p *UserServiceGetLoginDataResult) GetSuccess() (v *GetLoginDataResponse) { if !p.IsSetSuccess() { - return ClassRoomServiceGetEmptyClassroomsResult_Success_DEFAULT + return UserServiceGetLoginDataResult_Success_DEFAULT } return p.Success } -var fieldIDToName_ClassRoomServiceGetEmptyClassroomsResult = map[int16]string{ +var fieldIDToName_UserServiceGetLoginDataResult = map[int16]string{ 0: "success", } -func (p *ClassRoomServiceGetEmptyClassroomsResult) IsSetSuccess() bool { +func (p *UserServiceGetLoginDataResult) IsSetSuccess() bool { return p.Success != nil } -func (p *ClassRoomServiceGetEmptyClassroomsResult) Read(iprot thrift.TProtocol) (err error) { +func (p *UserServiceGetLoginDataResult) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -1315,7 +2110,7 @@ ReadStructBeginError: 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_ClassRoomServiceGetEmptyClassroomsResult[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceGetLoginDataResult[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -1325,8 +2120,8 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *ClassRoomServiceGetEmptyClassroomsResult) ReadField0(iprot thrift.TProtocol) error { - _field := NewEmptyClassroomResponse() +func (p *UserServiceGetLoginDataResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewGetLoginDataResponse() if err := _field.Read(iprot); err != nil { return err } @@ -1334,9 +2129,9 @@ func (p *ClassRoomServiceGetEmptyClassroomsResult) ReadField0(iprot thrift.TProt return nil } -func (p *ClassRoomServiceGetEmptyClassroomsResult) Write(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetLoginDataResult) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetEmptyClassrooms_result"); err != nil { + if err = oprot.WriteStructBegin("GetLoginData_result"); err != nil { goto WriteStructBeginError } if p != nil { @@ -1362,7 +2157,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *ClassRoomServiceGetEmptyClassroomsResult) writeField0(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetLoginDataResult) writeField0(oprot thrift.TProtocol) (err error) { if p.IsSetSuccess() { if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { goto WriteFieldBeginError @@ -1381,132 +2176,43 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) } -func (p *ClassRoomServiceGetEmptyClassroomsResult) String() string { +func (p *UserServiceGetLoginDataResult) String() string { if p == nil { return "" } - return fmt.Sprintf("ClassRoomServiceGetEmptyClassroomsResult(%+v)", *p) - -} - -type UserServiceProcessor struct { - processorMap map[string]thrift.TProcessorFunction - handler UserService -} - -func (p *UserServiceProcessor) AddToProcessorMap(key string, processor thrift.TProcessorFunction) { - p.processorMap[key] = processor -} - -func (p *UserServiceProcessor) GetProcessorFunction(key string) (processor thrift.TProcessorFunction, ok bool) { - processor, ok = p.processorMap[key] - return processor, ok -} - -func (p *UserServiceProcessor) ProcessorMap() map[string]thrift.TProcessorFunction { - return p.processorMap -} - -func NewUserServiceProcessor(handler UserService) *UserServiceProcessor { - self := &UserServiceProcessor{handler: handler, processorMap: make(map[string]thrift.TProcessorFunction)} - self.AddToProcessorMap("GetLoginData", &userServiceProcessorGetLoginData{handler: handler}) - return self -} -func (p *UserServiceProcessor) Process(ctx context.Context, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { - name, _, seqId, err := iprot.ReadMessageBegin() - if err != nil { - return false, err - } - if processor, ok := p.GetProcessorFunction(name); ok { - return processor.Process(ctx, seqId, iprot, oprot) - } - iprot.Skip(thrift.STRUCT) - iprot.ReadMessageEnd() - x := thrift.NewTApplicationException(thrift.UNKNOWN_METHOD, "Unknown function "+name) - oprot.WriteMessageBegin(name, thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return false, x -} - -type userServiceProcessorGetLoginData struct { - handler UserService -} - -func (p *userServiceProcessorGetLoginData) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { - args := UserServiceGetLoginDataArgs{} - if err = args.Read(iprot); err != nil { - iprot.ReadMessageEnd() - x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) - oprot.WriteMessageBegin("GetLoginData", thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return false, err - } + return fmt.Sprintf("UserServiceGetLoginDataResult(%+v)", *p) - iprot.ReadMessageEnd() - var err2 error - result := UserServiceGetLoginDataResult{} - var retval *GetLoginDataResponse - if retval, err2 = p.handler.GetLoginData(ctx, args.Request); err2 != nil { - x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetLoginData: "+err2.Error()) - oprot.WriteMessageBegin("GetLoginData", thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return true, err2 - } else { - result.Success = retval - } - if err2 = oprot.WriteMessageBegin("GetLoginData", 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 UserServiceGetLoginDataArgs struct { - Request *GetLoginDataRequest `thrift:"request,1"` +type UserServiceGetValidateCodeArgs struct { + Request *GetValidateCodeRequest `thrift:"request,1"` } -func NewUserServiceGetLoginDataArgs() *UserServiceGetLoginDataArgs { - return &UserServiceGetLoginDataArgs{} +func NewUserServiceGetValidateCodeArgs() *UserServiceGetValidateCodeArgs { + return &UserServiceGetValidateCodeArgs{} } -func (p *UserServiceGetLoginDataArgs) InitDefault() { +func (p *UserServiceGetValidateCodeArgs) InitDefault() { } -var UserServiceGetLoginDataArgs_Request_DEFAULT *GetLoginDataRequest +var UserServiceGetValidateCodeArgs_Request_DEFAULT *GetValidateCodeRequest -func (p *UserServiceGetLoginDataArgs) GetRequest() (v *GetLoginDataRequest) { +func (p *UserServiceGetValidateCodeArgs) GetRequest() (v *GetValidateCodeRequest) { if !p.IsSetRequest() { - return UserServiceGetLoginDataArgs_Request_DEFAULT + return UserServiceGetValidateCodeArgs_Request_DEFAULT } return p.Request } -var fieldIDToName_UserServiceGetLoginDataArgs = map[int16]string{ +var fieldIDToName_UserServiceGetValidateCodeArgs = map[int16]string{ 1: "request", } -func (p *UserServiceGetLoginDataArgs) IsSetRequest() bool { +func (p *UserServiceGetValidateCodeArgs) IsSetRequest() bool { return p.Request != nil } -func (p *UserServiceGetLoginDataArgs) Read(iprot thrift.TProtocol) (err error) { +func (p *UserServiceGetValidateCodeArgs) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -1552,7 +2258,7 @@ ReadStructBeginError: 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_UserServiceGetLoginDataArgs[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceGetValidateCodeArgs[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -1562,8 +2268,8 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *UserServiceGetLoginDataArgs) ReadField1(iprot thrift.TProtocol) error { - _field := NewGetLoginDataRequest() +func (p *UserServiceGetValidateCodeArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewGetValidateCodeRequest() if err := _field.Read(iprot); err != nil { return err } @@ -1571,9 +2277,9 @@ func (p *UserServiceGetLoginDataArgs) ReadField1(iprot thrift.TProtocol) error { return nil } -func (p *UserServiceGetLoginDataArgs) Write(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetValidateCodeArgs) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetLoginData_args"); err != nil { + if err = oprot.WriteStructBegin("GetValidateCode_args"); err != nil { goto WriteStructBeginError } if p != nil { @@ -1599,7 +2305,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *UserServiceGetLoginDataArgs) writeField1(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetValidateCodeArgs) writeField1(oprot thrift.TProtocol) (err error) { if err = oprot.WriteFieldBegin("request", thrift.STRUCT, 1); err != nil { goto WriteFieldBeginError } @@ -1616,43 +2322,43 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *UserServiceGetLoginDataArgs) String() string { +func (p *UserServiceGetValidateCodeArgs) String() string { if p == nil { return "" } - return fmt.Sprintf("UserServiceGetLoginDataArgs(%+v)", *p) + return fmt.Sprintf("UserServiceGetValidateCodeArgs(%+v)", *p) } -type UserServiceGetLoginDataResult struct { - Success *GetLoginDataResponse `thrift:"success,0,optional"` +type UserServiceGetValidateCodeResult struct { + Success *GetValidateCodeResponse `thrift:"success,0,optional"` } -func NewUserServiceGetLoginDataResult() *UserServiceGetLoginDataResult { - return &UserServiceGetLoginDataResult{} +func NewUserServiceGetValidateCodeResult() *UserServiceGetValidateCodeResult { + return &UserServiceGetValidateCodeResult{} } -func (p *UserServiceGetLoginDataResult) InitDefault() { +func (p *UserServiceGetValidateCodeResult) InitDefault() { } -var UserServiceGetLoginDataResult_Success_DEFAULT *GetLoginDataResponse +var UserServiceGetValidateCodeResult_Success_DEFAULT *GetValidateCodeResponse -func (p *UserServiceGetLoginDataResult) GetSuccess() (v *GetLoginDataResponse) { +func (p *UserServiceGetValidateCodeResult) GetSuccess() (v *GetValidateCodeResponse) { if !p.IsSetSuccess() { - return UserServiceGetLoginDataResult_Success_DEFAULT + return UserServiceGetValidateCodeResult_Success_DEFAULT } return p.Success } -var fieldIDToName_UserServiceGetLoginDataResult = map[int16]string{ +var fieldIDToName_UserServiceGetValidateCodeResult = map[int16]string{ 0: "success", } -func (p *UserServiceGetLoginDataResult) IsSetSuccess() bool { +func (p *UserServiceGetValidateCodeResult) IsSetSuccess() bool { return p.Success != nil } -func (p *UserServiceGetLoginDataResult) Read(iprot thrift.TProtocol) (err error) { +func (p *UserServiceGetValidateCodeResult) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -1698,7 +2404,7 @@ ReadStructBeginError: 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_UserServiceGetLoginDataResult[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceGetValidateCodeResult[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -1708,8 +2414,8 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *UserServiceGetLoginDataResult) ReadField0(iprot thrift.TProtocol) error { - _field := NewGetLoginDataResponse() +func (p *UserServiceGetValidateCodeResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewGetValidateCodeResponse() if err := _field.Read(iprot); err != nil { return err } @@ -1717,9 +2423,9 @@ func (p *UserServiceGetLoginDataResult) ReadField0(iprot thrift.TProtocol) error return nil } -func (p *UserServiceGetLoginDataResult) Write(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetValidateCodeResult) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetLoginData_result"); err != nil { + if err = oprot.WriteStructBegin("GetValidateCode_result"); err != nil { goto WriteStructBeginError } if p != nil { @@ -1745,7 +2451,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *UserServiceGetLoginDataResult) writeField0(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetValidateCodeResult) writeField0(oprot thrift.TProtocol) (err error) { if p.IsSetSuccess() { if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { goto WriteFieldBeginError @@ -1764,10 +2470,10 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) } -func (p *UserServiceGetLoginDataResult) String() string { +func (p *UserServiceGetValidateCodeResult) String() string { if p == nil { return "" } - return fmt.Sprintf("UserServiceGetLoginDataResult(%+v)", *p) + return fmt.Sprintf("UserServiceGetValidateCodeResult(%+v)", *p) } diff --git a/cmd/api/biz/model/model/model.go b/cmd/api/biz/model/model/model.go index 66666fd..d5a8271 100644 --- a/cmd/api/biz/model/model/model.go +++ b/cmd/api/biz/model/model/model.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -// Code generated by thriftgo (0.3.17). DO NOT EDIT. +// Code generated by thriftgo (0.3.13). DO NOT EDIT. package model @@ -432,7 +432,7 @@ func (p *LoginData) String() string { } -// Classroom +// Classroom 前端想要返回的fields type Classroom struct { Build string `thrift:"build,1,required" form:"build,required" json:"build,required" query:"build,required"` Location string `thrift:"location,2,required" form:"location,required" json:"location,required" query:"location,required"` diff --git a/cmd/api/biz/router/api/api.go b/cmd/api/biz/router/api/api.go index ce06f76..52a6b53 100644 --- a/cmd/api/biz/router/api/api.go +++ b/cmd/api/biz/router/api/api.go @@ -50,6 +50,7 @@ func Register(r *server.Hertz) { { _user := _jwch.Group("/user", _userMw()...) _user.GET("/login", append(_getlogindataMw(), api.GetLoginData)...) + _user.POST("/validateCode", append(_getvalidatecodeMw(), api.GetValidateCode)...) } } } diff --git a/cmd/api/biz/router/api/middleware.go b/cmd/api/biz/router/api/middleware.go index e5e3535..bcf8200 100644 --- a/cmd/api/biz/router/api/middleware.go +++ b/cmd/api/biz/router/api/middleware.go @@ -66,3 +66,8 @@ func _jwchMw() []app.HandlerFunc { // your code... return nil } + +func _getvalidatecodeMw() []app.HandlerFunc { + // your code... + return nil +} diff --git a/cmd/api/biz/rpc/user.go b/cmd/api/biz/rpc/user.go index 5977c8f..29ef3b4 100644 --- a/cmd/api/biz/rpc/user.go +++ b/cmd/api/biz/rpc/user.go @@ -45,3 +45,15 @@ func GetLoginDataRPC(ctx context.Context, req *user.GetLoginDataRequest) (string } return resp.Id, resp.Cookies, nil } + +func GetInvalidateCodeRPC(ctx context.Context, req *user.GetValidateCodeRequest) (string, error) { + resp, err := userClient.GetValidateCode(ctx, req) + if err != nil { + logger.Errorf("GetInvalidateCodeRPC: RPC called failed: %v", err.Error()) + return "", errno.InternalServiceError.WithError(err) + } + if !utils.IsSuccess(resp.Base) { + return "", errno.BizError + } + return *resp.Code, nil +} diff --git a/cmd/user/handler.go b/cmd/user/handler.go index a510c37..bfdde61 100644 --- a/cmd/user/handler.go +++ b/cmd/user/handler.go @@ -19,6 +19,8 @@ package main import ( "context" + "github.com/west2-online/fzuhelper-server/pkg/logger" + "github.com/west2-online/fzuhelper-server/cmd/user/pack" "github.com/west2-online/fzuhelper-server/cmd/user/service" user "github.com/west2-online/fzuhelper-server/kitex_gen/user" @@ -41,3 +43,17 @@ func (s *UserServiceImpl) GetLoginData(ctx context.Context, req *user.GetLoginDa resp.Cookies = cookies return } + +// GetValidateCode implements the UserServiceImpl interface. +func (s *UserServiceImpl) GetValidateCode(ctx context.Context, req *user.GetValidateCodeRequest) (resp *user.GetValidateCodeResponse, err error) { + resp = new(user.GetValidateCodeResponse) + code, err := service.NewUserService(ctx, "", nil).GetValidateCode(req) + if err != nil { + resp.Base = pack.BuildBaseResp(err) + logger.Infof("User.GetValidateCode: %v", err) + return resp, nil + } + resp.Base = pack.BuildBaseResp(nil) + resp.Code = &code + return resp, nil +} diff --git a/cmd/user/service/get_validate_code.go b/cmd/user/service/get_validate_code.go new file mode 100644 index 0000000..9929bdc --- /dev/null +++ b/cmd/user/service/get_validate_code.go @@ -0,0 +1,26 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package service + +import ( + "github.com/west2-online/fzuhelper-server/kitex_gen/user" + "github.com/west2-online/jwch" +) + +func (s *UserService) GetValidateCode(req *user.GetValidateCodeRequest) (string, error) { + return jwch.GetValidateCode(req.Image) +} diff --git a/idl/api.thrift b/idl/api.thrift index 96a8c93..610313f 100644 --- a/idl/api.thrift +++ b/idl/api.thrift @@ -1,17 +1,7 @@ namespace go api include "model.thrift" -//user -struct GetLoginDataRequest { - 1: required string id - 2: required string password -} - -struct GetLoginDataResponse { - 1: required string id - 2: required list cookies -} - +//classroom struct EmptyClassroomRequest { 1: required string date 2: required string campus @@ -23,11 +13,32 @@ struct EmptyClassroomResponse { 1: required list classrooms } - service ClassRoomService { EmptyClassroomResponse GetEmptyClassrooms(1: EmptyClassroomRequest request)(api.get="/api/v1/common/classroom/empty") } +//user +struct GetLoginDataRequest { + 1: required string id + 2: required string password +} + +struct GetLoginDataResponse { + 1: required string id + 2: required list cookies +} + +struct GetValidateCodeRequest{ + 1:required string image, +} + +struct GetValidateCodeResponse{ + 1:model.BaseResp base, + 2:optional string code, +} + service UserService { - GetLoginDataResponse GetLoginData(1: GetLoginDataRequest request)(api.get="/api/v1/jwch/user/login") + GetLoginDataResponse GetLoginData(1: GetLoginDataRequest request)(api.get="/api/v1/jwch/user/login"), + GetValidateCodeResponse GetValidateCode(1: GetValidateCodeRequest request)(api.post="/api/v1/jwch/user/validateCode"), + } diff --git a/idl/model.thrift b/idl/model.thrift index a4abb1a..e5db6f0 100644 --- a/idl/model.thrift +++ b/idl/model.thrift @@ -7,15 +7,15 @@ struct BaseResp { //由前端给的登陆信息,包括id和cookies, 这个struct仅用于测试返回数据,因为登录实现在前端完成,不会在实际项目中使用 struct LoginData { - 1: required string id - 2: required list cookies + 1: required string id //教务处给出的标识,它的组成是时间+学号 + 2: required list cookies //登录凭证,访问资源的时候应该必须携带cookies } //Classroom 前端想要返回的fields struct Classroom { - 1: required string build - 2: required string location - 3: required string capacity - 4: required string type + 1: required string build //空教室所在楼,例 西三 + 2: required string location //空教室,例 旗山西3-104 + 3: required string capacity //可容纳人数,例 153人 + 4: required string type //教师类型,例 智慧教室普通型 } diff --git a/idl/user.thrift b/idl/user.thrift index f661277..6fc5c31 100644 --- a/idl/user.thrift +++ b/idl/user.thrift @@ -13,6 +13,17 @@ struct GetLoginDataResponse { 3: required list cookies } +struct GetValidateCodeRequest{ + 1:required string image, +} + +struct GetValidateCodeResponse{ + 1:model.BaseResp base, + 2:optional string code, +} + + service UserService { - GetLoginDataResponse GetLoginData(1: GetLoginDataRequest req) + GetLoginDataResponse GetLoginData(1: GetLoginDataRequest req), + GetValidateCodeResponse GetValidateCode(1: GetValidateCodeRequest req), } diff --git a/kitex_gen/model/k-model.go b/kitex_gen/model/k-model.go index f68dc71..86bb184 100644 --- a/kitex_gen/model/k-model.go +++ b/kitex_gen/model/k-model.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -// Code generated by Kitex v0.11.3. DO NOT EDIT. +// Code generated by Kitex v0.9.1. DO NOT EDIT. package model @@ -24,7 +24,9 @@ import ( "reflect" "strings" - "github.com/cloudwego/gopkg/protocol/thrift" + "github.com/apache/thrift/lib/go/thrift" + + "github.com/cloudwego/kitex/pkg/protocol/bthrift" ) // unused protection @@ -33,7 +35,8 @@ var ( _ = (*bytes.Buffer)(nil) _ = (*strings.Builder)(nil) _ = reflect.Type(nil) - _ = thrift.STOP + _ = thrift.TProtocol(nil) + _ = bthrift.BinaryWriter(nil) ) func (p *BaseResp) FastRead(buf []byte) (int, error) { @@ -42,8 +45,14 @@ func (p *BaseResp) FastRead(buf []byte) (int, error) { var l int var fieldTypeId thrift.TType var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + for { - fieldTypeId, fieldId, l, err = thrift.Binary.ReadFieldBegin(buf[offset:]) + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) offset += l if err != nil { goto ReadFieldBeginError @@ -60,7 +69,7 @@ func (p *BaseResp) FastRead(buf []byte) (int, error) { goto ReadFieldError } } else { - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError @@ -74,55 +83,72 @@ func (p *BaseResp) FastRead(buf []byte) (int, error) { goto ReadFieldError } } else { - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError } } default: - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError } } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError } return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) ReadFieldBeginError: return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) ReadFieldError: return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_BaseResp[fieldId]), err) SkipFieldError: return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } func (p *BaseResp) FastReadField1(buf []byte) (int, error) { offset := 0 - var _field int64 - if v, l, err := thrift.Binary.ReadI64(buf[offset:]); err != nil { + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { return offset, err } else { offset += l - _field = v + + p.Code = v + } - p.Code = _field return offset, nil } func (p *BaseResp) FastReadField2(buf []byte) (int, error) { offset := 0 - var _field string - if v, l, err := thrift.Binary.ReadString(buf[offset:]); err != nil { + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { return offset, err } else { offset += l - _field = v + + p.Msg = v + } - p.Msg = _field return offset, nil } @@ -131,51 +157,63 @@ func (p *BaseResp) FastWrite(buf []byte) int { return 0 } -func (p *BaseResp) FastWriteNocopy(buf []byte, w thrift.NocopyWriter) int { +func (p *BaseResp) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "BaseResp") if p != nil { - offset += p.fastWriteField1(buf[offset:], w) - offset += p.fastWriteField2(buf[offset:], w) + offset += p.fastWriteField1(buf[offset:], binaryWriter) + offset += p.fastWriteField2(buf[offset:], binaryWriter) } - offset += thrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) return offset } func (p *BaseResp) BLength() int { l := 0 + l += bthrift.Binary.StructBeginLength("BaseResp") if p != nil { l += p.field1Length() l += p.field2Length() } - l += thrift.Binary.FieldStopLength() + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() return l } -func (p *BaseResp) fastWriteField1(buf []byte, w thrift.NocopyWriter) int { +func (p *BaseResp) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 - offset += thrift.Binary.WriteFieldBegin(buf[offset:], thrift.I64, 1) - offset += thrift.Binary.WriteI64(buf[offset:], p.Code) + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "code", thrift.I64, 1) + offset += bthrift.Binary.WriteI64(buf[offset:], p.Code) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) return offset } -func (p *BaseResp) fastWriteField2(buf []byte, w thrift.NocopyWriter) int { +func (p *BaseResp) fastWriteField2(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 - offset += thrift.Binary.WriteFieldBegin(buf[offset:], thrift.STRING, 2) - offset += thrift.Binary.WriteStringNocopy(buf[offset:], w, p.Msg) + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "msg", thrift.STRING, 2) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Msg) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) return offset } func (p *BaseResp) field1Length() int { l := 0 - l += thrift.Binary.FieldBeginLength() - l += thrift.Binary.I64Length() + l += bthrift.Binary.FieldBeginLength("code", thrift.I64, 1) + l += bthrift.Binary.I64Length(p.Code) + + l += bthrift.Binary.FieldEndLength() return l } func (p *BaseResp) field2Length() int { l := 0 - l += thrift.Binary.FieldBeginLength() - l += thrift.Binary.StringLengthNocopy(p.Msg) + l += bthrift.Binary.FieldBeginLength("msg", thrift.STRING, 2) + l += bthrift.Binary.StringLengthNocopy(p.Msg) + + l += bthrift.Binary.FieldEndLength() return l } @@ -187,8 +225,14 @@ func (p *LoginData) FastRead(buf []byte) (int, error) { var fieldId int16 var issetId bool = false var issetCookies bool = false + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + for { - fieldTypeId, fieldId, l, err = thrift.Binary.ReadFieldBegin(buf[offset:]) + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) offset += l if err != nil { goto ReadFieldBeginError @@ -206,7 +250,7 @@ func (p *LoginData) FastRead(buf []byte) (int, error) { } issetId = true } else { - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError @@ -221,19 +265,30 @@ func (p *LoginData) FastRead(buf []byte) (int, error) { } issetCookies = true } else { - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError } } default: - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError } } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError } if !issetId { @@ -246,51 +301,63 @@ func (p *LoginData) FastRead(buf []byte) (int, error) { goto RequiredFieldNotSetError } return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) ReadFieldBeginError: return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) ReadFieldError: return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LoginData[fieldId]), err) SkipFieldError: return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) RequiredFieldNotSetError: - return offset, thrift.NewProtocolException(thrift.INVALID_DATA, fmt.Sprintf("required field %s is not set", fieldIDToName_LoginData[fieldId])) + return offset, thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_LoginData[fieldId])) } func (p *LoginData) FastReadField1(buf []byte) (int, error) { offset := 0 - var _field string - if v, l, err := thrift.Binary.ReadString(buf[offset:]); err != nil { + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { return offset, err } else { offset += l - _field = v + + p.Id = v + } - p.Id = _field return offset, nil } func (p *LoginData) FastReadField2(buf []byte) (int, error) { offset := 0 - _, size, l, err := thrift.Binary.ReadListBegin(buf[offset:]) + _, size, l, err := bthrift.Binary.ReadListBegin(buf[offset:]) offset += l if err != nil { return offset, err } - _field := make([]string, 0, size) + p.Cookies = make([]string, 0, size) for i := 0; i < size; i++ { var _elem string - if v, l, err := thrift.Binary.ReadString(buf[offset:]); err != nil { + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { return offset, err } else { offset += l + _elem = v + } - _field = append(_field, _elem) + p.Cookies = append(p.Cookies, _elem) + } + if l, err := bthrift.Binary.ReadListEnd(buf[offset:]); err != nil { + return offset, err + } else { + offset += l } - p.Cookies = _field return offset, nil } @@ -299,62 +366,75 @@ func (p *LoginData) FastWrite(buf []byte) int { return 0 } -func (p *LoginData) FastWriteNocopy(buf []byte, w thrift.NocopyWriter) int { +func (p *LoginData) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "LoginData") if p != nil { - offset += p.fastWriteField1(buf[offset:], w) - offset += p.fastWriteField2(buf[offset:], w) + offset += p.fastWriteField1(buf[offset:], binaryWriter) + offset += p.fastWriteField2(buf[offset:], binaryWriter) } - offset += thrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) return offset } func (p *LoginData) BLength() int { l := 0 + l += bthrift.Binary.StructBeginLength("LoginData") if p != nil { l += p.field1Length() l += p.field2Length() } - l += thrift.Binary.FieldStopLength() + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() return l } -func (p *LoginData) fastWriteField1(buf []byte, w thrift.NocopyWriter) int { +func (p *LoginData) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 - offset += thrift.Binary.WriteFieldBegin(buf[offset:], thrift.STRING, 1) - offset += thrift.Binary.WriteStringNocopy(buf[offset:], w, p.Id) + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "id", thrift.STRING, 1) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Id) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) return offset } -func (p *LoginData) fastWriteField2(buf []byte, w thrift.NocopyWriter) int { +func (p *LoginData) fastWriteField2(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 - offset += thrift.Binary.WriteFieldBegin(buf[offset:], thrift.LIST, 2) + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "cookies", thrift.LIST, 2) listBeginOffset := offset - offset += thrift.Binary.ListBeginLength() + offset += bthrift.Binary.ListBeginLength(thrift.STRING, 0) var length int for _, v := range p.Cookies { length++ - offset += thrift.Binary.WriteStringNocopy(buf[offset:], w, v) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, v) + } - thrift.Binary.WriteListBegin(buf[listBeginOffset:], thrift.STRING, length) + bthrift.Binary.WriteListBegin(buf[listBeginOffset:], thrift.STRING, length) + offset += bthrift.Binary.WriteListEnd(buf[offset:]) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) return offset } func (p *LoginData) field1Length() int { l := 0 - l += thrift.Binary.FieldBeginLength() - l += thrift.Binary.StringLengthNocopy(p.Id) + l += bthrift.Binary.FieldBeginLength("id", thrift.STRING, 1) + l += bthrift.Binary.StringLengthNocopy(p.Id) + + l += bthrift.Binary.FieldEndLength() return l } func (p *LoginData) field2Length() int { l := 0 - l += thrift.Binary.FieldBeginLength() - l += thrift.Binary.ListBeginLength() + l += bthrift.Binary.FieldBeginLength("cookies", thrift.LIST, 2) + l += bthrift.Binary.ListBeginLength(thrift.STRING, len(p.Cookies)) for _, v := range p.Cookies { - _ = v - l += thrift.Binary.StringLengthNocopy(v) + l += bthrift.Binary.StringLengthNocopy(v) + } + l += bthrift.Binary.ListEndLength() + l += bthrift.Binary.FieldEndLength() return l } @@ -368,8 +448,14 @@ func (p *Classroom) FastRead(buf []byte) (int, error) { var issetLocation bool = false var issetCapacity bool = false var issetType bool = false + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + for { - fieldTypeId, fieldId, l, err = thrift.Binary.ReadFieldBegin(buf[offset:]) + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) offset += l if err != nil { goto ReadFieldBeginError @@ -387,7 +473,7 @@ func (p *Classroom) FastRead(buf []byte) (int, error) { } issetBuild = true } else { - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError @@ -402,7 +488,7 @@ func (p *Classroom) FastRead(buf []byte) (int, error) { } issetLocation = true } else { - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError @@ -417,7 +503,7 @@ func (p *Classroom) FastRead(buf []byte) (int, error) { } issetCapacity = true } else { - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError @@ -432,19 +518,30 @@ func (p *Classroom) FastRead(buf []byte) (int, error) { } issetType = true } else { - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError } } default: - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError } } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError } if !issetBuild { @@ -467,69 +564,75 @@ func (p *Classroom) FastRead(buf []byte) (int, error) { goto RequiredFieldNotSetError } return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) ReadFieldBeginError: return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) ReadFieldError: return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_Classroom[fieldId]), err) SkipFieldError: return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) RequiredFieldNotSetError: - return offset, thrift.NewProtocolException(thrift.INVALID_DATA, fmt.Sprintf("required field %s is not set", fieldIDToName_Classroom[fieldId])) + return offset, thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_Classroom[fieldId])) } func (p *Classroom) FastReadField1(buf []byte) (int, error) { offset := 0 - var _field string - if v, l, err := thrift.Binary.ReadString(buf[offset:]); err != nil { + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { return offset, err } else { offset += l - _field = v + + p.Build = v + } - p.Build = _field return offset, nil } func (p *Classroom) FastReadField2(buf []byte) (int, error) { offset := 0 - var _field string - if v, l, err := thrift.Binary.ReadString(buf[offset:]); err != nil { + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { return offset, err } else { offset += l - _field = v + + p.Location = v + } - p.Location = _field return offset, nil } func (p *Classroom) FastReadField3(buf []byte) (int, error) { offset := 0 - var _field string - if v, l, err := thrift.Binary.ReadString(buf[offset:]); err != nil { + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { return offset, err } else { offset += l - _field = v + + p.Capacity = v + } - p.Capacity = _field return offset, nil } func (p *Classroom) FastReadField4(buf []byte) (int, error) { offset := 0 - var _field string - if v, l, err := thrift.Binary.ReadString(buf[offset:]); err != nil { + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { return offset, err } else { offset += l - _field = v + + p.Type = v + } - p.Type = _field return offset, nil } @@ -538,82 +641,102 @@ func (p *Classroom) FastWrite(buf []byte) int { return 0 } -func (p *Classroom) FastWriteNocopy(buf []byte, w thrift.NocopyWriter) int { +func (p *Classroom) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "Classroom") if p != nil { - offset += p.fastWriteField1(buf[offset:], w) - offset += p.fastWriteField2(buf[offset:], w) - offset += p.fastWriteField3(buf[offset:], w) - offset += p.fastWriteField4(buf[offset:], w) + offset += p.fastWriteField1(buf[offset:], binaryWriter) + offset += p.fastWriteField2(buf[offset:], binaryWriter) + offset += p.fastWriteField3(buf[offset:], binaryWriter) + offset += p.fastWriteField4(buf[offset:], binaryWriter) } - offset += thrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) return offset } func (p *Classroom) BLength() int { l := 0 + l += bthrift.Binary.StructBeginLength("Classroom") if p != nil { l += p.field1Length() l += p.field2Length() l += p.field3Length() l += p.field4Length() } - l += thrift.Binary.FieldStopLength() + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() return l } -func (p *Classroom) fastWriteField1(buf []byte, w thrift.NocopyWriter) int { +func (p *Classroom) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 - offset += thrift.Binary.WriteFieldBegin(buf[offset:], thrift.STRING, 1) - offset += thrift.Binary.WriteStringNocopy(buf[offset:], w, p.Build) + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "build", thrift.STRING, 1) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Build) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) return offset } -func (p *Classroom) fastWriteField2(buf []byte, w thrift.NocopyWriter) int { +func (p *Classroom) fastWriteField2(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 - offset += thrift.Binary.WriteFieldBegin(buf[offset:], thrift.STRING, 2) - offset += thrift.Binary.WriteStringNocopy(buf[offset:], w, p.Location) + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "location", thrift.STRING, 2) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Location) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) return offset } -func (p *Classroom) fastWriteField3(buf []byte, w thrift.NocopyWriter) int { +func (p *Classroom) fastWriteField3(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 - offset += thrift.Binary.WriteFieldBegin(buf[offset:], thrift.STRING, 3) - offset += thrift.Binary.WriteStringNocopy(buf[offset:], w, p.Capacity) + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "capacity", thrift.STRING, 3) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Capacity) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) return offset } -func (p *Classroom) fastWriteField4(buf []byte, w thrift.NocopyWriter) int { +func (p *Classroom) fastWriteField4(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 - offset += thrift.Binary.WriteFieldBegin(buf[offset:], thrift.STRING, 4) - offset += thrift.Binary.WriteStringNocopy(buf[offset:], w, p.Type) + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "type", thrift.STRING, 4) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Type) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) return offset } func (p *Classroom) field1Length() int { l := 0 - l += thrift.Binary.FieldBeginLength() - l += thrift.Binary.StringLengthNocopy(p.Build) + l += bthrift.Binary.FieldBeginLength("build", thrift.STRING, 1) + l += bthrift.Binary.StringLengthNocopy(p.Build) + + l += bthrift.Binary.FieldEndLength() return l } func (p *Classroom) field2Length() int { l := 0 - l += thrift.Binary.FieldBeginLength() - l += thrift.Binary.StringLengthNocopy(p.Location) + l += bthrift.Binary.FieldBeginLength("location", thrift.STRING, 2) + l += bthrift.Binary.StringLengthNocopy(p.Location) + + l += bthrift.Binary.FieldEndLength() return l } func (p *Classroom) field3Length() int { l := 0 - l += thrift.Binary.FieldBeginLength() - l += thrift.Binary.StringLengthNocopy(p.Capacity) + l += bthrift.Binary.FieldBeginLength("capacity", thrift.STRING, 3) + l += bthrift.Binary.StringLengthNocopy(p.Capacity) + + l += bthrift.Binary.FieldEndLength() return l } func (p *Classroom) field4Length() int { l := 0 - l += thrift.Binary.FieldBeginLength() - l += thrift.Binary.StringLengthNocopy(p.Type) + l += bthrift.Binary.FieldBeginLength("type", thrift.STRING, 4) + l += bthrift.Binary.StringLengthNocopy(p.Type) + + l += bthrift.Binary.FieldEndLength() return l } diff --git a/kitex_gen/model/model.go b/kitex_gen/model/model.go index ef06386..e6a88c8 100644 --- a/kitex_gen/model/model.go +++ b/kitex_gen/model/model.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -// Code generated by thriftgo (0.3.17). DO NOT EDIT. +// Code generated by thriftgo (0.3.13). DO NOT EDIT. package model @@ -22,7 +22,7 @@ import ( "fmt" "strings" - thrift "github.com/cloudwego/kitex/pkg/protocol/bthrift/apache" + "github.com/apache/thrift/lib/go/thrift" ) type BaseResp struct { diff --git a/kitex_gen/user/k-user.go b/kitex_gen/user/k-user.go index 3903544..5433be0 100644 --- a/kitex_gen/user/k-user.go +++ b/kitex_gen/user/k-user.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -// Code generated by Kitex v0.11.3. DO NOT EDIT. +// Code generated by Kitex v0.9.1. DO NOT EDIT. package user @@ -24,13 +24,11 @@ import ( "reflect" "strings" - "github.com/cloudwego/gopkg/protocol/thrift" + "github.com/apache/thrift/lib/go/thrift" - "github.com/west2-online/fzuhelper-server/kitex_gen/model" -) + "github.com/cloudwego/kitex/pkg/protocol/bthrift" -var ( - _ = model.KitexUnusedProtection + "github.com/west2-online/fzuhelper-server/kitex_gen/model" ) // unused protection @@ -39,7 +37,9 @@ var ( _ = (*bytes.Buffer)(nil) _ = (*strings.Builder)(nil) _ = reflect.Type(nil) - _ = thrift.STOP + _ = thrift.TProtocol(nil) + _ = bthrift.BinaryWriter(nil) + _ = model.KitexUnusedProtection ) func (p *GetLoginDataRequest) FastRead(buf []byte) (int, error) { @@ -50,8 +50,14 @@ func (p *GetLoginDataRequest) FastRead(buf []byte) (int, error) { var fieldId int16 var issetId bool = false var issetPassword bool = false + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + for { - fieldTypeId, fieldId, l, err = thrift.Binary.ReadFieldBegin(buf[offset:]) + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) offset += l if err != nil { goto ReadFieldBeginError @@ -69,7 +75,7 @@ func (p *GetLoginDataRequest) FastRead(buf []byte) (int, error) { } issetId = true } else { - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError @@ -84,19 +90,30 @@ func (p *GetLoginDataRequest) FastRead(buf []byte) (int, error) { } issetPassword = true } else { - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError } } default: - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError } } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError } if !issetId { @@ -109,41 +126,47 @@ func (p *GetLoginDataRequest) FastRead(buf []byte) (int, error) { goto RequiredFieldNotSetError } return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) ReadFieldBeginError: return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) ReadFieldError: return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_GetLoginDataRequest[fieldId]), err) SkipFieldError: return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) RequiredFieldNotSetError: - return offset, thrift.NewProtocolException(thrift.INVALID_DATA, fmt.Sprintf("required field %s is not set", fieldIDToName_GetLoginDataRequest[fieldId])) + return offset, thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_GetLoginDataRequest[fieldId])) } func (p *GetLoginDataRequest) FastReadField1(buf []byte) (int, error) { offset := 0 - var _field string - if v, l, err := thrift.Binary.ReadString(buf[offset:]); err != nil { + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { return offset, err } else { offset += l - _field = v + + p.Id = v + } - p.Id = _field return offset, nil } func (p *GetLoginDataRequest) FastReadField2(buf []byte) (int, error) { offset := 0 - var _field string - if v, l, err := thrift.Binary.ReadString(buf[offset:]); err != nil { + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { return offset, err } else { offset += l - _field = v + + p.Password = v + } - p.Password = _field return offset, nil } @@ -152,51 +175,63 @@ func (p *GetLoginDataRequest) FastWrite(buf []byte) int { return 0 } -func (p *GetLoginDataRequest) FastWriteNocopy(buf []byte, w thrift.NocopyWriter) int { +func (p *GetLoginDataRequest) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "GetLoginDataRequest") if p != nil { - offset += p.fastWriteField1(buf[offset:], w) - offset += p.fastWriteField2(buf[offset:], w) + offset += p.fastWriteField1(buf[offset:], binaryWriter) + offset += p.fastWriteField2(buf[offset:], binaryWriter) } - offset += thrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) return offset } func (p *GetLoginDataRequest) BLength() int { l := 0 + l += bthrift.Binary.StructBeginLength("GetLoginDataRequest") if p != nil { l += p.field1Length() l += p.field2Length() } - l += thrift.Binary.FieldStopLength() + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() return l } -func (p *GetLoginDataRequest) fastWriteField1(buf []byte, w thrift.NocopyWriter) int { +func (p *GetLoginDataRequest) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 - offset += thrift.Binary.WriteFieldBegin(buf[offset:], thrift.STRING, 1) - offset += thrift.Binary.WriteStringNocopy(buf[offset:], w, p.Id) + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "id", thrift.STRING, 1) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Id) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) return offset } -func (p *GetLoginDataRequest) fastWriteField2(buf []byte, w thrift.NocopyWriter) int { +func (p *GetLoginDataRequest) fastWriteField2(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 - offset += thrift.Binary.WriteFieldBegin(buf[offset:], thrift.STRING, 2) - offset += thrift.Binary.WriteStringNocopy(buf[offset:], w, p.Password) + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "password", thrift.STRING, 2) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Password) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) return offset } func (p *GetLoginDataRequest) field1Length() int { l := 0 - l += thrift.Binary.FieldBeginLength() - l += thrift.Binary.StringLengthNocopy(p.Id) + l += bthrift.Binary.FieldBeginLength("id", thrift.STRING, 1) + l += bthrift.Binary.StringLengthNocopy(p.Id) + + l += bthrift.Binary.FieldEndLength() return l } func (p *GetLoginDataRequest) field2Length() int { l := 0 - l += thrift.Binary.FieldBeginLength() - l += thrift.Binary.StringLengthNocopy(p.Password) + l += bthrift.Binary.FieldBeginLength("password", thrift.STRING, 2) + l += bthrift.Binary.StringLengthNocopy(p.Password) + + l += bthrift.Binary.FieldEndLength() return l } @@ -209,8 +244,14 @@ func (p *GetLoginDataResponse) FastRead(buf []byte) (int, error) { var issetBase bool = false var issetId bool = false var issetCookies bool = false + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + for { - fieldTypeId, fieldId, l, err = thrift.Binary.ReadFieldBegin(buf[offset:]) + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) offset += l if err != nil { goto ReadFieldBeginError @@ -228,7 +269,7 @@ func (p *GetLoginDataResponse) FastRead(buf []byte) (int, error) { } issetBase = true } else { - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError @@ -243,7 +284,7 @@ func (p *GetLoginDataResponse) FastRead(buf []byte) (int, error) { } issetId = true } else { - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError @@ -258,19 +299,30 @@ func (p *GetLoginDataResponse) FastRead(buf []byte) (int, error) { } issetCookies = true } else { - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError } } default: - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError } } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError } if !issetBase { @@ -288,63 +340,76 @@ func (p *GetLoginDataResponse) FastRead(buf []byte) (int, error) { goto RequiredFieldNotSetError } return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) ReadFieldBeginError: return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) ReadFieldError: return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_GetLoginDataResponse[fieldId]), err) SkipFieldError: return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) RequiredFieldNotSetError: - return offset, thrift.NewProtocolException(thrift.INVALID_DATA, fmt.Sprintf("required field %s is not set", fieldIDToName_GetLoginDataResponse[fieldId])) + return offset, thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_GetLoginDataResponse[fieldId])) } func (p *GetLoginDataResponse) FastReadField1(buf []byte) (int, error) { offset := 0 - _field := model.NewBaseResp() - if l, err := _field.FastRead(buf[offset:]); err != nil { + + tmp := model.NewBaseResp() + if l, err := tmp.FastRead(buf[offset:]); err != nil { return offset, err } else { offset += l } - p.Base = _field + p.Base = tmp return offset, nil } func (p *GetLoginDataResponse) FastReadField2(buf []byte) (int, error) { offset := 0 - var _field string - if v, l, err := thrift.Binary.ReadString(buf[offset:]); err != nil { + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { return offset, err } else { offset += l - _field = v + + p.Id = v + } - p.Id = _field return offset, nil } func (p *GetLoginDataResponse) FastReadField3(buf []byte) (int, error) { offset := 0 - _, size, l, err := thrift.Binary.ReadListBegin(buf[offset:]) + _, size, l, err := bthrift.Binary.ReadListBegin(buf[offset:]) offset += l if err != nil { return offset, err } - _field := make([]string, 0, size) + p.Cookies = make([]string, 0, size) for i := 0; i < size; i++ { var _elem string - if v, l, err := thrift.Binary.ReadString(buf[offset:]); err != nil { + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { return offset, err } else { offset += l + _elem = v + } - _field = append(_field, _elem) + p.Cookies = append(p.Cookies, _elem) + } + if l, err := bthrift.Binary.ReadListEnd(buf[offset:]); err != nil { + return offset, err + } else { + offset += l } - p.Cookies = _field return offset, nil } @@ -353,77 +418,408 @@ func (p *GetLoginDataResponse) FastWrite(buf []byte) int { return 0 } -func (p *GetLoginDataResponse) FastWriteNocopy(buf []byte, w thrift.NocopyWriter) int { +func (p *GetLoginDataResponse) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "GetLoginDataResponse") if p != nil { - offset += p.fastWriteField1(buf[offset:], w) - offset += p.fastWriteField2(buf[offset:], w) - offset += p.fastWriteField3(buf[offset:], w) + offset += p.fastWriteField1(buf[offset:], binaryWriter) + offset += p.fastWriteField2(buf[offset:], binaryWriter) + offset += p.fastWriteField3(buf[offset:], binaryWriter) } - offset += thrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) return offset } func (p *GetLoginDataResponse) BLength() int { l := 0 + l += bthrift.Binary.StructBeginLength("GetLoginDataResponse") if p != nil { l += p.field1Length() l += p.field2Length() l += p.field3Length() } - l += thrift.Binary.FieldStopLength() + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() return l } -func (p *GetLoginDataResponse) fastWriteField1(buf []byte, w thrift.NocopyWriter) int { +func (p *GetLoginDataResponse) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 - offset += thrift.Binary.WriteFieldBegin(buf[offset:], thrift.STRUCT, 1) - offset += p.Base.FastWriteNocopy(buf[offset:], w) + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "base", thrift.STRUCT, 1) + offset += p.Base.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) return offset } -func (p *GetLoginDataResponse) fastWriteField2(buf []byte, w thrift.NocopyWriter) int { +func (p *GetLoginDataResponse) fastWriteField2(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 - offset += thrift.Binary.WriteFieldBegin(buf[offset:], thrift.STRING, 2) - offset += thrift.Binary.WriteStringNocopy(buf[offset:], w, p.Id) + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "id", thrift.STRING, 2) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Id) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) return offset } -func (p *GetLoginDataResponse) fastWriteField3(buf []byte, w thrift.NocopyWriter) int { +func (p *GetLoginDataResponse) fastWriteField3(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 - offset += thrift.Binary.WriteFieldBegin(buf[offset:], thrift.LIST, 3) + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "cookies", thrift.LIST, 3) listBeginOffset := offset - offset += thrift.Binary.ListBeginLength() + offset += bthrift.Binary.ListBeginLength(thrift.STRING, 0) var length int for _, v := range p.Cookies { length++ - offset += thrift.Binary.WriteStringNocopy(buf[offset:], w, v) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, v) + } - thrift.Binary.WriteListBegin(buf[listBeginOffset:], thrift.STRING, length) + bthrift.Binary.WriteListBegin(buf[listBeginOffset:], thrift.STRING, length) + offset += bthrift.Binary.WriteListEnd(buf[offset:]) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) return offset } func (p *GetLoginDataResponse) field1Length() int { l := 0 - l += thrift.Binary.FieldBeginLength() + l += bthrift.Binary.FieldBeginLength("base", thrift.STRUCT, 1) l += p.Base.BLength() + l += bthrift.Binary.FieldEndLength() return l } func (p *GetLoginDataResponse) field2Length() int { l := 0 - l += thrift.Binary.FieldBeginLength() - l += thrift.Binary.StringLengthNocopy(p.Id) + l += bthrift.Binary.FieldBeginLength("id", thrift.STRING, 2) + l += bthrift.Binary.StringLengthNocopy(p.Id) + + l += bthrift.Binary.FieldEndLength() return l } func (p *GetLoginDataResponse) field3Length() int { l := 0 - l += thrift.Binary.FieldBeginLength() - l += thrift.Binary.ListBeginLength() + l += bthrift.Binary.FieldBeginLength("cookies", thrift.LIST, 3) + l += bthrift.Binary.ListBeginLength(thrift.STRING, len(p.Cookies)) for _, v := range p.Cookies { - _ = v - l += thrift.Binary.StringLengthNocopy(v) + l += bthrift.Binary.StringLengthNocopy(v) + + } + l += bthrift.Binary.ListEndLength() + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *GetValidateCodeRequest) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + var issetImage bool = false + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.STRING { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetImage = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + if !issetImage { + fieldId = 1 + goto RequiredFieldNotSetError + } + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_GetValidateCodeRequest[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +RequiredFieldNotSetError: + return offset, thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_GetValidateCodeRequest[fieldId])) +} + +func (p *GetValidateCodeRequest) FastReadField1(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.Image = v + + } + return offset, nil +} + +// for compatibility +func (p *GetValidateCodeRequest) FastWrite(buf []byte) int { + return 0 +} + +func (p *GetValidateCodeRequest) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "GetValidateCodeRequest") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *GetValidateCodeRequest) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("GetValidateCodeRequest") + if p != nil { + l += p.field1Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *GetValidateCodeRequest) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "image", thrift.STRING, 1) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Image) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *GetValidateCodeRequest) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("image", thrift.STRING, 1) + l += bthrift.Binary.StringLengthNocopy(p.Image) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *GetValidateCodeResponse) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 2: + if fieldTypeId == thrift.STRING { + l, err = p.FastReadField2(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_GetValidateCodeResponse[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *GetValidateCodeResponse) FastReadField1(buf []byte) (int, error) { + offset := 0 + + tmp := model.NewBaseResp() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Base = tmp + return offset, nil +} + +func (p *GetValidateCodeResponse) FastReadField2(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + p.Code = &v + + } + return offset, nil +} + +// for compatibility +func (p *GetValidateCodeResponse) FastWrite(buf []byte) int { + return 0 +} + +func (p *GetValidateCodeResponse) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "GetValidateCodeResponse") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + offset += p.fastWriteField2(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *GetValidateCodeResponse) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("GetValidateCodeResponse") + if p != nil { + l += p.field1Length() + l += p.field2Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *GetValidateCodeResponse) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "base", thrift.STRUCT, 1) + offset += p.Base.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *GetValidateCodeResponse) fastWriteField2(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetCode() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "code", thrift.STRING, 2) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, *p.Code) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *GetValidateCodeResponse) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("base", thrift.STRUCT, 1) + l += p.Base.BLength() + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *GetValidateCodeResponse) field2Length() int { + l := 0 + if p.IsSetCode() { + l += bthrift.Binary.FieldBeginLength("code", thrift.STRING, 2) + l += bthrift.Binary.StringLengthNocopy(*p.Code) + + l += bthrift.Binary.FieldEndLength() } return l } @@ -434,8 +830,14 @@ func (p *UserServiceGetLoginDataArgs) FastRead(buf []byte) (int, error) { var l int var fieldTypeId thrift.TType var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + for { - fieldTypeId, fieldId, l, err = thrift.Binary.ReadFieldBegin(buf[offset:]) + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) offset += l if err != nil { goto ReadFieldBeginError @@ -452,39 +854,57 @@ func (p *UserServiceGetLoginDataArgs) FastRead(buf []byte) (int, error) { goto ReadFieldError } } else { - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError } } default: - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError } } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError } return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) ReadFieldBeginError: return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) ReadFieldError: return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceGetLoginDataArgs[fieldId]), err) SkipFieldError: return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } func (p *UserServiceGetLoginDataArgs) FastReadField1(buf []byte) (int, error) { offset := 0 - _field := NewGetLoginDataRequest() - if l, err := _field.FastRead(buf[offset:]); err != nil { + + tmp := NewGetLoginDataRequest() + if l, err := tmp.FastRead(buf[offset:]); err != nil { return offset, err } else { offset += l } - p.Req = _field + p.Req = tmp return offset, nil } @@ -493,35 +913,41 @@ func (p *UserServiceGetLoginDataArgs) FastWrite(buf []byte) int { return 0 } -func (p *UserServiceGetLoginDataArgs) FastWriteNocopy(buf []byte, w thrift.NocopyWriter) int { +func (p *UserServiceGetLoginDataArgs) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "GetLoginData_args") if p != nil { - offset += p.fastWriteField1(buf[offset:], w) + offset += p.fastWriteField1(buf[offset:], binaryWriter) } - offset += thrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) return offset } func (p *UserServiceGetLoginDataArgs) BLength() int { l := 0 + l += bthrift.Binary.StructBeginLength("GetLoginData_args") if p != nil { l += p.field1Length() } - l += thrift.Binary.FieldStopLength() + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() return l } -func (p *UserServiceGetLoginDataArgs) fastWriteField1(buf []byte, w thrift.NocopyWriter) int { +func (p *UserServiceGetLoginDataArgs) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 - offset += thrift.Binary.WriteFieldBegin(buf[offset:], thrift.STRUCT, 1) - offset += p.Req.FastWriteNocopy(buf[offset:], w) + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "req", thrift.STRUCT, 1) + offset += p.Req.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) return offset } func (p *UserServiceGetLoginDataArgs) field1Length() int { l := 0 - l += thrift.Binary.FieldBeginLength() + l += bthrift.Binary.FieldBeginLength("req", thrift.STRUCT, 1) l += p.Req.BLength() + l += bthrift.Binary.FieldEndLength() return l } @@ -531,8 +957,14 @@ func (p *UserServiceGetLoginDataResult) FastRead(buf []byte) (int, error) { var l int var fieldTypeId thrift.TType var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + for { - fieldTypeId, fieldId, l, err = thrift.Binary.ReadFieldBegin(buf[offset:]) + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) offset += l if err != nil { goto ReadFieldBeginError @@ -549,39 +981,57 @@ func (p *UserServiceGetLoginDataResult) FastRead(buf []byte) (int, error) { goto ReadFieldError } } else { - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError } } default: - l, err = thrift.Binary.Skip(buf[offset:], fieldTypeId) + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) offset += l if err != nil { goto SkipFieldError } } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError } return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) ReadFieldBeginError: return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) ReadFieldError: return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceGetLoginDataResult[fieldId]), err) SkipFieldError: return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } func (p *UserServiceGetLoginDataResult) FastReadField0(buf []byte) (int, error) { offset := 0 - _field := NewGetLoginDataResponse() - if l, err := _field.FastRead(buf[offset:]); err != nil { + + tmp := NewGetLoginDataResponse() + if l, err := tmp.FastRead(buf[offset:]); err != nil { return offset, err } else { offset += l } - p.Success = _field + p.Success = tmp return offset, nil } @@ -590,29 +1040,34 @@ func (p *UserServiceGetLoginDataResult) FastWrite(buf []byte) int { return 0 } -func (p *UserServiceGetLoginDataResult) FastWriteNocopy(buf []byte, w thrift.NocopyWriter) int { +func (p *UserServiceGetLoginDataResult) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "GetLoginData_result") if p != nil { - offset += p.fastWriteField0(buf[offset:], w) + offset += p.fastWriteField0(buf[offset:], binaryWriter) } - offset += thrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) return offset } func (p *UserServiceGetLoginDataResult) BLength() int { l := 0 + l += bthrift.Binary.StructBeginLength("GetLoginData_result") if p != nil { l += p.field0Length() } - l += thrift.Binary.FieldStopLength() + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() return l } -func (p *UserServiceGetLoginDataResult) fastWriteField0(buf []byte, w thrift.NocopyWriter) int { +func (p *UserServiceGetLoginDataResult) fastWriteField0(buf []byte, binaryWriter bthrift.BinaryWriter) int { offset := 0 if p.IsSetSuccess() { - offset += thrift.Binary.WriteFieldBegin(buf[offset:], thrift.STRUCT, 0) - offset += p.Success.FastWriteNocopy(buf[offset:], w) + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "success", thrift.STRUCT, 0) + offset += p.Success.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) } return offset } @@ -620,8 +1075,267 @@ func (p *UserServiceGetLoginDataResult) fastWriteField0(buf []byte, w thrift.Noc func (p *UserServiceGetLoginDataResult) field0Length() int { l := 0 if p.IsSetSuccess() { - l += thrift.Binary.FieldBeginLength() + l += bthrift.Binary.FieldBeginLength("success", thrift.STRUCT, 0) l += p.Success.BLength() + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *UserServiceGetValidateCodeArgs) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceGetValidateCodeArgs[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *UserServiceGetValidateCodeArgs) FastReadField1(buf []byte) (int, error) { + offset := 0 + + tmp := NewGetValidateCodeRequest() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Req = tmp + return offset, nil +} + +// for compatibility +func (p *UserServiceGetValidateCodeArgs) FastWrite(buf []byte) int { + return 0 +} + +func (p *UserServiceGetValidateCodeArgs) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "GetValidateCode_args") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *UserServiceGetValidateCodeArgs) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("GetValidateCode_args") + if p != nil { + l += p.field1Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *UserServiceGetValidateCodeArgs) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "req", thrift.STRUCT, 1) + offset += p.Req.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *UserServiceGetValidateCodeArgs) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("req", thrift.STRUCT, 1) + l += p.Req.BLength() + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *UserServiceGetValidateCodeResult) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField0(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceGetValidateCodeResult[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *UserServiceGetValidateCodeResult) FastReadField0(buf []byte) (int, error) { + offset := 0 + + tmp := NewGetValidateCodeResponse() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Success = tmp + return offset, nil +} + +// for compatibility +func (p *UserServiceGetValidateCodeResult) FastWrite(buf []byte) int { + return 0 +} + +func (p *UserServiceGetValidateCodeResult) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "GetValidateCode_result") + if p != nil { + offset += p.fastWriteField0(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *UserServiceGetValidateCodeResult) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("GetValidateCode_result") + if p != nil { + l += p.field0Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *UserServiceGetValidateCodeResult) fastWriteField0(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetSuccess() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "success", thrift.STRUCT, 0) + offset += p.Success.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *UserServiceGetValidateCodeResult) field0Length() int { + l := 0 + if p.IsSetSuccess() { + l += bthrift.Binary.FieldBeginLength("success", thrift.STRUCT, 0) + l += p.Success.BLength() + l += bthrift.Binary.FieldEndLength() } return l } @@ -633,3 +1347,11 @@ func (p *UserServiceGetLoginDataArgs) GetFirstArgument() interface{} { func (p *UserServiceGetLoginDataResult) GetResult() interface{} { return p.Success } + +func (p *UserServiceGetValidateCodeArgs) GetFirstArgument() interface{} { + return p.Req +} + +func (p *UserServiceGetValidateCodeResult) GetResult() interface{} { + return p.Success +} diff --git a/kitex_gen/user/user.go b/kitex_gen/user/user.go index 8f60c43..569c1a8 100644 --- a/kitex_gen/user/user.go +++ b/kitex_gen/user/user.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -// Code generated by thriftgo (0.3.17). DO NOT EDIT. +// Code generated by thriftgo (0.3.13). DO NOT EDIT. package user @@ -23,7 +23,7 @@ import ( "fmt" "strings" - thrift "github.com/cloudwego/kitex/pkg/protocol/bthrift/apache" + "github.com/apache/thrift/lib/go/thrift" "github.com/west2-online/fzuhelper-server/kitex_gen/model" ) @@ -600,42 +600,982 @@ func (p *GetLoginDataResponse) Field3DeepEqual(src []string) bool { return true } +type GetValidateCodeRequest struct { + Image string `thrift:"image,1,required" frugal:"1,required,string" json:"image"` +} + +func NewGetValidateCodeRequest() *GetValidateCodeRequest { + return &GetValidateCodeRequest{} +} + +func (p *GetValidateCodeRequest) InitDefault() { +} + +func (p *GetValidateCodeRequest) GetImage() (v string) { + return p.Image +} +func (p *GetValidateCodeRequest) SetImage(val string) { + p.Image = val +} + +var fieldIDToName_GetValidateCodeRequest = map[int16]string{ + 1: "image", +} + +func (p *GetValidateCodeRequest) Read(iprot thrift.TProtocol) (err error) { + + var fieldTypeId thrift.TType + var fieldId int16 + var issetImage bool = false + + 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 + } + issetImage = true + } 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 + } + + if !issetImage { + fieldId = 1 + goto RequiredFieldNotSetError + } + 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_GetValidateCodeRequest[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) +RequiredFieldNotSetError: + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_GetValidateCodeRequest[fieldId])) +} + +func (p *GetValidateCodeRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Image = _field + return nil +} + +func (p *GetValidateCodeRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetValidateCodeRequest"); 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 *GetValidateCodeRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("image", thrift.STRING, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Image); 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 *GetValidateCodeRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("GetValidateCodeRequest(%+v)", *p) + +} + +func (p *GetValidateCodeRequest) DeepEqual(ano *GetValidateCodeRequest) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.Image) { + return false + } + return true +} + +func (p *GetValidateCodeRequest) Field1DeepEqual(src string) bool { + + if strings.Compare(p.Image, src) != 0 { + return false + } + return true +} + +type GetValidateCodeResponse struct { + Base *model.BaseResp `thrift:"base,1" frugal:"1,default,model.BaseResp" json:"base"` + Code *string `thrift:"code,2,optional" frugal:"2,optional,string" json:"code,omitempty"` +} + +func NewGetValidateCodeResponse() *GetValidateCodeResponse { + return &GetValidateCodeResponse{} +} + +func (p *GetValidateCodeResponse) InitDefault() { +} + +var GetValidateCodeResponse_Base_DEFAULT *model.BaseResp + +func (p *GetValidateCodeResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return GetValidateCodeResponse_Base_DEFAULT + } + return p.Base +} + +var GetValidateCodeResponse_Code_DEFAULT string + +func (p *GetValidateCodeResponse) GetCode() (v string) { + if !p.IsSetCode() { + return GetValidateCodeResponse_Code_DEFAULT + } + return *p.Code +} +func (p *GetValidateCodeResponse) SetBase(val *model.BaseResp) { + p.Base = val +} +func (p *GetValidateCodeResponse) SetCode(val *string) { + p.Code = val +} + +var fieldIDToName_GetValidateCodeResponse = map[int16]string{ + 1: "base", + 2: "code", +} + +func (p *GetValidateCodeResponse) IsSetBase() bool { + return p.Base != nil +} + +func (p *GetValidateCodeResponse) IsSetCode() bool { + return p.Code != nil +} + +func (p *GetValidateCodeResponse) 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 + } + 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_GetValidateCodeResponse[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 *GetValidateCodeResponse) ReadField1(iprot thrift.TProtocol) error { + _field := model.NewBaseResp() + if err := _field.Read(iprot); err != nil { + return err + } + p.Base = _field + return nil +} +func (p *GetValidateCodeResponse) ReadField2(iprot thrift.TProtocol) error { + + var _field *string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = &v + } + p.Code = _field + return nil +} + +func (p *GetValidateCodeResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetValidateCodeResponse"); 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 *GetValidateCodeResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Base.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 *GetValidateCodeResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetCode() { + if err = oprot.WriteFieldBegin("code", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(*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 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *GetValidateCodeResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("GetValidateCodeResponse(%+v)", *p) + +} + +func (p *GetValidateCodeResponse) DeepEqual(ano *GetValidateCodeResponse) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.Base) { + return false + } + if !p.Field2DeepEqual(ano.Code) { + return false + } + return true +} + +func (p *GetValidateCodeResponse) Field1DeepEqual(src *model.BaseResp) bool { + + if !p.Base.DeepEqual(src) { + return false + } + return true +} +func (p *GetValidateCodeResponse) Field2DeepEqual(src *string) bool { + + if p.Code == src { + return true + } else if p.Code == nil || src == nil { + return false + } + if strings.Compare(*p.Code, *src) != 0 { + return false + } + return true +} + type UserService interface { GetLoginData(ctx context.Context, req *GetLoginDataRequest) (r *GetLoginDataResponse, err error) + + GetValidateCode(ctx context.Context, req *GetValidateCodeRequest) (r *GetValidateCodeResponse, err error) +} + +type UserServiceClient struct { + c thrift.TClient +} + +func NewUserServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *UserServiceClient { + return &UserServiceClient{ + c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), + } +} + +func NewUserServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *UserServiceClient { + return &UserServiceClient{ + c: thrift.NewTStandardClient(iprot, oprot), + } +} + +func NewUserServiceClient(c thrift.TClient) *UserServiceClient { + return &UserServiceClient{ + c: c, + } +} + +func (p *UserServiceClient) Client_() thrift.TClient { + return p.c +} + +func (p *UserServiceClient) GetLoginData(ctx context.Context, req *GetLoginDataRequest) (r *GetLoginDataResponse, err error) { + var _args UserServiceGetLoginDataArgs + _args.Req = req + var _result UserServiceGetLoginDataResult + if err = p.Client_().Call(ctx, "GetLoginData", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *UserServiceClient) GetValidateCode(ctx context.Context, req *GetValidateCodeRequest) (r *GetValidateCodeResponse, err error) { + var _args UserServiceGetValidateCodeArgs + _args.Req = req + var _result UserServiceGetValidateCodeResult + if err = p.Client_().Call(ctx, "GetValidateCode", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} + +type UserServiceProcessor struct { + processorMap map[string]thrift.TProcessorFunction + handler UserService +} + +func (p *UserServiceProcessor) AddToProcessorMap(key string, processor thrift.TProcessorFunction) { + p.processorMap[key] = processor +} + +func (p *UserServiceProcessor) GetProcessorFunction(key string) (processor thrift.TProcessorFunction, ok bool) { + processor, ok = p.processorMap[key] + return processor, ok +} + +func (p *UserServiceProcessor) ProcessorMap() map[string]thrift.TProcessorFunction { + return p.processorMap +} + +func NewUserServiceProcessor(handler UserService) *UserServiceProcessor { + self := &UserServiceProcessor{handler: handler, processorMap: make(map[string]thrift.TProcessorFunction)} + self.AddToProcessorMap("GetLoginData", &userServiceProcessorGetLoginData{handler: handler}) + self.AddToProcessorMap("GetValidateCode", &userServiceProcessorGetValidateCode{handler: handler}) + return self +} +func (p *UserServiceProcessor) Process(ctx context.Context, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + name, _, seqId, err := iprot.ReadMessageBegin() + if err != nil { + return false, err + } + if processor, ok := p.GetProcessorFunction(name); ok { + return processor.Process(ctx, seqId, iprot, oprot) + } + iprot.Skip(thrift.STRUCT) + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.UNKNOWN_METHOD, "Unknown function "+name) + oprot.WriteMessageBegin(name, thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, x +} + +type userServiceProcessorGetLoginData struct { + handler UserService +} + +func (p *userServiceProcessorGetLoginData) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := UserServiceGetLoginDataArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("GetLoginData", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := UserServiceGetLoginDataResult{} + var retval *GetLoginDataResponse + if retval, err2 = p.handler.GetLoginData(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetLoginData: "+err2.Error()) + oprot.WriteMessageBegin("GetLoginData", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("GetLoginData", 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 userServiceProcessorGetValidateCode struct { + handler UserService +} + +func (p *userServiceProcessorGetValidateCode) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := UserServiceGetValidateCodeArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("GetValidateCode", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := UserServiceGetValidateCodeResult{} + var retval *GetValidateCodeResponse + if retval, err2 = p.handler.GetValidateCode(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetValidateCode: "+err2.Error()) + oprot.WriteMessageBegin("GetValidateCode", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("GetValidateCode", 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 UserServiceGetLoginDataArgs struct { + Req *GetLoginDataRequest `thrift:"req,1" frugal:"1,default,GetLoginDataRequest" json:"req"` +} + +func NewUserServiceGetLoginDataArgs() *UserServiceGetLoginDataArgs { + return &UserServiceGetLoginDataArgs{} +} + +func (p *UserServiceGetLoginDataArgs) InitDefault() { +} + +var UserServiceGetLoginDataArgs_Req_DEFAULT *GetLoginDataRequest + +func (p *UserServiceGetLoginDataArgs) GetReq() (v *GetLoginDataRequest) { + if !p.IsSetReq() { + return UserServiceGetLoginDataArgs_Req_DEFAULT + } + return p.Req +} +func (p *UserServiceGetLoginDataArgs) SetReq(val *GetLoginDataRequest) { + p.Req = val +} + +var fieldIDToName_UserServiceGetLoginDataArgs = map[int16]string{ + 1: "req", +} + +func (p *UserServiceGetLoginDataArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *UserServiceGetLoginDataArgs) 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_UserServiceGetLoginDataArgs[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 *UserServiceGetLoginDataArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewGetLoginDataRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *UserServiceGetLoginDataArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetLoginData_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 *UserServiceGetLoginDataArgs) 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) } -type UserServiceGetLoginDataArgs struct { - Req *GetLoginDataRequest `thrift:"req,1" frugal:"1,default,GetLoginDataRequest" json:"req"` +func (p *UserServiceGetLoginDataArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("UserServiceGetLoginDataArgs(%+v)", *p) + } -func NewUserServiceGetLoginDataArgs() *UserServiceGetLoginDataArgs { - return &UserServiceGetLoginDataArgs{} +func (p *UserServiceGetLoginDataArgs) DeepEqual(ano *UserServiceGetLoginDataArgs) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.Req) { + return false + } + return true } -func (p *UserServiceGetLoginDataArgs) InitDefault() { +func (p *UserServiceGetLoginDataArgs) Field1DeepEqual(src *GetLoginDataRequest) bool { + + if !p.Req.DeepEqual(src) { + return false + } + return true } -var UserServiceGetLoginDataArgs_Req_DEFAULT *GetLoginDataRequest +type UserServiceGetLoginDataResult struct { + Success *GetLoginDataResponse `thrift:"success,0,optional" frugal:"0,optional,GetLoginDataResponse" json:"success,omitempty"` +} -func (p *UserServiceGetLoginDataArgs) GetReq() (v *GetLoginDataRequest) { +func NewUserServiceGetLoginDataResult() *UserServiceGetLoginDataResult { + return &UserServiceGetLoginDataResult{} +} + +func (p *UserServiceGetLoginDataResult) InitDefault() { +} + +var UserServiceGetLoginDataResult_Success_DEFAULT *GetLoginDataResponse + +func (p *UserServiceGetLoginDataResult) GetSuccess() (v *GetLoginDataResponse) { + if !p.IsSetSuccess() { + return UserServiceGetLoginDataResult_Success_DEFAULT + } + return p.Success +} +func (p *UserServiceGetLoginDataResult) SetSuccess(x interface{}) { + p.Success = x.(*GetLoginDataResponse) +} + +var fieldIDToName_UserServiceGetLoginDataResult = map[int16]string{ + 0: "success", +} + +func (p *UserServiceGetLoginDataResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *UserServiceGetLoginDataResult) 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_UserServiceGetLoginDataResult[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 *UserServiceGetLoginDataResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewGetLoginDataResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *UserServiceGetLoginDataResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetLoginData_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 *UserServiceGetLoginDataResult) 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 *UserServiceGetLoginDataResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("UserServiceGetLoginDataResult(%+v)", *p) + +} + +func (p *UserServiceGetLoginDataResult) DeepEqual(ano *UserServiceGetLoginDataResult) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field0DeepEqual(ano.Success) { + return false + } + return true +} + +func (p *UserServiceGetLoginDataResult) Field0DeepEqual(src *GetLoginDataResponse) bool { + + if !p.Success.DeepEqual(src) { + return false + } + return true +} + +type UserServiceGetValidateCodeArgs struct { + Req *GetValidateCodeRequest `thrift:"req,1" frugal:"1,default,GetValidateCodeRequest" json:"req"` +} + +func NewUserServiceGetValidateCodeArgs() *UserServiceGetValidateCodeArgs { + return &UserServiceGetValidateCodeArgs{} +} + +func (p *UserServiceGetValidateCodeArgs) InitDefault() { +} + +var UserServiceGetValidateCodeArgs_Req_DEFAULT *GetValidateCodeRequest + +func (p *UserServiceGetValidateCodeArgs) GetReq() (v *GetValidateCodeRequest) { if !p.IsSetReq() { - return UserServiceGetLoginDataArgs_Req_DEFAULT + return UserServiceGetValidateCodeArgs_Req_DEFAULT } return p.Req } -func (p *UserServiceGetLoginDataArgs) SetReq(val *GetLoginDataRequest) { +func (p *UserServiceGetValidateCodeArgs) SetReq(val *GetValidateCodeRequest) { p.Req = val } -var fieldIDToName_UserServiceGetLoginDataArgs = map[int16]string{ +var fieldIDToName_UserServiceGetValidateCodeArgs = map[int16]string{ 1: "req", } -func (p *UserServiceGetLoginDataArgs) IsSetReq() bool { +func (p *UserServiceGetValidateCodeArgs) IsSetReq() bool { return p.Req != nil } -func (p *UserServiceGetLoginDataArgs) Read(iprot thrift.TProtocol) (err error) { +func (p *UserServiceGetValidateCodeArgs) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -681,7 +1621,7 @@ ReadStructBeginError: 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_UserServiceGetLoginDataArgs[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceGetValidateCodeArgs[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -691,8 +1631,8 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *UserServiceGetLoginDataArgs) ReadField1(iprot thrift.TProtocol) error { - _field := NewGetLoginDataRequest() +func (p *UserServiceGetValidateCodeArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewGetValidateCodeRequest() if err := _field.Read(iprot); err != nil { return err } @@ -700,9 +1640,9 @@ func (p *UserServiceGetLoginDataArgs) ReadField1(iprot thrift.TProtocol) error { return nil } -func (p *UserServiceGetLoginDataArgs) Write(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetValidateCodeArgs) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetLoginData_args"); err != nil { + if err = oprot.WriteStructBegin("GetValidateCode_args"); err != nil { goto WriteStructBeginError } if p != nil { @@ -728,7 +1668,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *UserServiceGetLoginDataArgs) writeField1(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetValidateCodeArgs) writeField1(oprot thrift.TProtocol) (err error) { if err = oprot.WriteFieldBegin("req", thrift.STRUCT, 1); err != nil { goto WriteFieldBeginError } @@ -745,15 +1685,15 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *UserServiceGetLoginDataArgs) String() string { +func (p *UserServiceGetValidateCodeArgs) String() string { if p == nil { return "" } - return fmt.Sprintf("UserServiceGetLoginDataArgs(%+v)", *p) + return fmt.Sprintf("UserServiceGetValidateCodeArgs(%+v)", *p) } -func (p *UserServiceGetLoginDataArgs) DeepEqual(ano *UserServiceGetLoginDataArgs) bool { +func (p *UserServiceGetValidateCodeArgs) DeepEqual(ano *UserServiceGetValidateCodeArgs) bool { if p == ano { return true } else if p == nil || ano == nil { @@ -765,7 +1705,7 @@ func (p *UserServiceGetLoginDataArgs) DeepEqual(ano *UserServiceGetLoginDataArgs return true } -func (p *UserServiceGetLoginDataArgs) Field1DeepEqual(src *GetLoginDataRequest) bool { +func (p *UserServiceGetValidateCodeArgs) Field1DeepEqual(src *GetValidateCodeRequest) bool { if !p.Req.DeepEqual(src) { return false @@ -773,38 +1713,38 @@ func (p *UserServiceGetLoginDataArgs) Field1DeepEqual(src *GetLoginDataRequest) return true } -type UserServiceGetLoginDataResult struct { - Success *GetLoginDataResponse `thrift:"success,0,optional" frugal:"0,optional,GetLoginDataResponse" json:"success,omitempty"` +type UserServiceGetValidateCodeResult struct { + Success *GetValidateCodeResponse `thrift:"success,0,optional" frugal:"0,optional,GetValidateCodeResponse" json:"success,omitempty"` } -func NewUserServiceGetLoginDataResult() *UserServiceGetLoginDataResult { - return &UserServiceGetLoginDataResult{} +func NewUserServiceGetValidateCodeResult() *UserServiceGetValidateCodeResult { + return &UserServiceGetValidateCodeResult{} } -func (p *UserServiceGetLoginDataResult) InitDefault() { +func (p *UserServiceGetValidateCodeResult) InitDefault() { } -var UserServiceGetLoginDataResult_Success_DEFAULT *GetLoginDataResponse +var UserServiceGetValidateCodeResult_Success_DEFAULT *GetValidateCodeResponse -func (p *UserServiceGetLoginDataResult) GetSuccess() (v *GetLoginDataResponse) { +func (p *UserServiceGetValidateCodeResult) GetSuccess() (v *GetValidateCodeResponse) { if !p.IsSetSuccess() { - return UserServiceGetLoginDataResult_Success_DEFAULT + return UserServiceGetValidateCodeResult_Success_DEFAULT } return p.Success } -func (p *UserServiceGetLoginDataResult) SetSuccess(x interface{}) { - p.Success = x.(*GetLoginDataResponse) +func (p *UserServiceGetValidateCodeResult) SetSuccess(x interface{}) { + p.Success = x.(*GetValidateCodeResponse) } -var fieldIDToName_UserServiceGetLoginDataResult = map[int16]string{ +var fieldIDToName_UserServiceGetValidateCodeResult = map[int16]string{ 0: "success", } -func (p *UserServiceGetLoginDataResult) IsSetSuccess() bool { +func (p *UserServiceGetValidateCodeResult) IsSetSuccess() bool { return p.Success != nil } -func (p *UserServiceGetLoginDataResult) Read(iprot thrift.TProtocol) (err error) { +func (p *UserServiceGetValidateCodeResult) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -850,7 +1790,7 @@ ReadStructBeginError: 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_UserServiceGetLoginDataResult[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceGetValidateCodeResult[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -860,8 +1800,8 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *UserServiceGetLoginDataResult) ReadField0(iprot thrift.TProtocol) error { - _field := NewGetLoginDataResponse() +func (p *UserServiceGetValidateCodeResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewGetValidateCodeResponse() if err := _field.Read(iprot); err != nil { return err } @@ -869,9 +1809,9 @@ func (p *UserServiceGetLoginDataResult) ReadField0(iprot thrift.TProtocol) error return nil } -func (p *UserServiceGetLoginDataResult) Write(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetValidateCodeResult) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetLoginData_result"); err != nil { + if err = oprot.WriteStructBegin("GetValidateCode_result"); err != nil { goto WriteStructBeginError } if p != nil { @@ -897,7 +1837,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *UserServiceGetLoginDataResult) writeField0(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetValidateCodeResult) writeField0(oprot thrift.TProtocol) (err error) { if p.IsSetSuccess() { if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { goto WriteFieldBeginError @@ -916,15 +1856,15 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) } -func (p *UserServiceGetLoginDataResult) String() string { +func (p *UserServiceGetValidateCodeResult) String() string { if p == nil { return "" } - return fmt.Sprintf("UserServiceGetLoginDataResult(%+v)", *p) + return fmt.Sprintf("UserServiceGetValidateCodeResult(%+v)", *p) } -func (p *UserServiceGetLoginDataResult) DeepEqual(ano *UserServiceGetLoginDataResult) bool { +func (p *UserServiceGetValidateCodeResult) DeepEqual(ano *UserServiceGetValidateCodeResult) bool { if p == ano { return true } else if p == nil || ano == nil { @@ -936,7 +1876,7 @@ func (p *UserServiceGetLoginDataResult) DeepEqual(ano *UserServiceGetLoginDataRe return true } -func (p *UserServiceGetLoginDataResult) Field0DeepEqual(src *GetLoginDataResponse) bool { +func (p *UserServiceGetValidateCodeResult) Field0DeepEqual(src *GetValidateCodeResponse) bool { if !p.Success.DeepEqual(src) { return false diff --git a/kitex_gen/user/userservice/client.go b/kitex_gen/user/userservice/client.go index 8af163a..66f9beb 100644 --- a/kitex_gen/user/userservice/client.go +++ b/kitex_gen/user/userservice/client.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -// Code generated by Kitex v0.11.3. DO NOT EDIT. +// Code generated by Kitex v0.9.1. DO NOT EDIT. package userservice @@ -30,6 +30,7 @@ import ( // Client is designed to provide IDL-compatible methods with call-option parameter for kitex framework. type Client interface { GetLoginData(ctx context.Context, req *user.GetLoginDataRequest, callOptions ...callopt.Option) (r *user.GetLoginDataResponse, err error) + GetValidateCode(ctx context.Context, req *user.GetValidateCodeRequest, callOptions ...callopt.Option) (r *user.GetValidateCodeResponse, err error) } // NewClient creates a client for the service defined in IDL. @@ -65,3 +66,8 @@ func (p *kUserServiceClient) GetLoginData(ctx context.Context, req *user.GetLogi ctx = client.NewCtxWithCallOptions(ctx, callOptions) return p.kClient.GetLoginData(ctx, req) } + +func (p *kUserServiceClient) GetValidateCode(ctx context.Context, req *user.GetValidateCodeRequest, callOptions ...callopt.Option) (r *user.GetValidateCodeResponse, err error) { + ctx = client.NewCtxWithCallOptions(ctx, callOptions) + return p.kClient.GetValidateCode(ctx, req) +} diff --git a/kitex_gen/user/userservice/invoker.go b/kitex_gen/user/userservice/invoker.go new file mode 100644 index 0000000..46d3336 --- /dev/null +++ b/kitex_gen/user/userservice/invoker.go @@ -0,0 +1,41 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by Kitex v0.9.1. DO NOT EDIT. + +package userservice + +import ( + server "github.com/cloudwego/kitex/server" + + user "github.com/west2-online/fzuhelper-server/kitex_gen/user" +) + +// NewInvoker creates a server.Invoker with the given handler and options. +func NewInvoker(handler user.UserService, opts ...server.Option) server.Invoker { + var options []server.Option + + options = append(options, opts...) + + s := server.NewInvoker(options...) + if err := s.RegisterService(serviceInfo(), handler); err != nil { + panic(err) + } + if err := s.Init(); err != nil { + panic(err) + } + return s +} diff --git a/kitex_gen/user/userservice/server.go b/kitex_gen/user/userservice/server.go index 715d358..13ef686 100644 --- a/kitex_gen/user/userservice/server.go +++ b/kitex_gen/user/userservice/server.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -// Code generated by Kitex v0.11.3. DO NOT EDIT. +// Code generated by Kitex v0.9.1. DO NOT EDIT. package userservice import ( diff --git a/kitex_gen/user/userservice/userservice.go b/kitex_gen/user/userservice/userservice.go index 220fb25..a8dd970 100644 --- a/kitex_gen/user/userservice/userservice.go +++ b/kitex_gen/user/userservice/userservice.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -// Code generated by Kitex v0.11.3. DO NOT EDIT. +// Code generated by Kitex v0.9.1. DO NOT EDIT. package userservice @@ -38,6 +38,13 @@ var serviceMethods = map[string]kitex.MethodInfo{ false, kitex.WithStreamingMode(kitex.StreamingNone), ), + "GetValidateCode": kitex.NewMethodInfo( + getValidateCodeHandler, + newUserServiceGetValidateCodeArgs, + newUserServiceGetValidateCodeResult, + false, + kitex.WithStreamingMode(kitex.StreamingNone), + ), } var ( @@ -51,12 +58,12 @@ func serviceInfo() *kitex.ServiceInfo { return userServiceServiceInfo } -// for stream client +// for client func serviceInfoForStreamClient() *kitex.ServiceInfo { return userServiceServiceInfoForStreamClient } -// for client +// for stream client func serviceInfoForClient() *kitex.ServiceInfo { return userServiceServiceInfoForClient } @@ -98,7 +105,7 @@ func newServiceInfo(hasStreaming bool, keepStreamingMethods bool, keepNonStreami HandlerType: handlerType, Methods: methods, PayloadCodec: kitex.Thrift, - KiteXGenVersion: "v0.11.3", + KiteXGenVersion: "v0.9.1", Extra: extra, } return svcInfo @@ -122,6 +129,24 @@ func newUserServiceGetLoginDataResult() interface{} { return user.NewUserServiceGetLoginDataResult() } +func getValidateCodeHandler(ctx context.Context, handler interface{}, arg, result interface{}) error { + realArg := arg.(*user.UserServiceGetValidateCodeArgs) + realResult := result.(*user.UserServiceGetValidateCodeResult) + success, err := handler.(user.UserService).GetValidateCode(ctx, realArg.Req) + if err != nil { + return err + } + realResult.Success = success + return nil +} +func newUserServiceGetValidateCodeArgs() interface{} { + return user.NewUserServiceGetValidateCodeArgs() +} + +func newUserServiceGetValidateCodeResult() interface{} { + return user.NewUserServiceGetValidateCodeResult() +} + type kClient struct { c client.Client } @@ -141,3 +166,13 @@ func (p *kClient) GetLoginData(ctx context.Context, req *user.GetLoginDataReques } return _result.GetSuccess(), nil } + +func (p *kClient) GetValidateCode(ctx context.Context, req *user.GetValidateCodeRequest) (r *user.GetValidateCodeResponse, err error) { + var _args user.UserServiceGetValidateCodeArgs + _args.Req = req + var _result user.UserServiceGetValidateCodeResult + if err = p.c.Call(ctx, "GetValidateCode", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} From 196200e78ab8e3b7701d6e261dd1ab111643f98d Mon Sep 17 00:00:00 2001 From: FantasyRL <1845983502@qq.com> Date: Thu, 17 Oct 2024 20:45:23 +0800 Subject: [PATCH 08/19] refactor:api of launch_screen --- Makefile | 2 +- .../biz/handler/api/launch_screen_service.go | 316 + cmd/api/biz/model/api/api.go | 7262 ++++++++++++++- cmd/api/biz/model/model/model.go | 845 +- cmd/api/biz/pack/launch_screen.go | 50 + cmd/api/biz/router/api/api.go | 15 + cmd/api/biz/router/api/middleware.go | 55 + cmd/api/biz/rpc/init.go | 9 +- cmd/api/biz/rpc/launch_screen.go | 163 + cmd/launch_screen/build.sh | 26 + cmd/launch_screen/handler.go | 66 + cmd/launch_screen/kitex_info.yaml | 3 + cmd/launch_screen/main.go | 32 + cmd/launch_screen/script/bootstrap.sh | 35 + config/config.go | 2 + config/types.go | 9 +- idl/api.thrift | 104 + idl/launch_screen.thrift | 110 + idl/model.thrift | 18 + kitex_gen/launch_screen/k-consts.go | 20 + kitex_gen/launch_screen/k-launch_screen.go | 5796 ++++++++++++ kitex_gen/launch_screen/launch_screen.go | 7787 +++++++++++++++++ .../launchscreenservice/client.go | 153 + .../launchscreenservice/invoker.go | 41 + .../launchscreenservice.go | 431 + .../launchscreenservice/server.go | 42 + kitex_gen/model/k-model.go | 811 ++ kitex_gen/model/model.go | 1037 +++ pkg/client/db.go | 41 + pkg/client/rpc.go | 32 + pkg/constants/constants.go | 26 +- pkg/errno/default.go | 10 + pkg/upcloud/upcloud.go | 81 + pkg/utils/utils.go | 97 + 34 files changed, 25106 insertions(+), 421 deletions(-) create mode 100644 cmd/api/biz/handler/api/launch_screen_service.go create mode 100644 cmd/api/biz/pack/launch_screen.go create mode 100644 cmd/api/biz/rpc/launch_screen.go create mode 100644 cmd/launch_screen/build.sh create mode 100644 cmd/launch_screen/handler.go create mode 100644 cmd/launch_screen/kitex_info.yaml create mode 100644 cmd/launch_screen/main.go create mode 100644 cmd/launch_screen/script/bootstrap.sh create mode 100644 idl/launch_screen.thrift create mode 100644 kitex_gen/launch_screen/k-consts.go create mode 100644 kitex_gen/launch_screen/k-launch_screen.go create mode 100644 kitex_gen/launch_screen/launch_screen.go create mode 100644 kitex_gen/launch_screen/launchscreenservice/client.go create mode 100644 kitex_gen/launch_screen/launchscreenservice/invoker.go create mode 100644 kitex_gen/launch_screen/launchscreenservice/launchscreenservice.go create mode 100644 kitex_gen/launch_screen/launchscreenservice/server.go create mode 100644 pkg/upcloud/upcloud.go diff --git a/Makefile b/Makefile index 4a55655..f7b8a06 100644 --- a/Makefile +++ b/Makefile @@ -17,7 +17,7 @@ OUTPUT_PATH = $(DIR)/output API_PATH= $(DIR)/cmd/api # 服务名 -SERVICES := api user classroom +SERVICES := api user classroom launch_screen service = $(word 1, $@) PREFIX = "[Makefile]" diff --git a/cmd/api/biz/handler/api/launch_screen_service.go b/cmd/api/biz/handler/api/launch_screen_service.go new file mode 100644 index 0000000..d01cfdd --- /dev/null +++ b/cmd/api/biz/handler/api/launch_screen_service.go @@ -0,0 +1,316 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by hertz generator. + +package api + +import ( + "context" + + "github.com/west2-online/fzuhelper-server/cmd/api/biz/pack" + "github.com/west2-online/fzuhelper-server/cmd/api/biz/rpc" + "github.com/west2-online/fzuhelper-server/kitex_gen/launch_screen" + "github.com/west2-online/fzuhelper-server/pkg/errno" + "github.com/west2-online/fzuhelper-server/pkg/logger" + "github.com/west2-online/fzuhelper-server/pkg/utils" + + "github.com/cloudwego/hertz/pkg/app" + + api "github.com/west2-online/fzuhelper-server/cmd/api/biz/model/api" +) + +// CreateImage . +// @Summary CreateImage +// @Description create launch_screen image +// @Accept json/form +// @Produce json +// @Param type query int true "1为空,2为页面跳转,3为app跳转" +// @Param duration query int false "展示时间" +// @Param href query string false "链接" +// @Param image formData file true "图片" +// @Param start_at query int true "开始time(时间戳)" +// @Param end_at query int true "结束time(时间戳)" +// @Param s_type query int true "类型" +// @Param frequency query int false "一天展示次数" +// @Param start_time query int true "每日起始hour" +// @Param end_time query int true "每日结束hour" +// @Param text query string true "描述" +// @Param regex query int true "regex" +// @router /launch_screen/api/image [POST] +func CreateImage(ctx context.Context, c *app.RequestContext) { + var err error + var req api.CreateImageRequest + err = c.BindAndValidate(&req) + if err != nil { + logger.Errorf("api.CreateImage: BindAndValidate error %v", err) + pack.RespError(c, errno.ParamError.WithError(err)) + return + } + imageFile, err := c.FormFile("image") + if err != nil { + pack.RespError(c, errno.ParamError.WithError(err)) + return + } + + resp := new(api.CreateImageResponse) + + if !utils.IsAllowImageFile(imageFile) { + pack.RespError(c, errno.SuffixError) + return + } + + imageByte, err := utils.FileToByteArray(imageFile) + if err != nil { + pack.RespError(c, errno.BizError) + return + } + + respImage, err := rpc.CreateImageRPC(ctx, &launch_screen.CreateImageRequest{ + PicType: req.PicType, + Duration: req.Duration, + Href: req.Href, + StartAt: req.StartAt, + EndAt: req.EndAt, + SType: req.SType, + Frequency: req.Frequency, + StartTime: req.StartTime, + EndTime: req.EndTime, + Text: req.Text, + Regex: req.Regex, + BufferCount: int64(len(imageByte)), + }, imageByte) + if err != nil { + pack.RespError(c, err) + return + } + resp.Picture = pack.BuildLaunchScreen(respImage) + pack.RespData(c, resp.Picture) +} + +// GetImage . +// @Summary GetImage +// @Description get image +// @Accept json/form +// @Produce json +// @Param picture_id query int true "图片id" +// @router /launch_screen/api/image [GET] +func GetImage(ctx context.Context, c *app.RequestContext) { + var err error + var req api.GetImageRequest + err = c.BindAndValidate(&req) + if err != nil { + logger.Errorf("api.GetImage: BindAndValidate error %v", err) + pack.RespError(c, errno.ParamError.WithError(err)) + return + } + + resp := new(api.GetImageResponse) + + respImage, err := rpc.GetImageRPC(ctx, &launch_screen.GetImageRequest{ + PictureId: req.PictureID, + }) + if err != nil { + pack.RespError(c, err) + return + } + resp.Picture = pack.BuildLaunchScreen(respImage) + pack.RespData(c, resp.Picture) +} + +// ChangeImageProperty . +// @Summary ChangeImageProperty +// @Description change image's properties +// @Accept json/form +// @Produce json +// @Param picture_id query int true "图片id" +// @Param type query int true "1为空,2为页面跳转,3为app跳转" +// @Param duration query int false "展示时间" +// @Param href query string false "链接" +// @Param start_at query int true "开始time(时间戳)" +// @Param end_at query int true "结束time(时间戳)" +// @Param s_type query int true "类型" +// @Param frequency query int false "一天展示次数" +// @Param start_time query int true "每日起始hour" +// @Param end_time query int true "每日结束hour" +// @Param text query string true "描述" +// @Param regex query int true "regex" +// @router /launch_screen/api/image [PUT] +func ChangeImageProperty(ctx context.Context, c *app.RequestContext) { + var err error + var req api.ChangeImagePropertyRequest + err = c.BindAndValidate(&req) + if err != nil { + logger.Errorf("api.ChangeImageProperty: BindAndValidate error %v", err) + pack.RespError(c, errno.ParamError.WithError(err)) + return + } + + resp := new(api.ChangeImagePropertyResponse) + + respImage, err := rpc.ChangeImagePropertyRPC(ctx, &launch_screen.ChangeImagePropertyRequest{ + PictureId: req.PictureID, + PicType: req.Type, + Duration: req.Duration, + Href: req.Href, + StartAt: req.StartAt, + EndAt: req.EndAt, + SType: req.SType, + Frequency: req.Frequency, + StartTime: req.StartTime, + EndTime: req.EndTime, + Text: req.Text, + Regex: req.Regex, + }) + if err != nil { + pack.RespError(c, err) + return + } + resp.Picture = pack.BuildLaunchScreen(respImage) + pack.RespData(c, resp.Picture) +} + +// ChangeImage . +// @Summary ChangeImage +// @Description change image +// @Accept json/form +// @Produce json +// @Param picture_id query int true "图片id" +// @Param image formData file true "图片" +// @Param stu_id query int true "学生id" +// @router /launch_screen/api/image/img [PUT] +func ChangeImage(ctx context.Context, c *app.RequestContext) { + var err error + var req api.ChangeImageRequest + err = c.BindAndValidate(&req) + if err != nil { + logger.Errorf("api.ChangeImage: BindAndValidate error %v", err) + pack.RespError(c, errno.ParamError.WithError(err)) + return + } + imageFile, err := c.FormFile("image") + if err != nil { + pack.RespError(c, errno.ParamError.WithError(err)) + return + } + resp := new(api.ChangeImageResponse) + + if !utils.IsAllowImageFile(imageFile) { + pack.RespError(c, errno.SuffixError) + return + } + + imageByte, err := utils.FileToByteArray(imageFile) + if err != nil { + pack.RespError(c, errno.BizError) + return + } + + respImage, err := rpc.ChangeImageRPC(ctx, &launch_screen.ChangeImageRequest{ + PictureId: req.PictureID, + BufferCount: int64(len(imageByte)), + }, imageByte) + if err != nil { + pack.RespError(c, err) + return + } + resp.Picture = pack.BuildLaunchScreen(respImage) + pack.RespData(c, resp.Picture) +} + +// DeleteImage . +// @Summary DeleteImage +// @Description delete image +// @Accept json/form +// @Produce json +// @Param picture_id query int true "图片id" +// @router /launch_screen/api/image [DELETE] +func DeleteImage(ctx context.Context, c *app.RequestContext) { + var err error + var req api.DeleteImageRequest + err = c.BindAndValidate(&req) + if err != nil { + logger.Errorf("api.DeleteImage: BindAndValidate error %v", err) + pack.RespError(c, errno.ParamError.WithError(err)) + return + } + + _, err = rpc.DeleteImageRPC(ctx, &launch_screen.DeleteImageRequest{ + PictureId: req.PictureID, + }) + if err != nil { + pack.RespError(c, err) + return + } + pack.RespSuccess(c) +} + +// MobileGetImage . +// @router /launch_screen/api/screen [GET] +func MobileGetImage(ctx context.Context, c *app.RequestContext) { + var err error + var req api.MobileGetImageRequest + err = c.BindAndValidate(&req) + if err != nil { + logger.Errorf("api.MobileGetImage: BindAndValidate error %v", err) + pack.RespError(c, errno.ParamError.WithError(err)) + return + } + + resp := new(api.MobileGetImageResponse) + + respImageList, cnt, err := rpc.MobileGetImageRPC(ctx, &launch_screen.MobileGetImageRequest{ + SType: req.Type, + StudentId: req.StudentID, + College: req.College, + Device: req.Device, + }) + if err != nil { + pack.RespError(c, err) + return + } + resp.Count = cnt + resp.PictureList = pack.BuildLaunchScreenList(respImageList) + + pack.RespList(c, resp.PictureList) +} + +// AddImagePointTime . +// @Summary AddImagePointTime +// @Description add image point time(for frontend) +// @Accept json/form +// @Produce json +// @Param picture_id query int true "图片id" +// @router /launch_screen/api/image/point [GET] +func AddImagePointTime(ctx context.Context, c *app.RequestContext) { + var err error + var req api.AddImagePointTimeRequest + err = c.BindAndValidate(&req) + if err != nil { + logger.Errorf("api.AddImagePointTime: BindAndValidate error %v", err) + pack.RespError(c, errno.ParamError.WithError(err)) + return + } + + _, err = rpc.AddImagePointTimeRPC(ctx, &launch_screen.AddImagePointTimeRequest{ + PictureId: req.PictureID, + }) + if err != nil { + pack.RespError(c, err) + return + } + pack.RespSuccess(c) +} diff --git a/cmd/api/biz/model/api/api.go b/cmd/api/biz/model/api/api.go index 9160230..4aab692 100644 --- a/cmd/api/biz/model/api/api.go +++ b/cmd/api/biz/model/api/api.go @@ -1278,215 +1278,6805 @@ func (p *GetValidateCodeResponse) String() string { } +// launch_screen +type CreateImageRequest struct { + PicType int64 `thrift:"pic_type,1,required" form:"pic_type,required" json:"pic_type,required" query:"pic_type,required"` + Duration *int64 `thrift:"duration,2,optional" form:"duration" json:"duration,omitempty" query:"duration"` + Href *string `thrift:"href,3,optional" form:"href" json:"href,omitempty" query:"href"` + Image []byte `thrift:"image,4" form:"image" json:"image" query:"image"` + StartAt int64 `thrift:"start_at,5,required" form:"start_at,required" json:"start_at,required" query:"start_at,required"` + EndAt int64 `thrift:"end_at,6,required" form:"end_at,required" json:"end_at,required" query:"end_at,required"` + SType int64 `thrift:"s_type,7,required" form:"s_type,required" json:"s_type,required" query:"s_type,required"` + Frequency int64 `thrift:"frequency,8,required" form:"frequency,required" json:"frequency,required" query:"frequency,required"` + StartTime int64 `thrift:"start_time,9,required" form:"start_time,required" json:"start_time,required" query:"start_time,required"` + EndTime int64 `thrift:"end_time,10,required" form:"end_time,required" json:"end_time,required" query:"end_time,required"` + Text string `thrift:"text,11,required" form:"text,required" json:"text,required" query:"text,required"` + Regex string `thrift:"regex,12,required" form:"regex,required" json:"regex,required" query:"regex,required"` +} + +func NewCreateImageRequest() *CreateImageRequest { + return &CreateImageRequest{} +} + +func (p *CreateImageRequest) InitDefault() { +} + +func (p *CreateImageRequest) GetPicType() (v int64) { + return p.PicType +} + +var CreateImageRequest_Duration_DEFAULT int64 + +func (p *CreateImageRequest) GetDuration() (v int64) { + if !p.IsSetDuration() { + return CreateImageRequest_Duration_DEFAULT + } + return *p.Duration +} + +var CreateImageRequest_Href_DEFAULT string + +func (p *CreateImageRequest) GetHref() (v string) { + if !p.IsSetHref() { + return CreateImageRequest_Href_DEFAULT + } + return *p.Href +} + +func (p *CreateImageRequest) GetImage() (v []byte) { + return p.Image +} + +func (p *CreateImageRequest) GetStartAt() (v int64) { + return p.StartAt +} + +func (p *CreateImageRequest) GetEndAt() (v int64) { + return p.EndAt +} + +func (p *CreateImageRequest) GetSType() (v int64) { + return p.SType +} + +func (p *CreateImageRequest) GetFrequency() (v int64) { + return p.Frequency +} + +func (p *CreateImageRequest) GetStartTime() (v int64) { + return p.StartTime +} + +func (p *CreateImageRequest) GetEndTime() (v int64) { + return p.EndTime +} + +func (p *CreateImageRequest) GetText() (v string) { + return p.Text +} + +func (p *CreateImageRequest) GetRegex() (v string) { + return p.Regex +} + +var fieldIDToName_CreateImageRequest = map[int16]string{ + 1: "pic_type", + 2: "duration", + 3: "href", + 4: "image", + 5: "start_at", + 6: "end_at", + 7: "s_type", + 8: "frequency", + 9: "start_time", + 10: "end_time", + 11: "text", + 12: "regex", +} + +func (p *CreateImageRequest) IsSetDuration() bool { + return p.Duration != nil +} + +func (p *CreateImageRequest) IsSetHref() bool { + return p.Href != nil +} + +func (p *CreateImageRequest) Read(iprot thrift.TProtocol) (err error) { + + var fieldTypeId thrift.TType + var fieldId int16 + var issetPicType bool = false + var issetStartAt bool = false + var issetEndAt bool = false + var issetSType bool = false + var issetFrequency bool = false + var issetStartTime bool = false + var issetEndTime bool = false + var issetText bool = false + var issetRegex bool = false + + 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.I64 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + issetPicType = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.I64 { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.STRING { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 4: + if fieldTypeId == thrift.STRING { + if err = p.ReadField4(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 5: + if fieldTypeId == thrift.I64 { + if err = p.ReadField5(iprot); err != nil { + goto ReadFieldError + } + issetStartAt = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 6: + if fieldTypeId == thrift.I64 { + if err = p.ReadField6(iprot); err != nil { + goto ReadFieldError + } + issetEndAt = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 7: + if fieldTypeId == thrift.I64 { + if err = p.ReadField7(iprot); err != nil { + goto ReadFieldError + } + issetSType = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 8: + if fieldTypeId == thrift.I64 { + if err = p.ReadField8(iprot); err != nil { + goto ReadFieldError + } + issetFrequency = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 9: + if fieldTypeId == thrift.I64 { + if err = p.ReadField9(iprot); err != nil { + goto ReadFieldError + } + issetStartTime = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 10: + if fieldTypeId == thrift.I64 { + if err = p.ReadField10(iprot); err != nil { + goto ReadFieldError + } + issetEndTime = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 11: + if fieldTypeId == thrift.STRING { + if err = p.ReadField11(iprot); err != nil { + goto ReadFieldError + } + issetText = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 12: + if fieldTypeId == thrift.STRING { + if err = p.ReadField12(iprot); err != nil { + goto ReadFieldError + } + issetRegex = true + } 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 + } + + if !issetPicType { + fieldId = 1 + goto RequiredFieldNotSetError + } + + if !issetStartAt { + fieldId = 5 + goto RequiredFieldNotSetError + } + + if !issetEndAt { + fieldId = 6 + goto RequiredFieldNotSetError + } + + if !issetSType { + fieldId = 7 + goto RequiredFieldNotSetError + } + + if !issetFrequency { + fieldId = 8 + goto RequiredFieldNotSetError + } + + if !issetStartTime { + fieldId = 9 + goto RequiredFieldNotSetError + } + + if !issetEndTime { + fieldId = 10 + goto RequiredFieldNotSetError + } + + if !issetText { + fieldId = 11 + goto RequiredFieldNotSetError + } + + if !issetRegex { + fieldId = 12 + goto RequiredFieldNotSetError + } + 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_CreateImageRequest[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) +RequiredFieldNotSetError: + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_CreateImageRequest[fieldId])) +} + +func (p *CreateImageRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.PicType = _field + return nil +} +func (p *CreateImageRequest) ReadField2(iprot thrift.TProtocol) error { + + var _field *int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = &v + } + p.Duration = _field + return nil +} +func (p *CreateImageRequest) ReadField3(iprot thrift.TProtocol) error { + + var _field *string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = &v + } + p.Href = _field + return nil +} +func (p *CreateImageRequest) ReadField4(iprot thrift.TProtocol) error { + + var _field []byte + if v, err := iprot.ReadBinary(); err != nil { + return err + } else { + _field = []byte(v) + } + p.Image = _field + return nil +} +func (p *CreateImageRequest) ReadField5(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.StartAt = _field + return nil +} +func (p *CreateImageRequest) ReadField6(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.EndAt = _field + return nil +} +func (p *CreateImageRequest) ReadField7(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.SType = _field + return nil +} +func (p *CreateImageRequest) ReadField8(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.Frequency = _field + return nil +} +func (p *CreateImageRequest) ReadField9(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.StartTime = _field + return nil +} +func (p *CreateImageRequest) ReadField10(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.EndTime = _field + return nil +} +func (p *CreateImageRequest) ReadField11(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Text = _field + return nil +} +func (p *CreateImageRequest) ReadField12(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Regex = _field + return nil +} + +func (p *CreateImageRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("CreateImageRequest"); 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 = p.writeField5(oprot); err != nil { + fieldId = 5 + goto WriteFieldError + } + if err = p.writeField6(oprot); err != nil { + fieldId = 6 + goto WriteFieldError + } + if err = p.writeField7(oprot); err != nil { + fieldId = 7 + goto WriteFieldError + } + if err = p.writeField8(oprot); err != nil { + fieldId = 8 + goto WriteFieldError + } + if err = p.writeField9(oprot); err != nil { + fieldId = 9 + goto WriteFieldError + } + if err = p.writeField10(oprot); err != nil { + fieldId = 10 + goto WriteFieldError + } + if err = p.writeField11(oprot); err != nil { + fieldId = 11 + goto WriteFieldError + } + if err = p.writeField12(oprot); err != nil { + fieldId = 12 + 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 *CreateImageRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("pic_type", thrift.I64, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.PicType); 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 *CreateImageRequest) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetDuration() { + if err = oprot.WriteFieldBegin("duration", thrift.I64, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(*p.Duration); 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 *CreateImageRequest) writeField3(oprot thrift.TProtocol) (err error) { + if p.IsSetHref() { + if err = oprot.WriteFieldBegin("href", thrift.STRING, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(*p.Href); 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 *CreateImageRequest) writeField4(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("image", thrift.STRING, 4); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteBinary([]byte(p.Image)); 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 *CreateImageRequest) writeField5(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("start_at", thrift.I64, 5); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.StartAt); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 5 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 5 end error: ", p), err) +} + +func (p *CreateImageRequest) writeField6(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("end_at", thrift.I64, 6); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.EndAt); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 6 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 6 end error: ", p), err) +} + +func (p *CreateImageRequest) writeField7(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("s_type", thrift.I64, 7); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.SType); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 7 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 7 end error: ", p), err) +} + +func (p *CreateImageRequest) writeField8(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("frequency", thrift.I64, 8); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.Frequency); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 8 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 8 end error: ", p), err) +} + +func (p *CreateImageRequest) writeField9(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("start_time", thrift.I64, 9); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.StartTime); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 9 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 9 end error: ", p), err) +} + +func (p *CreateImageRequest) writeField10(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("end_time", thrift.I64, 10); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.EndTime); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 10 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 10 end error: ", p), err) +} + +func (p *CreateImageRequest) writeField11(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("text", thrift.STRING, 11); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Text); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 11 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 11 end error: ", p), err) +} + +func (p *CreateImageRequest) writeField12(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("regex", thrift.STRING, 12); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Regex); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 12 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 12 end error: ", p), err) +} + +func (p *CreateImageRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("CreateImageRequest(%+v)", *p) + +} + +type CreateImageResponse struct { + Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` + Picture *model.Picture `thrift:"picture,2,optional" form:"picture" json:"picture,omitempty" query:"picture"` +} + +func NewCreateImageResponse() *CreateImageResponse { + return &CreateImageResponse{} +} + +func (p *CreateImageResponse) InitDefault() { +} + +var CreateImageResponse_Base_DEFAULT *model.BaseResp + +func (p *CreateImageResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return CreateImageResponse_Base_DEFAULT + } + return p.Base +} + +var CreateImageResponse_Picture_DEFAULT *model.Picture + +func (p *CreateImageResponse) GetPicture() (v *model.Picture) { + if !p.IsSetPicture() { + return CreateImageResponse_Picture_DEFAULT + } + return p.Picture +} + +var fieldIDToName_CreateImageResponse = map[int16]string{ + 1: "base", + 2: "picture", +} + +func (p *CreateImageResponse) IsSetBase() bool { + return p.Base != nil +} + +func (p *CreateImageResponse) IsSetPicture() bool { + return p.Picture != nil +} + +func (p *CreateImageResponse) 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 + } + case 2: + if fieldTypeId == thrift.STRUCT { + 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_CreateImageResponse[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 *CreateImageResponse) ReadField1(iprot thrift.TProtocol) error { + _field := model.NewBaseResp() + if err := _field.Read(iprot); err != nil { + return err + } + p.Base = _field + return nil +} +func (p *CreateImageResponse) ReadField2(iprot thrift.TProtocol) error { + _field := model.NewPicture() + if err := _field.Read(iprot); err != nil { + return err + } + p.Picture = _field + return nil +} + +func (p *CreateImageResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("CreateImageResponse"); 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 *CreateImageResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Base.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 *CreateImageResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetPicture() { + if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { + goto WriteFieldBeginError + } + if err := p.Picture.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 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *CreateImageResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("CreateImageResponse(%+v)", *p) + +} + +type GetImageRequest struct { + PictureID int64 `thrift:"picture_id,1,required" form:"picture_id,required" json:"picture_id,required" query:"picture_id,required"` +} + +func NewGetImageRequest() *GetImageRequest { + return &GetImageRequest{} +} + +func (p *GetImageRequest) InitDefault() { +} + +func (p *GetImageRequest) GetPictureID() (v int64) { + return p.PictureID +} + +var fieldIDToName_GetImageRequest = map[int16]string{ + 1: "picture_id", +} + +func (p *GetImageRequest) Read(iprot thrift.TProtocol) (err error) { + + var fieldTypeId thrift.TType + var fieldId int16 + var issetPictureID bool = false + + 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.I64 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + issetPictureID = true + } 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 + } + + if !issetPictureID { + fieldId = 1 + goto RequiredFieldNotSetError + } + 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_GetImageRequest[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) +RequiredFieldNotSetError: + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_GetImageRequest[fieldId])) +} + +func (p *GetImageRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.PictureID = _field + return nil +} + +func (p *GetImageRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetImageRequest"); 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 *GetImageRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("picture_id", thrift.I64, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.PictureID); 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 *GetImageRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("GetImageRequest(%+v)", *p) + +} + +type GetImageResponse struct { + Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` + Picture *model.Picture `thrift:"picture,2,optional" form:"picture" json:"picture,omitempty" query:"picture"` +} + +func NewGetImageResponse() *GetImageResponse { + return &GetImageResponse{} +} + +func (p *GetImageResponse) InitDefault() { +} + +var GetImageResponse_Base_DEFAULT *model.BaseResp + +func (p *GetImageResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return GetImageResponse_Base_DEFAULT + } + return p.Base +} + +var GetImageResponse_Picture_DEFAULT *model.Picture + +func (p *GetImageResponse) GetPicture() (v *model.Picture) { + if !p.IsSetPicture() { + return GetImageResponse_Picture_DEFAULT + } + return p.Picture +} + +var fieldIDToName_GetImageResponse = map[int16]string{ + 1: "base", + 2: "picture", +} + +func (p *GetImageResponse) IsSetBase() bool { + return p.Base != nil +} + +func (p *GetImageResponse) IsSetPicture() bool { + return p.Picture != nil +} + +func (p *GetImageResponse) 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 + } + case 2: + if fieldTypeId == thrift.STRUCT { + 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_GetImageResponse[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 *GetImageResponse) ReadField1(iprot thrift.TProtocol) error { + _field := model.NewBaseResp() + if err := _field.Read(iprot); err != nil { + return err + } + p.Base = _field + return nil +} +func (p *GetImageResponse) ReadField2(iprot thrift.TProtocol) error { + _field := model.NewPicture() + if err := _field.Read(iprot); err != nil { + return err + } + p.Picture = _field + return nil +} + +func (p *GetImageResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetImageResponse"); 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 *GetImageResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Base.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 *GetImageResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetPicture() { + if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { + goto WriteFieldBeginError + } + if err := p.Picture.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 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *GetImageResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("GetImageResponse(%+v)", *p) + +} + +type ChangeImagePropertyRequest struct { + //1为空,2为页面跳转,3为app跳转 + Type int64 `thrift:"type,1,required" form:"type,required" json:"type,required" query:"type,required"` + Duration *int64 `thrift:"duration,2,optional" form:"duration" json:"duration,omitempty" query:"duration"` + //连接 + Href *string `thrift:"href,3,optional" form:"href" json:"href,omitempty" query:"href"` + StartAt int64 `thrift:"start_at,4,required" form:"start_at,required" json:"start_at,required" query:"start_at,required"` + EndAt int64 `thrift:"end_at,5,required" form:"end_at,required" json:"end_at,required" query:"end_at,required"` + SType int64 `thrift:"s_type,6,required" form:"s_type,required" json:"s_type,required" query:"s_type,required"` + Frequency int64 `thrift:"frequency,7,required" form:"frequency,required" json:"frequency,required" query:"frequency,required"` + //比如6表示6点 + StartTime int64 `thrift:"start_time,8,required" form:"start_time,required" json:"start_time,required" query:"start_time,required"` + EndTime int64 `thrift:"end_time,9,required" form:"end_time,required" json:"end_time,required" query:"end_time,required"` + //描述图片 + Text string `thrift:"text,10,required" form:"text,required" json:"text,required" query:"text,required"` + PictureID int64 `thrift:"picture_id,11,required" form:"picture_id,required" json:"picture_id,required" query:"picture_id,required"` + Regex string `thrift:"regex,12,required" form:"regex,required" json:"regex,required" query:"regex,required"` +} + +func NewChangeImagePropertyRequest() *ChangeImagePropertyRequest { + return &ChangeImagePropertyRequest{} +} + +func (p *ChangeImagePropertyRequest) InitDefault() { +} + +func (p *ChangeImagePropertyRequest) GetType() (v int64) { + return p.Type +} + +var ChangeImagePropertyRequest_Duration_DEFAULT int64 + +func (p *ChangeImagePropertyRequest) GetDuration() (v int64) { + if !p.IsSetDuration() { + return ChangeImagePropertyRequest_Duration_DEFAULT + } + return *p.Duration +} + +var ChangeImagePropertyRequest_Href_DEFAULT string + +func (p *ChangeImagePropertyRequest) GetHref() (v string) { + if !p.IsSetHref() { + return ChangeImagePropertyRequest_Href_DEFAULT + } + return *p.Href +} + +func (p *ChangeImagePropertyRequest) GetStartAt() (v int64) { + return p.StartAt +} + +func (p *ChangeImagePropertyRequest) GetEndAt() (v int64) { + return p.EndAt +} + +func (p *ChangeImagePropertyRequest) GetSType() (v int64) { + return p.SType +} + +func (p *ChangeImagePropertyRequest) GetFrequency() (v int64) { + return p.Frequency +} + +func (p *ChangeImagePropertyRequest) GetStartTime() (v int64) { + return p.StartTime +} + +func (p *ChangeImagePropertyRequest) GetEndTime() (v int64) { + return p.EndTime +} + +func (p *ChangeImagePropertyRequest) GetText() (v string) { + return p.Text +} + +func (p *ChangeImagePropertyRequest) GetPictureID() (v int64) { + return p.PictureID +} + +func (p *ChangeImagePropertyRequest) GetRegex() (v string) { + return p.Regex +} + +var fieldIDToName_ChangeImagePropertyRequest = map[int16]string{ + 1: "type", + 2: "duration", + 3: "href", + 4: "start_at", + 5: "end_at", + 6: "s_type", + 7: "frequency", + 8: "start_time", + 9: "end_time", + 10: "text", + 11: "picture_id", + 12: "regex", +} + +func (p *ChangeImagePropertyRequest) IsSetDuration() bool { + return p.Duration != nil +} + +func (p *ChangeImagePropertyRequest) IsSetHref() bool { + return p.Href != nil +} + +func (p *ChangeImagePropertyRequest) Read(iprot thrift.TProtocol) (err error) { + + var fieldTypeId thrift.TType + var fieldId int16 + var issetType bool = false + var issetStartAt bool = false + var issetEndAt bool = false + var issetSType bool = false + var issetFrequency bool = false + var issetStartTime bool = false + var issetEndTime bool = false + var issetText bool = false + var issetPictureID bool = false + var issetRegex bool = false + + 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.I64 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + issetType = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.I64 { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.STRING { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 4: + if fieldTypeId == thrift.I64 { + if err = p.ReadField4(iprot); err != nil { + goto ReadFieldError + } + issetStartAt = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 5: + if fieldTypeId == thrift.I64 { + if err = p.ReadField5(iprot); err != nil { + goto ReadFieldError + } + issetEndAt = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 6: + if fieldTypeId == thrift.I64 { + if err = p.ReadField6(iprot); err != nil { + goto ReadFieldError + } + issetSType = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 7: + if fieldTypeId == thrift.I64 { + if err = p.ReadField7(iprot); err != nil { + goto ReadFieldError + } + issetFrequency = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 8: + if fieldTypeId == thrift.I64 { + if err = p.ReadField8(iprot); err != nil { + goto ReadFieldError + } + issetStartTime = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 9: + if fieldTypeId == thrift.I64 { + if err = p.ReadField9(iprot); err != nil { + goto ReadFieldError + } + issetEndTime = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 10: + if fieldTypeId == thrift.STRING { + if err = p.ReadField10(iprot); err != nil { + goto ReadFieldError + } + issetText = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 11: + if fieldTypeId == thrift.I64 { + if err = p.ReadField11(iprot); err != nil { + goto ReadFieldError + } + issetPictureID = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 12: + if fieldTypeId == thrift.STRING { + if err = p.ReadField12(iprot); err != nil { + goto ReadFieldError + } + issetRegex = true + } 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 + } + + if !issetType { + fieldId = 1 + goto RequiredFieldNotSetError + } + + if !issetStartAt { + fieldId = 4 + goto RequiredFieldNotSetError + } + + if !issetEndAt { + fieldId = 5 + goto RequiredFieldNotSetError + } + + if !issetSType { + fieldId = 6 + goto RequiredFieldNotSetError + } + + if !issetFrequency { + fieldId = 7 + goto RequiredFieldNotSetError + } + + if !issetStartTime { + fieldId = 8 + goto RequiredFieldNotSetError + } + + if !issetEndTime { + fieldId = 9 + goto RequiredFieldNotSetError + } + + if !issetText { + fieldId = 10 + goto RequiredFieldNotSetError + } + + if !issetPictureID { + fieldId = 11 + goto RequiredFieldNotSetError + } + + if !issetRegex { + fieldId = 12 + goto RequiredFieldNotSetError + } + 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_ChangeImagePropertyRequest[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) +RequiredFieldNotSetError: + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_ChangeImagePropertyRequest[fieldId])) +} + +func (p *ChangeImagePropertyRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.Type = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField2(iprot thrift.TProtocol) error { + + var _field *int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = &v + } + p.Duration = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField3(iprot thrift.TProtocol) error { + + var _field *string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = &v + } + p.Href = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField4(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.StartAt = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField5(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.EndAt = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField6(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.SType = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField7(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.Frequency = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField8(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.StartTime = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField9(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.EndTime = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField10(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Text = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField11(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.PictureID = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField12(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Regex = _field + return nil +} + +func (p *ChangeImagePropertyRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ChangeImagePropertyRequest"); 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 = p.writeField5(oprot); err != nil { + fieldId = 5 + goto WriteFieldError + } + if err = p.writeField6(oprot); err != nil { + fieldId = 6 + goto WriteFieldError + } + if err = p.writeField7(oprot); err != nil { + fieldId = 7 + goto WriteFieldError + } + if err = p.writeField8(oprot); err != nil { + fieldId = 8 + goto WriteFieldError + } + if err = p.writeField9(oprot); err != nil { + fieldId = 9 + goto WriteFieldError + } + if err = p.writeField10(oprot); err != nil { + fieldId = 10 + goto WriteFieldError + } + if err = p.writeField11(oprot); err != nil { + fieldId = 11 + goto WriteFieldError + } + if err = p.writeField12(oprot); err != nil { + fieldId = 12 + 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 *ChangeImagePropertyRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("type", thrift.I64, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.Type); 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 *ChangeImagePropertyRequest) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetDuration() { + if err = oprot.WriteFieldBegin("duration", thrift.I64, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(*p.Duration); 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 *ChangeImagePropertyRequest) writeField3(oprot thrift.TProtocol) (err error) { + if p.IsSetHref() { + if err = oprot.WriteFieldBegin("href", thrift.STRING, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(*p.Href); 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 *ChangeImagePropertyRequest) writeField4(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("start_at", thrift.I64, 4); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.StartAt); 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 *ChangeImagePropertyRequest) writeField5(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("end_at", thrift.I64, 5); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.EndAt); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 5 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 5 end error: ", p), err) +} + +func (p *ChangeImagePropertyRequest) writeField6(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("s_type", thrift.I64, 6); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.SType); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 6 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 6 end error: ", p), err) +} + +func (p *ChangeImagePropertyRequest) writeField7(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("frequency", thrift.I64, 7); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.Frequency); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 7 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 7 end error: ", p), err) +} + +func (p *ChangeImagePropertyRequest) writeField8(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("start_time", thrift.I64, 8); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.StartTime); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 8 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 8 end error: ", p), err) +} + +func (p *ChangeImagePropertyRequest) writeField9(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("end_time", thrift.I64, 9); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.EndTime); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 9 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 9 end error: ", p), err) +} + +func (p *ChangeImagePropertyRequest) writeField10(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("text", thrift.STRING, 10); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Text); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 10 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 10 end error: ", p), err) +} + +func (p *ChangeImagePropertyRequest) writeField11(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("picture_id", thrift.I64, 11); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.PictureID); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 11 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 11 end error: ", p), err) +} + +func (p *ChangeImagePropertyRequest) writeField12(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("regex", thrift.STRING, 12); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Regex); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 12 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 12 end error: ", p), err) +} + +func (p *ChangeImagePropertyRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ChangeImagePropertyRequest(%+v)", *p) + +} + +type ChangeImagePropertyResponse struct { + Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` + Picture *model.Picture `thrift:"picture,2,optional" form:"picture" json:"picture,omitempty" query:"picture"` +} + +func NewChangeImagePropertyResponse() *ChangeImagePropertyResponse { + return &ChangeImagePropertyResponse{} +} + +func (p *ChangeImagePropertyResponse) InitDefault() { +} + +var ChangeImagePropertyResponse_Base_DEFAULT *model.BaseResp + +func (p *ChangeImagePropertyResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return ChangeImagePropertyResponse_Base_DEFAULT + } + return p.Base +} + +var ChangeImagePropertyResponse_Picture_DEFAULT *model.Picture + +func (p *ChangeImagePropertyResponse) GetPicture() (v *model.Picture) { + if !p.IsSetPicture() { + return ChangeImagePropertyResponse_Picture_DEFAULT + } + return p.Picture +} + +var fieldIDToName_ChangeImagePropertyResponse = map[int16]string{ + 1: "base", + 2: "picture", +} + +func (p *ChangeImagePropertyResponse) IsSetBase() bool { + return p.Base != nil +} + +func (p *ChangeImagePropertyResponse) IsSetPicture() bool { + return p.Picture != nil +} + +func (p *ChangeImagePropertyResponse) 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 + } + case 2: + if fieldTypeId == thrift.STRUCT { + 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_ChangeImagePropertyResponse[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 *ChangeImagePropertyResponse) ReadField1(iprot thrift.TProtocol) error { + _field := model.NewBaseResp() + if err := _field.Read(iprot); err != nil { + return err + } + p.Base = _field + return nil +} +func (p *ChangeImagePropertyResponse) ReadField2(iprot thrift.TProtocol) error { + _field := model.NewPicture() + if err := _field.Read(iprot); err != nil { + return err + } + p.Picture = _field + return nil +} + +func (p *ChangeImagePropertyResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ChangeImagePropertyResponse"); 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 *ChangeImagePropertyResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Base.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 *ChangeImagePropertyResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetPicture() { + if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { + goto WriteFieldBeginError + } + if err := p.Picture.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 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *ChangeImagePropertyResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ChangeImagePropertyResponse(%+v)", *p) + +} + +type ChangeImageRequest struct { + PictureID int64 `thrift:"picture_id,1,required" form:"picture_id,required" json:"picture_id,required" query:"picture_id,required"` + Image []byte `thrift:"image,2" form:"image" json:"image" query:"image"` +} + +func NewChangeImageRequest() *ChangeImageRequest { + return &ChangeImageRequest{} +} + +func (p *ChangeImageRequest) InitDefault() { +} + +func (p *ChangeImageRequest) GetPictureID() (v int64) { + return p.PictureID +} + +func (p *ChangeImageRequest) GetImage() (v []byte) { + return p.Image +} + +var fieldIDToName_ChangeImageRequest = map[int16]string{ + 1: "picture_id", + 2: "image", +} + +func (p *ChangeImageRequest) Read(iprot thrift.TProtocol) (err error) { + + var fieldTypeId thrift.TType + var fieldId int16 + var issetPictureID bool = false + + 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.I64 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + issetPictureID = true + } 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 + } + + if !issetPictureID { + fieldId = 1 + goto RequiredFieldNotSetError + } + 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_ChangeImageRequest[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) +RequiredFieldNotSetError: + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_ChangeImageRequest[fieldId])) +} + +func (p *ChangeImageRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.PictureID = _field + return nil +} +func (p *ChangeImageRequest) ReadField2(iprot thrift.TProtocol) error { + + var _field []byte + if v, err := iprot.ReadBinary(); err != nil { + return err + } else { + _field = []byte(v) + } + p.Image = _field + return nil +} + +func (p *ChangeImageRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ChangeImageRequest"); 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 *ChangeImageRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("picture_id", thrift.I64, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.PictureID); 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 *ChangeImageRequest) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("image", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteBinary([]byte(p.Image)); 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 *ChangeImageRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ChangeImageRequest(%+v)", *p) + +} + +type ChangeImageResponse struct { + Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` + Picture *model.Picture `thrift:"picture,2,optional" form:"picture" json:"picture,omitempty" query:"picture"` +} + +func NewChangeImageResponse() *ChangeImageResponse { + return &ChangeImageResponse{} +} + +func (p *ChangeImageResponse) InitDefault() { +} + +var ChangeImageResponse_Base_DEFAULT *model.BaseResp + +func (p *ChangeImageResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return ChangeImageResponse_Base_DEFAULT + } + return p.Base +} + +var ChangeImageResponse_Picture_DEFAULT *model.Picture + +func (p *ChangeImageResponse) GetPicture() (v *model.Picture) { + if !p.IsSetPicture() { + return ChangeImageResponse_Picture_DEFAULT + } + return p.Picture +} + +var fieldIDToName_ChangeImageResponse = map[int16]string{ + 1: "base", + 2: "picture", +} + +func (p *ChangeImageResponse) IsSetBase() bool { + return p.Base != nil +} + +func (p *ChangeImageResponse) IsSetPicture() bool { + return p.Picture != nil +} + +func (p *ChangeImageResponse) 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 + } + case 2: + if fieldTypeId == thrift.STRUCT { + 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_ChangeImageResponse[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 *ChangeImageResponse) ReadField1(iprot thrift.TProtocol) error { + _field := model.NewBaseResp() + if err := _field.Read(iprot); err != nil { + return err + } + p.Base = _field + return nil +} +func (p *ChangeImageResponse) ReadField2(iprot thrift.TProtocol) error { + _field := model.NewPicture() + if err := _field.Read(iprot); err != nil { + return err + } + p.Picture = _field + return nil +} + +func (p *ChangeImageResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ChangeImageResponse"); 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 *ChangeImageResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Base.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 *ChangeImageResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetPicture() { + if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { + goto WriteFieldBeginError + } + if err := p.Picture.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 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *ChangeImageResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ChangeImageResponse(%+v)", *p) + +} + +type DeleteImageRequest struct { + PictureID int64 `thrift:"picture_id,1,required" form:"picture_id,required" json:"picture_id,required" query:"picture_id,required"` +} + +func NewDeleteImageRequest() *DeleteImageRequest { + return &DeleteImageRequest{} +} + +func (p *DeleteImageRequest) InitDefault() { +} + +func (p *DeleteImageRequest) GetPictureID() (v int64) { + return p.PictureID +} + +var fieldIDToName_DeleteImageRequest = map[int16]string{ + 1: "picture_id", +} + +func (p *DeleteImageRequest) Read(iprot thrift.TProtocol) (err error) { + + var fieldTypeId thrift.TType + var fieldId int16 + var issetPictureID bool = false + + 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.I64 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + issetPictureID = true + } 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 + } + + if !issetPictureID { + fieldId = 1 + goto RequiredFieldNotSetError + } + 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_DeleteImageRequest[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) +RequiredFieldNotSetError: + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_DeleteImageRequest[fieldId])) +} + +func (p *DeleteImageRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.PictureID = _field + return nil +} + +func (p *DeleteImageRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("DeleteImageRequest"); 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 *DeleteImageRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("picture_id", thrift.I64, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.PictureID); 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 *DeleteImageRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("DeleteImageRequest(%+v)", *p) + +} + +type DeleteImageResponse struct { + Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` + Picture *model.Picture `thrift:"picture,2,optional" form:"picture" json:"picture,omitempty" query:"picture"` +} + +func NewDeleteImageResponse() *DeleteImageResponse { + return &DeleteImageResponse{} +} + +func (p *DeleteImageResponse) InitDefault() { +} + +var DeleteImageResponse_Base_DEFAULT *model.BaseResp + +func (p *DeleteImageResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return DeleteImageResponse_Base_DEFAULT + } + return p.Base +} + +var DeleteImageResponse_Picture_DEFAULT *model.Picture + +func (p *DeleteImageResponse) GetPicture() (v *model.Picture) { + if !p.IsSetPicture() { + return DeleteImageResponse_Picture_DEFAULT + } + return p.Picture +} + +var fieldIDToName_DeleteImageResponse = map[int16]string{ + 1: "base", + 2: "picture", +} + +func (p *DeleteImageResponse) IsSetBase() bool { + return p.Base != nil +} + +func (p *DeleteImageResponse) IsSetPicture() bool { + return p.Picture != nil +} + +func (p *DeleteImageResponse) 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 + } + case 2: + if fieldTypeId == thrift.STRUCT { + 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_DeleteImageResponse[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 *DeleteImageResponse) ReadField1(iprot thrift.TProtocol) error { + _field := model.NewBaseResp() + if err := _field.Read(iprot); err != nil { + return err + } + p.Base = _field + return nil +} +func (p *DeleteImageResponse) ReadField2(iprot thrift.TProtocol) error { + _field := model.NewPicture() + if err := _field.Read(iprot); err != nil { + return err + } + p.Picture = _field + return nil +} + +func (p *DeleteImageResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("DeleteImageResponse"); 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 *DeleteImageResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Base.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 *DeleteImageResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetPicture() { + if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { + goto WriteFieldBeginError + } + if err := p.Picture.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 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *DeleteImageResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("DeleteImageResponse(%+v)", *p) + +} + +type MobileGetImageRequest struct { + Type int64 `thrift:"type,1,required" form:"type,required" json:"type,required" query:"type,required"` + StudentID int64 `thrift:"student_id,2,required" form:"student_id,required" json:"student_id,required" query:"student_id,required"` + College *string `thrift:"college,3,optional" form:"college" json:"college,omitempty" query:"college"` + Device string `thrift:"device,4,required" form:"device,required" json:"device,required" query:"device,required"` +} + +func NewMobileGetImageRequest() *MobileGetImageRequest { + return &MobileGetImageRequest{} +} + +func (p *MobileGetImageRequest) InitDefault() { +} + +func (p *MobileGetImageRequest) GetType() (v int64) { + return p.Type +} + +func (p *MobileGetImageRequest) GetStudentID() (v int64) { + return p.StudentID +} + +var MobileGetImageRequest_College_DEFAULT string + +func (p *MobileGetImageRequest) GetCollege() (v string) { + if !p.IsSetCollege() { + return MobileGetImageRequest_College_DEFAULT + } + return *p.College +} + +func (p *MobileGetImageRequest) GetDevice() (v string) { + return p.Device +} + +var fieldIDToName_MobileGetImageRequest = map[int16]string{ + 1: "type", + 2: "student_id", + 3: "college", + 4: "device", +} + +func (p *MobileGetImageRequest) IsSetCollege() bool { + return p.College != nil +} + +func (p *MobileGetImageRequest) Read(iprot thrift.TProtocol) (err error) { + + var fieldTypeId thrift.TType + var fieldId int16 + var issetType bool = false + var issetStudentID bool = false + var issetDevice bool = false + + 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.I64 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + issetType = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.I64 { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + issetStudentID = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.STRING { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 4: + if fieldTypeId == thrift.STRING { + if err = p.ReadField4(iprot); err != nil { + goto ReadFieldError + } + issetDevice = true + } 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 + } + + if !issetType { + fieldId = 1 + goto RequiredFieldNotSetError + } + + if !issetStudentID { + fieldId = 2 + goto RequiredFieldNotSetError + } + + if !issetDevice { + fieldId = 4 + goto RequiredFieldNotSetError + } + 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_MobileGetImageRequest[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) +RequiredFieldNotSetError: + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_MobileGetImageRequest[fieldId])) +} + +func (p *MobileGetImageRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.Type = _field + return nil +} +func (p *MobileGetImageRequest) ReadField2(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.StudentID = _field + return nil +} +func (p *MobileGetImageRequest) ReadField3(iprot thrift.TProtocol) error { + + var _field *string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = &v + } + p.College = _field + return nil +} +func (p *MobileGetImageRequest) ReadField4(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Device = _field + return nil +} + +func (p *MobileGetImageRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("MobileGetImageRequest"); 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 *MobileGetImageRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("type", thrift.I64, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.Type); 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 *MobileGetImageRequest) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("student_id", thrift.I64, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.StudentID); 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 *MobileGetImageRequest) writeField3(oprot thrift.TProtocol) (err error) { + if p.IsSetCollege() { + if err = oprot.WriteFieldBegin("college", thrift.STRING, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(*p.College); 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 *MobileGetImageRequest) writeField4(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("device", thrift.STRING, 4); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Device); 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 *MobileGetImageRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MobileGetImageRequest(%+v)", *p) + +} + +type MobileGetImageResponse struct { + Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` + Count *int64 `thrift:"count,2,optional" form:"count" json:"count,omitempty" query:"count"` + PictureList []*model.Picture `thrift:"picture_list,3,optional" form:"picture_list" json:"picture_list,omitempty" query:"picture_list"` +} + +func NewMobileGetImageResponse() *MobileGetImageResponse { + return &MobileGetImageResponse{} +} + +func (p *MobileGetImageResponse) InitDefault() { +} + +var MobileGetImageResponse_Base_DEFAULT *model.BaseResp + +func (p *MobileGetImageResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return MobileGetImageResponse_Base_DEFAULT + } + return p.Base +} + +var MobileGetImageResponse_Count_DEFAULT int64 + +func (p *MobileGetImageResponse) GetCount() (v int64) { + if !p.IsSetCount() { + return MobileGetImageResponse_Count_DEFAULT + } + return *p.Count +} + +var MobileGetImageResponse_PictureList_DEFAULT []*model.Picture + +func (p *MobileGetImageResponse) GetPictureList() (v []*model.Picture) { + if !p.IsSetPictureList() { + return MobileGetImageResponse_PictureList_DEFAULT + } + return p.PictureList +} + +var fieldIDToName_MobileGetImageResponse = map[int16]string{ + 1: "base", + 2: "count", + 3: "picture_list", +} + +func (p *MobileGetImageResponse) IsSetBase() bool { + return p.Base != nil +} + +func (p *MobileGetImageResponse) IsSetCount() bool { + return p.Count != nil +} + +func (p *MobileGetImageResponse) IsSetPictureList() bool { + return p.PictureList != nil +} + +func (p *MobileGetImageResponse) 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 + } + case 2: + if fieldTypeId == thrift.I64 { + 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_MobileGetImageResponse[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 *MobileGetImageResponse) ReadField1(iprot thrift.TProtocol) error { + _field := model.NewBaseResp() + if err := _field.Read(iprot); err != nil { + return err + } + p.Base = _field + return nil +} +func (p *MobileGetImageResponse) ReadField2(iprot thrift.TProtocol) error { + + var _field *int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = &v + } + p.Count = _field + return nil +} +func (p *MobileGetImageResponse) ReadField3(iprot thrift.TProtocol) error { + _, size, err := iprot.ReadListBegin() + if err != nil { + return err + } + _field := make([]*model.Picture, 0, size) + values := make([]model.Picture, 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.PictureList = _field + return nil +} + +func (p *MobileGetImageResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("MobileGetImageResponse"); 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 *MobileGetImageResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Base.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 *MobileGetImageResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetCount() { + if err = oprot.WriteFieldBegin("count", thrift.I64, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(*p.Count); 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 *MobileGetImageResponse) writeField3(oprot thrift.TProtocol) (err error) { + if p.IsSetPictureList() { + if err = oprot.WriteFieldBegin("picture_list", thrift.LIST, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteListBegin(thrift.STRUCT, len(p.PictureList)); err != nil { + return err + } + for _, v := range p.PictureList { + 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 *MobileGetImageResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MobileGetImageResponse(%+v)", *p) + +} + +type AddImagePointTimeRequest struct { + PictureID int64 `thrift:"picture_id,1,required" form:"picture_id,required" json:"picture_id,required" query:"picture_id,required"` +} + +func NewAddImagePointTimeRequest() *AddImagePointTimeRequest { + return &AddImagePointTimeRequest{} +} + +func (p *AddImagePointTimeRequest) InitDefault() { +} + +func (p *AddImagePointTimeRequest) GetPictureID() (v int64) { + return p.PictureID +} + +var fieldIDToName_AddImagePointTimeRequest = map[int16]string{ + 1: "picture_id", +} + +func (p *AddImagePointTimeRequest) Read(iprot thrift.TProtocol) (err error) { + + var fieldTypeId thrift.TType + var fieldId int16 + var issetPictureID bool = false + + 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.I64 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + issetPictureID = true + } 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 + } + + if !issetPictureID { + fieldId = 1 + goto RequiredFieldNotSetError + } + 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_AddImagePointTimeRequest[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) +RequiredFieldNotSetError: + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_AddImagePointTimeRequest[fieldId])) +} + +func (p *AddImagePointTimeRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.PictureID = _field + return nil +} + +func (p *AddImagePointTimeRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("AddImagePointTimeRequest"); 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 *AddImagePointTimeRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("picture_id", thrift.I64, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.PictureID); 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 *AddImagePointTimeRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("AddImagePointTimeRequest(%+v)", *p) + +} + +type AddImagePointTimeResponse struct { + Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` + Picture *model.Picture `thrift:"picture,2,optional" form:"picture" json:"picture,omitempty" query:"picture"` +} + +func NewAddImagePointTimeResponse() *AddImagePointTimeResponse { + return &AddImagePointTimeResponse{} +} + +func (p *AddImagePointTimeResponse) InitDefault() { +} + +var AddImagePointTimeResponse_Base_DEFAULT *model.BaseResp + +func (p *AddImagePointTimeResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return AddImagePointTimeResponse_Base_DEFAULT + } + return p.Base +} + +var AddImagePointTimeResponse_Picture_DEFAULT *model.Picture + +func (p *AddImagePointTimeResponse) GetPicture() (v *model.Picture) { + if !p.IsSetPicture() { + return AddImagePointTimeResponse_Picture_DEFAULT + } + return p.Picture +} + +var fieldIDToName_AddImagePointTimeResponse = map[int16]string{ + 1: "base", + 2: "picture", +} + +func (p *AddImagePointTimeResponse) IsSetBase() bool { + return p.Base != nil +} + +func (p *AddImagePointTimeResponse) IsSetPicture() bool { + return p.Picture != nil +} + +func (p *AddImagePointTimeResponse) 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 + } + case 2: + if fieldTypeId == thrift.STRUCT { + 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_AddImagePointTimeResponse[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 *AddImagePointTimeResponse) ReadField1(iprot thrift.TProtocol) error { + _field := model.NewBaseResp() + if err := _field.Read(iprot); err != nil { + return err + } + p.Base = _field + return nil +} +func (p *AddImagePointTimeResponse) ReadField2(iprot thrift.TProtocol) error { + _field := model.NewPicture() + if err := _field.Read(iprot); err != nil { + return err + } + p.Picture = _field + return nil +} + +func (p *AddImagePointTimeResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("AddImagePointTimeResponse"); 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 *AddImagePointTimeResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Base.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 *AddImagePointTimeResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetPicture() { + if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { + goto WriteFieldBeginError + } + if err := p.Picture.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 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *AddImagePointTimeResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("AddImagePointTimeResponse(%+v)", *p) + +} + type ClassRoomService interface { GetEmptyClassrooms(ctx context.Context, request *EmptyClassroomRequest) (r *EmptyClassroomResponse, err error) } -type ClassRoomServiceClient struct { - c thrift.TClient +type ClassRoomServiceClient struct { + c thrift.TClient +} + +func NewClassRoomServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *ClassRoomServiceClient { + return &ClassRoomServiceClient{ + c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), + } +} + +func NewClassRoomServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *ClassRoomServiceClient { + return &ClassRoomServiceClient{ + c: thrift.NewTStandardClient(iprot, oprot), + } +} + +func NewClassRoomServiceClient(c thrift.TClient) *ClassRoomServiceClient { + return &ClassRoomServiceClient{ + c: c, + } +} + +func (p *ClassRoomServiceClient) Client_() thrift.TClient { + return p.c +} + +func (p *ClassRoomServiceClient) GetEmptyClassrooms(ctx context.Context, request *EmptyClassroomRequest) (r *EmptyClassroomResponse, err error) { + var _args ClassRoomServiceGetEmptyClassroomsArgs + _args.Request = request + var _result ClassRoomServiceGetEmptyClassroomsResult + if err = p.Client_().Call(ctx, "GetEmptyClassrooms", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} + +type UserService interface { + GetLoginData(ctx context.Context, request *GetLoginDataRequest) (r *GetLoginDataResponse, err error) + + GetValidateCode(ctx context.Context, request *GetValidateCodeRequest) (r *GetValidateCodeResponse, err error) +} + +type UserServiceClient struct { + c thrift.TClient +} + +func NewUserServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *UserServiceClient { + return &UserServiceClient{ + c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), + } +} + +func NewUserServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *UserServiceClient { + return &UserServiceClient{ + c: thrift.NewTStandardClient(iprot, oprot), + } +} + +func NewUserServiceClient(c thrift.TClient) *UserServiceClient { + return &UserServiceClient{ + c: c, + } +} + +func (p *UserServiceClient) Client_() thrift.TClient { + return p.c +} + +func (p *UserServiceClient) GetLoginData(ctx context.Context, request *GetLoginDataRequest) (r *GetLoginDataResponse, err error) { + var _args UserServiceGetLoginDataArgs + _args.Request = request + var _result UserServiceGetLoginDataResult + if err = p.Client_().Call(ctx, "GetLoginData", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *UserServiceClient) GetValidateCode(ctx context.Context, request *GetValidateCodeRequest) (r *GetValidateCodeResponse, err error) { + var _args UserServiceGetValidateCodeArgs + _args.Request = request + var _result UserServiceGetValidateCodeResult + if err = p.Client_().Call(ctx, "GetValidateCode", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} + +type LaunchScreenService interface { + CreateImage(ctx context.Context, req *CreateImageRequest) (r *CreateImageResponse, err error) + + GetImage(ctx context.Context, req *GetImageRequest) (r *GetImageResponse, err error) + + ChangeImageProperty(ctx context.Context, req *ChangeImagePropertyRequest) (r *ChangeImagePropertyResponse, err error) + + ChangeImage(ctx context.Context, req *ChangeImageRequest) (r *ChangeImageResponse, err error) + + DeleteImage(ctx context.Context, req *DeleteImageRequest) (r *DeleteImageResponse, err error) + + MobileGetImage(ctx context.Context, req *MobileGetImageRequest) (r *MobileGetImageResponse, err error) + + AddImagePointTime(ctx context.Context, req *AddImagePointTimeRequest) (r *AddImagePointTimeResponse, err error) +} + +type LaunchScreenServiceClient struct { + c thrift.TClient +} + +func NewLaunchScreenServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *LaunchScreenServiceClient { + return &LaunchScreenServiceClient{ + c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), + } +} + +func NewLaunchScreenServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *LaunchScreenServiceClient { + return &LaunchScreenServiceClient{ + c: thrift.NewTStandardClient(iprot, oprot), + } +} + +func NewLaunchScreenServiceClient(c thrift.TClient) *LaunchScreenServiceClient { + return &LaunchScreenServiceClient{ + c: c, + } +} + +func (p *LaunchScreenServiceClient) Client_() thrift.TClient { + return p.c +} + +func (p *LaunchScreenServiceClient) CreateImage(ctx context.Context, req *CreateImageRequest) (r *CreateImageResponse, err error) { + var _args LaunchScreenServiceCreateImageArgs + _args.Req = req + var _result LaunchScreenServiceCreateImageResult + if err = p.Client_().Call(ctx, "CreateImage", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *LaunchScreenServiceClient) GetImage(ctx context.Context, req *GetImageRequest) (r *GetImageResponse, err error) { + var _args LaunchScreenServiceGetImageArgs + _args.Req = req + var _result LaunchScreenServiceGetImageResult + if err = p.Client_().Call(ctx, "GetImage", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *LaunchScreenServiceClient) ChangeImageProperty(ctx context.Context, req *ChangeImagePropertyRequest) (r *ChangeImagePropertyResponse, err error) { + var _args LaunchScreenServiceChangeImagePropertyArgs + _args.Req = req + var _result LaunchScreenServiceChangeImagePropertyResult + if err = p.Client_().Call(ctx, "ChangeImageProperty", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *LaunchScreenServiceClient) ChangeImage(ctx context.Context, req *ChangeImageRequest) (r *ChangeImageResponse, err error) { + var _args LaunchScreenServiceChangeImageArgs + _args.Req = req + var _result LaunchScreenServiceChangeImageResult + if err = p.Client_().Call(ctx, "ChangeImage", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *LaunchScreenServiceClient) DeleteImage(ctx context.Context, req *DeleteImageRequest) (r *DeleteImageResponse, err error) { + var _args LaunchScreenServiceDeleteImageArgs + _args.Req = req + var _result LaunchScreenServiceDeleteImageResult + if err = p.Client_().Call(ctx, "DeleteImage", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *LaunchScreenServiceClient) MobileGetImage(ctx context.Context, req *MobileGetImageRequest) (r *MobileGetImageResponse, err error) { + var _args LaunchScreenServiceMobileGetImageArgs + _args.Req = req + var _result LaunchScreenServiceMobileGetImageResult + if err = p.Client_().Call(ctx, "MobileGetImage", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *LaunchScreenServiceClient) AddImagePointTime(ctx context.Context, req *AddImagePointTimeRequest) (r *AddImagePointTimeResponse, err error) { + var _args LaunchScreenServiceAddImagePointTimeArgs + _args.Req = req + var _result LaunchScreenServiceAddImagePointTimeResult + if err = p.Client_().Call(ctx, "AddImagePointTime", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} + +type ClassRoomServiceProcessor struct { + processorMap map[string]thrift.TProcessorFunction + handler ClassRoomService +} + +func (p *ClassRoomServiceProcessor) AddToProcessorMap(key string, processor thrift.TProcessorFunction) { + p.processorMap[key] = processor +} + +func (p *ClassRoomServiceProcessor) GetProcessorFunction(key string) (processor thrift.TProcessorFunction, ok bool) { + processor, ok = p.processorMap[key] + return processor, ok +} + +func (p *ClassRoomServiceProcessor) ProcessorMap() map[string]thrift.TProcessorFunction { + return p.processorMap +} + +func NewClassRoomServiceProcessor(handler ClassRoomService) *ClassRoomServiceProcessor { + self := &ClassRoomServiceProcessor{handler: handler, processorMap: make(map[string]thrift.TProcessorFunction)} + self.AddToProcessorMap("GetEmptyClassrooms", &classRoomServiceProcessorGetEmptyClassrooms{handler: handler}) + return self +} +func (p *ClassRoomServiceProcessor) Process(ctx context.Context, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + name, _, seqId, err := iprot.ReadMessageBegin() + if err != nil { + return false, err + } + if processor, ok := p.GetProcessorFunction(name); ok { + return processor.Process(ctx, seqId, iprot, oprot) + } + iprot.Skip(thrift.STRUCT) + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.UNKNOWN_METHOD, "Unknown function "+name) + oprot.WriteMessageBegin(name, thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, x +} + +type classRoomServiceProcessorGetEmptyClassrooms struct { + handler ClassRoomService +} + +func (p *classRoomServiceProcessorGetEmptyClassrooms) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := ClassRoomServiceGetEmptyClassroomsArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("GetEmptyClassrooms", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := ClassRoomServiceGetEmptyClassroomsResult{} + var retval *EmptyClassroomResponse + if retval, err2 = p.handler.GetEmptyClassrooms(ctx, args.Request); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetEmptyClassrooms: "+err2.Error()) + oprot.WriteMessageBegin("GetEmptyClassrooms", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("GetEmptyClassrooms", 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 ClassRoomServiceGetEmptyClassroomsArgs struct { + Request *EmptyClassroomRequest `thrift:"request,1"` +} + +func NewClassRoomServiceGetEmptyClassroomsArgs() *ClassRoomServiceGetEmptyClassroomsArgs { + return &ClassRoomServiceGetEmptyClassroomsArgs{} +} + +func (p *ClassRoomServiceGetEmptyClassroomsArgs) InitDefault() { +} + +var ClassRoomServiceGetEmptyClassroomsArgs_Request_DEFAULT *EmptyClassroomRequest + +func (p *ClassRoomServiceGetEmptyClassroomsArgs) GetRequest() (v *EmptyClassroomRequest) { + if !p.IsSetRequest() { + return ClassRoomServiceGetEmptyClassroomsArgs_Request_DEFAULT + } + return p.Request +} + +var fieldIDToName_ClassRoomServiceGetEmptyClassroomsArgs = map[int16]string{ + 1: "request", +} + +func (p *ClassRoomServiceGetEmptyClassroomsArgs) IsSetRequest() bool { + return p.Request != nil +} + +func (p *ClassRoomServiceGetEmptyClassroomsArgs) 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_ClassRoomServiceGetEmptyClassroomsArgs[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 *ClassRoomServiceGetEmptyClassroomsArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewEmptyClassroomRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Request = _field + return nil +} + +func (p *ClassRoomServiceGetEmptyClassroomsArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetEmptyClassrooms_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 *ClassRoomServiceGetEmptyClassroomsArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("request", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Request.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 *ClassRoomServiceGetEmptyClassroomsArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ClassRoomServiceGetEmptyClassroomsArgs(%+v)", *p) + +} + +type ClassRoomServiceGetEmptyClassroomsResult struct { + Success *EmptyClassroomResponse `thrift:"success,0,optional"` +} + +func NewClassRoomServiceGetEmptyClassroomsResult() *ClassRoomServiceGetEmptyClassroomsResult { + return &ClassRoomServiceGetEmptyClassroomsResult{} +} + +func (p *ClassRoomServiceGetEmptyClassroomsResult) InitDefault() { +} + +var ClassRoomServiceGetEmptyClassroomsResult_Success_DEFAULT *EmptyClassroomResponse + +func (p *ClassRoomServiceGetEmptyClassroomsResult) GetSuccess() (v *EmptyClassroomResponse) { + if !p.IsSetSuccess() { + return ClassRoomServiceGetEmptyClassroomsResult_Success_DEFAULT + } + return p.Success +} + +var fieldIDToName_ClassRoomServiceGetEmptyClassroomsResult = map[int16]string{ + 0: "success", +} + +func (p *ClassRoomServiceGetEmptyClassroomsResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *ClassRoomServiceGetEmptyClassroomsResult) 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_ClassRoomServiceGetEmptyClassroomsResult[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 *ClassRoomServiceGetEmptyClassroomsResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewEmptyClassroomResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *ClassRoomServiceGetEmptyClassroomsResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetEmptyClassrooms_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 *ClassRoomServiceGetEmptyClassroomsResult) 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 *ClassRoomServiceGetEmptyClassroomsResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ClassRoomServiceGetEmptyClassroomsResult(%+v)", *p) + +} + +type UserServiceProcessor struct { + processorMap map[string]thrift.TProcessorFunction + handler UserService +} + +func (p *UserServiceProcessor) AddToProcessorMap(key string, processor thrift.TProcessorFunction) { + p.processorMap[key] = processor +} + +func (p *UserServiceProcessor) GetProcessorFunction(key string) (processor thrift.TProcessorFunction, ok bool) { + processor, ok = p.processorMap[key] + return processor, ok +} + +func (p *UserServiceProcessor) ProcessorMap() map[string]thrift.TProcessorFunction { + return p.processorMap +} + +func NewUserServiceProcessor(handler UserService) *UserServiceProcessor { + self := &UserServiceProcessor{handler: handler, processorMap: make(map[string]thrift.TProcessorFunction)} + self.AddToProcessorMap("GetLoginData", &userServiceProcessorGetLoginData{handler: handler}) + self.AddToProcessorMap("GetValidateCode", &userServiceProcessorGetValidateCode{handler: handler}) + return self +} +func (p *UserServiceProcessor) Process(ctx context.Context, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + name, _, seqId, err := iprot.ReadMessageBegin() + if err != nil { + return false, err + } + if processor, ok := p.GetProcessorFunction(name); ok { + return processor.Process(ctx, seqId, iprot, oprot) + } + iprot.Skip(thrift.STRUCT) + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.UNKNOWN_METHOD, "Unknown function "+name) + oprot.WriteMessageBegin(name, thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, x +} + +type userServiceProcessorGetLoginData struct { + handler UserService +} + +func (p *userServiceProcessorGetLoginData) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := UserServiceGetLoginDataArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("GetLoginData", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := UserServiceGetLoginDataResult{} + var retval *GetLoginDataResponse + if retval, err2 = p.handler.GetLoginData(ctx, args.Request); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetLoginData: "+err2.Error()) + oprot.WriteMessageBegin("GetLoginData", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("GetLoginData", 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 userServiceProcessorGetValidateCode struct { + handler UserService +} + +func (p *userServiceProcessorGetValidateCode) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := UserServiceGetValidateCodeArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("GetValidateCode", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := UserServiceGetValidateCodeResult{} + var retval *GetValidateCodeResponse + if retval, err2 = p.handler.GetValidateCode(ctx, args.Request); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetValidateCode: "+err2.Error()) + oprot.WriteMessageBegin("GetValidateCode", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("GetValidateCode", 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 UserServiceGetLoginDataArgs struct { + Request *GetLoginDataRequest `thrift:"request,1"` +} + +func NewUserServiceGetLoginDataArgs() *UserServiceGetLoginDataArgs { + return &UserServiceGetLoginDataArgs{} +} + +func (p *UserServiceGetLoginDataArgs) InitDefault() { +} + +var UserServiceGetLoginDataArgs_Request_DEFAULT *GetLoginDataRequest + +func (p *UserServiceGetLoginDataArgs) GetRequest() (v *GetLoginDataRequest) { + if !p.IsSetRequest() { + return UserServiceGetLoginDataArgs_Request_DEFAULT + } + return p.Request +} + +var fieldIDToName_UserServiceGetLoginDataArgs = map[int16]string{ + 1: "request", +} + +func (p *UserServiceGetLoginDataArgs) IsSetRequest() bool { + return p.Request != nil +} + +func (p *UserServiceGetLoginDataArgs) 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_UserServiceGetLoginDataArgs[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 *UserServiceGetLoginDataArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewGetLoginDataRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Request = _field + return nil +} + +func (p *UserServiceGetLoginDataArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetLoginData_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 *UserServiceGetLoginDataArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("request", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Request.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 *UserServiceGetLoginDataArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("UserServiceGetLoginDataArgs(%+v)", *p) + +} + +type UserServiceGetLoginDataResult struct { + Success *GetLoginDataResponse `thrift:"success,0,optional"` +} + +func NewUserServiceGetLoginDataResult() *UserServiceGetLoginDataResult { + return &UserServiceGetLoginDataResult{} +} + +func (p *UserServiceGetLoginDataResult) InitDefault() { +} + +var UserServiceGetLoginDataResult_Success_DEFAULT *GetLoginDataResponse + +func (p *UserServiceGetLoginDataResult) GetSuccess() (v *GetLoginDataResponse) { + if !p.IsSetSuccess() { + return UserServiceGetLoginDataResult_Success_DEFAULT + } + return p.Success +} + +var fieldIDToName_UserServiceGetLoginDataResult = map[int16]string{ + 0: "success", +} + +func (p *UserServiceGetLoginDataResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *UserServiceGetLoginDataResult) 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_UserServiceGetLoginDataResult[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 *UserServiceGetLoginDataResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewGetLoginDataResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *UserServiceGetLoginDataResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetLoginData_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 *UserServiceGetLoginDataResult) 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 *UserServiceGetLoginDataResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("UserServiceGetLoginDataResult(%+v)", *p) + +} + +type UserServiceGetValidateCodeArgs struct { + Request *GetValidateCodeRequest `thrift:"request,1"` +} + +func NewUserServiceGetValidateCodeArgs() *UserServiceGetValidateCodeArgs { + return &UserServiceGetValidateCodeArgs{} +} + +func (p *UserServiceGetValidateCodeArgs) InitDefault() { +} + +var UserServiceGetValidateCodeArgs_Request_DEFAULT *GetValidateCodeRequest + +func (p *UserServiceGetValidateCodeArgs) GetRequest() (v *GetValidateCodeRequest) { + if !p.IsSetRequest() { + return UserServiceGetValidateCodeArgs_Request_DEFAULT + } + return p.Request +} + +var fieldIDToName_UserServiceGetValidateCodeArgs = map[int16]string{ + 1: "request", +} + +func (p *UserServiceGetValidateCodeArgs) IsSetRequest() bool { + return p.Request != nil +} + +func (p *UserServiceGetValidateCodeArgs) 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_UserServiceGetValidateCodeArgs[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 *UserServiceGetValidateCodeArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewGetValidateCodeRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Request = _field + return nil +} + +func (p *UserServiceGetValidateCodeArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetValidateCode_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 *UserServiceGetValidateCodeArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("request", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Request.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 *UserServiceGetValidateCodeArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("UserServiceGetValidateCodeArgs(%+v)", *p) + +} + +type UserServiceGetValidateCodeResult struct { + Success *GetValidateCodeResponse `thrift:"success,0,optional"` +} + +func NewUserServiceGetValidateCodeResult() *UserServiceGetValidateCodeResult { + return &UserServiceGetValidateCodeResult{} +} + +func (p *UserServiceGetValidateCodeResult) InitDefault() { +} + +var UserServiceGetValidateCodeResult_Success_DEFAULT *GetValidateCodeResponse + +func (p *UserServiceGetValidateCodeResult) GetSuccess() (v *GetValidateCodeResponse) { + if !p.IsSetSuccess() { + return UserServiceGetValidateCodeResult_Success_DEFAULT + } + return p.Success +} + +var fieldIDToName_UserServiceGetValidateCodeResult = map[int16]string{ + 0: "success", +} + +func (p *UserServiceGetValidateCodeResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *UserServiceGetValidateCodeResult) 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_UserServiceGetValidateCodeResult[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 *UserServiceGetValidateCodeResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewGetValidateCodeResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *UserServiceGetValidateCodeResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetValidateCode_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 *UserServiceGetValidateCodeResult) 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 *UserServiceGetValidateCodeResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("UserServiceGetValidateCodeResult(%+v)", *p) + +} + +type LaunchScreenServiceProcessor struct { + processorMap map[string]thrift.TProcessorFunction + handler LaunchScreenService +} + +func (p *LaunchScreenServiceProcessor) AddToProcessorMap(key string, processor thrift.TProcessorFunction) { + p.processorMap[key] = processor +} + +func (p *LaunchScreenServiceProcessor) GetProcessorFunction(key string) (processor thrift.TProcessorFunction, ok bool) { + processor, ok = p.processorMap[key] + return processor, ok +} + +func (p *LaunchScreenServiceProcessor) ProcessorMap() map[string]thrift.TProcessorFunction { + return p.processorMap +} + +func NewLaunchScreenServiceProcessor(handler LaunchScreenService) *LaunchScreenServiceProcessor { + self := &LaunchScreenServiceProcessor{handler: handler, processorMap: make(map[string]thrift.TProcessorFunction)} + self.AddToProcessorMap("CreateImage", &launchScreenServiceProcessorCreateImage{handler: handler}) + self.AddToProcessorMap("GetImage", &launchScreenServiceProcessorGetImage{handler: handler}) + self.AddToProcessorMap("ChangeImageProperty", &launchScreenServiceProcessorChangeImageProperty{handler: handler}) + self.AddToProcessorMap("ChangeImage", &launchScreenServiceProcessorChangeImage{handler: handler}) + self.AddToProcessorMap("DeleteImage", &launchScreenServiceProcessorDeleteImage{handler: handler}) + self.AddToProcessorMap("MobileGetImage", &launchScreenServiceProcessorMobileGetImage{handler: handler}) + self.AddToProcessorMap("AddImagePointTime", &launchScreenServiceProcessorAddImagePointTime{handler: handler}) + return self +} +func (p *LaunchScreenServiceProcessor) Process(ctx context.Context, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + name, _, seqId, err := iprot.ReadMessageBegin() + if err != nil { + return false, err + } + if processor, ok := p.GetProcessorFunction(name); ok { + return processor.Process(ctx, seqId, iprot, oprot) + } + iprot.Skip(thrift.STRUCT) + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.UNKNOWN_METHOD, "Unknown function "+name) + oprot.WriteMessageBegin(name, thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, x +} + +type launchScreenServiceProcessorCreateImage struct { + handler LaunchScreenService +} + +func (p *launchScreenServiceProcessorCreateImage) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := LaunchScreenServiceCreateImageArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("CreateImage", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := LaunchScreenServiceCreateImageResult{} + var retval *CreateImageResponse + if retval, err2 = p.handler.CreateImage(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing CreateImage: "+err2.Error()) + oprot.WriteMessageBegin("CreateImage", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("CreateImage", 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 launchScreenServiceProcessorGetImage struct { + handler LaunchScreenService +} + +func (p *launchScreenServiceProcessorGetImage) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := LaunchScreenServiceGetImageArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("GetImage", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := LaunchScreenServiceGetImageResult{} + var retval *GetImageResponse + if retval, err2 = p.handler.GetImage(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetImage: "+err2.Error()) + oprot.WriteMessageBegin("GetImage", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("GetImage", 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 launchScreenServiceProcessorChangeImageProperty struct { + handler LaunchScreenService +} + +func (p *launchScreenServiceProcessorChangeImageProperty) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := LaunchScreenServiceChangeImagePropertyArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("ChangeImageProperty", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := LaunchScreenServiceChangeImagePropertyResult{} + var retval *ChangeImagePropertyResponse + if retval, err2 = p.handler.ChangeImageProperty(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing ChangeImageProperty: "+err2.Error()) + oprot.WriteMessageBegin("ChangeImageProperty", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("ChangeImageProperty", 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 launchScreenServiceProcessorChangeImage struct { + handler LaunchScreenService +} + +func (p *launchScreenServiceProcessorChangeImage) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := LaunchScreenServiceChangeImageArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("ChangeImage", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := LaunchScreenServiceChangeImageResult{} + var retval *ChangeImageResponse + if retval, err2 = p.handler.ChangeImage(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing ChangeImage: "+err2.Error()) + oprot.WriteMessageBegin("ChangeImage", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("ChangeImage", 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 launchScreenServiceProcessorDeleteImage struct { + handler LaunchScreenService +} + +func (p *launchScreenServiceProcessorDeleteImage) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := LaunchScreenServiceDeleteImageArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("DeleteImage", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := LaunchScreenServiceDeleteImageResult{} + var retval *DeleteImageResponse + if retval, err2 = p.handler.DeleteImage(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing DeleteImage: "+err2.Error()) + oprot.WriteMessageBegin("DeleteImage", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("DeleteImage", 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 launchScreenServiceProcessorMobileGetImage struct { + handler LaunchScreenService +} + +func (p *launchScreenServiceProcessorMobileGetImage) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := LaunchScreenServiceMobileGetImageArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("MobileGetImage", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := LaunchScreenServiceMobileGetImageResult{} + var retval *MobileGetImageResponse + if retval, err2 = p.handler.MobileGetImage(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing MobileGetImage: "+err2.Error()) + oprot.WriteMessageBegin("MobileGetImage", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("MobileGetImage", 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 launchScreenServiceProcessorAddImagePointTime struct { + handler LaunchScreenService +} + +func (p *launchScreenServiceProcessorAddImagePointTime) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := LaunchScreenServiceAddImagePointTimeArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("AddImagePointTime", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := LaunchScreenServiceAddImagePointTimeResult{} + var retval *AddImagePointTimeResponse + if retval, err2 = p.handler.AddImagePointTime(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing AddImagePointTime: "+err2.Error()) + oprot.WriteMessageBegin("AddImagePointTime", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("AddImagePointTime", 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 LaunchScreenServiceCreateImageArgs struct { + Req *CreateImageRequest `thrift:"req,1"` +} + +func NewLaunchScreenServiceCreateImageArgs() *LaunchScreenServiceCreateImageArgs { + return &LaunchScreenServiceCreateImageArgs{} +} + +func (p *LaunchScreenServiceCreateImageArgs) InitDefault() { +} + +var LaunchScreenServiceCreateImageArgs_Req_DEFAULT *CreateImageRequest + +func (p *LaunchScreenServiceCreateImageArgs) GetReq() (v *CreateImageRequest) { + if !p.IsSetReq() { + return LaunchScreenServiceCreateImageArgs_Req_DEFAULT + } + return p.Req +} + +var fieldIDToName_LaunchScreenServiceCreateImageArgs = map[int16]string{ + 1: "req", +} + +func (p *LaunchScreenServiceCreateImageArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *LaunchScreenServiceCreateImageArgs) 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_LaunchScreenServiceCreateImageArgs[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 *LaunchScreenServiceCreateImageArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewCreateImageRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *LaunchScreenServiceCreateImageArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("CreateImage_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 *LaunchScreenServiceCreateImageArgs) 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 *LaunchScreenServiceCreateImageArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceCreateImageArgs(%+v)", *p) + +} + +type LaunchScreenServiceCreateImageResult struct { + Success *CreateImageResponse `thrift:"success,0,optional"` +} + +func NewLaunchScreenServiceCreateImageResult() *LaunchScreenServiceCreateImageResult { + return &LaunchScreenServiceCreateImageResult{} +} + +func (p *LaunchScreenServiceCreateImageResult) InitDefault() { +} + +var LaunchScreenServiceCreateImageResult_Success_DEFAULT *CreateImageResponse + +func (p *LaunchScreenServiceCreateImageResult) GetSuccess() (v *CreateImageResponse) { + if !p.IsSetSuccess() { + return LaunchScreenServiceCreateImageResult_Success_DEFAULT + } + return p.Success +} + +var fieldIDToName_LaunchScreenServiceCreateImageResult = map[int16]string{ + 0: "success", +} + +func (p *LaunchScreenServiceCreateImageResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *LaunchScreenServiceCreateImageResult) 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_LaunchScreenServiceCreateImageResult[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 *LaunchScreenServiceCreateImageResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewCreateImageResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *LaunchScreenServiceCreateImageResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("CreateImage_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 *LaunchScreenServiceCreateImageResult) 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 *LaunchScreenServiceCreateImageResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceCreateImageResult(%+v)", *p) + +} + +type LaunchScreenServiceGetImageArgs struct { + Req *GetImageRequest `thrift:"req,1"` +} + +func NewLaunchScreenServiceGetImageArgs() *LaunchScreenServiceGetImageArgs { + return &LaunchScreenServiceGetImageArgs{} +} + +func (p *LaunchScreenServiceGetImageArgs) InitDefault() { +} + +var LaunchScreenServiceGetImageArgs_Req_DEFAULT *GetImageRequest + +func (p *LaunchScreenServiceGetImageArgs) GetReq() (v *GetImageRequest) { + if !p.IsSetReq() { + return LaunchScreenServiceGetImageArgs_Req_DEFAULT + } + return p.Req +} + +var fieldIDToName_LaunchScreenServiceGetImageArgs = map[int16]string{ + 1: "req", +} + +func (p *LaunchScreenServiceGetImageArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *LaunchScreenServiceGetImageArgs) 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_LaunchScreenServiceGetImageArgs[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 *LaunchScreenServiceGetImageArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewGetImageRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *LaunchScreenServiceGetImageArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetImage_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 *LaunchScreenServiceGetImageArgs) 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 *LaunchScreenServiceGetImageArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceGetImageArgs(%+v)", *p) + +} + +type LaunchScreenServiceGetImageResult struct { + Success *GetImageResponse `thrift:"success,0,optional"` +} + +func NewLaunchScreenServiceGetImageResult() *LaunchScreenServiceGetImageResult { + return &LaunchScreenServiceGetImageResult{} +} + +func (p *LaunchScreenServiceGetImageResult) InitDefault() { +} + +var LaunchScreenServiceGetImageResult_Success_DEFAULT *GetImageResponse + +func (p *LaunchScreenServiceGetImageResult) GetSuccess() (v *GetImageResponse) { + if !p.IsSetSuccess() { + return LaunchScreenServiceGetImageResult_Success_DEFAULT + } + return p.Success +} + +var fieldIDToName_LaunchScreenServiceGetImageResult = map[int16]string{ + 0: "success", +} + +func (p *LaunchScreenServiceGetImageResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *LaunchScreenServiceGetImageResult) 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_LaunchScreenServiceGetImageResult[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 *LaunchScreenServiceGetImageResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewGetImageResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *LaunchScreenServiceGetImageResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetImage_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 *LaunchScreenServiceGetImageResult) 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 *LaunchScreenServiceGetImageResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceGetImageResult(%+v)", *p) + +} + +type LaunchScreenServiceChangeImagePropertyArgs struct { + Req *ChangeImagePropertyRequest `thrift:"req,1"` +} + +func NewLaunchScreenServiceChangeImagePropertyArgs() *LaunchScreenServiceChangeImagePropertyArgs { + return &LaunchScreenServiceChangeImagePropertyArgs{} +} + +func (p *LaunchScreenServiceChangeImagePropertyArgs) InitDefault() { +} + +var LaunchScreenServiceChangeImagePropertyArgs_Req_DEFAULT *ChangeImagePropertyRequest + +func (p *LaunchScreenServiceChangeImagePropertyArgs) GetReq() (v *ChangeImagePropertyRequest) { + if !p.IsSetReq() { + return LaunchScreenServiceChangeImagePropertyArgs_Req_DEFAULT + } + return p.Req +} + +var fieldIDToName_LaunchScreenServiceChangeImagePropertyArgs = map[int16]string{ + 1: "req", +} + +func (p *LaunchScreenServiceChangeImagePropertyArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *LaunchScreenServiceChangeImagePropertyArgs) 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_LaunchScreenServiceChangeImagePropertyArgs[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 *LaunchScreenServiceChangeImagePropertyArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewChangeImagePropertyRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *LaunchScreenServiceChangeImagePropertyArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ChangeImageProperty_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 *LaunchScreenServiceChangeImagePropertyArgs) 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 NewClassRoomServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *ClassRoomServiceClient { - return &ClassRoomServiceClient{ - c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), +func (p *LaunchScreenServiceChangeImagePropertyArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceChangeImagePropertyArgs(%+v)", *p) + +} + +type LaunchScreenServiceChangeImagePropertyResult struct { + Success *ChangeImagePropertyResponse `thrift:"success,0,optional"` +} + +func NewLaunchScreenServiceChangeImagePropertyResult() *LaunchScreenServiceChangeImagePropertyResult { + return &LaunchScreenServiceChangeImagePropertyResult{} +} + +func (p *LaunchScreenServiceChangeImagePropertyResult) InitDefault() { +} + +var LaunchScreenServiceChangeImagePropertyResult_Success_DEFAULT *ChangeImagePropertyResponse + +func (p *LaunchScreenServiceChangeImagePropertyResult) GetSuccess() (v *ChangeImagePropertyResponse) { + if !p.IsSetSuccess() { + return LaunchScreenServiceChangeImagePropertyResult_Success_DEFAULT + } + return p.Success +} + +var fieldIDToName_LaunchScreenServiceChangeImagePropertyResult = map[int16]string{ + 0: "success", +} + +func (p *LaunchScreenServiceChangeImagePropertyResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *LaunchScreenServiceChangeImagePropertyResult) 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_LaunchScreenServiceChangeImagePropertyResult[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 *LaunchScreenServiceChangeImagePropertyResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewChangeImagePropertyResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *LaunchScreenServiceChangeImagePropertyResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ChangeImageProperty_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 *LaunchScreenServiceChangeImagePropertyResult) 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 *LaunchScreenServiceChangeImagePropertyResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceChangeImagePropertyResult(%+v)", *p) + +} + +type LaunchScreenServiceChangeImageArgs struct { + Req *ChangeImageRequest `thrift:"req,1"` +} + +func NewLaunchScreenServiceChangeImageArgs() *LaunchScreenServiceChangeImageArgs { + return &LaunchScreenServiceChangeImageArgs{} +} + +func (p *LaunchScreenServiceChangeImageArgs) InitDefault() { +} + +var LaunchScreenServiceChangeImageArgs_Req_DEFAULT *ChangeImageRequest + +func (p *LaunchScreenServiceChangeImageArgs) GetReq() (v *ChangeImageRequest) { + if !p.IsSetReq() { + return LaunchScreenServiceChangeImageArgs_Req_DEFAULT + } + return p.Req +} + +var fieldIDToName_LaunchScreenServiceChangeImageArgs = map[int16]string{ + 1: "req", +} + +func (p *LaunchScreenServiceChangeImageArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *LaunchScreenServiceChangeImageArgs) 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_LaunchScreenServiceChangeImageArgs[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 *LaunchScreenServiceChangeImageArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewChangeImageRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *LaunchScreenServiceChangeImageArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ChangeImage_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 NewClassRoomServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *ClassRoomServiceClient { - return &ClassRoomServiceClient{ - c: thrift.NewTStandardClient(iprot, oprot), +func (p *LaunchScreenServiceChangeImageArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("req", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError } -} - -func NewClassRoomServiceClient(c thrift.TClient) *ClassRoomServiceClient { - return &ClassRoomServiceClient{ - c: c, + if err := p.Req.Write(oprot); err != nil { + return err } -} - -func (p *ClassRoomServiceClient) Client_() thrift.TClient { - return p.c -} - -func (p *ClassRoomServiceClient) GetEmptyClassrooms(ctx context.Context, request *EmptyClassroomRequest) (r *EmptyClassroomResponse, err error) { - var _args ClassRoomServiceGetEmptyClassroomsArgs - _args.Request = request - var _result ClassRoomServiceGetEmptyClassroomsResult - if err = p.Client_().Call(ctx, "GetEmptyClassrooms", &_args, &_result); err != nil { - return + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError } - return _result.GetSuccess(), nil + 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) } -type UserService interface { - GetLoginData(ctx context.Context, request *GetLoginDataRequest) (r *GetLoginDataResponse, err error) +func (p *LaunchScreenServiceChangeImageArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceChangeImageArgs(%+v)", *p) - GetValidateCode(ctx context.Context, request *GetValidateCodeRequest) (r *GetValidateCodeResponse, err error) } -type UserServiceClient struct { - c thrift.TClient +type LaunchScreenServiceChangeImageResult struct { + Success *ChangeImageResponse `thrift:"success,0,optional"` } -func NewUserServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *UserServiceClient { - return &UserServiceClient{ - c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), - } +func NewLaunchScreenServiceChangeImageResult() *LaunchScreenServiceChangeImageResult { + return &LaunchScreenServiceChangeImageResult{} } -func NewUserServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *UserServiceClient { - return &UserServiceClient{ - c: thrift.NewTStandardClient(iprot, oprot), - } +func (p *LaunchScreenServiceChangeImageResult) InitDefault() { } -func NewUserServiceClient(c thrift.TClient) *UserServiceClient { - return &UserServiceClient{ - c: c, +var LaunchScreenServiceChangeImageResult_Success_DEFAULT *ChangeImageResponse + +func (p *LaunchScreenServiceChangeImageResult) GetSuccess() (v *ChangeImageResponse) { + if !p.IsSetSuccess() { + return LaunchScreenServiceChangeImageResult_Success_DEFAULT } + return p.Success } -func (p *UserServiceClient) Client_() thrift.TClient { - return p.c +var fieldIDToName_LaunchScreenServiceChangeImageResult = map[int16]string{ + 0: "success", } -func (p *UserServiceClient) GetLoginData(ctx context.Context, request *GetLoginDataRequest) (r *GetLoginDataResponse, err error) { - var _args UserServiceGetLoginDataArgs - _args.Request = request - var _result UserServiceGetLoginDataResult - if err = p.Client_().Call(ctx, "GetLoginData", &_args, &_result); err != nil { - return - } - return _result.GetSuccess(), nil -} -func (p *UserServiceClient) GetValidateCode(ctx context.Context, request *GetValidateCodeRequest) (r *GetValidateCodeResponse, err error) { - var _args UserServiceGetValidateCodeArgs - _args.Request = request - var _result UserServiceGetValidateCodeResult - if err = p.Client_().Call(ctx, "GetValidateCode", &_args, &_result); err != nil { - return - } - return _result.GetSuccess(), nil +func (p *LaunchScreenServiceChangeImageResult) IsSetSuccess() bool { + return p.Success != nil } -type ClassRoomServiceProcessor struct { - processorMap map[string]thrift.TProcessorFunction - handler ClassRoomService -} +func (p *LaunchScreenServiceChangeImageResult) Read(iprot thrift.TProtocol) (err error) { -func (p *ClassRoomServiceProcessor) AddToProcessorMap(key string, processor thrift.TProcessorFunction) { - p.processorMap[key] = processor -} + var fieldTypeId thrift.TType + var fieldId int16 -func (p *ClassRoomServiceProcessor) GetProcessorFunction(key string) (processor thrift.TProcessorFunction, ok bool) { - processor, ok = p.processorMap[key] - return processor, ok -} + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } -func (p *ClassRoomServiceProcessor) ProcessorMap() map[string]thrift.TProcessorFunction { - return p.processorMap -} + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } -func NewClassRoomServiceProcessor(handler ClassRoomService) *ClassRoomServiceProcessor { - self := &ClassRoomServiceProcessor{handler: handler, processorMap: make(map[string]thrift.TProcessorFunction)} - self.AddToProcessorMap("GetEmptyClassrooms", &classRoomServiceProcessorGetEmptyClassrooms{handler: handler}) - return self -} -func (p *ClassRoomServiceProcessor) Process(ctx context.Context, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { - name, _, seqId, err := iprot.ReadMessageBegin() - if err != nil { - return false, err + 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 processor, ok := p.GetProcessorFunction(name); ok { - return processor.Process(ctx, seqId, iprot, oprot) + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError } - iprot.Skip(thrift.STRUCT) - iprot.ReadMessageEnd() - x := thrift.NewTApplicationException(thrift.UNKNOWN_METHOD, "Unknown function "+name) - oprot.WriteMessageBegin(name, thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return false, x -} -type classRoomServiceProcessorGetEmptyClassrooms struct { - handler ClassRoomService + 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_LaunchScreenServiceChangeImageResult[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 *classRoomServiceProcessorGetEmptyClassrooms) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { - args := ClassRoomServiceGetEmptyClassroomsArgs{} - if err = args.Read(iprot); err != nil { - iprot.ReadMessageEnd() - x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) - oprot.WriteMessageBegin("GetEmptyClassrooms", thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return false, err +func (p *LaunchScreenServiceChangeImageResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewChangeImageResponse() + if err := _field.Read(iprot); err != nil { + return err } + p.Success = _field + return nil +} - iprot.ReadMessageEnd() - var err2 error - result := ClassRoomServiceGetEmptyClassroomsResult{} - var retval *EmptyClassroomResponse - if retval, err2 = p.handler.GetEmptyClassrooms(ctx, args.Request); err2 != nil { - x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetEmptyClassrooms: "+err2.Error()) - oprot.WriteMessageBegin("GetEmptyClassrooms", thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return true, err2 - } else { - result.Success = retval +func (p *LaunchScreenServiceChangeImageResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ChangeImage_result"); err != nil { + goto WriteStructBeginError } - if err2 = oprot.WriteMessageBegin("GetEmptyClassrooms", thrift.REPLY, seqId); err2 != nil { - err = err2 + if p != nil { + if err = p.writeField0(oprot); err != nil { + fieldId = 0 + goto WriteFieldError + } } - if err2 = result.Write(oprot); err == nil && err2 != nil { - err = err2 + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError } - if err2 = oprot.WriteMessageEnd(); err == nil && err2 != nil { - err = err2 + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError } - if err2 = oprot.Flush(ctx); err == nil && err2 != nil { - err = err2 + 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 *LaunchScreenServiceChangeImageResult) 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 + } } - if err != nil { - return + 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 *LaunchScreenServiceChangeImageResult) String() string { + if p == nil { + return "" } - return true, err + return fmt.Sprintf("LaunchScreenServiceChangeImageResult(%+v)", *p) + } -type ClassRoomServiceGetEmptyClassroomsArgs struct { - Request *EmptyClassroomRequest `thrift:"request,1"` +type LaunchScreenServiceDeleteImageArgs struct { + Req *DeleteImageRequest `thrift:"req,1"` } -func NewClassRoomServiceGetEmptyClassroomsArgs() *ClassRoomServiceGetEmptyClassroomsArgs { - return &ClassRoomServiceGetEmptyClassroomsArgs{} +func NewLaunchScreenServiceDeleteImageArgs() *LaunchScreenServiceDeleteImageArgs { + return &LaunchScreenServiceDeleteImageArgs{} } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) InitDefault() { +func (p *LaunchScreenServiceDeleteImageArgs) InitDefault() { } -var ClassRoomServiceGetEmptyClassroomsArgs_Request_DEFAULT *EmptyClassroomRequest +var LaunchScreenServiceDeleteImageArgs_Req_DEFAULT *DeleteImageRequest -func (p *ClassRoomServiceGetEmptyClassroomsArgs) GetRequest() (v *EmptyClassroomRequest) { - if !p.IsSetRequest() { - return ClassRoomServiceGetEmptyClassroomsArgs_Request_DEFAULT +func (p *LaunchScreenServiceDeleteImageArgs) GetReq() (v *DeleteImageRequest) { + if !p.IsSetReq() { + return LaunchScreenServiceDeleteImageArgs_Req_DEFAULT } - return p.Request + return p.Req } -var fieldIDToName_ClassRoomServiceGetEmptyClassroomsArgs = map[int16]string{ - 1: "request", +var fieldIDToName_LaunchScreenServiceDeleteImageArgs = map[int16]string{ + 1: "req", } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) IsSetRequest() bool { - return p.Request != nil +func (p *LaunchScreenServiceDeleteImageArgs) IsSetReq() bool { + return p.Req != nil } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) Read(iprot thrift.TProtocol) (err error) { +func (p *LaunchScreenServiceDeleteImageArgs) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -1532,7 +8122,7 @@ ReadStructBeginError: 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_ClassRoomServiceGetEmptyClassroomsArgs[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceDeleteImageArgs[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -1541,19 +8131,19 @@ ReadFieldEndError: ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } - -func (p *ClassRoomServiceGetEmptyClassroomsArgs) ReadField1(iprot thrift.TProtocol) error { - _field := NewEmptyClassroomRequest() + +func (p *LaunchScreenServiceDeleteImageArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewDeleteImageRequest() if err := _field.Read(iprot); err != nil { return err } - p.Request = _field + p.Req = _field return nil } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) Write(oprot thrift.TProtocol) (err error) { +func (p *LaunchScreenServiceDeleteImageArgs) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetEmptyClassrooms_args"); err != nil { + if err = oprot.WriteStructBegin("DeleteImage_args"); err != nil { goto WriteStructBeginError } if p != nil { @@ -1579,11 +8169,11 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("request", thrift.STRUCT, 1); err != nil { +func (p *LaunchScreenServiceDeleteImageArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("req", thrift.STRUCT, 1); err != nil { goto WriteFieldBeginError } - if err := p.Request.Write(oprot); err != nil { + if err := p.Req.Write(oprot); err != nil { return err } if err = oprot.WriteFieldEnd(); err != nil { @@ -1596,43 +8186,43 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) String() string { +func (p *LaunchScreenServiceDeleteImageArgs) String() string { if p == nil { return "" } - return fmt.Sprintf("ClassRoomServiceGetEmptyClassroomsArgs(%+v)", *p) + return fmt.Sprintf("LaunchScreenServiceDeleteImageArgs(%+v)", *p) } -type ClassRoomServiceGetEmptyClassroomsResult struct { - Success *EmptyClassroomResponse `thrift:"success,0,optional"` +type LaunchScreenServiceDeleteImageResult struct { + Success *DeleteImageResponse `thrift:"success,0,optional"` } -func NewClassRoomServiceGetEmptyClassroomsResult() *ClassRoomServiceGetEmptyClassroomsResult { - return &ClassRoomServiceGetEmptyClassroomsResult{} +func NewLaunchScreenServiceDeleteImageResult() *LaunchScreenServiceDeleteImageResult { + return &LaunchScreenServiceDeleteImageResult{} } -func (p *ClassRoomServiceGetEmptyClassroomsResult) InitDefault() { +func (p *LaunchScreenServiceDeleteImageResult) InitDefault() { } -var ClassRoomServiceGetEmptyClassroomsResult_Success_DEFAULT *EmptyClassroomResponse +var LaunchScreenServiceDeleteImageResult_Success_DEFAULT *DeleteImageResponse -func (p *ClassRoomServiceGetEmptyClassroomsResult) GetSuccess() (v *EmptyClassroomResponse) { +func (p *LaunchScreenServiceDeleteImageResult) GetSuccess() (v *DeleteImageResponse) { if !p.IsSetSuccess() { - return ClassRoomServiceGetEmptyClassroomsResult_Success_DEFAULT + return LaunchScreenServiceDeleteImageResult_Success_DEFAULT } return p.Success } -var fieldIDToName_ClassRoomServiceGetEmptyClassroomsResult = map[int16]string{ +var fieldIDToName_LaunchScreenServiceDeleteImageResult = map[int16]string{ 0: "success", } -func (p *ClassRoomServiceGetEmptyClassroomsResult) IsSetSuccess() bool { +func (p *LaunchScreenServiceDeleteImageResult) IsSetSuccess() bool { return p.Success != nil } -func (p *ClassRoomServiceGetEmptyClassroomsResult) Read(iprot thrift.TProtocol) (err error) { +func (p *LaunchScreenServiceDeleteImageResult) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -1678,7 +8268,7 @@ ReadStructBeginError: 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_ClassRoomServiceGetEmptyClassroomsResult[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceDeleteImageResult[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -1688,8 +8278,8 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *ClassRoomServiceGetEmptyClassroomsResult) ReadField0(iprot thrift.TProtocol) error { - _field := NewEmptyClassroomResponse() +func (p *LaunchScreenServiceDeleteImageResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewDeleteImageResponse() if err := _field.Read(iprot); err != nil { return err } @@ -1697,9 +8287,9 @@ func (p *ClassRoomServiceGetEmptyClassroomsResult) ReadField0(iprot thrift.TProt return nil } -func (p *ClassRoomServiceGetEmptyClassroomsResult) Write(oprot thrift.TProtocol) (err error) { +func (p *LaunchScreenServiceDeleteImageResult) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetEmptyClassrooms_result"); err != nil { + if err = oprot.WriteStructBegin("DeleteImage_result"); err != nil { goto WriteStructBeginError } if p != nil { @@ -1725,7 +8315,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *ClassRoomServiceGetEmptyClassroomsResult) writeField0(oprot thrift.TProtocol) (err error) { +func (p *LaunchScreenServiceDeleteImageResult) writeField0(oprot thrift.TProtocol) (err error) { if p.IsSetSuccess() { if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { goto WriteFieldBeginError @@ -1744,181 +8334,43 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) } -func (p *ClassRoomServiceGetEmptyClassroomsResult) String() string { +func (p *LaunchScreenServiceDeleteImageResult) String() string { if p == nil { return "" } - return fmt.Sprintf("ClassRoomServiceGetEmptyClassroomsResult(%+v)", *p) - -} - -type UserServiceProcessor struct { - processorMap map[string]thrift.TProcessorFunction - handler UserService -} - -func (p *UserServiceProcessor) AddToProcessorMap(key string, processor thrift.TProcessorFunction) { - p.processorMap[key] = processor -} - -func (p *UserServiceProcessor) GetProcessorFunction(key string) (processor thrift.TProcessorFunction, ok bool) { - processor, ok = p.processorMap[key] - return processor, ok -} - -func (p *UserServiceProcessor) ProcessorMap() map[string]thrift.TProcessorFunction { - return p.processorMap -} - -func NewUserServiceProcessor(handler UserService) *UserServiceProcessor { - self := &UserServiceProcessor{handler: handler, processorMap: make(map[string]thrift.TProcessorFunction)} - self.AddToProcessorMap("GetLoginData", &userServiceProcessorGetLoginData{handler: handler}) - self.AddToProcessorMap("GetValidateCode", &userServiceProcessorGetValidateCode{handler: handler}) - return self -} -func (p *UserServiceProcessor) Process(ctx context.Context, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { - name, _, seqId, err := iprot.ReadMessageBegin() - if err != nil { - return false, err - } - if processor, ok := p.GetProcessorFunction(name); ok { - return processor.Process(ctx, seqId, iprot, oprot) - } - iprot.Skip(thrift.STRUCT) - iprot.ReadMessageEnd() - x := thrift.NewTApplicationException(thrift.UNKNOWN_METHOD, "Unknown function "+name) - oprot.WriteMessageBegin(name, thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return false, x -} - -type userServiceProcessorGetLoginData struct { - handler UserService -} - -func (p *userServiceProcessorGetLoginData) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { - args := UserServiceGetLoginDataArgs{} - if err = args.Read(iprot); err != nil { - iprot.ReadMessageEnd() - x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) - oprot.WriteMessageBegin("GetLoginData", thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return false, err - } - - iprot.ReadMessageEnd() - var err2 error - result := UserServiceGetLoginDataResult{} - var retval *GetLoginDataResponse - if retval, err2 = p.handler.GetLoginData(ctx, args.Request); err2 != nil { - x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetLoginData: "+err2.Error()) - oprot.WriteMessageBegin("GetLoginData", thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return true, err2 - } else { - result.Success = retval - } - if err2 = oprot.WriteMessageBegin("GetLoginData", 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 userServiceProcessorGetValidateCode struct { - handler UserService -} - -func (p *userServiceProcessorGetValidateCode) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { - args := UserServiceGetValidateCodeArgs{} - if err = args.Read(iprot); err != nil { - iprot.ReadMessageEnd() - x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) - oprot.WriteMessageBegin("GetValidateCode", thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return false, err - } + return fmt.Sprintf("LaunchScreenServiceDeleteImageResult(%+v)", *p) - iprot.ReadMessageEnd() - var err2 error - result := UserServiceGetValidateCodeResult{} - var retval *GetValidateCodeResponse - if retval, err2 = p.handler.GetValidateCode(ctx, args.Request); err2 != nil { - x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetValidateCode: "+err2.Error()) - oprot.WriteMessageBegin("GetValidateCode", thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return true, err2 - } else { - result.Success = retval - } - if err2 = oprot.WriteMessageBegin("GetValidateCode", 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 UserServiceGetLoginDataArgs struct { - Request *GetLoginDataRequest `thrift:"request,1"` +type LaunchScreenServiceMobileGetImageArgs struct { + Req *MobileGetImageRequest `thrift:"req,1"` } -func NewUserServiceGetLoginDataArgs() *UserServiceGetLoginDataArgs { - return &UserServiceGetLoginDataArgs{} +func NewLaunchScreenServiceMobileGetImageArgs() *LaunchScreenServiceMobileGetImageArgs { + return &LaunchScreenServiceMobileGetImageArgs{} } -func (p *UserServiceGetLoginDataArgs) InitDefault() { +func (p *LaunchScreenServiceMobileGetImageArgs) InitDefault() { } -var UserServiceGetLoginDataArgs_Request_DEFAULT *GetLoginDataRequest +var LaunchScreenServiceMobileGetImageArgs_Req_DEFAULT *MobileGetImageRequest -func (p *UserServiceGetLoginDataArgs) GetRequest() (v *GetLoginDataRequest) { - if !p.IsSetRequest() { - return UserServiceGetLoginDataArgs_Request_DEFAULT +func (p *LaunchScreenServiceMobileGetImageArgs) GetReq() (v *MobileGetImageRequest) { + if !p.IsSetReq() { + return LaunchScreenServiceMobileGetImageArgs_Req_DEFAULT } - return p.Request + return p.Req } -var fieldIDToName_UserServiceGetLoginDataArgs = map[int16]string{ - 1: "request", +var fieldIDToName_LaunchScreenServiceMobileGetImageArgs = map[int16]string{ + 1: "req", } -func (p *UserServiceGetLoginDataArgs) IsSetRequest() bool { - return p.Request != nil +func (p *LaunchScreenServiceMobileGetImageArgs) IsSetReq() bool { + return p.Req != nil } -func (p *UserServiceGetLoginDataArgs) Read(iprot thrift.TProtocol) (err error) { +func (p *LaunchScreenServiceMobileGetImageArgs) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -1964,7 +8416,7 @@ ReadStructBeginError: 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_UserServiceGetLoginDataArgs[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceMobileGetImageArgs[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -1974,18 +8426,18 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *UserServiceGetLoginDataArgs) ReadField1(iprot thrift.TProtocol) error { - _field := NewGetLoginDataRequest() +func (p *LaunchScreenServiceMobileGetImageArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewMobileGetImageRequest() if err := _field.Read(iprot); err != nil { return err } - p.Request = _field + p.Req = _field return nil } -func (p *UserServiceGetLoginDataArgs) Write(oprot thrift.TProtocol) (err error) { +func (p *LaunchScreenServiceMobileGetImageArgs) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetLoginData_args"); err != nil { + if err = oprot.WriteStructBegin("MobileGetImage_args"); err != nil { goto WriteStructBeginError } if p != nil { @@ -2011,11 +8463,11 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *UserServiceGetLoginDataArgs) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("request", thrift.STRUCT, 1); err != nil { +func (p *LaunchScreenServiceMobileGetImageArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("req", thrift.STRUCT, 1); err != nil { goto WriteFieldBeginError } - if err := p.Request.Write(oprot); err != nil { + if err := p.Req.Write(oprot); err != nil { return err } if err = oprot.WriteFieldEnd(); err != nil { @@ -2028,43 +8480,43 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *UserServiceGetLoginDataArgs) String() string { +func (p *LaunchScreenServiceMobileGetImageArgs) String() string { if p == nil { return "" } - return fmt.Sprintf("UserServiceGetLoginDataArgs(%+v)", *p) + return fmt.Sprintf("LaunchScreenServiceMobileGetImageArgs(%+v)", *p) } -type UserServiceGetLoginDataResult struct { - Success *GetLoginDataResponse `thrift:"success,0,optional"` +type LaunchScreenServiceMobileGetImageResult struct { + Success *MobileGetImageResponse `thrift:"success,0,optional"` } -func NewUserServiceGetLoginDataResult() *UserServiceGetLoginDataResult { - return &UserServiceGetLoginDataResult{} +func NewLaunchScreenServiceMobileGetImageResult() *LaunchScreenServiceMobileGetImageResult { + return &LaunchScreenServiceMobileGetImageResult{} } -func (p *UserServiceGetLoginDataResult) InitDefault() { +func (p *LaunchScreenServiceMobileGetImageResult) InitDefault() { } -var UserServiceGetLoginDataResult_Success_DEFAULT *GetLoginDataResponse +var LaunchScreenServiceMobileGetImageResult_Success_DEFAULT *MobileGetImageResponse -func (p *UserServiceGetLoginDataResult) GetSuccess() (v *GetLoginDataResponse) { +func (p *LaunchScreenServiceMobileGetImageResult) GetSuccess() (v *MobileGetImageResponse) { if !p.IsSetSuccess() { - return UserServiceGetLoginDataResult_Success_DEFAULT + return LaunchScreenServiceMobileGetImageResult_Success_DEFAULT } return p.Success } -var fieldIDToName_UserServiceGetLoginDataResult = map[int16]string{ +var fieldIDToName_LaunchScreenServiceMobileGetImageResult = map[int16]string{ 0: "success", } -func (p *UserServiceGetLoginDataResult) IsSetSuccess() bool { +func (p *LaunchScreenServiceMobileGetImageResult) IsSetSuccess() bool { return p.Success != nil } -func (p *UserServiceGetLoginDataResult) Read(iprot thrift.TProtocol) (err error) { +func (p *LaunchScreenServiceMobileGetImageResult) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -2110,7 +8562,7 @@ ReadStructBeginError: 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_UserServiceGetLoginDataResult[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceMobileGetImageResult[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -2120,8 +8572,8 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *UserServiceGetLoginDataResult) ReadField0(iprot thrift.TProtocol) error { - _field := NewGetLoginDataResponse() +func (p *LaunchScreenServiceMobileGetImageResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewMobileGetImageResponse() if err := _field.Read(iprot); err != nil { return err } @@ -2129,9 +8581,9 @@ func (p *UserServiceGetLoginDataResult) ReadField0(iprot thrift.TProtocol) error return nil } -func (p *UserServiceGetLoginDataResult) Write(oprot thrift.TProtocol) (err error) { +func (p *LaunchScreenServiceMobileGetImageResult) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetLoginData_result"); err != nil { + if err = oprot.WriteStructBegin("MobileGetImage_result"); err != nil { goto WriteStructBeginError } if p != nil { @@ -2157,7 +8609,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *UserServiceGetLoginDataResult) writeField0(oprot thrift.TProtocol) (err error) { +func (p *LaunchScreenServiceMobileGetImageResult) writeField0(oprot thrift.TProtocol) (err error) { if p.IsSetSuccess() { if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { goto WriteFieldBeginError @@ -2176,43 +8628,43 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) } -func (p *UserServiceGetLoginDataResult) String() string { +func (p *LaunchScreenServiceMobileGetImageResult) String() string { if p == nil { return "" } - return fmt.Sprintf("UserServiceGetLoginDataResult(%+v)", *p) + return fmt.Sprintf("LaunchScreenServiceMobileGetImageResult(%+v)", *p) } -type UserServiceGetValidateCodeArgs struct { - Request *GetValidateCodeRequest `thrift:"request,1"` +type LaunchScreenServiceAddImagePointTimeArgs struct { + Req *AddImagePointTimeRequest `thrift:"req,1"` } -func NewUserServiceGetValidateCodeArgs() *UserServiceGetValidateCodeArgs { - return &UserServiceGetValidateCodeArgs{} +func NewLaunchScreenServiceAddImagePointTimeArgs() *LaunchScreenServiceAddImagePointTimeArgs { + return &LaunchScreenServiceAddImagePointTimeArgs{} } -func (p *UserServiceGetValidateCodeArgs) InitDefault() { +func (p *LaunchScreenServiceAddImagePointTimeArgs) InitDefault() { } -var UserServiceGetValidateCodeArgs_Request_DEFAULT *GetValidateCodeRequest +var LaunchScreenServiceAddImagePointTimeArgs_Req_DEFAULT *AddImagePointTimeRequest -func (p *UserServiceGetValidateCodeArgs) GetRequest() (v *GetValidateCodeRequest) { - if !p.IsSetRequest() { - return UserServiceGetValidateCodeArgs_Request_DEFAULT +func (p *LaunchScreenServiceAddImagePointTimeArgs) GetReq() (v *AddImagePointTimeRequest) { + if !p.IsSetReq() { + return LaunchScreenServiceAddImagePointTimeArgs_Req_DEFAULT } - return p.Request + return p.Req } -var fieldIDToName_UserServiceGetValidateCodeArgs = map[int16]string{ - 1: "request", +var fieldIDToName_LaunchScreenServiceAddImagePointTimeArgs = map[int16]string{ + 1: "req", } -func (p *UserServiceGetValidateCodeArgs) IsSetRequest() bool { - return p.Request != nil +func (p *LaunchScreenServiceAddImagePointTimeArgs) IsSetReq() bool { + return p.Req != nil } -func (p *UserServiceGetValidateCodeArgs) Read(iprot thrift.TProtocol) (err error) { +func (p *LaunchScreenServiceAddImagePointTimeArgs) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -2258,7 +8710,7 @@ ReadStructBeginError: 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_UserServiceGetValidateCodeArgs[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceAddImagePointTimeArgs[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -2268,18 +8720,18 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *UserServiceGetValidateCodeArgs) ReadField1(iprot thrift.TProtocol) error { - _field := NewGetValidateCodeRequest() +func (p *LaunchScreenServiceAddImagePointTimeArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewAddImagePointTimeRequest() if err := _field.Read(iprot); err != nil { return err } - p.Request = _field + p.Req = _field return nil } -func (p *UserServiceGetValidateCodeArgs) Write(oprot thrift.TProtocol) (err error) { +func (p *LaunchScreenServiceAddImagePointTimeArgs) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetValidateCode_args"); err != nil { + if err = oprot.WriteStructBegin("AddImagePointTime_args"); err != nil { goto WriteStructBeginError } if p != nil { @@ -2305,11 +8757,11 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *UserServiceGetValidateCodeArgs) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("request", thrift.STRUCT, 1); err != nil { +func (p *LaunchScreenServiceAddImagePointTimeArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("req", thrift.STRUCT, 1); err != nil { goto WriteFieldBeginError } - if err := p.Request.Write(oprot); err != nil { + if err := p.Req.Write(oprot); err != nil { return err } if err = oprot.WriteFieldEnd(); err != nil { @@ -2322,43 +8774,43 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *UserServiceGetValidateCodeArgs) String() string { +func (p *LaunchScreenServiceAddImagePointTimeArgs) String() string { if p == nil { return "" } - return fmt.Sprintf("UserServiceGetValidateCodeArgs(%+v)", *p) + return fmt.Sprintf("LaunchScreenServiceAddImagePointTimeArgs(%+v)", *p) } -type UserServiceGetValidateCodeResult struct { - Success *GetValidateCodeResponse `thrift:"success,0,optional"` +type LaunchScreenServiceAddImagePointTimeResult struct { + Success *AddImagePointTimeResponse `thrift:"success,0,optional"` } -func NewUserServiceGetValidateCodeResult() *UserServiceGetValidateCodeResult { - return &UserServiceGetValidateCodeResult{} +func NewLaunchScreenServiceAddImagePointTimeResult() *LaunchScreenServiceAddImagePointTimeResult { + return &LaunchScreenServiceAddImagePointTimeResult{} } -func (p *UserServiceGetValidateCodeResult) InitDefault() { +func (p *LaunchScreenServiceAddImagePointTimeResult) InitDefault() { } -var UserServiceGetValidateCodeResult_Success_DEFAULT *GetValidateCodeResponse +var LaunchScreenServiceAddImagePointTimeResult_Success_DEFAULT *AddImagePointTimeResponse -func (p *UserServiceGetValidateCodeResult) GetSuccess() (v *GetValidateCodeResponse) { +func (p *LaunchScreenServiceAddImagePointTimeResult) GetSuccess() (v *AddImagePointTimeResponse) { if !p.IsSetSuccess() { - return UserServiceGetValidateCodeResult_Success_DEFAULT + return LaunchScreenServiceAddImagePointTimeResult_Success_DEFAULT } return p.Success } -var fieldIDToName_UserServiceGetValidateCodeResult = map[int16]string{ +var fieldIDToName_LaunchScreenServiceAddImagePointTimeResult = map[int16]string{ 0: "success", } -func (p *UserServiceGetValidateCodeResult) IsSetSuccess() bool { +func (p *LaunchScreenServiceAddImagePointTimeResult) IsSetSuccess() bool { return p.Success != nil } -func (p *UserServiceGetValidateCodeResult) Read(iprot thrift.TProtocol) (err error) { +func (p *LaunchScreenServiceAddImagePointTimeResult) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -2404,7 +8856,7 @@ ReadStructBeginError: 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_UserServiceGetValidateCodeResult[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceAddImagePointTimeResult[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -2414,8 +8866,8 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *UserServiceGetValidateCodeResult) ReadField0(iprot thrift.TProtocol) error { - _field := NewGetValidateCodeResponse() +func (p *LaunchScreenServiceAddImagePointTimeResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewAddImagePointTimeResponse() if err := _field.Read(iprot); err != nil { return err } @@ -2423,9 +8875,9 @@ func (p *UserServiceGetValidateCodeResult) ReadField0(iprot thrift.TProtocol) er return nil } -func (p *UserServiceGetValidateCodeResult) Write(oprot thrift.TProtocol) (err error) { +func (p *LaunchScreenServiceAddImagePointTimeResult) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetValidateCode_result"); err != nil { + if err = oprot.WriteStructBegin("AddImagePointTime_result"); err != nil { goto WriteStructBeginError } if p != nil { @@ -2451,7 +8903,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *UserServiceGetValidateCodeResult) writeField0(oprot thrift.TProtocol) (err error) { +func (p *LaunchScreenServiceAddImagePointTimeResult) writeField0(oprot thrift.TProtocol) (err error) { if p.IsSetSuccess() { if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { goto WriteFieldBeginError @@ -2470,10 +8922,10 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) } -func (p *UserServiceGetValidateCodeResult) String() string { +func (p *LaunchScreenServiceAddImagePointTimeResult) String() string { if p == nil { return "" } - return fmt.Sprintf("UserServiceGetValidateCodeResult(%+v)", *p) + return fmt.Sprintf("LaunchScreenServiceAddImagePointTimeResult(%+v)", *p) } diff --git a/cmd/api/biz/model/model/model.go b/cmd/api/biz/model/model/model.go index d5a8271..c0f9e95 100644 --- a/cmd/api/biz/model/model/model.go +++ b/cmd/api/biz/model/model/model.go @@ -212,7 +212,9 @@ func (p *BaseResp) String() string { // 由前端给的登陆信息,包括id和cookies, 这个struct仅用于测试返回数据,因为登录实现在前端完成,不会在实际项目中使用 type LoginData struct { - ID string `thrift:"id,1,required" form:"id,required" json:"id,required" query:"id,required"` + //教务处给出的标识,它的组成是时间+学号 + ID string `thrift:"id,1,required" form:"id,required" json:"id,required" query:"id,required"` + //登录凭证,访问资源的时候应该必须携带cookies Cookies []string `thrift:"cookies,2,required" form:"cookies,required" json:"cookies,required" query:"cookies,required"` } @@ -434,10 +436,14 @@ func (p *LoginData) String() string { // Classroom 前端想要返回的fields type Classroom struct { - Build string `thrift:"build,1,required" form:"build,required" json:"build,required" query:"build,required"` + //空教室所在楼,例 西三 + Build string `thrift:"build,1,required" form:"build,required" json:"build,required" query:"build,required"` + //空教室,例 旗山西3-104 Location string `thrift:"location,2,required" form:"location,required" json:"location,required" query:"location,required"` + //可容纳人数,例 153人 Capacity string `thrift:"capacity,3,required" form:"capacity,required" json:"capacity,required" query:"capacity,required"` - Type string `thrift:"type,4,required" form:"type,required" json:"type,required" query:"type,required"` + //教师类型,例 智慧教室普通型 + Type string `thrift:"type,4,required" form:"type,required" json:"type,required" query:"type,required"` } func NewClassroom() *Classroom { @@ -739,3 +745,836 @@ func (p *Classroom) String() string { return fmt.Sprintf("Classroom(%+v)", *p) } + +// Picture 开屏页的所有字段 +type Picture struct { + //sf自动生成的id + ID int64 `thrift:"id,1" form:"id" json:"id" query:"id"` + //图片地址 + URL string `thrift:"url,3" form:"url" json:"url" query:"url"` + //type字段的网址/uri + Href string `thrift:"href,4" form:"href" json:"href" query:"href"` + //开屏页点击区域/工具箱图片下方文字区域的文字 + Text string `thrift:"text,5" form:"text" json:"text" query:"text"` + //1为空,2为页面跳转,3为app跳转 + Type int64 `thrift:"type,6" form:"type" json:"type" query:"type"` + //开屏页被推送展示的次数 + ShowTimes *int64 `thrift:"show_times,7,optional" form:"show_times" json:"show_times,omitempty" query:"show_times"` + //点击查看开屏页的次数 + PointTimes *int64 `thrift:"point_times,8,optional" form:"point_times" json:"point_times,omitempty" query:"point_times"` + //开屏时长(秒) + Duration int64 `thrift:"duration,9" form:"duration" json:"duration" query:"duration"` + //s_type,1为开屏页,2为轮播图,3为生日当天的开屏页 + SType *int64 `thrift:"s_type,10,optional" form:"s_type" json:"s_type,omitempty" query:"s_type"` + //一天内的展示次数 + Frequency int64 `thrift:"frequency,11" form:"frequency" json:"frequency" query:"frequency"` + //开始推送的时间戳 + StartAt int64 `thrift:"start_at,12" form:"start_at" json:"start_at" query:"start_at"` + //结束推送的时间戳 + EndAt int64 `thrift:"end_at,13" form:"end_at" json:"end_at" query:"end_at"` + //比如6表示6点 + StartTime int64 `thrift:"start_time,14" form:"start_time" json:"start_time" query:"start_time"` + //比如24 这样就表示6-24点期间会推送该图片 + EndTime int64 `thrift:"end_time,15" form:"end_time" json:"end_time" query:"end_time"` + //推送对象,通过正则里是否有学号来判断是否为推送目标 + Regex string `thrift:"regex,16" form:"regex" json:"regex" query:"regex"` +} + +func NewPicture() *Picture { + return &Picture{} +} + +func (p *Picture) InitDefault() { +} + +func (p *Picture) GetID() (v int64) { + return p.ID +} + +func (p *Picture) GetURL() (v string) { + return p.URL +} + +func (p *Picture) GetHref() (v string) { + return p.Href +} + +func (p *Picture) GetText() (v string) { + return p.Text +} + +func (p *Picture) GetType() (v int64) { + return p.Type +} + +var Picture_ShowTimes_DEFAULT int64 + +func (p *Picture) GetShowTimes() (v int64) { + if !p.IsSetShowTimes() { + return Picture_ShowTimes_DEFAULT + } + return *p.ShowTimes +} + +var Picture_PointTimes_DEFAULT int64 + +func (p *Picture) GetPointTimes() (v int64) { + if !p.IsSetPointTimes() { + return Picture_PointTimes_DEFAULT + } + return *p.PointTimes +} + +func (p *Picture) GetDuration() (v int64) { + return p.Duration +} + +var Picture_SType_DEFAULT int64 + +func (p *Picture) GetSType() (v int64) { + if !p.IsSetSType() { + return Picture_SType_DEFAULT + } + return *p.SType +} + +func (p *Picture) GetFrequency() (v int64) { + return p.Frequency +} + +func (p *Picture) GetStartAt() (v int64) { + return p.StartAt +} + +func (p *Picture) GetEndAt() (v int64) { + return p.EndAt +} + +func (p *Picture) GetStartTime() (v int64) { + return p.StartTime +} + +func (p *Picture) GetEndTime() (v int64) { + return p.EndTime +} + +func (p *Picture) GetRegex() (v string) { + return p.Regex +} + +var fieldIDToName_Picture = map[int16]string{ + 1: "id", + 3: "url", + 4: "href", + 5: "text", + 6: "type", + 7: "show_times", + 8: "point_times", + 9: "duration", + 10: "s_type", + 11: "frequency", + 12: "start_at", + 13: "end_at", + 14: "start_time", + 15: "end_time", + 16: "regex", +} + +func (p *Picture) IsSetShowTimes() bool { + return p.ShowTimes != nil +} + +func (p *Picture) IsSetPointTimes() bool { + return p.PointTimes != nil +} + +func (p *Picture) IsSetSType() bool { + return p.SType != nil +} + +func (p *Picture) 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.I64 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.STRING { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 4: + if fieldTypeId == thrift.STRING { + if err = p.ReadField4(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 5: + if fieldTypeId == thrift.STRING { + if err = p.ReadField5(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 6: + if fieldTypeId == thrift.I64 { + if err = p.ReadField6(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 7: + if fieldTypeId == thrift.I64 { + if err = p.ReadField7(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 8: + if fieldTypeId == thrift.I64 { + if err = p.ReadField8(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 9: + if fieldTypeId == thrift.I64 { + if err = p.ReadField9(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 10: + if fieldTypeId == thrift.I64 { + if err = p.ReadField10(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 11: + if fieldTypeId == thrift.I64 { + if err = p.ReadField11(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 12: + if fieldTypeId == thrift.I64 { + if err = p.ReadField12(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 13: + if fieldTypeId == thrift.I64 { + if err = p.ReadField13(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 14: + if fieldTypeId == thrift.I64 { + if err = p.ReadField14(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 15: + if fieldTypeId == thrift.I64 { + if err = p.ReadField15(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 16: + if fieldTypeId == thrift.STRING { + if err = p.ReadField16(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_Picture[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 *Picture) ReadField1(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.ID = _field + return nil +} +func (p *Picture) ReadField3(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.URL = _field + return nil +} +func (p *Picture) ReadField4(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Href = _field + return nil +} +func (p *Picture) ReadField5(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Text = _field + return nil +} +func (p *Picture) ReadField6(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.Type = _field + return nil +} +func (p *Picture) ReadField7(iprot thrift.TProtocol) error { + + var _field *int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = &v + } + p.ShowTimes = _field + return nil +} +func (p *Picture) ReadField8(iprot thrift.TProtocol) error { + + var _field *int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = &v + } + p.PointTimes = _field + return nil +} +func (p *Picture) ReadField9(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.Duration = _field + return nil +} +func (p *Picture) ReadField10(iprot thrift.TProtocol) error { + + var _field *int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = &v + } + p.SType = _field + return nil +} +func (p *Picture) ReadField11(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.Frequency = _field + return nil +} +func (p *Picture) ReadField12(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.StartAt = _field + return nil +} +func (p *Picture) ReadField13(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.EndAt = _field + return nil +} +func (p *Picture) ReadField14(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.StartTime = _field + return nil +} +func (p *Picture) ReadField15(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.EndTime = _field + return nil +} +func (p *Picture) ReadField16(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Regex = _field + return nil +} + +func (p *Picture) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("Picture"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + 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 = p.writeField5(oprot); err != nil { + fieldId = 5 + goto WriteFieldError + } + if err = p.writeField6(oprot); err != nil { + fieldId = 6 + goto WriteFieldError + } + if err = p.writeField7(oprot); err != nil { + fieldId = 7 + goto WriteFieldError + } + if err = p.writeField8(oprot); err != nil { + fieldId = 8 + goto WriteFieldError + } + if err = p.writeField9(oprot); err != nil { + fieldId = 9 + goto WriteFieldError + } + if err = p.writeField10(oprot); err != nil { + fieldId = 10 + goto WriteFieldError + } + if err = p.writeField11(oprot); err != nil { + fieldId = 11 + goto WriteFieldError + } + if err = p.writeField12(oprot); err != nil { + fieldId = 12 + goto WriteFieldError + } + if err = p.writeField13(oprot); err != nil { + fieldId = 13 + goto WriteFieldError + } + if err = p.writeField14(oprot); err != nil { + fieldId = 14 + goto WriteFieldError + } + if err = p.writeField15(oprot); err != nil { + fieldId = 15 + goto WriteFieldError + } + if err = p.writeField16(oprot); err != nil { + fieldId = 16 + 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 *Picture) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("id", thrift.I64, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(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 *Picture) writeField3(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("url", thrift.STRING, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.URL); 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 *Picture) writeField4(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("href", thrift.STRING, 4); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Href); 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 *Picture) writeField5(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("text", thrift.STRING, 5); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Text); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 5 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 5 end error: ", p), err) +} + +func (p *Picture) writeField6(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("type", thrift.I64, 6); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.Type); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 6 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 6 end error: ", p), err) +} + +func (p *Picture) writeField7(oprot thrift.TProtocol) (err error) { + if p.IsSetShowTimes() { + if err = oprot.WriteFieldBegin("show_times", thrift.I64, 7); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(*p.ShowTimes); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 7 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 7 end error: ", p), err) +} + +func (p *Picture) writeField8(oprot thrift.TProtocol) (err error) { + if p.IsSetPointTimes() { + if err = oprot.WriteFieldBegin("point_times", thrift.I64, 8); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(*p.PointTimes); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 8 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 8 end error: ", p), err) +} + +func (p *Picture) writeField9(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("duration", thrift.I64, 9); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.Duration); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 9 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 9 end error: ", p), err) +} + +func (p *Picture) writeField10(oprot thrift.TProtocol) (err error) { + if p.IsSetSType() { + if err = oprot.WriteFieldBegin("s_type", thrift.I64, 10); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(*p.SType); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 10 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 10 end error: ", p), err) +} + +func (p *Picture) writeField11(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("frequency", thrift.I64, 11); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.Frequency); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 11 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 11 end error: ", p), err) +} + +func (p *Picture) writeField12(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("start_at", thrift.I64, 12); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.StartAt); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 12 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 12 end error: ", p), err) +} + +func (p *Picture) writeField13(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("end_at", thrift.I64, 13); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.EndAt); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 13 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 13 end error: ", p), err) +} + +func (p *Picture) writeField14(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("start_time", thrift.I64, 14); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.StartTime); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 14 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 14 end error: ", p), err) +} + +func (p *Picture) writeField15(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("end_time", thrift.I64, 15); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.EndTime); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 15 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 15 end error: ", p), err) +} + +func (p *Picture) writeField16(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("regex", thrift.STRING, 16); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Regex); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 16 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 16 end error: ", p), err) +} + +func (p *Picture) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("Picture(%+v)", *p) + +} diff --git a/cmd/api/biz/pack/launch_screen.go b/cmd/api/biz/pack/launch_screen.go new file mode 100644 index 0000000..fdb2bfe --- /dev/null +++ b/cmd/api/biz/pack/launch_screen.go @@ -0,0 +1,50 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package pack + +import ( + api "github.com/west2-online/fzuhelper-server/cmd/api/biz/model/model" + "github.com/west2-online/fzuhelper-server/kitex_gen/model" +) + +func BuildLaunchScreen(image *model.Picture) *api.Picture { + return &api.Picture{ + ID: image.Id, + URL: image.Url, + Type: image.Type, + Duration: image.Duration, + Href: image.Href, + ShowTimes: image.ShowTimes, + PointTimes: image.PointTimes, + SType: image.SType, + Frequency: image.Frequency, + Text: image.Text, + StartAt: image.StartAt, + EndAt: image.EndAt, + StartTime: image.StartTime, + EndTime: image.EndTime, + Regex: image.Regex, + } +} + +func BuildLaunchScreenList(kitexPictures []*model.Picture) []*api.Picture { + imagesResp := make([]*api.Picture, 0) + for _, v := range kitexPictures { + imagesResp = append(imagesResp, BuildLaunchScreen(v)) + } + return imagesResp +} diff --git a/cmd/api/biz/router/api/api.go b/cmd/api/biz/router/api/api.go index 52a6b53..e4519a3 100644 --- a/cmd/api/biz/router/api/api.go +++ b/cmd/api/biz/router/api/api.go @@ -55,4 +55,19 @@ func Register(r *server.Hertz) { } } } + { + _launch_screen := root.Group("/launch_screen", _launch_screenMw()...) + { + _api0 := _launch_screen.Group("/api", _api0Mw()...) + _api0.DELETE("/image", append(_deleteimageMw(), api.DeleteImage)...) + _image := _api0.Group("/image", _imageMw()...) + _image.GET("/point", append(_addimagepointtimeMw(), api.AddImagePointTime)...) + _api0.GET("/image", append(_getimageMw(), api.GetImage)...) + _image0 := _api0.Group("/image", _image0Mw()...) + _image0.PUT("/img", append(_changeimageMw(), api.ChangeImage)...) + _api0.POST("/image", append(_createimageMw(), api.CreateImage)...) + _api0.PUT("/image", append(_changeimagepropertyMw(), api.ChangeImageProperty)...) + _api0.GET("/screen", append(_mobilegetimageMw(), api.MobileGetImage)...) + } + } } diff --git a/cmd/api/biz/router/api/middleware.go b/cmd/api/biz/router/api/middleware.go index bcf8200..16987ec 100644 --- a/cmd/api/biz/router/api/middleware.go +++ b/cmd/api/biz/router/api/middleware.go @@ -71,3 +71,58 @@ func _getvalidatecodeMw() []app.HandlerFunc { // your code... return nil } + +func _launch_screenMw() []app.HandlerFunc { + // your code... + return nil +} + +func _api0Mw() []app.HandlerFunc { + // your code... + return nil +} + +func _imageMw() []app.HandlerFunc { + // your code... + return nil +} + +func _deleteimageMw() []app.HandlerFunc { + // your code... + return nil +} + +func _addimagepointtimeMw() []app.HandlerFunc { + // your code... + return nil +} + +func _image0Mw() []app.HandlerFunc { + // your code... + return nil +} + +func _getimageMw() []app.HandlerFunc { + // your code... + return nil +} + +func _changeimageMw() []app.HandlerFunc { + // your code... + return nil +} + +func _createimageMw() []app.HandlerFunc { + // your code... + return nil +} + +func _changeimagepropertyMw() []app.HandlerFunc { + // your code... + return nil +} + +func _mobilegetimageMw() []app.HandlerFunc { + // your code... + return nil +} diff --git a/cmd/api/biz/rpc/init.go b/cmd/api/biz/rpc/init.go index 3bd97c5..4811735 100644 --- a/cmd/api/biz/rpc/init.go +++ b/cmd/api/biz/rpc/init.go @@ -18,15 +18,20 @@ package rpc import ( "github.com/west2-online/fzuhelper-server/kitex_gen/classroom/classroomservice" + "github.com/west2-online/fzuhelper-server/kitex_gen/launch_screen/launchscreenservice" "github.com/west2-online/fzuhelper-server/kitex_gen/user/userservice" ) var ( - classroomClient classroomservice.Client - userClient userservice.Client + classroomClient classroomservice.Client + userClient userservice.Client + launchScreenClient launchscreenservice.Client + launchScreenStreamClient launchscreenservice.StreamClient ) func Init() { InitClassroomRPC() InitUserRPC() + InitLaunchScreenRPC() + InitLaunchScreenStreamRPC() } diff --git a/cmd/api/biz/rpc/launch_screen.go b/cmd/api/biz/rpc/launch_screen.go new file mode 100644 index 0000000..b00505f --- /dev/null +++ b/cmd/api/biz/rpc/launch_screen.go @@ -0,0 +1,163 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package rpc + +import ( + "context" + + "github.com/west2-online/fzuhelper-server/kitex_gen/launch_screen" + "github.com/west2-online/fzuhelper-server/kitex_gen/model" + "github.com/west2-online/fzuhelper-server/pkg/client" + "github.com/west2-online/fzuhelper-server/pkg/errno" + "github.com/west2-online/fzuhelper-server/pkg/logger" + "github.com/west2-online/fzuhelper-server/pkg/utils" +) + +func InitLaunchScreenRPC() { + client, err := client.InitLaunchScreenRPC() + if err != nil { + logger.Fatalf("api.rpc.launch_screen InitLaunchScreenRPC failed, err %v", err) + } + launchScreenClient = *client +} + +func InitLaunchScreenStreamRPC() { + client, err := client.InitLaunchScreenStreamRPC() + if err != nil { + logger.Fatalf("api.rpc.launch_screen InitLaunchScreenStreamRPC failed, err %v", err) + } + launchScreenStreamClient = *client +} + +func CreateImageRPC(ctx context.Context, req *launch_screen.CreateImageRequest, file [][]byte) (image *model.Picture, err error) { + stream, err := launchScreenStreamClient.CreateImage(ctx) + if err != nil { + logger.Errorf("CreateImageRPC: RPC called failed: %v", err.Error()) + return nil, errno.InternalServiceError.WithMessage(err.Error()) + } + // 第一次先发送字段 + err = stream.Send(req) + if err != nil { + logger.Errorf("CreateImageRPC: RPC stream failed: %v", err.Error()) + return nil, errno.InternalServiceError.WithMessage(err.Error()) + } + // 之后发送文件 + for _, fileBlock := range file { + err = stream.Send(&launch_screen.CreateImageRequest{Image: fileBlock}) + if err != nil { + logger.Errorf("CreateImageRPC: RPC stream failed: %v", err.Error()) + return nil, errno.InternalServiceError.WithMessage(err.Error()) + } + } + // Tell the server there'll be no more message from client + resp, err := stream.CloseAndRecv() + if err != nil { + logger.Errorf("CreateImageRPC: RPC called failed: %v", err.Error()) + return nil, errno.InternalServiceError.WithMessage(err.Error()) + } + + return resp.Picture, nil +} + +func GetImageRPC(ctx context.Context, req *launch_screen.GetImageRequest) (image *model.Picture, err error) { + resp, err := launchScreenClient.GetImage(ctx, req) + if err != nil { + logger.Errorf("GetImageRPC: RPC called failed: %v", err.Error()) + return nil, errno.InternalServiceError.WithMessage(err.Error()) + } + if !utils.IsSuccess(resp.Base) { + return nil, errno.NewErrNo(resp.Base.Code, resp.Base.Msg) + } + return resp.Picture, nil +} + +func ChangeImagePropertyRPC(ctx context.Context, req *launch_screen.ChangeImagePropertyRequest) (image *model.Picture, err error) { + resp, err := launchScreenClient.ChangeImageProperty(ctx, req) + if err != nil { + logger.Errorf("ChangeImagePropertyRPC: RPC called failed: %v", err.Error()) + return nil, errno.InternalServiceError.WithMessage(err.Error()) + } + if !utils.IsSuccess(resp.Base) { + return nil, errno.NewErrNo(resp.Base.Code, resp.Base.Msg) + } + return resp.Picture, nil +} + +func ChangeImageRPC(ctx context.Context, req *launch_screen.ChangeImageRequest, file [][]byte) (image *model.Picture, err error) { + stream, err := launchScreenStreamClient.ChangeImage(ctx) + if err != nil { + logger.Errorf("ChangeImageRPC: RPC called failed: %v", err.Error()) + return nil, errno.InternalServiceError.WithMessage(err.Error()) + } + // 第一次先发送字段 + err = stream.Send(req) + if err != nil { + logger.Errorf("ChangeImageRPC: RPC stream failed: %v", err.Error()) + return nil, errno.InternalServiceError.WithMessage(err.Error()) + } + // 之后发送文件 + for _, fileBlock := range file { + err = stream.Send(&launch_screen.ChangeImageRequest{Image: fileBlock}) + if err != nil { + logger.Errorf("ChangeImageRPC: RPC stream failed: %v", err.Error()) + return nil, errno.InternalServiceError.WithMessage(err.Error()) + } + } + // Tell the server there'll be no more message from client + resp, err := stream.CloseAndRecv() + if err != nil { + logger.Errorf("ChangeImageRPC: RPC called failed: %v", err.Error()) + return nil, errno.InternalServiceError.WithMessage(err.Error()) + } + return resp.Picture, nil +} + +func DeleteImageRPC(ctx context.Context, req *launch_screen.DeleteImageRequest) (image *model.Picture, err error) { + resp, err := launchScreenClient.DeleteImage(ctx, req) + if err != nil { + logger.Errorf("DeleteImageRPC: RPC called failed: %v", err.Error()) + return nil, errno.InternalServiceError.WithMessage(err.Error()) + } + if !utils.IsSuccess(resp.Base) { + return nil, errno.NewErrNo(resp.Base.Code, resp.Base.Msg) + } + return resp.Picture, nil +} + +func MobileGetImageRPC(ctx context.Context, req *launch_screen.MobileGetImageRequest) (image []*model.Picture, cnt *int64, err error) { + resp, err := launchScreenClient.MobileGetImage(ctx, req) + if err != nil { + logger.Errorf("MobileGetImageRPC: RPC called failed: %v", err.Error()) + return nil, nil, errno.InternalServiceError.WithMessage(err.Error()) + } + if !utils.IsSuccess(resp.Base) { + return nil, nil, errno.NewErrNo(resp.Base.Code, resp.Base.Msg) + } + return resp.PictureList, resp.Count, nil +} + +func AddImagePointTimeRPC(ctx context.Context, req *launch_screen.AddImagePointTimeRequest) (image *model.Picture, err error) { + resp, err := launchScreenClient.AddImagePointTime(ctx, req) + if err != nil { + logger.Errorf("AddImagePointTimeRPC: RPC called failed: %v", err.Error()) + return nil, errno.InternalServiceError.WithMessage(err.Error()) + } + if !utils.IsSuccess(resp.Base) { + return nil, errno.NewErrNo(resp.Base.Code, resp.Base.Msg) + } + return resp.Picture, nil +} diff --git a/cmd/launch_screen/build.sh b/cmd/launch_screen/build.sh new file mode 100644 index 0000000..1e9c7a4 --- /dev/null +++ b/cmd/launch_screen/build.sh @@ -0,0 +1,26 @@ +# Copyright 2024 The west2-online Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +#!/usr/bin/env bash +RUN_NAME="launch_screen" + +mkdir -p output/bin +cp script/* output/ +chmod +x output/bootstrap.sh + +if [ "$IS_SYSTEM_TEST_ENV" != "1" ]; then + go build -o output/bin/${RUN_NAME} +else + go test -c -covermode=set -o output/bin/${RUN_NAME} -coverpkg=./... +fi diff --git a/cmd/launch_screen/handler.go b/cmd/launch_screen/handler.go new file mode 100644 index 0000000..bdc98d6 --- /dev/null +++ b/cmd/launch_screen/handler.go @@ -0,0 +1,66 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package main + +import ( + "context" + + launch_screen "github.com/west2-online/fzuhelper-server/kitex_gen/launch_screen" +) + +// LaunchScreenServiceImpl implements the last service interface defined in the IDL. +type LaunchScreenServiceImpl struct{} + +func (s *LaunchScreenServiceImpl) CreateImage(stream launch_screen.LaunchScreenService_CreateImageServer) (err error) { + println("CreateImage called") + return +} + +// GetImage implements the LaunchScreenServiceImpl interface. +func (s *LaunchScreenServiceImpl) GetImage(ctx context.Context, req *launch_screen.GetImageRequest) (resp *launch_screen.GetImageResponse, err error) { + // TODO: Your code here... + return +} + +// ChangeImageProperty implements the LaunchScreenServiceImpl interface. +func (s *LaunchScreenServiceImpl) ChangeImageProperty(ctx context.Context, req *launch_screen.ChangeImagePropertyRequest) (resp *launch_screen.ChangeImagePropertyResponse, err error) { + // TODO: Your code here... + return +} + +func (s *LaunchScreenServiceImpl) ChangeImage(stream launch_screen.LaunchScreenService_ChangeImageServer) (err error) { + println("ChangeImage called") + return +} + +// DeleteImage implements the LaunchScreenServiceImpl interface. +func (s *LaunchScreenServiceImpl) DeleteImage(ctx context.Context, req *launch_screen.DeleteImageRequest) (resp *launch_screen.DeleteImageResponse, err error) { + // TODO: Your code here... + return +} + +// MobileGetImage implements the LaunchScreenServiceImpl interface. +func (s *LaunchScreenServiceImpl) MobileGetImage(ctx context.Context, req *launch_screen.MobileGetImageRequest) (resp *launch_screen.MobileGetImageResponse, err error) { + // TODO: Your code here... + return +} + +// AddImagePointTime implements the LaunchScreenServiceImpl interface. +func (s *LaunchScreenServiceImpl) AddImagePointTime(ctx context.Context, req *launch_screen.AddImagePointTimeRequest) (resp *launch_screen.AddImagePointTimeResponse, err error) { + // TODO: Your code here... + return +} diff --git a/cmd/launch_screen/kitex_info.yaml b/cmd/launch_screen/kitex_info.yaml new file mode 100644 index 0000000..710ec49 --- /dev/null +++ b/cmd/launch_screen/kitex_info.yaml @@ -0,0 +1,3 @@ +kitexinfo: + ServiceName: 'launch_screen' + ToolVersion: 'v0.9.1' diff --git a/cmd/launch_screen/main.go b/cmd/launch_screen/main.go new file mode 100644 index 0000000..71e55be --- /dev/null +++ b/cmd/launch_screen/main.go @@ -0,0 +1,32 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package main + +import ( + "log" + + launch_screen "github.com/west2-online/fzuhelper-server/kitex_gen/launch_screen/launchscreenservice" +) + +func main() { + svr := launch_screen.NewServer(new(LaunchScreenServiceImpl)) + + err := svr.Run() + if err != nil { + log.Println(err.Error()) + } +} diff --git a/cmd/launch_screen/script/bootstrap.sh b/cmd/launch_screen/script/bootstrap.sh new file mode 100644 index 0000000..da96b6c --- /dev/null +++ b/cmd/launch_screen/script/bootstrap.sh @@ -0,0 +1,35 @@ +# Copyright 2024 The west2-online Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +#! /usr/bin/env bash +CURDIR=$(cd $(dirname $0); pwd) + +if [ "X$1" != "X" ]; then + RUNTIME_ROOT=$1 +else + RUNTIME_ROOT=${CURDIR} +fi + +export KITEX_RUNTIME_ROOT=$RUNTIME_ROOT +export KITEX_LOG_DIR="$RUNTIME_ROOT/log" + +if [ ! -d "$KITEX_LOG_DIR/app" ]; then + mkdir -p "$KITEX_LOG_DIR/app" +fi + +if [ ! -d "$KITEX_LOG_DIR/rpc" ]; then + mkdir -p "$KITEX_LOG_DIR/rpc" +fi + +exec "$CURDIR/bin/launch_screen" diff --git a/config/config.go b/config/config.go index e2c0ebe..548fdfc 100644 --- a/config/config.go +++ b/config/config.go @@ -39,6 +39,7 @@ var ( DefaultUser *defaultUser OSS *oss Elasticsearch *elasticsearch + Upcloud *upcloud runtime_viper = viper.New() ) @@ -97,6 +98,7 @@ func configMapping(srv string) { OSS = &c.OSS Elasticsearch = &c.Elasticsearch DefaultUser = &c.DefaultUser + Upcloud = &c.Upcloud Service = GetService(srv) } diff --git a/config/types.go b/config/types.go index 9f72240..4f7b6ba 100644 --- a/config/types.go +++ b/config/types.go @@ -77,7 +77,13 @@ type defaultUser struct { Account string `mapstructure:"account"` Password string `mapstructure:"password"` } - +type upcloud struct { + Service string + User string + Pass string + DomainName string + Path string +} type config struct { Server server Snowflake snowflake @@ -89,4 +95,5 @@ type config struct { OSS oss Elasticsearch elasticsearch DefaultUser defaultUser + Upcloud upcloud } diff --git a/idl/api.thrift b/idl/api.thrift index 610313f..63cf304 100644 --- a/idl/api.thrift +++ b/idl/api.thrift @@ -42,3 +42,107 @@ service UserService { GetValidateCodeResponse GetValidateCode(1: GetValidateCodeRequest request)(api.post="/api/v1/jwch/user/validateCode"), } + + +//launch_screen +struct CreateImageRequest { + 1: required i64 pic_type, + 2: optional i64 duration, + 3: optional string href, + 4: binary image, + 5: required i64 start_at, + 6: required i64 end_at, + 7: required i64 s_type, + 8: required i64 frequency, + 9: required i64 start_time, + 10:required i64 end_time, + 11:required string text, + 12:required string regex, +} + +struct CreateImageResponse{ + 1:model.BaseResp base, + 2:optional model.Picture picture, +} + +struct GetImageRequest{ + 1:required i64 picture_id, + +} + +struct GetImageResponse{ + 1:model.BaseResp base, + 2:optional model.Picture picture, +} + + +struct ChangeImagePropertyRequest { + 1: required i64 type,//1为空,2为页面跳转,3为app跳转 + 2: optional i64 duration, + 3: optional string href,//连接 + 4: required i64 start_at, + 5: required i64 end_at, + 6: required i64 s_type, + 7: required i64 frequency, + 8: required i64 start_time,//比如6表示6点 + 9:required i64 end_time, + 10:required string text,//描述图片 + 11:required i64 picture_id, + 12:required string regex, +} + +struct ChangeImagePropertyResponse{ + 1:model.BaseResp base, + 2:optional model.Picture picture, +} + +struct ChangeImageRequest { + 1:required i64 picture_id, + 2: binary image, +} + +struct ChangeImageResponse{ + 1:model.BaseResp base, + 2:optional model.Picture picture, +} + +struct DeleteImageRequest{ + 1:required i64 picture_id, +} + +struct DeleteImageResponse{ + 1:model.BaseResp base, + 2:optional model.Picture picture, +} + +struct MobileGetImageRequest{ + 1:required i64 type, + 2:required i64 student_id, + 3:optional string college, + 4:required string device, +} + +struct MobileGetImageResponse{ + 1:model.BaseResp base, + 2:optional i64 count, + 3:optional list picture_list, +} + +struct AddImagePointTimeRequest{ + 1:required i64 picture_id, +} + +struct AddImagePointTimeResponse{ + 1:model.BaseResp base, + 2:optional model.Picture picture, +} + +service LaunchScreenService{ + CreateImageResponse CreateImage(1:CreateImageRequest req)(api.post="/launch_screen/api/image"), + GetImageResponse GetImage(1:GetImageRequest req)(api.get="/launch_screen/api/image"), + ChangeImagePropertyResponse ChangeImageProperty(1:ChangeImagePropertyRequest req)(api.put="/launch_screen/api/image"), + ChangeImageResponse ChangeImage(1:ChangeImageRequest req)(api.put="/launch_screen/api/image/img"), + DeleteImageResponse DeleteImage(1:DeleteImageRequest req)(api.delete="/launch_screen/api/image"), + MobileGetImageResponse MobileGetImage(1:MobileGetImageRequest req)(api.get="/launch_screen/api/screen"), + AddImagePointTimeResponse AddImagePointTime(1:AddImagePointTimeRequest req)(api.get="/launch_screen/api/image/point"), +} diff --git a/idl/launch_screen.thrift b/idl/launch_screen.thrift new file mode 100644 index 0000000..073852f --- /dev/null +++ b/idl/launch_screen.thrift @@ -0,0 +1,110 @@ +namespace go launch_screen +include"model.thrift" + +struct CreateImageRequest { + 1: required i64 pic_type, + 2: optional i64 duration, + 3: optional string href, + 4: required binary image, + 5: required i64 start_at, + 6: required i64 end_at, + 7: required i64 s_type, + 8: required i64 frequency, + 9: required i64 start_time, + 10:required i64 end_time, + 11:required string text, + 12:required i64 stu_id, + 13:required i64 device_type, + 14:required string regex, + 15:i64 buffer_count, +} + +struct CreateImageResponse{ + 1:model.BaseResp base, + 2:optional model.Picture picture, +} + +struct GetImageRequest{ + 1:required i64 picture_id, + +} + +struct GetImageResponse{ + 1:model.BaseResp base, + 2:optional model.Picture picture, +} + + +struct ChangeImagePropertyRequest { + 1: required i64 pic_type,//1为空,2为页面跳转,3为app跳转 + 2: optional i64 duration, + 3: optional string href,//连接 + 4: required i64 start_at, + 5: required i64 end_at, + 6: required i64 s_type, + 7: required i64 frequency, + 8: required i64 start_time,//比如6表示6点 + 9:required i64 end_time, + 10:required string text,//描述图片 + 11:required i64 picture_id, + 12:required string regex, + +} + +struct ChangeImagePropertyResponse{ + 1:model.BaseResp base, + 2:optional model.Picture picture, +} + +struct ChangeImageRequest { + 1:required i64 picture_id, + 2:required binary image, + 3:i64 buffer_count, +} + +struct ChangeImageResponse{ + 1:model.BaseResp base, + 2:optional model.Picture picture, +} + +struct DeleteImageRequest{ + 1:required i64 picture_id, +} + +struct DeleteImageResponse{ + 1:model.BaseResp base, + 2:optional model.Picture picture, +} + +struct MobileGetImageRequest{ + 1:required i64 s_type, + 2:required i64 student_id, + 3:optional string college, + 4:required string device, +} + + +struct MobileGetImageResponse{ + 1:model.BaseResp base, + 2:optional i64 count, + 3:optional list picture_list, +} + +struct AddImagePointTimeRequest{ + 1:required i64 picture_id, +} + +struct AddImagePointTimeResponse{ + 1:model.BaseResp base, + 2:optional model.Picture picture, +} + +service LaunchScreenService{ + CreateImageResponse CreateImage(1:CreateImageRequest req)(streaming.mode="client"),//开启流式传输 + GetImageResponse GetImage(1:GetImageRequest req), + ChangeImagePropertyResponse ChangeImageProperty(1:ChangeImagePropertyRequest req), + ChangeImageResponse ChangeImage(1:ChangeImageRequest req)(streaming.mode="client"), + DeleteImageResponse DeleteImage(1:DeleteImageRequest req), + MobileGetImageResponse MobileGetImage(1:MobileGetImageRequest req), + AddImagePointTimeResponse AddImagePointTime(1:AddImagePointTimeRequest req), +} diff --git a/idl/model.thrift b/idl/model.thrift index e5db6f0..69c3102 100644 --- a/idl/model.thrift +++ b/idl/model.thrift @@ -19,3 +19,21 @@ struct Classroom { 4: required string type //教师类型,例 智慧教室普通型 } +//Picture 开屏页的所有字段 +struct Picture{ + 1:i64 id, //sf自动生成的id + 3:string url, //图片地址 + 4:string href, //type字段的网址/uri + 5:string text, //开屏页点击区域/工具箱图片下方文字区域的文字 + 6:i64 type, //1为空,2为页面跳转,3为app跳转 + 7:optional i64 show_times, //开屏页被推送展示的次数 + 8:optional i64 point_times, //点击查看开屏页的次数 + 9:i64 duration, //开屏时长(秒) + 10:optional i64 s_type, //s_type,1为开屏页,2为轮播图,3为生日当天的开屏页 + 11:i64 frequency, //一天内的展示次数 + 12:i64 start_at, //开始推送的时间戳 + 13:i64 end_at, //结束推送的时间戳 + 14:i64 start_time, //比如6表示6点 + 15:i64 end_time, //比如24 这样就表示6-24点期间会推送该图片 + 16:string regex, //推送对象,通过正则里是否有学号来判断是否为推送目标 +} diff --git a/kitex_gen/launch_screen/k-consts.go b/kitex_gen/launch_screen/k-consts.go new file mode 100644 index 0000000..b50df1d --- /dev/null +++ b/kitex_gen/launch_screen/k-consts.go @@ -0,0 +1,20 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package launch_screen + +// KitexUnusedProtection is used to prevent 'imported and not used' error. +var KitexUnusedProtection = struct{}{} diff --git a/kitex_gen/launch_screen/k-launch_screen.go b/kitex_gen/launch_screen/k-launch_screen.go new file mode 100644 index 0000000..01198d0 --- /dev/null +++ b/kitex_gen/launch_screen/k-launch_screen.go @@ -0,0 +1,5796 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by Kitex v0.9.1. DO NOT EDIT. + +package launch_screen + +import ( + "bytes" + "fmt" + "reflect" + "strings" + + "github.com/apache/thrift/lib/go/thrift" + + "github.com/cloudwego/kitex/pkg/protocol/bthrift" + + "github.com/west2-online/fzuhelper-server/kitex_gen/model" +) + +// unused protection +var ( + _ = fmt.Formatter(nil) + _ = (*bytes.Buffer)(nil) + _ = (*strings.Builder)(nil) + _ = reflect.Type(nil) + _ = thrift.TProtocol(nil) + _ = bthrift.BinaryWriter(nil) + _ = model.KitexUnusedProtection +) + +func (p *CreateImageRequest) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + var issetPicType bool = false + var issetImage bool = false + var issetStartAt bool = false + var issetEndAt bool = false + var issetSType bool = false + var issetFrequency bool = false + var issetStartTime bool = false + var issetEndTime bool = false + var issetText bool = false + var issetStuId bool = false + var issetDeviceType bool = false + var issetRegex bool = false + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetPicType = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 2: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField2(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 3: + if fieldTypeId == thrift.STRING { + l, err = p.FastReadField3(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 4: + if fieldTypeId == thrift.STRING { + l, err = p.FastReadField4(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetImage = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 5: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField5(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetStartAt = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 6: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField6(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetEndAt = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 7: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField7(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetSType = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 8: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField8(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetFrequency = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 9: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField9(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetStartTime = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 10: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField10(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetEndTime = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 11: + if fieldTypeId == thrift.STRING { + l, err = p.FastReadField11(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetText = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 12: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField12(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetStuId = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 13: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField13(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetDeviceType = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 14: + if fieldTypeId == thrift.STRING { + l, err = p.FastReadField14(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetRegex = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 15: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField15(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + if !issetPicType { + fieldId = 1 + goto RequiredFieldNotSetError + } + + if !issetImage { + fieldId = 4 + goto RequiredFieldNotSetError + } + + if !issetStartAt { + fieldId = 5 + goto RequiredFieldNotSetError + } + + if !issetEndAt { + fieldId = 6 + goto RequiredFieldNotSetError + } + + if !issetSType { + fieldId = 7 + goto RequiredFieldNotSetError + } + + if !issetFrequency { + fieldId = 8 + goto RequiredFieldNotSetError + } + + if !issetStartTime { + fieldId = 9 + goto RequiredFieldNotSetError + } + + if !issetEndTime { + fieldId = 10 + goto RequiredFieldNotSetError + } + + if !issetText { + fieldId = 11 + goto RequiredFieldNotSetError + } + + if !issetStuId { + fieldId = 12 + goto RequiredFieldNotSetError + } + + if !issetDeviceType { + fieldId = 13 + goto RequiredFieldNotSetError + } + + if !issetRegex { + fieldId = 14 + goto RequiredFieldNotSetError + } + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_CreateImageRequest[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +RequiredFieldNotSetError: + return offset, thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_CreateImageRequest[fieldId])) +} + +func (p *CreateImageRequest) FastReadField1(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.PicType = v + + } + return offset, nil +} + +func (p *CreateImageRequest) FastReadField2(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + p.Duration = &v + + } + return offset, nil +} + +func (p *CreateImageRequest) FastReadField3(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + p.Href = &v + + } + return offset, nil +} + +func (p *CreateImageRequest) FastReadField4(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadBinary(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.Image = []byte(v) + + } + return offset, nil +} + +func (p *CreateImageRequest) FastReadField5(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.StartAt = v + + } + return offset, nil +} + +func (p *CreateImageRequest) FastReadField6(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.EndAt = v + + } + return offset, nil +} + +func (p *CreateImageRequest) FastReadField7(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.SType = v + + } + return offset, nil +} + +func (p *CreateImageRequest) FastReadField8(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.Frequency = v + + } + return offset, nil +} + +func (p *CreateImageRequest) FastReadField9(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.StartTime = v + + } + return offset, nil +} + +func (p *CreateImageRequest) FastReadField10(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.EndTime = v + + } + return offset, nil +} + +func (p *CreateImageRequest) FastReadField11(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.Text = v + + } + return offset, nil +} + +func (p *CreateImageRequest) FastReadField12(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.StuId = v + + } + return offset, nil +} + +func (p *CreateImageRequest) FastReadField13(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.DeviceType = v + + } + return offset, nil +} + +func (p *CreateImageRequest) FastReadField14(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.Regex = v + + } + return offset, nil +} + +func (p *CreateImageRequest) FastReadField15(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.BufferCount = v + + } + return offset, nil +} + +// for compatibility +func (p *CreateImageRequest) FastWrite(buf []byte) int { + return 0 +} + +func (p *CreateImageRequest) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "CreateImageRequest") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + offset += p.fastWriteField2(buf[offset:], binaryWriter) + offset += p.fastWriteField5(buf[offset:], binaryWriter) + offset += p.fastWriteField6(buf[offset:], binaryWriter) + offset += p.fastWriteField7(buf[offset:], binaryWriter) + offset += p.fastWriteField8(buf[offset:], binaryWriter) + offset += p.fastWriteField9(buf[offset:], binaryWriter) + offset += p.fastWriteField10(buf[offset:], binaryWriter) + offset += p.fastWriteField12(buf[offset:], binaryWriter) + offset += p.fastWriteField13(buf[offset:], binaryWriter) + offset += p.fastWriteField15(buf[offset:], binaryWriter) + offset += p.fastWriteField3(buf[offset:], binaryWriter) + offset += p.fastWriteField4(buf[offset:], binaryWriter) + offset += p.fastWriteField11(buf[offset:], binaryWriter) + offset += p.fastWriteField14(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *CreateImageRequest) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("CreateImageRequest") + if p != nil { + l += p.field1Length() + l += p.field2Length() + l += p.field3Length() + l += p.field4Length() + l += p.field5Length() + l += p.field6Length() + l += p.field7Length() + l += p.field8Length() + l += p.field9Length() + l += p.field10Length() + l += p.field11Length() + l += p.field12Length() + l += p.field13Length() + l += p.field14Length() + l += p.field15Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *CreateImageRequest) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "pic_type", thrift.I64, 1) + offset += bthrift.Binary.WriteI64(buf[offset:], p.PicType) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *CreateImageRequest) fastWriteField2(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetDuration() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "duration", thrift.I64, 2) + offset += bthrift.Binary.WriteI64(buf[offset:], *p.Duration) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *CreateImageRequest) fastWriteField3(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetHref() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "href", thrift.STRING, 3) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, *p.Href) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *CreateImageRequest) fastWriteField4(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "image", thrift.STRING, 4) + offset += bthrift.Binary.WriteBinaryNocopy(buf[offset:], binaryWriter, []byte(p.Image)) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *CreateImageRequest) fastWriteField5(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "start_at", thrift.I64, 5) + offset += bthrift.Binary.WriteI64(buf[offset:], p.StartAt) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *CreateImageRequest) fastWriteField6(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "end_at", thrift.I64, 6) + offset += bthrift.Binary.WriteI64(buf[offset:], p.EndAt) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *CreateImageRequest) fastWriteField7(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "s_type", thrift.I64, 7) + offset += bthrift.Binary.WriteI64(buf[offset:], p.SType) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *CreateImageRequest) fastWriteField8(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "frequency", thrift.I64, 8) + offset += bthrift.Binary.WriteI64(buf[offset:], p.Frequency) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *CreateImageRequest) fastWriteField9(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "start_time", thrift.I64, 9) + offset += bthrift.Binary.WriteI64(buf[offset:], p.StartTime) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *CreateImageRequest) fastWriteField10(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "end_time", thrift.I64, 10) + offset += bthrift.Binary.WriteI64(buf[offset:], p.EndTime) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *CreateImageRequest) fastWriteField11(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "text", thrift.STRING, 11) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Text) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *CreateImageRequest) fastWriteField12(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "stu_id", thrift.I64, 12) + offset += bthrift.Binary.WriteI64(buf[offset:], p.StuId) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *CreateImageRequest) fastWriteField13(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "device_type", thrift.I64, 13) + offset += bthrift.Binary.WriteI64(buf[offset:], p.DeviceType) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *CreateImageRequest) fastWriteField14(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "regex", thrift.STRING, 14) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Regex) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *CreateImageRequest) fastWriteField15(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "buffer_count", thrift.I64, 15) + offset += bthrift.Binary.WriteI64(buf[offset:], p.BufferCount) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *CreateImageRequest) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("pic_type", thrift.I64, 1) + l += bthrift.Binary.I64Length(p.PicType) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *CreateImageRequest) field2Length() int { + l := 0 + if p.IsSetDuration() { + l += bthrift.Binary.FieldBeginLength("duration", thrift.I64, 2) + l += bthrift.Binary.I64Length(*p.Duration) + + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *CreateImageRequest) field3Length() int { + l := 0 + if p.IsSetHref() { + l += bthrift.Binary.FieldBeginLength("href", thrift.STRING, 3) + l += bthrift.Binary.StringLengthNocopy(*p.Href) + + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *CreateImageRequest) field4Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("image", thrift.STRING, 4) + l += bthrift.Binary.BinaryLengthNocopy([]byte(p.Image)) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *CreateImageRequest) field5Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("start_at", thrift.I64, 5) + l += bthrift.Binary.I64Length(p.StartAt) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *CreateImageRequest) field6Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("end_at", thrift.I64, 6) + l += bthrift.Binary.I64Length(p.EndAt) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *CreateImageRequest) field7Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("s_type", thrift.I64, 7) + l += bthrift.Binary.I64Length(p.SType) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *CreateImageRequest) field8Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("frequency", thrift.I64, 8) + l += bthrift.Binary.I64Length(p.Frequency) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *CreateImageRequest) field9Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("start_time", thrift.I64, 9) + l += bthrift.Binary.I64Length(p.StartTime) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *CreateImageRequest) field10Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("end_time", thrift.I64, 10) + l += bthrift.Binary.I64Length(p.EndTime) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *CreateImageRequest) field11Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("text", thrift.STRING, 11) + l += bthrift.Binary.StringLengthNocopy(p.Text) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *CreateImageRequest) field12Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("stu_id", thrift.I64, 12) + l += bthrift.Binary.I64Length(p.StuId) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *CreateImageRequest) field13Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("device_type", thrift.I64, 13) + l += bthrift.Binary.I64Length(p.DeviceType) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *CreateImageRequest) field14Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("regex", thrift.STRING, 14) + l += bthrift.Binary.StringLengthNocopy(p.Regex) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *CreateImageRequest) field15Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("buffer_count", thrift.I64, 15) + l += bthrift.Binary.I64Length(p.BufferCount) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *CreateImageResponse) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 2: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField2(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_CreateImageResponse[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *CreateImageResponse) FastReadField1(buf []byte) (int, error) { + offset := 0 + + tmp := model.NewBaseResp() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Base = tmp + return offset, nil +} + +func (p *CreateImageResponse) FastReadField2(buf []byte) (int, error) { + offset := 0 + + tmp := model.NewPicture() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Picture = tmp + return offset, nil +} + +// for compatibility +func (p *CreateImageResponse) FastWrite(buf []byte) int { + return 0 +} + +func (p *CreateImageResponse) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "CreateImageResponse") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + offset += p.fastWriteField2(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *CreateImageResponse) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("CreateImageResponse") + if p != nil { + l += p.field1Length() + l += p.field2Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *CreateImageResponse) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "base", thrift.STRUCT, 1) + offset += p.Base.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *CreateImageResponse) fastWriteField2(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetPicture() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "picture", thrift.STRUCT, 2) + offset += p.Picture.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *CreateImageResponse) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("base", thrift.STRUCT, 1) + l += p.Base.BLength() + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *CreateImageResponse) field2Length() int { + l := 0 + if p.IsSetPicture() { + l += bthrift.Binary.FieldBeginLength("picture", thrift.STRUCT, 2) + l += p.Picture.BLength() + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *GetImageRequest) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + var issetPictureId bool = false + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetPictureId = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + if !issetPictureId { + fieldId = 1 + goto RequiredFieldNotSetError + } + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_GetImageRequest[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +RequiredFieldNotSetError: + return offset, thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_GetImageRequest[fieldId])) +} + +func (p *GetImageRequest) FastReadField1(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.PictureId = v + + } + return offset, nil +} + +// for compatibility +func (p *GetImageRequest) FastWrite(buf []byte) int { + return 0 +} + +func (p *GetImageRequest) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "GetImageRequest") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *GetImageRequest) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("GetImageRequest") + if p != nil { + l += p.field1Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *GetImageRequest) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "picture_id", thrift.I64, 1) + offset += bthrift.Binary.WriteI64(buf[offset:], p.PictureId) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *GetImageRequest) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("picture_id", thrift.I64, 1) + l += bthrift.Binary.I64Length(p.PictureId) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *GetImageResponse) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 2: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField2(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_GetImageResponse[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *GetImageResponse) FastReadField1(buf []byte) (int, error) { + offset := 0 + + tmp := model.NewBaseResp() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Base = tmp + return offset, nil +} + +func (p *GetImageResponse) FastReadField2(buf []byte) (int, error) { + offset := 0 + + tmp := model.NewPicture() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Picture = tmp + return offset, nil +} + +// for compatibility +func (p *GetImageResponse) FastWrite(buf []byte) int { + return 0 +} + +func (p *GetImageResponse) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "GetImageResponse") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + offset += p.fastWriteField2(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *GetImageResponse) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("GetImageResponse") + if p != nil { + l += p.field1Length() + l += p.field2Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *GetImageResponse) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "base", thrift.STRUCT, 1) + offset += p.Base.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *GetImageResponse) fastWriteField2(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetPicture() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "picture", thrift.STRUCT, 2) + offset += p.Picture.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *GetImageResponse) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("base", thrift.STRUCT, 1) + l += p.Base.BLength() + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *GetImageResponse) field2Length() int { + l := 0 + if p.IsSetPicture() { + l += bthrift.Binary.FieldBeginLength("picture", thrift.STRUCT, 2) + l += p.Picture.BLength() + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *ChangeImagePropertyRequest) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + var issetPicType bool = false + var issetStartAt bool = false + var issetEndAt bool = false + var issetSType bool = false + var issetFrequency bool = false + var issetStartTime bool = false + var issetEndTime bool = false + var issetText bool = false + var issetPictureId bool = false + var issetRegex bool = false + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetPicType = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 2: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField2(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 3: + if fieldTypeId == thrift.STRING { + l, err = p.FastReadField3(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 4: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField4(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetStartAt = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 5: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField5(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetEndAt = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 6: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField6(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetSType = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 7: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField7(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetFrequency = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 8: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField8(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetStartTime = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 9: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField9(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetEndTime = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 10: + if fieldTypeId == thrift.STRING { + l, err = p.FastReadField10(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetText = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 11: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField11(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetPictureId = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 12: + if fieldTypeId == thrift.STRING { + l, err = p.FastReadField12(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetRegex = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + if !issetPicType { + fieldId = 1 + goto RequiredFieldNotSetError + } + + if !issetStartAt { + fieldId = 4 + goto RequiredFieldNotSetError + } + + if !issetEndAt { + fieldId = 5 + goto RequiredFieldNotSetError + } + + if !issetSType { + fieldId = 6 + goto RequiredFieldNotSetError + } + + if !issetFrequency { + fieldId = 7 + goto RequiredFieldNotSetError + } + + if !issetStartTime { + fieldId = 8 + goto RequiredFieldNotSetError + } + + if !issetEndTime { + fieldId = 9 + goto RequiredFieldNotSetError + } + + if !issetText { + fieldId = 10 + goto RequiredFieldNotSetError + } + + if !issetPictureId { + fieldId = 11 + goto RequiredFieldNotSetError + } + + if !issetRegex { + fieldId = 12 + goto RequiredFieldNotSetError + } + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_ChangeImagePropertyRequest[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +RequiredFieldNotSetError: + return offset, thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_ChangeImagePropertyRequest[fieldId])) +} + +func (p *ChangeImagePropertyRequest) FastReadField1(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.PicType = v + + } + return offset, nil +} + +func (p *ChangeImagePropertyRequest) FastReadField2(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + p.Duration = &v + + } + return offset, nil +} + +func (p *ChangeImagePropertyRequest) FastReadField3(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + p.Href = &v + + } + return offset, nil +} + +func (p *ChangeImagePropertyRequest) FastReadField4(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.StartAt = v + + } + return offset, nil +} + +func (p *ChangeImagePropertyRequest) FastReadField5(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.EndAt = v + + } + return offset, nil +} + +func (p *ChangeImagePropertyRequest) FastReadField6(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.SType = v + + } + return offset, nil +} + +func (p *ChangeImagePropertyRequest) FastReadField7(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.Frequency = v + + } + return offset, nil +} + +func (p *ChangeImagePropertyRequest) FastReadField8(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.StartTime = v + + } + return offset, nil +} + +func (p *ChangeImagePropertyRequest) FastReadField9(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.EndTime = v + + } + return offset, nil +} + +func (p *ChangeImagePropertyRequest) FastReadField10(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.Text = v + + } + return offset, nil +} + +func (p *ChangeImagePropertyRequest) FastReadField11(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.PictureId = v + + } + return offset, nil +} + +func (p *ChangeImagePropertyRequest) FastReadField12(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.Regex = v + + } + return offset, nil +} + +// for compatibility +func (p *ChangeImagePropertyRequest) FastWrite(buf []byte) int { + return 0 +} + +func (p *ChangeImagePropertyRequest) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "ChangeImagePropertyRequest") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + offset += p.fastWriteField2(buf[offset:], binaryWriter) + offset += p.fastWriteField4(buf[offset:], binaryWriter) + offset += p.fastWriteField5(buf[offset:], binaryWriter) + offset += p.fastWriteField6(buf[offset:], binaryWriter) + offset += p.fastWriteField7(buf[offset:], binaryWriter) + offset += p.fastWriteField8(buf[offset:], binaryWriter) + offset += p.fastWriteField9(buf[offset:], binaryWriter) + offset += p.fastWriteField11(buf[offset:], binaryWriter) + offset += p.fastWriteField3(buf[offset:], binaryWriter) + offset += p.fastWriteField10(buf[offset:], binaryWriter) + offset += p.fastWriteField12(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *ChangeImagePropertyRequest) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("ChangeImagePropertyRequest") + if p != nil { + l += p.field1Length() + l += p.field2Length() + l += p.field3Length() + l += p.field4Length() + l += p.field5Length() + l += p.field6Length() + l += p.field7Length() + l += p.field8Length() + l += p.field9Length() + l += p.field10Length() + l += p.field11Length() + l += p.field12Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *ChangeImagePropertyRequest) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "pic_type", thrift.I64, 1) + offset += bthrift.Binary.WriteI64(buf[offset:], p.PicType) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *ChangeImagePropertyRequest) fastWriteField2(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetDuration() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "duration", thrift.I64, 2) + offset += bthrift.Binary.WriteI64(buf[offset:], *p.Duration) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *ChangeImagePropertyRequest) fastWriteField3(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetHref() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "href", thrift.STRING, 3) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, *p.Href) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *ChangeImagePropertyRequest) fastWriteField4(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "start_at", thrift.I64, 4) + offset += bthrift.Binary.WriteI64(buf[offset:], p.StartAt) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *ChangeImagePropertyRequest) fastWriteField5(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "end_at", thrift.I64, 5) + offset += bthrift.Binary.WriteI64(buf[offset:], p.EndAt) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *ChangeImagePropertyRequest) fastWriteField6(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "s_type", thrift.I64, 6) + offset += bthrift.Binary.WriteI64(buf[offset:], p.SType) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *ChangeImagePropertyRequest) fastWriteField7(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "frequency", thrift.I64, 7) + offset += bthrift.Binary.WriteI64(buf[offset:], p.Frequency) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *ChangeImagePropertyRequest) fastWriteField8(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "start_time", thrift.I64, 8) + offset += bthrift.Binary.WriteI64(buf[offset:], p.StartTime) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *ChangeImagePropertyRequest) fastWriteField9(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "end_time", thrift.I64, 9) + offset += bthrift.Binary.WriteI64(buf[offset:], p.EndTime) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *ChangeImagePropertyRequest) fastWriteField10(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "text", thrift.STRING, 10) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Text) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *ChangeImagePropertyRequest) fastWriteField11(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "picture_id", thrift.I64, 11) + offset += bthrift.Binary.WriteI64(buf[offset:], p.PictureId) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *ChangeImagePropertyRequest) fastWriteField12(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "regex", thrift.STRING, 12) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Regex) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *ChangeImagePropertyRequest) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("pic_type", thrift.I64, 1) + l += bthrift.Binary.I64Length(p.PicType) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *ChangeImagePropertyRequest) field2Length() int { + l := 0 + if p.IsSetDuration() { + l += bthrift.Binary.FieldBeginLength("duration", thrift.I64, 2) + l += bthrift.Binary.I64Length(*p.Duration) + + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *ChangeImagePropertyRequest) field3Length() int { + l := 0 + if p.IsSetHref() { + l += bthrift.Binary.FieldBeginLength("href", thrift.STRING, 3) + l += bthrift.Binary.StringLengthNocopy(*p.Href) + + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *ChangeImagePropertyRequest) field4Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("start_at", thrift.I64, 4) + l += bthrift.Binary.I64Length(p.StartAt) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *ChangeImagePropertyRequest) field5Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("end_at", thrift.I64, 5) + l += bthrift.Binary.I64Length(p.EndAt) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *ChangeImagePropertyRequest) field6Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("s_type", thrift.I64, 6) + l += bthrift.Binary.I64Length(p.SType) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *ChangeImagePropertyRequest) field7Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("frequency", thrift.I64, 7) + l += bthrift.Binary.I64Length(p.Frequency) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *ChangeImagePropertyRequest) field8Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("start_time", thrift.I64, 8) + l += bthrift.Binary.I64Length(p.StartTime) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *ChangeImagePropertyRequest) field9Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("end_time", thrift.I64, 9) + l += bthrift.Binary.I64Length(p.EndTime) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *ChangeImagePropertyRequest) field10Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("text", thrift.STRING, 10) + l += bthrift.Binary.StringLengthNocopy(p.Text) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *ChangeImagePropertyRequest) field11Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("picture_id", thrift.I64, 11) + l += bthrift.Binary.I64Length(p.PictureId) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *ChangeImagePropertyRequest) field12Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("regex", thrift.STRING, 12) + l += bthrift.Binary.StringLengthNocopy(p.Regex) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *ChangeImagePropertyResponse) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 2: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField2(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_ChangeImagePropertyResponse[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *ChangeImagePropertyResponse) FastReadField1(buf []byte) (int, error) { + offset := 0 + + tmp := model.NewBaseResp() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Base = tmp + return offset, nil +} + +func (p *ChangeImagePropertyResponse) FastReadField2(buf []byte) (int, error) { + offset := 0 + + tmp := model.NewPicture() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Picture = tmp + return offset, nil +} + +// for compatibility +func (p *ChangeImagePropertyResponse) FastWrite(buf []byte) int { + return 0 +} + +func (p *ChangeImagePropertyResponse) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "ChangeImagePropertyResponse") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + offset += p.fastWriteField2(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *ChangeImagePropertyResponse) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("ChangeImagePropertyResponse") + if p != nil { + l += p.field1Length() + l += p.field2Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *ChangeImagePropertyResponse) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "base", thrift.STRUCT, 1) + offset += p.Base.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *ChangeImagePropertyResponse) fastWriteField2(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetPicture() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "picture", thrift.STRUCT, 2) + offset += p.Picture.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *ChangeImagePropertyResponse) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("base", thrift.STRUCT, 1) + l += p.Base.BLength() + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *ChangeImagePropertyResponse) field2Length() int { + l := 0 + if p.IsSetPicture() { + l += bthrift.Binary.FieldBeginLength("picture", thrift.STRUCT, 2) + l += p.Picture.BLength() + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *ChangeImageRequest) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + var issetPictureId bool = false + var issetImage bool = false + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetPictureId = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 2: + if fieldTypeId == thrift.STRING { + l, err = p.FastReadField2(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetImage = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 3: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField3(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + if !issetPictureId { + fieldId = 1 + goto RequiredFieldNotSetError + } + + if !issetImage { + fieldId = 2 + goto RequiredFieldNotSetError + } + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_ChangeImageRequest[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +RequiredFieldNotSetError: + return offset, thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_ChangeImageRequest[fieldId])) +} + +func (p *ChangeImageRequest) FastReadField1(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.PictureId = v + + } + return offset, nil +} + +func (p *ChangeImageRequest) FastReadField2(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadBinary(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.Image = []byte(v) + + } + return offset, nil +} + +func (p *ChangeImageRequest) FastReadField3(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.BufferCount = v + + } + return offset, nil +} + +// for compatibility +func (p *ChangeImageRequest) FastWrite(buf []byte) int { + return 0 +} + +func (p *ChangeImageRequest) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "ChangeImageRequest") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + offset += p.fastWriteField3(buf[offset:], binaryWriter) + offset += p.fastWriteField2(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *ChangeImageRequest) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("ChangeImageRequest") + if p != nil { + l += p.field1Length() + l += p.field2Length() + l += p.field3Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *ChangeImageRequest) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "picture_id", thrift.I64, 1) + offset += bthrift.Binary.WriteI64(buf[offset:], p.PictureId) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *ChangeImageRequest) fastWriteField2(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "image", thrift.STRING, 2) + offset += bthrift.Binary.WriteBinaryNocopy(buf[offset:], binaryWriter, []byte(p.Image)) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *ChangeImageRequest) fastWriteField3(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "buffer_count", thrift.I64, 3) + offset += bthrift.Binary.WriteI64(buf[offset:], p.BufferCount) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *ChangeImageRequest) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("picture_id", thrift.I64, 1) + l += bthrift.Binary.I64Length(p.PictureId) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *ChangeImageRequest) field2Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("image", thrift.STRING, 2) + l += bthrift.Binary.BinaryLengthNocopy([]byte(p.Image)) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *ChangeImageRequest) field3Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("buffer_count", thrift.I64, 3) + l += bthrift.Binary.I64Length(p.BufferCount) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *ChangeImageResponse) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 2: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField2(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_ChangeImageResponse[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *ChangeImageResponse) FastReadField1(buf []byte) (int, error) { + offset := 0 + + tmp := model.NewBaseResp() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Base = tmp + return offset, nil +} + +func (p *ChangeImageResponse) FastReadField2(buf []byte) (int, error) { + offset := 0 + + tmp := model.NewPicture() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Picture = tmp + return offset, nil +} + +// for compatibility +func (p *ChangeImageResponse) FastWrite(buf []byte) int { + return 0 +} + +func (p *ChangeImageResponse) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "ChangeImageResponse") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + offset += p.fastWriteField2(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *ChangeImageResponse) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("ChangeImageResponse") + if p != nil { + l += p.field1Length() + l += p.field2Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *ChangeImageResponse) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "base", thrift.STRUCT, 1) + offset += p.Base.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *ChangeImageResponse) fastWriteField2(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetPicture() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "picture", thrift.STRUCT, 2) + offset += p.Picture.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *ChangeImageResponse) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("base", thrift.STRUCT, 1) + l += p.Base.BLength() + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *ChangeImageResponse) field2Length() int { + l := 0 + if p.IsSetPicture() { + l += bthrift.Binary.FieldBeginLength("picture", thrift.STRUCT, 2) + l += p.Picture.BLength() + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *DeleteImageRequest) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + var issetPictureId bool = false + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetPictureId = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + if !issetPictureId { + fieldId = 1 + goto RequiredFieldNotSetError + } + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_DeleteImageRequest[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +RequiredFieldNotSetError: + return offset, thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_DeleteImageRequest[fieldId])) +} + +func (p *DeleteImageRequest) FastReadField1(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.PictureId = v + + } + return offset, nil +} + +// for compatibility +func (p *DeleteImageRequest) FastWrite(buf []byte) int { + return 0 +} + +func (p *DeleteImageRequest) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "DeleteImageRequest") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *DeleteImageRequest) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("DeleteImageRequest") + if p != nil { + l += p.field1Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *DeleteImageRequest) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "picture_id", thrift.I64, 1) + offset += bthrift.Binary.WriteI64(buf[offset:], p.PictureId) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *DeleteImageRequest) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("picture_id", thrift.I64, 1) + l += bthrift.Binary.I64Length(p.PictureId) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *DeleteImageResponse) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 2: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField2(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_DeleteImageResponse[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *DeleteImageResponse) FastReadField1(buf []byte) (int, error) { + offset := 0 + + tmp := model.NewBaseResp() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Base = tmp + return offset, nil +} + +func (p *DeleteImageResponse) FastReadField2(buf []byte) (int, error) { + offset := 0 + + tmp := model.NewPicture() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Picture = tmp + return offset, nil +} + +// for compatibility +func (p *DeleteImageResponse) FastWrite(buf []byte) int { + return 0 +} + +func (p *DeleteImageResponse) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "DeleteImageResponse") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + offset += p.fastWriteField2(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *DeleteImageResponse) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("DeleteImageResponse") + if p != nil { + l += p.field1Length() + l += p.field2Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *DeleteImageResponse) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "base", thrift.STRUCT, 1) + offset += p.Base.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *DeleteImageResponse) fastWriteField2(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetPicture() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "picture", thrift.STRUCT, 2) + offset += p.Picture.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *DeleteImageResponse) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("base", thrift.STRUCT, 1) + l += p.Base.BLength() + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *DeleteImageResponse) field2Length() int { + l := 0 + if p.IsSetPicture() { + l += bthrift.Binary.FieldBeginLength("picture", thrift.STRUCT, 2) + l += p.Picture.BLength() + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *MobileGetImageRequest) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + var issetSType bool = false + var issetStudentId bool = false + var issetDevice bool = false + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetSType = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 2: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField2(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetStudentId = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 3: + if fieldTypeId == thrift.STRING { + l, err = p.FastReadField3(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 4: + if fieldTypeId == thrift.STRING { + l, err = p.FastReadField4(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetDevice = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + if !issetSType { + fieldId = 1 + goto RequiredFieldNotSetError + } + + if !issetStudentId { + fieldId = 2 + goto RequiredFieldNotSetError + } + + if !issetDevice { + fieldId = 4 + goto RequiredFieldNotSetError + } + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MobileGetImageRequest[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +RequiredFieldNotSetError: + return offset, thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_MobileGetImageRequest[fieldId])) +} + +func (p *MobileGetImageRequest) FastReadField1(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.SType = v + + } + return offset, nil +} + +func (p *MobileGetImageRequest) FastReadField2(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.StudentId = v + + } + return offset, nil +} + +func (p *MobileGetImageRequest) FastReadField3(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + p.College = &v + + } + return offset, nil +} + +func (p *MobileGetImageRequest) FastReadField4(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.Device = v + + } + return offset, nil +} + +// for compatibility +func (p *MobileGetImageRequest) FastWrite(buf []byte) int { + return 0 +} + +func (p *MobileGetImageRequest) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "MobileGetImageRequest") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + offset += p.fastWriteField2(buf[offset:], binaryWriter) + offset += p.fastWriteField3(buf[offset:], binaryWriter) + offset += p.fastWriteField4(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *MobileGetImageRequest) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("MobileGetImageRequest") + if p != nil { + l += p.field1Length() + l += p.field2Length() + l += p.field3Length() + l += p.field4Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *MobileGetImageRequest) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "s_type", thrift.I64, 1) + offset += bthrift.Binary.WriteI64(buf[offset:], p.SType) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *MobileGetImageRequest) fastWriteField2(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "student_id", thrift.I64, 2) + offset += bthrift.Binary.WriteI64(buf[offset:], p.StudentId) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *MobileGetImageRequest) fastWriteField3(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetCollege() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "college", thrift.STRING, 3) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, *p.College) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *MobileGetImageRequest) fastWriteField4(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "device", thrift.STRING, 4) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Device) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *MobileGetImageRequest) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("s_type", thrift.I64, 1) + l += bthrift.Binary.I64Length(p.SType) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *MobileGetImageRequest) field2Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("student_id", thrift.I64, 2) + l += bthrift.Binary.I64Length(p.StudentId) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *MobileGetImageRequest) field3Length() int { + l := 0 + if p.IsSetCollege() { + l += bthrift.Binary.FieldBeginLength("college", thrift.STRING, 3) + l += bthrift.Binary.StringLengthNocopy(*p.College) + + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *MobileGetImageRequest) field4Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("device", thrift.STRING, 4) + l += bthrift.Binary.StringLengthNocopy(p.Device) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *MobileGetImageResponse) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 2: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField2(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 3: + if fieldTypeId == thrift.LIST { + l, err = p.FastReadField3(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MobileGetImageResponse[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *MobileGetImageResponse) FastReadField1(buf []byte) (int, error) { + offset := 0 + + tmp := model.NewBaseResp() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Base = tmp + return offset, nil +} + +func (p *MobileGetImageResponse) FastReadField2(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + p.Count = &v + + } + return offset, nil +} + +func (p *MobileGetImageResponse) FastReadField3(buf []byte) (int, error) { + offset := 0 + + _, size, l, err := bthrift.Binary.ReadListBegin(buf[offset:]) + offset += l + if err != nil { + return offset, err + } + p.PictureList = make([]*model.Picture, 0, size) + for i := 0; i < size; i++ { + _elem := model.NewPicture() + if l, err := _elem.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + + p.PictureList = append(p.PictureList, _elem) + } + if l, err := bthrift.Binary.ReadListEnd(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + return offset, nil +} + +// for compatibility +func (p *MobileGetImageResponse) FastWrite(buf []byte) int { + return 0 +} + +func (p *MobileGetImageResponse) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "MobileGetImageResponse") + if p != nil { + offset += p.fastWriteField2(buf[offset:], binaryWriter) + offset += p.fastWriteField1(buf[offset:], binaryWriter) + offset += p.fastWriteField3(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *MobileGetImageResponse) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("MobileGetImageResponse") + if p != nil { + l += p.field1Length() + l += p.field2Length() + l += p.field3Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *MobileGetImageResponse) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "base", thrift.STRUCT, 1) + offset += p.Base.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *MobileGetImageResponse) fastWriteField2(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetCount() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "count", thrift.I64, 2) + offset += bthrift.Binary.WriteI64(buf[offset:], *p.Count) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *MobileGetImageResponse) fastWriteField3(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetPictureList() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "picture_list", thrift.LIST, 3) + listBeginOffset := offset + offset += bthrift.Binary.ListBeginLength(thrift.STRUCT, 0) + var length int + for _, v := range p.PictureList { + length++ + offset += v.FastWriteNocopy(buf[offset:], binaryWriter) + } + bthrift.Binary.WriteListBegin(buf[listBeginOffset:], thrift.STRUCT, length) + offset += bthrift.Binary.WriteListEnd(buf[offset:]) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *MobileGetImageResponse) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("base", thrift.STRUCT, 1) + l += p.Base.BLength() + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *MobileGetImageResponse) field2Length() int { + l := 0 + if p.IsSetCount() { + l += bthrift.Binary.FieldBeginLength("count", thrift.I64, 2) + l += bthrift.Binary.I64Length(*p.Count) + + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *MobileGetImageResponse) field3Length() int { + l := 0 + if p.IsSetPictureList() { + l += bthrift.Binary.FieldBeginLength("picture_list", thrift.LIST, 3) + l += bthrift.Binary.ListBeginLength(thrift.STRUCT, len(p.PictureList)) + for _, v := range p.PictureList { + l += v.BLength() + } + l += bthrift.Binary.ListEndLength() + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *AddImagePointTimeRequest) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + var issetPictureId bool = false + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + issetPictureId = true + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + if !issetPictureId { + fieldId = 1 + goto RequiredFieldNotSetError + } + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_AddImagePointTimeRequest[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +RequiredFieldNotSetError: + return offset, thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_AddImagePointTimeRequest[fieldId])) +} + +func (p *AddImagePointTimeRequest) FastReadField1(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.PictureId = v + + } + return offset, nil +} + +// for compatibility +func (p *AddImagePointTimeRequest) FastWrite(buf []byte) int { + return 0 +} + +func (p *AddImagePointTimeRequest) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "AddImagePointTimeRequest") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *AddImagePointTimeRequest) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("AddImagePointTimeRequest") + if p != nil { + l += p.field1Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *AddImagePointTimeRequest) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "picture_id", thrift.I64, 1) + offset += bthrift.Binary.WriteI64(buf[offset:], p.PictureId) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *AddImagePointTimeRequest) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("picture_id", thrift.I64, 1) + l += bthrift.Binary.I64Length(p.PictureId) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *AddImagePointTimeResponse) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 2: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField2(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_AddImagePointTimeResponse[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *AddImagePointTimeResponse) FastReadField1(buf []byte) (int, error) { + offset := 0 + + tmp := model.NewBaseResp() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Base = tmp + return offset, nil +} + +func (p *AddImagePointTimeResponse) FastReadField2(buf []byte) (int, error) { + offset := 0 + + tmp := model.NewPicture() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Picture = tmp + return offset, nil +} + +// for compatibility +func (p *AddImagePointTimeResponse) FastWrite(buf []byte) int { + return 0 +} + +func (p *AddImagePointTimeResponse) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "AddImagePointTimeResponse") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + offset += p.fastWriteField2(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *AddImagePointTimeResponse) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("AddImagePointTimeResponse") + if p != nil { + l += p.field1Length() + l += p.field2Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *AddImagePointTimeResponse) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "base", thrift.STRUCT, 1) + offset += p.Base.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *AddImagePointTimeResponse) fastWriteField2(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetPicture() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "picture", thrift.STRUCT, 2) + offset += p.Picture.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *AddImagePointTimeResponse) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("base", thrift.STRUCT, 1) + l += p.Base.BLength() + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *AddImagePointTimeResponse) field2Length() int { + l := 0 + if p.IsSetPicture() { + l += bthrift.Binary.FieldBeginLength("picture", thrift.STRUCT, 2) + l += p.Picture.BLength() + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *LaunchScreenServiceCreateImageArgs) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceCreateImageArgs[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *LaunchScreenServiceCreateImageArgs) FastReadField1(buf []byte) (int, error) { + offset := 0 + + tmp := NewCreateImageRequest() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Req = tmp + return offset, nil +} + +// for compatibility +func (p *LaunchScreenServiceCreateImageArgs) FastWrite(buf []byte) int { + return 0 +} + +func (p *LaunchScreenServiceCreateImageArgs) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "CreateImage_args") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceCreateImageArgs) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("CreateImage_args") + if p != nil { + l += p.field1Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *LaunchScreenServiceCreateImageArgs) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "req", thrift.STRUCT, 1) + offset += p.Req.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceCreateImageArgs) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("req", thrift.STRUCT, 1) + l += p.Req.BLength() + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *LaunchScreenServiceCreateImageResult) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField0(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceCreateImageResult[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *LaunchScreenServiceCreateImageResult) FastReadField0(buf []byte) (int, error) { + offset := 0 + + tmp := NewCreateImageResponse() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Success = tmp + return offset, nil +} + +// for compatibility +func (p *LaunchScreenServiceCreateImageResult) FastWrite(buf []byte) int { + return 0 +} + +func (p *LaunchScreenServiceCreateImageResult) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "CreateImage_result") + if p != nil { + offset += p.fastWriteField0(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceCreateImageResult) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("CreateImage_result") + if p != nil { + l += p.field0Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *LaunchScreenServiceCreateImageResult) fastWriteField0(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetSuccess() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "success", thrift.STRUCT, 0) + offset += p.Success.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *LaunchScreenServiceCreateImageResult) field0Length() int { + l := 0 + if p.IsSetSuccess() { + l += bthrift.Binary.FieldBeginLength("success", thrift.STRUCT, 0) + l += p.Success.BLength() + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *LaunchScreenServiceGetImageArgs) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceGetImageArgs[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *LaunchScreenServiceGetImageArgs) FastReadField1(buf []byte) (int, error) { + offset := 0 + + tmp := NewGetImageRequest() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Req = tmp + return offset, nil +} + +// for compatibility +func (p *LaunchScreenServiceGetImageArgs) FastWrite(buf []byte) int { + return 0 +} + +func (p *LaunchScreenServiceGetImageArgs) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "GetImage_args") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceGetImageArgs) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("GetImage_args") + if p != nil { + l += p.field1Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *LaunchScreenServiceGetImageArgs) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "req", thrift.STRUCT, 1) + offset += p.Req.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceGetImageArgs) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("req", thrift.STRUCT, 1) + l += p.Req.BLength() + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *LaunchScreenServiceGetImageResult) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField0(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceGetImageResult[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *LaunchScreenServiceGetImageResult) FastReadField0(buf []byte) (int, error) { + offset := 0 + + tmp := NewGetImageResponse() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Success = tmp + return offset, nil +} + +// for compatibility +func (p *LaunchScreenServiceGetImageResult) FastWrite(buf []byte) int { + return 0 +} + +func (p *LaunchScreenServiceGetImageResult) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "GetImage_result") + if p != nil { + offset += p.fastWriteField0(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceGetImageResult) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("GetImage_result") + if p != nil { + l += p.field0Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *LaunchScreenServiceGetImageResult) fastWriteField0(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetSuccess() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "success", thrift.STRUCT, 0) + offset += p.Success.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *LaunchScreenServiceGetImageResult) field0Length() int { + l := 0 + if p.IsSetSuccess() { + l += bthrift.Binary.FieldBeginLength("success", thrift.STRUCT, 0) + l += p.Success.BLength() + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *LaunchScreenServiceChangeImagePropertyArgs) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceChangeImagePropertyArgs[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *LaunchScreenServiceChangeImagePropertyArgs) FastReadField1(buf []byte) (int, error) { + offset := 0 + + tmp := NewChangeImagePropertyRequest() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Req = tmp + return offset, nil +} + +// for compatibility +func (p *LaunchScreenServiceChangeImagePropertyArgs) FastWrite(buf []byte) int { + return 0 +} + +func (p *LaunchScreenServiceChangeImagePropertyArgs) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "ChangeImageProperty_args") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceChangeImagePropertyArgs) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("ChangeImageProperty_args") + if p != nil { + l += p.field1Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *LaunchScreenServiceChangeImagePropertyArgs) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "req", thrift.STRUCT, 1) + offset += p.Req.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceChangeImagePropertyArgs) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("req", thrift.STRUCT, 1) + l += p.Req.BLength() + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *LaunchScreenServiceChangeImagePropertyResult) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField0(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceChangeImagePropertyResult[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *LaunchScreenServiceChangeImagePropertyResult) FastReadField0(buf []byte) (int, error) { + offset := 0 + + tmp := NewChangeImagePropertyResponse() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Success = tmp + return offset, nil +} + +// for compatibility +func (p *LaunchScreenServiceChangeImagePropertyResult) FastWrite(buf []byte) int { + return 0 +} + +func (p *LaunchScreenServiceChangeImagePropertyResult) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "ChangeImageProperty_result") + if p != nil { + offset += p.fastWriteField0(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceChangeImagePropertyResult) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("ChangeImageProperty_result") + if p != nil { + l += p.field0Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *LaunchScreenServiceChangeImagePropertyResult) fastWriteField0(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetSuccess() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "success", thrift.STRUCT, 0) + offset += p.Success.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *LaunchScreenServiceChangeImagePropertyResult) field0Length() int { + l := 0 + if p.IsSetSuccess() { + l += bthrift.Binary.FieldBeginLength("success", thrift.STRUCT, 0) + l += p.Success.BLength() + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *LaunchScreenServiceChangeImageArgs) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceChangeImageArgs[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *LaunchScreenServiceChangeImageArgs) FastReadField1(buf []byte) (int, error) { + offset := 0 + + tmp := NewChangeImageRequest() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Req = tmp + return offset, nil +} + +// for compatibility +func (p *LaunchScreenServiceChangeImageArgs) FastWrite(buf []byte) int { + return 0 +} + +func (p *LaunchScreenServiceChangeImageArgs) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "ChangeImage_args") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceChangeImageArgs) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("ChangeImage_args") + if p != nil { + l += p.field1Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *LaunchScreenServiceChangeImageArgs) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "req", thrift.STRUCT, 1) + offset += p.Req.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceChangeImageArgs) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("req", thrift.STRUCT, 1) + l += p.Req.BLength() + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *LaunchScreenServiceChangeImageResult) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField0(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceChangeImageResult[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *LaunchScreenServiceChangeImageResult) FastReadField0(buf []byte) (int, error) { + offset := 0 + + tmp := NewChangeImageResponse() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Success = tmp + return offset, nil +} + +// for compatibility +func (p *LaunchScreenServiceChangeImageResult) FastWrite(buf []byte) int { + return 0 +} + +func (p *LaunchScreenServiceChangeImageResult) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "ChangeImage_result") + if p != nil { + offset += p.fastWriteField0(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceChangeImageResult) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("ChangeImage_result") + if p != nil { + l += p.field0Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *LaunchScreenServiceChangeImageResult) fastWriteField0(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetSuccess() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "success", thrift.STRUCT, 0) + offset += p.Success.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *LaunchScreenServiceChangeImageResult) field0Length() int { + l := 0 + if p.IsSetSuccess() { + l += bthrift.Binary.FieldBeginLength("success", thrift.STRUCT, 0) + l += p.Success.BLength() + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *LaunchScreenServiceDeleteImageArgs) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceDeleteImageArgs[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *LaunchScreenServiceDeleteImageArgs) FastReadField1(buf []byte) (int, error) { + offset := 0 + + tmp := NewDeleteImageRequest() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Req = tmp + return offset, nil +} + +// for compatibility +func (p *LaunchScreenServiceDeleteImageArgs) FastWrite(buf []byte) int { + return 0 +} + +func (p *LaunchScreenServiceDeleteImageArgs) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "DeleteImage_args") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceDeleteImageArgs) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("DeleteImage_args") + if p != nil { + l += p.field1Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *LaunchScreenServiceDeleteImageArgs) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "req", thrift.STRUCT, 1) + offset += p.Req.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceDeleteImageArgs) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("req", thrift.STRUCT, 1) + l += p.Req.BLength() + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *LaunchScreenServiceDeleteImageResult) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField0(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceDeleteImageResult[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *LaunchScreenServiceDeleteImageResult) FastReadField0(buf []byte) (int, error) { + offset := 0 + + tmp := NewDeleteImageResponse() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Success = tmp + return offset, nil +} + +// for compatibility +func (p *LaunchScreenServiceDeleteImageResult) FastWrite(buf []byte) int { + return 0 +} + +func (p *LaunchScreenServiceDeleteImageResult) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "DeleteImage_result") + if p != nil { + offset += p.fastWriteField0(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceDeleteImageResult) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("DeleteImage_result") + if p != nil { + l += p.field0Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *LaunchScreenServiceDeleteImageResult) fastWriteField0(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetSuccess() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "success", thrift.STRUCT, 0) + offset += p.Success.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *LaunchScreenServiceDeleteImageResult) field0Length() int { + l := 0 + if p.IsSetSuccess() { + l += bthrift.Binary.FieldBeginLength("success", thrift.STRUCT, 0) + l += p.Success.BLength() + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *LaunchScreenServiceMobileGetImageArgs) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceMobileGetImageArgs[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *LaunchScreenServiceMobileGetImageArgs) FastReadField1(buf []byte) (int, error) { + offset := 0 + + tmp := NewMobileGetImageRequest() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Req = tmp + return offset, nil +} + +// for compatibility +func (p *LaunchScreenServiceMobileGetImageArgs) FastWrite(buf []byte) int { + return 0 +} + +func (p *LaunchScreenServiceMobileGetImageArgs) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "MobileGetImage_args") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceMobileGetImageArgs) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("MobileGetImage_args") + if p != nil { + l += p.field1Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *LaunchScreenServiceMobileGetImageArgs) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "req", thrift.STRUCT, 1) + offset += p.Req.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceMobileGetImageArgs) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("req", thrift.STRUCT, 1) + l += p.Req.BLength() + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *LaunchScreenServiceMobileGetImageResult) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField0(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceMobileGetImageResult[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *LaunchScreenServiceMobileGetImageResult) FastReadField0(buf []byte) (int, error) { + offset := 0 + + tmp := NewMobileGetImageResponse() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Success = tmp + return offset, nil +} + +// for compatibility +func (p *LaunchScreenServiceMobileGetImageResult) FastWrite(buf []byte) int { + return 0 +} + +func (p *LaunchScreenServiceMobileGetImageResult) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "MobileGetImage_result") + if p != nil { + offset += p.fastWriteField0(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceMobileGetImageResult) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("MobileGetImage_result") + if p != nil { + l += p.field0Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *LaunchScreenServiceMobileGetImageResult) fastWriteField0(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetSuccess() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "success", thrift.STRUCT, 0) + offset += p.Success.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *LaunchScreenServiceMobileGetImageResult) field0Length() int { + l := 0 + if p.IsSetSuccess() { + l += bthrift.Binary.FieldBeginLength("success", thrift.STRUCT, 0) + l += p.Success.BLength() + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *LaunchScreenServiceAddImagePointTimeArgs) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceAddImagePointTimeArgs[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *LaunchScreenServiceAddImagePointTimeArgs) FastReadField1(buf []byte) (int, error) { + offset := 0 + + tmp := NewAddImagePointTimeRequest() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Req = tmp + return offset, nil +} + +// for compatibility +func (p *LaunchScreenServiceAddImagePointTimeArgs) FastWrite(buf []byte) int { + return 0 +} + +func (p *LaunchScreenServiceAddImagePointTimeArgs) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "AddImagePointTime_args") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceAddImagePointTimeArgs) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("AddImagePointTime_args") + if p != nil { + l += p.field1Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *LaunchScreenServiceAddImagePointTimeArgs) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "req", thrift.STRUCT, 1) + offset += p.Req.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceAddImagePointTimeArgs) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("req", thrift.STRUCT, 1) + l += p.Req.BLength() + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *LaunchScreenServiceAddImagePointTimeResult) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + l, err = p.FastReadField0(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_LaunchScreenServiceAddImagePointTimeResult[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *LaunchScreenServiceAddImagePointTimeResult) FastReadField0(buf []byte) (int, error) { + offset := 0 + + tmp := NewAddImagePointTimeResponse() + if l, err := tmp.FastRead(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + } + p.Success = tmp + return offset, nil +} + +// for compatibility +func (p *LaunchScreenServiceAddImagePointTimeResult) FastWrite(buf []byte) int { + return 0 +} + +func (p *LaunchScreenServiceAddImagePointTimeResult) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "AddImagePointTime_result") + if p != nil { + offset += p.fastWriteField0(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *LaunchScreenServiceAddImagePointTimeResult) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("AddImagePointTime_result") + if p != nil { + l += p.field0Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *LaunchScreenServiceAddImagePointTimeResult) fastWriteField0(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetSuccess() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "success", thrift.STRUCT, 0) + offset += p.Success.FastWriteNocopy(buf[offset:], binaryWriter) + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *LaunchScreenServiceAddImagePointTimeResult) field0Length() int { + l := 0 + if p.IsSetSuccess() { + l += bthrift.Binary.FieldBeginLength("success", thrift.STRUCT, 0) + l += p.Success.BLength() + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *LaunchScreenServiceCreateImageArgs) GetFirstArgument() interface{} { + return p.Req +} + +func (p *LaunchScreenServiceCreateImageResult) GetResult() interface{} { + return p.Success +} + +func (p *LaunchScreenServiceGetImageArgs) GetFirstArgument() interface{} { + return p.Req +} + +func (p *LaunchScreenServiceGetImageResult) GetResult() interface{} { + return p.Success +} + +func (p *LaunchScreenServiceChangeImagePropertyArgs) GetFirstArgument() interface{} { + return p.Req +} + +func (p *LaunchScreenServiceChangeImagePropertyResult) GetResult() interface{} { + return p.Success +} + +func (p *LaunchScreenServiceChangeImageArgs) GetFirstArgument() interface{} { + return p.Req +} + +func (p *LaunchScreenServiceChangeImageResult) GetResult() interface{} { + return p.Success +} + +func (p *LaunchScreenServiceDeleteImageArgs) GetFirstArgument() interface{} { + return p.Req +} + +func (p *LaunchScreenServiceDeleteImageResult) GetResult() interface{} { + return p.Success +} + +func (p *LaunchScreenServiceMobileGetImageArgs) GetFirstArgument() interface{} { + return p.Req +} + +func (p *LaunchScreenServiceMobileGetImageResult) GetResult() interface{} { + return p.Success +} + +func (p *LaunchScreenServiceAddImagePointTimeArgs) GetFirstArgument() interface{} { + return p.Req +} + +func (p *LaunchScreenServiceAddImagePointTimeResult) GetResult() interface{} { + return p.Success +} diff --git a/kitex_gen/launch_screen/launch_screen.go b/kitex_gen/launch_screen/launch_screen.go new file mode 100644 index 0000000..8eb9981 --- /dev/null +++ b/kitex_gen/launch_screen/launch_screen.go @@ -0,0 +1,7787 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by thriftgo (0.3.13). DO NOT EDIT. + +package launch_screen + +import ( + "bytes" + "context" + "fmt" + "strings" + + "github.com/apache/thrift/lib/go/thrift" + "github.com/cloudwego/kitex/pkg/streaming" + + "github.com/west2-online/fzuhelper-server/kitex_gen/model" +) + +type CreateImageRequest struct { + PicType int64 `thrift:"pic_type,1,required" frugal:"1,required,i64" json:"pic_type"` + Duration *int64 `thrift:"duration,2,optional" frugal:"2,optional,i64" json:"duration,omitempty"` + Href *string `thrift:"href,3,optional" frugal:"3,optional,string" json:"href,omitempty"` + Image []byte `thrift:"image,4,required" frugal:"4,required,binary" json:"image"` + StartAt int64 `thrift:"start_at,5,required" frugal:"5,required,i64" json:"start_at"` + EndAt int64 `thrift:"end_at,6,required" frugal:"6,required,i64" json:"end_at"` + SType int64 `thrift:"s_type,7,required" frugal:"7,required,i64" json:"s_type"` + Frequency int64 `thrift:"frequency,8,required" frugal:"8,required,i64" json:"frequency"` + StartTime int64 `thrift:"start_time,9,required" frugal:"9,required,i64" json:"start_time"` + EndTime int64 `thrift:"end_time,10,required" frugal:"10,required,i64" json:"end_time"` + Text string `thrift:"text,11,required" frugal:"11,required,string" json:"text"` + StuId int64 `thrift:"stu_id,12,required" frugal:"12,required,i64" json:"stu_id"` + DeviceType int64 `thrift:"device_type,13,required" frugal:"13,required,i64" json:"device_type"` + Regex string `thrift:"regex,14,required" frugal:"14,required,string" json:"regex"` + BufferCount int64 `thrift:"buffer_count,15" frugal:"15,default,i64" json:"buffer_count"` +} + +func NewCreateImageRequest() *CreateImageRequest { + return &CreateImageRequest{} +} + +func (p *CreateImageRequest) InitDefault() { +} + +func (p *CreateImageRequest) GetPicType() (v int64) { + return p.PicType +} + +var CreateImageRequest_Duration_DEFAULT int64 + +func (p *CreateImageRequest) GetDuration() (v int64) { + if !p.IsSetDuration() { + return CreateImageRequest_Duration_DEFAULT + } + return *p.Duration +} + +var CreateImageRequest_Href_DEFAULT string + +func (p *CreateImageRequest) GetHref() (v string) { + if !p.IsSetHref() { + return CreateImageRequest_Href_DEFAULT + } + return *p.Href +} + +func (p *CreateImageRequest) GetImage() (v []byte) { + return p.Image +} + +func (p *CreateImageRequest) GetStartAt() (v int64) { + return p.StartAt +} + +func (p *CreateImageRequest) GetEndAt() (v int64) { + return p.EndAt +} + +func (p *CreateImageRequest) GetSType() (v int64) { + return p.SType +} + +func (p *CreateImageRequest) GetFrequency() (v int64) { + return p.Frequency +} + +func (p *CreateImageRequest) GetStartTime() (v int64) { + return p.StartTime +} + +func (p *CreateImageRequest) GetEndTime() (v int64) { + return p.EndTime +} + +func (p *CreateImageRequest) GetText() (v string) { + return p.Text +} + +func (p *CreateImageRequest) GetStuId() (v int64) { + return p.StuId +} + +func (p *CreateImageRequest) GetDeviceType() (v int64) { + return p.DeviceType +} + +func (p *CreateImageRequest) GetRegex() (v string) { + return p.Regex +} + +func (p *CreateImageRequest) GetBufferCount() (v int64) { + return p.BufferCount +} +func (p *CreateImageRequest) SetPicType(val int64) { + p.PicType = val +} +func (p *CreateImageRequest) SetDuration(val *int64) { + p.Duration = val +} +func (p *CreateImageRequest) SetHref(val *string) { + p.Href = val +} +func (p *CreateImageRequest) SetImage(val []byte) { + p.Image = val +} +func (p *CreateImageRequest) SetStartAt(val int64) { + p.StartAt = val +} +func (p *CreateImageRequest) SetEndAt(val int64) { + p.EndAt = val +} +func (p *CreateImageRequest) SetSType(val int64) { + p.SType = val +} +func (p *CreateImageRequest) SetFrequency(val int64) { + p.Frequency = val +} +func (p *CreateImageRequest) SetStartTime(val int64) { + p.StartTime = val +} +func (p *CreateImageRequest) SetEndTime(val int64) { + p.EndTime = val +} +func (p *CreateImageRequest) SetText(val string) { + p.Text = val +} +func (p *CreateImageRequest) SetStuId(val int64) { + p.StuId = val +} +func (p *CreateImageRequest) SetDeviceType(val int64) { + p.DeviceType = val +} +func (p *CreateImageRequest) SetRegex(val string) { + p.Regex = val +} +func (p *CreateImageRequest) SetBufferCount(val int64) { + p.BufferCount = val +} + +var fieldIDToName_CreateImageRequest = map[int16]string{ + 1: "pic_type", + 2: "duration", + 3: "href", + 4: "image", + 5: "start_at", + 6: "end_at", + 7: "s_type", + 8: "frequency", + 9: "start_time", + 10: "end_time", + 11: "text", + 12: "stu_id", + 13: "device_type", + 14: "regex", + 15: "buffer_count", +} + +func (p *CreateImageRequest) IsSetDuration() bool { + return p.Duration != nil +} + +func (p *CreateImageRequest) IsSetHref() bool { + return p.Href != nil +} + +func (p *CreateImageRequest) Read(iprot thrift.TProtocol) (err error) { + + var fieldTypeId thrift.TType + var fieldId int16 + var issetPicType bool = false + var issetImage bool = false + var issetStartAt bool = false + var issetEndAt bool = false + var issetSType bool = false + var issetFrequency bool = false + var issetStartTime bool = false + var issetEndTime bool = false + var issetText bool = false + var issetStuId bool = false + var issetDeviceType bool = false + var issetRegex bool = false + + 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.I64 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + issetPicType = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.I64 { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.STRING { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 4: + if fieldTypeId == thrift.STRING { + if err = p.ReadField4(iprot); err != nil { + goto ReadFieldError + } + issetImage = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 5: + if fieldTypeId == thrift.I64 { + if err = p.ReadField5(iprot); err != nil { + goto ReadFieldError + } + issetStartAt = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 6: + if fieldTypeId == thrift.I64 { + if err = p.ReadField6(iprot); err != nil { + goto ReadFieldError + } + issetEndAt = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 7: + if fieldTypeId == thrift.I64 { + if err = p.ReadField7(iprot); err != nil { + goto ReadFieldError + } + issetSType = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 8: + if fieldTypeId == thrift.I64 { + if err = p.ReadField8(iprot); err != nil { + goto ReadFieldError + } + issetFrequency = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 9: + if fieldTypeId == thrift.I64 { + if err = p.ReadField9(iprot); err != nil { + goto ReadFieldError + } + issetStartTime = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 10: + if fieldTypeId == thrift.I64 { + if err = p.ReadField10(iprot); err != nil { + goto ReadFieldError + } + issetEndTime = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 11: + if fieldTypeId == thrift.STRING { + if err = p.ReadField11(iprot); err != nil { + goto ReadFieldError + } + issetText = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 12: + if fieldTypeId == thrift.I64 { + if err = p.ReadField12(iprot); err != nil { + goto ReadFieldError + } + issetStuId = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 13: + if fieldTypeId == thrift.I64 { + if err = p.ReadField13(iprot); err != nil { + goto ReadFieldError + } + issetDeviceType = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 14: + if fieldTypeId == thrift.STRING { + if err = p.ReadField14(iprot); err != nil { + goto ReadFieldError + } + issetRegex = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 15: + if fieldTypeId == thrift.I64 { + if err = p.ReadField15(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 + } + + if !issetPicType { + fieldId = 1 + goto RequiredFieldNotSetError + } + + if !issetImage { + fieldId = 4 + goto RequiredFieldNotSetError + } + + if !issetStartAt { + fieldId = 5 + goto RequiredFieldNotSetError + } + + if !issetEndAt { + fieldId = 6 + goto RequiredFieldNotSetError + } + + if !issetSType { + fieldId = 7 + goto RequiredFieldNotSetError + } + + if !issetFrequency { + fieldId = 8 + goto RequiredFieldNotSetError + } + + if !issetStartTime { + fieldId = 9 + goto RequiredFieldNotSetError + } + + if !issetEndTime { + fieldId = 10 + goto RequiredFieldNotSetError + } + + if !issetText { + fieldId = 11 + goto RequiredFieldNotSetError + } + + if !issetStuId { + fieldId = 12 + goto RequiredFieldNotSetError + } + + if !issetDeviceType { + fieldId = 13 + goto RequiredFieldNotSetError + } + + if !issetRegex { + fieldId = 14 + goto RequiredFieldNotSetError + } + 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_CreateImageRequest[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) +RequiredFieldNotSetError: + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_CreateImageRequest[fieldId])) +} + +func (p *CreateImageRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.PicType = _field + return nil +} +func (p *CreateImageRequest) ReadField2(iprot thrift.TProtocol) error { + + var _field *int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = &v + } + p.Duration = _field + return nil +} +func (p *CreateImageRequest) ReadField3(iprot thrift.TProtocol) error { + + var _field *string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = &v + } + p.Href = _field + return nil +} +func (p *CreateImageRequest) ReadField4(iprot thrift.TProtocol) error { + + var _field []byte + if v, err := iprot.ReadBinary(); err != nil { + return err + } else { + _field = []byte(v) + } + p.Image = _field + return nil +} +func (p *CreateImageRequest) ReadField5(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.StartAt = _field + return nil +} +func (p *CreateImageRequest) ReadField6(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.EndAt = _field + return nil +} +func (p *CreateImageRequest) ReadField7(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.SType = _field + return nil +} +func (p *CreateImageRequest) ReadField8(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.Frequency = _field + return nil +} +func (p *CreateImageRequest) ReadField9(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.StartTime = _field + return nil +} +func (p *CreateImageRequest) ReadField10(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.EndTime = _field + return nil +} +func (p *CreateImageRequest) ReadField11(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Text = _field + return nil +} +func (p *CreateImageRequest) ReadField12(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.StuId = _field + return nil +} +func (p *CreateImageRequest) ReadField13(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.DeviceType = _field + return nil +} +func (p *CreateImageRequest) ReadField14(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Regex = _field + return nil +} +func (p *CreateImageRequest) ReadField15(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.BufferCount = _field + return nil +} + +func (p *CreateImageRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("CreateImageRequest"); 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 = p.writeField5(oprot); err != nil { + fieldId = 5 + goto WriteFieldError + } + if err = p.writeField6(oprot); err != nil { + fieldId = 6 + goto WriteFieldError + } + if err = p.writeField7(oprot); err != nil { + fieldId = 7 + goto WriteFieldError + } + if err = p.writeField8(oprot); err != nil { + fieldId = 8 + goto WriteFieldError + } + if err = p.writeField9(oprot); err != nil { + fieldId = 9 + goto WriteFieldError + } + if err = p.writeField10(oprot); err != nil { + fieldId = 10 + goto WriteFieldError + } + if err = p.writeField11(oprot); err != nil { + fieldId = 11 + goto WriteFieldError + } + if err = p.writeField12(oprot); err != nil { + fieldId = 12 + goto WriteFieldError + } + if err = p.writeField13(oprot); err != nil { + fieldId = 13 + goto WriteFieldError + } + if err = p.writeField14(oprot); err != nil { + fieldId = 14 + goto WriteFieldError + } + if err = p.writeField15(oprot); err != nil { + fieldId = 15 + 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 *CreateImageRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("pic_type", thrift.I64, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.PicType); 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 *CreateImageRequest) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetDuration() { + if err = oprot.WriteFieldBegin("duration", thrift.I64, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(*p.Duration); 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 *CreateImageRequest) writeField3(oprot thrift.TProtocol) (err error) { + if p.IsSetHref() { + if err = oprot.WriteFieldBegin("href", thrift.STRING, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(*p.Href); 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 *CreateImageRequest) writeField4(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("image", thrift.STRING, 4); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteBinary([]byte(p.Image)); 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 *CreateImageRequest) writeField5(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("start_at", thrift.I64, 5); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.StartAt); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 5 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 5 end error: ", p), err) +} + +func (p *CreateImageRequest) writeField6(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("end_at", thrift.I64, 6); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.EndAt); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 6 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 6 end error: ", p), err) +} + +func (p *CreateImageRequest) writeField7(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("s_type", thrift.I64, 7); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.SType); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 7 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 7 end error: ", p), err) +} + +func (p *CreateImageRequest) writeField8(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("frequency", thrift.I64, 8); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.Frequency); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 8 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 8 end error: ", p), err) +} + +func (p *CreateImageRequest) writeField9(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("start_time", thrift.I64, 9); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.StartTime); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 9 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 9 end error: ", p), err) +} + +func (p *CreateImageRequest) writeField10(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("end_time", thrift.I64, 10); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.EndTime); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 10 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 10 end error: ", p), err) +} + +func (p *CreateImageRequest) writeField11(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("text", thrift.STRING, 11); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Text); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 11 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 11 end error: ", p), err) +} + +func (p *CreateImageRequest) writeField12(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("stu_id", thrift.I64, 12); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.StuId); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 12 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 12 end error: ", p), err) +} + +func (p *CreateImageRequest) writeField13(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("device_type", thrift.I64, 13); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.DeviceType); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 13 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 13 end error: ", p), err) +} + +func (p *CreateImageRequest) writeField14(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("regex", thrift.STRING, 14); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Regex); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 14 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 14 end error: ", p), err) +} + +func (p *CreateImageRequest) writeField15(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("buffer_count", thrift.I64, 15); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.BufferCount); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 15 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 15 end error: ", p), err) +} + +func (p *CreateImageRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("CreateImageRequest(%+v)", *p) + +} + +func (p *CreateImageRequest) DeepEqual(ano *CreateImageRequest) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.PicType) { + return false + } + if !p.Field2DeepEqual(ano.Duration) { + return false + } + if !p.Field3DeepEqual(ano.Href) { + return false + } + if !p.Field4DeepEqual(ano.Image) { + return false + } + if !p.Field5DeepEqual(ano.StartAt) { + return false + } + if !p.Field6DeepEqual(ano.EndAt) { + return false + } + if !p.Field7DeepEqual(ano.SType) { + return false + } + if !p.Field8DeepEqual(ano.Frequency) { + return false + } + if !p.Field9DeepEqual(ano.StartTime) { + return false + } + if !p.Field10DeepEqual(ano.EndTime) { + return false + } + if !p.Field11DeepEqual(ano.Text) { + return false + } + if !p.Field12DeepEqual(ano.StuId) { + return false + } + if !p.Field13DeepEqual(ano.DeviceType) { + return false + } + if !p.Field14DeepEqual(ano.Regex) { + return false + } + if !p.Field15DeepEqual(ano.BufferCount) { + return false + } + return true +} + +func (p *CreateImageRequest) Field1DeepEqual(src int64) bool { + + if p.PicType != src { + return false + } + return true +} +func (p *CreateImageRequest) Field2DeepEqual(src *int64) bool { + + if p.Duration == src { + return true + } else if p.Duration == nil || src == nil { + return false + } + if *p.Duration != *src { + return false + } + return true +} +func (p *CreateImageRequest) Field3DeepEqual(src *string) bool { + + if p.Href == src { + return true + } else if p.Href == nil || src == nil { + return false + } + if strings.Compare(*p.Href, *src) != 0 { + return false + } + return true +} +func (p *CreateImageRequest) Field4DeepEqual(src []byte) bool { + + if bytes.Compare(p.Image, src) != 0 { + return false + } + return true +} +func (p *CreateImageRequest) Field5DeepEqual(src int64) bool { + + if p.StartAt != src { + return false + } + return true +} +func (p *CreateImageRequest) Field6DeepEqual(src int64) bool { + + if p.EndAt != src { + return false + } + return true +} +func (p *CreateImageRequest) Field7DeepEqual(src int64) bool { + + if p.SType != src { + return false + } + return true +} +func (p *CreateImageRequest) Field8DeepEqual(src int64) bool { + + if p.Frequency != src { + return false + } + return true +} +func (p *CreateImageRequest) Field9DeepEqual(src int64) bool { + + if p.StartTime != src { + return false + } + return true +} +func (p *CreateImageRequest) Field10DeepEqual(src int64) bool { + + if p.EndTime != src { + return false + } + return true +} +func (p *CreateImageRequest) Field11DeepEqual(src string) bool { + + if strings.Compare(p.Text, src) != 0 { + return false + } + return true +} +func (p *CreateImageRequest) Field12DeepEqual(src int64) bool { + + if p.StuId != src { + return false + } + return true +} +func (p *CreateImageRequest) Field13DeepEqual(src int64) bool { + + if p.DeviceType != src { + return false + } + return true +} +func (p *CreateImageRequest) Field14DeepEqual(src string) bool { + + if strings.Compare(p.Regex, src) != 0 { + return false + } + return true +} +func (p *CreateImageRequest) Field15DeepEqual(src int64) bool { + + if p.BufferCount != src { + return false + } + return true +} + +type CreateImageResponse struct { + Base *model.BaseResp `thrift:"base,1" frugal:"1,default,model.BaseResp" json:"base"` + Picture *model.Picture `thrift:"picture,2,optional" frugal:"2,optional,model.Picture" json:"picture,omitempty"` +} + +func NewCreateImageResponse() *CreateImageResponse { + return &CreateImageResponse{} +} + +func (p *CreateImageResponse) InitDefault() { +} + +var CreateImageResponse_Base_DEFAULT *model.BaseResp + +func (p *CreateImageResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return CreateImageResponse_Base_DEFAULT + } + return p.Base +} + +var CreateImageResponse_Picture_DEFAULT *model.Picture + +func (p *CreateImageResponse) GetPicture() (v *model.Picture) { + if !p.IsSetPicture() { + return CreateImageResponse_Picture_DEFAULT + } + return p.Picture +} +func (p *CreateImageResponse) SetBase(val *model.BaseResp) { + p.Base = val +} +func (p *CreateImageResponse) SetPicture(val *model.Picture) { + p.Picture = val +} + +var fieldIDToName_CreateImageResponse = map[int16]string{ + 1: "base", + 2: "picture", +} + +func (p *CreateImageResponse) IsSetBase() bool { + return p.Base != nil +} + +func (p *CreateImageResponse) IsSetPicture() bool { + return p.Picture != nil +} + +func (p *CreateImageResponse) 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 + } + case 2: + if fieldTypeId == thrift.STRUCT { + 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_CreateImageResponse[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 *CreateImageResponse) ReadField1(iprot thrift.TProtocol) error { + _field := model.NewBaseResp() + if err := _field.Read(iprot); err != nil { + return err + } + p.Base = _field + return nil +} +func (p *CreateImageResponse) ReadField2(iprot thrift.TProtocol) error { + _field := model.NewPicture() + if err := _field.Read(iprot); err != nil { + return err + } + p.Picture = _field + return nil +} + +func (p *CreateImageResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("CreateImageResponse"); 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 *CreateImageResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Base.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 *CreateImageResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetPicture() { + if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { + goto WriteFieldBeginError + } + if err := p.Picture.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 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *CreateImageResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("CreateImageResponse(%+v)", *p) + +} + +func (p *CreateImageResponse) DeepEqual(ano *CreateImageResponse) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.Base) { + return false + } + if !p.Field2DeepEqual(ano.Picture) { + return false + } + return true +} + +func (p *CreateImageResponse) Field1DeepEqual(src *model.BaseResp) bool { + + if !p.Base.DeepEqual(src) { + return false + } + return true +} +func (p *CreateImageResponse) Field2DeepEqual(src *model.Picture) bool { + + if !p.Picture.DeepEqual(src) { + return false + } + return true +} + +type GetImageRequest struct { + PictureId int64 `thrift:"picture_id,1,required" frugal:"1,required,i64" json:"picture_id"` +} + +func NewGetImageRequest() *GetImageRequest { + return &GetImageRequest{} +} + +func (p *GetImageRequest) InitDefault() { +} + +func (p *GetImageRequest) GetPictureId() (v int64) { + return p.PictureId +} +func (p *GetImageRequest) SetPictureId(val int64) { + p.PictureId = val +} + +var fieldIDToName_GetImageRequest = map[int16]string{ + 1: "picture_id", +} + +func (p *GetImageRequest) Read(iprot thrift.TProtocol) (err error) { + + var fieldTypeId thrift.TType + var fieldId int16 + var issetPictureId bool = false + + 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.I64 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + issetPictureId = true + } 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 + } + + if !issetPictureId { + fieldId = 1 + goto RequiredFieldNotSetError + } + 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_GetImageRequest[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) +RequiredFieldNotSetError: + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_GetImageRequest[fieldId])) +} + +func (p *GetImageRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.PictureId = _field + return nil +} + +func (p *GetImageRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetImageRequest"); 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 *GetImageRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("picture_id", thrift.I64, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.PictureId); 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 *GetImageRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("GetImageRequest(%+v)", *p) + +} + +func (p *GetImageRequest) DeepEqual(ano *GetImageRequest) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.PictureId) { + return false + } + return true +} + +func (p *GetImageRequest) Field1DeepEqual(src int64) bool { + + if p.PictureId != src { + return false + } + return true +} + +type GetImageResponse struct { + Base *model.BaseResp `thrift:"base,1" frugal:"1,default,model.BaseResp" json:"base"` + Picture *model.Picture `thrift:"picture,2,optional" frugal:"2,optional,model.Picture" json:"picture,omitempty"` +} + +func NewGetImageResponse() *GetImageResponse { + return &GetImageResponse{} +} + +func (p *GetImageResponse) InitDefault() { +} + +var GetImageResponse_Base_DEFAULT *model.BaseResp + +func (p *GetImageResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return GetImageResponse_Base_DEFAULT + } + return p.Base +} + +var GetImageResponse_Picture_DEFAULT *model.Picture + +func (p *GetImageResponse) GetPicture() (v *model.Picture) { + if !p.IsSetPicture() { + return GetImageResponse_Picture_DEFAULT + } + return p.Picture +} +func (p *GetImageResponse) SetBase(val *model.BaseResp) { + p.Base = val +} +func (p *GetImageResponse) SetPicture(val *model.Picture) { + p.Picture = val +} + +var fieldIDToName_GetImageResponse = map[int16]string{ + 1: "base", + 2: "picture", +} + +func (p *GetImageResponse) IsSetBase() bool { + return p.Base != nil +} + +func (p *GetImageResponse) IsSetPicture() bool { + return p.Picture != nil +} + +func (p *GetImageResponse) 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 + } + case 2: + if fieldTypeId == thrift.STRUCT { + 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_GetImageResponse[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 *GetImageResponse) ReadField1(iprot thrift.TProtocol) error { + _field := model.NewBaseResp() + if err := _field.Read(iprot); err != nil { + return err + } + p.Base = _field + return nil +} +func (p *GetImageResponse) ReadField2(iprot thrift.TProtocol) error { + _field := model.NewPicture() + if err := _field.Read(iprot); err != nil { + return err + } + p.Picture = _field + return nil +} + +func (p *GetImageResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetImageResponse"); 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 *GetImageResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Base.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 *GetImageResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetPicture() { + if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { + goto WriteFieldBeginError + } + if err := p.Picture.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 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *GetImageResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("GetImageResponse(%+v)", *p) + +} + +func (p *GetImageResponse) DeepEqual(ano *GetImageResponse) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.Base) { + return false + } + if !p.Field2DeepEqual(ano.Picture) { + return false + } + return true +} + +func (p *GetImageResponse) Field1DeepEqual(src *model.BaseResp) bool { + + if !p.Base.DeepEqual(src) { + return false + } + return true +} +func (p *GetImageResponse) Field2DeepEqual(src *model.Picture) bool { + + if !p.Picture.DeepEqual(src) { + return false + } + return true +} + +type ChangeImagePropertyRequest struct { + PicType int64 `thrift:"pic_type,1,required" frugal:"1,required,i64" json:"pic_type"` + Duration *int64 `thrift:"duration,2,optional" frugal:"2,optional,i64" json:"duration,omitempty"` + Href *string `thrift:"href,3,optional" frugal:"3,optional,string" json:"href,omitempty"` + StartAt int64 `thrift:"start_at,4,required" frugal:"4,required,i64" json:"start_at"` + EndAt int64 `thrift:"end_at,5,required" frugal:"5,required,i64" json:"end_at"` + SType int64 `thrift:"s_type,6,required" frugal:"6,required,i64" json:"s_type"` + Frequency int64 `thrift:"frequency,7,required" frugal:"7,required,i64" json:"frequency"` + StartTime int64 `thrift:"start_time,8,required" frugal:"8,required,i64" json:"start_time"` + EndTime int64 `thrift:"end_time,9,required" frugal:"9,required,i64" json:"end_time"` + Text string `thrift:"text,10,required" frugal:"10,required,string" json:"text"` + PictureId int64 `thrift:"picture_id,11,required" frugal:"11,required,i64" json:"picture_id"` + Regex string `thrift:"regex,12,required" frugal:"12,required,string" json:"regex"` +} + +func NewChangeImagePropertyRequest() *ChangeImagePropertyRequest { + return &ChangeImagePropertyRequest{} +} + +func (p *ChangeImagePropertyRequest) InitDefault() { +} + +func (p *ChangeImagePropertyRequest) GetPicType() (v int64) { + return p.PicType +} + +var ChangeImagePropertyRequest_Duration_DEFAULT int64 + +func (p *ChangeImagePropertyRequest) GetDuration() (v int64) { + if !p.IsSetDuration() { + return ChangeImagePropertyRequest_Duration_DEFAULT + } + return *p.Duration +} + +var ChangeImagePropertyRequest_Href_DEFAULT string + +func (p *ChangeImagePropertyRequest) GetHref() (v string) { + if !p.IsSetHref() { + return ChangeImagePropertyRequest_Href_DEFAULT + } + return *p.Href +} + +func (p *ChangeImagePropertyRequest) GetStartAt() (v int64) { + return p.StartAt +} + +func (p *ChangeImagePropertyRequest) GetEndAt() (v int64) { + return p.EndAt +} + +func (p *ChangeImagePropertyRequest) GetSType() (v int64) { + return p.SType +} + +func (p *ChangeImagePropertyRequest) GetFrequency() (v int64) { + return p.Frequency +} + +func (p *ChangeImagePropertyRequest) GetStartTime() (v int64) { + return p.StartTime +} + +func (p *ChangeImagePropertyRequest) GetEndTime() (v int64) { + return p.EndTime +} + +func (p *ChangeImagePropertyRequest) GetText() (v string) { + return p.Text +} + +func (p *ChangeImagePropertyRequest) GetPictureId() (v int64) { + return p.PictureId +} + +func (p *ChangeImagePropertyRequest) GetRegex() (v string) { + return p.Regex +} +func (p *ChangeImagePropertyRequest) SetPicType(val int64) { + p.PicType = val +} +func (p *ChangeImagePropertyRequest) SetDuration(val *int64) { + p.Duration = val +} +func (p *ChangeImagePropertyRequest) SetHref(val *string) { + p.Href = val +} +func (p *ChangeImagePropertyRequest) SetStartAt(val int64) { + p.StartAt = val +} +func (p *ChangeImagePropertyRequest) SetEndAt(val int64) { + p.EndAt = val +} +func (p *ChangeImagePropertyRequest) SetSType(val int64) { + p.SType = val +} +func (p *ChangeImagePropertyRequest) SetFrequency(val int64) { + p.Frequency = val +} +func (p *ChangeImagePropertyRequest) SetStartTime(val int64) { + p.StartTime = val +} +func (p *ChangeImagePropertyRequest) SetEndTime(val int64) { + p.EndTime = val +} +func (p *ChangeImagePropertyRequest) SetText(val string) { + p.Text = val +} +func (p *ChangeImagePropertyRequest) SetPictureId(val int64) { + p.PictureId = val +} +func (p *ChangeImagePropertyRequest) SetRegex(val string) { + p.Regex = val +} + +var fieldIDToName_ChangeImagePropertyRequest = map[int16]string{ + 1: "pic_type", + 2: "duration", + 3: "href", + 4: "start_at", + 5: "end_at", + 6: "s_type", + 7: "frequency", + 8: "start_time", + 9: "end_time", + 10: "text", + 11: "picture_id", + 12: "regex", +} + +func (p *ChangeImagePropertyRequest) IsSetDuration() bool { + return p.Duration != nil +} + +func (p *ChangeImagePropertyRequest) IsSetHref() bool { + return p.Href != nil +} + +func (p *ChangeImagePropertyRequest) Read(iprot thrift.TProtocol) (err error) { + + var fieldTypeId thrift.TType + var fieldId int16 + var issetPicType bool = false + var issetStartAt bool = false + var issetEndAt bool = false + var issetSType bool = false + var issetFrequency bool = false + var issetStartTime bool = false + var issetEndTime bool = false + var issetText bool = false + var issetPictureId bool = false + var issetRegex bool = false + + 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.I64 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + issetPicType = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.I64 { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.STRING { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 4: + if fieldTypeId == thrift.I64 { + if err = p.ReadField4(iprot); err != nil { + goto ReadFieldError + } + issetStartAt = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 5: + if fieldTypeId == thrift.I64 { + if err = p.ReadField5(iprot); err != nil { + goto ReadFieldError + } + issetEndAt = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 6: + if fieldTypeId == thrift.I64 { + if err = p.ReadField6(iprot); err != nil { + goto ReadFieldError + } + issetSType = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 7: + if fieldTypeId == thrift.I64 { + if err = p.ReadField7(iprot); err != nil { + goto ReadFieldError + } + issetFrequency = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 8: + if fieldTypeId == thrift.I64 { + if err = p.ReadField8(iprot); err != nil { + goto ReadFieldError + } + issetStartTime = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 9: + if fieldTypeId == thrift.I64 { + if err = p.ReadField9(iprot); err != nil { + goto ReadFieldError + } + issetEndTime = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 10: + if fieldTypeId == thrift.STRING { + if err = p.ReadField10(iprot); err != nil { + goto ReadFieldError + } + issetText = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 11: + if fieldTypeId == thrift.I64 { + if err = p.ReadField11(iprot); err != nil { + goto ReadFieldError + } + issetPictureId = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 12: + if fieldTypeId == thrift.STRING { + if err = p.ReadField12(iprot); err != nil { + goto ReadFieldError + } + issetRegex = true + } 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 + } + + if !issetPicType { + fieldId = 1 + goto RequiredFieldNotSetError + } + + if !issetStartAt { + fieldId = 4 + goto RequiredFieldNotSetError + } + + if !issetEndAt { + fieldId = 5 + goto RequiredFieldNotSetError + } + + if !issetSType { + fieldId = 6 + goto RequiredFieldNotSetError + } + + if !issetFrequency { + fieldId = 7 + goto RequiredFieldNotSetError + } + + if !issetStartTime { + fieldId = 8 + goto RequiredFieldNotSetError + } + + if !issetEndTime { + fieldId = 9 + goto RequiredFieldNotSetError + } + + if !issetText { + fieldId = 10 + goto RequiredFieldNotSetError + } + + if !issetPictureId { + fieldId = 11 + goto RequiredFieldNotSetError + } + + if !issetRegex { + fieldId = 12 + goto RequiredFieldNotSetError + } + 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_ChangeImagePropertyRequest[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) +RequiredFieldNotSetError: + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_ChangeImagePropertyRequest[fieldId])) +} + +func (p *ChangeImagePropertyRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.PicType = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField2(iprot thrift.TProtocol) error { + + var _field *int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = &v + } + p.Duration = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField3(iprot thrift.TProtocol) error { + + var _field *string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = &v + } + p.Href = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField4(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.StartAt = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField5(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.EndAt = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField6(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.SType = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField7(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.Frequency = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField8(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.StartTime = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField9(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.EndTime = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField10(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Text = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField11(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.PictureId = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField12(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Regex = _field + return nil +} + +func (p *ChangeImagePropertyRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ChangeImagePropertyRequest"); 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 = p.writeField5(oprot); err != nil { + fieldId = 5 + goto WriteFieldError + } + if err = p.writeField6(oprot); err != nil { + fieldId = 6 + goto WriteFieldError + } + if err = p.writeField7(oprot); err != nil { + fieldId = 7 + goto WriteFieldError + } + if err = p.writeField8(oprot); err != nil { + fieldId = 8 + goto WriteFieldError + } + if err = p.writeField9(oprot); err != nil { + fieldId = 9 + goto WriteFieldError + } + if err = p.writeField10(oprot); err != nil { + fieldId = 10 + goto WriteFieldError + } + if err = p.writeField11(oprot); err != nil { + fieldId = 11 + goto WriteFieldError + } + if err = p.writeField12(oprot); err != nil { + fieldId = 12 + 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 *ChangeImagePropertyRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("pic_type", thrift.I64, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.PicType); 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 *ChangeImagePropertyRequest) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetDuration() { + if err = oprot.WriteFieldBegin("duration", thrift.I64, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(*p.Duration); 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 *ChangeImagePropertyRequest) writeField3(oprot thrift.TProtocol) (err error) { + if p.IsSetHref() { + if err = oprot.WriteFieldBegin("href", thrift.STRING, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(*p.Href); 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 *ChangeImagePropertyRequest) writeField4(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("start_at", thrift.I64, 4); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.StartAt); 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 *ChangeImagePropertyRequest) writeField5(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("end_at", thrift.I64, 5); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.EndAt); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 5 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 5 end error: ", p), err) +} + +func (p *ChangeImagePropertyRequest) writeField6(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("s_type", thrift.I64, 6); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.SType); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 6 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 6 end error: ", p), err) +} + +func (p *ChangeImagePropertyRequest) writeField7(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("frequency", thrift.I64, 7); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.Frequency); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 7 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 7 end error: ", p), err) +} + +func (p *ChangeImagePropertyRequest) writeField8(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("start_time", thrift.I64, 8); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.StartTime); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 8 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 8 end error: ", p), err) +} + +func (p *ChangeImagePropertyRequest) writeField9(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("end_time", thrift.I64, 9); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.EndTime); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 9 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 9 end error: ", p), err) +} + +func (p *ChangeImagePropertyRequest) writeField10(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("text", thrift.STRING, 10); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Text); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 10 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 10 end error: ", p), err) +} + +func (p *ChangeImagePropertyRequest) writeField11(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("picture_id", thrift.I64, 11); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.PictureId); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 11 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 11 end error: ", p), err) +} + +func (p *ChangeImagePropertyRequest) writeField12(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("regex", thrift.STRING, 12); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Regex); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 12 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 12 end error: ", p), err) +} + +func (p *ChangeImagePropertyRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ChangeImagePropertyRequest(%+v)", *p) + +} + +func (p *ChangeImagePropertyRequest) DeepEqual(ano *ChangeImagePropertyRequest) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.PicType) { + return false + } + if !p.Field2DeepEqual(ano.Duration) { + return false + } + if !p.Field3DeepEqual(ano.Href) { + return false + } + if !p.Field4DeepEqual(ano.StartAt) { + return false + } + if !p.Field5DeepEqual(ano.EndAt) { + return false + } + if !p.Field6DeepEqual(ano.SType) { + return false + } + if !p.Field7DeepEqual(ano.Frequency) { + return false + } + if !p.Field8DeepEqual(ano.StartTime) { + return false + } + if !p.Field9DeepEqual(ano.EndTime) { + return false + } + if !p.Field10DeepEqual(ano.Text) { + return false + } + if !p.Field11DeepEqual(ano.PictureId) { + return false + } + if !p.Field12DeepEqual(ano.Regex) { + return false + } + return true +} + +func (p *ChangeImagePropertyRequest) Field1DeepEqual(src int64) bool { + + if p.PicType != src { + return false + } + return true +} +func (p *ChangeImagePropertyRequest) Field2DeepEqual(src *int64) bool { + + if p.Duration == src { + return true + } else if p.Duration == nil || src == nil { + return false + } + if *p.Duration != *src { + return false + } + return true +} +func (p *ChangeImagePropertyRequest) Field3DeepEqual(src *string) bool { + + if p.Href == src { + return true + } else if p.Href == nil || src == nil { + return false + } + if strings.Compare(*p.Href, *src) != 0 { + return false + } + return true +} +func (p *ChangeImagePropertyRequest) Field4DeepEqual(src int64) bool { + + if p.StartAt != src { + return false + } + return true +} +func (p *ChangeImagePropertyRequest) Field5DeepEqual(src int64) bool { + + if p.EndAt != src { + return false + } + return true +} +func (p *ChangeImagePropertyRequest) Field6DeepEqual(src int64) bool { + + if p.SType != src { + return false + } + return true +} +func (p *ChangeImagePropertyRequest) Field7DeepEqual(src int64) bool { + + if p.Frequency != src { + return false + } + return true +} +func (p *ChangeImagePropertyRequest) Field8DeepEqual(src int64) bool { + + if p.StartTime != src { + return false + } + return true +} +func (p *ChangeImagePropertyRequest) Field9DeepEqual(src int64) bool { + + if p.EndTime != src { + return false + } + return true +} +func (p *ChangeImagePropertyRequest) Field10DeepEqual(src string) bool { + + if strings.Compare(p.Text, src) != 0 { + return false + } + return true +} +func (p *ChangeImagePropertyRequest) Field11DeepEqual(src int64) bool { + + if p.PictureId != src { + return false + } + return true +} +func (p *ChangeImagePropertyRequest) Field12DeepEqual(src string) bool { + + if strings.Compare(p.Regex, src) != 0 { + return false + } + return true +} + +type ChangeImagePropertyResponse struct { + Base *model.BaseResp `thrift:"base,1" frugal:"1,default,model.BaseResp" json:"base"` + Picture *model.Picture `thrift:"picture,2,optional" frugal:"2,optional,model.Picture" json:"picture,omitempty"` +} + +func NewChangeImagePropertyResponse() *ChangeImagePropertyResponse { + return &ChangeImagePropertyResponse{} +} + +func (p *ChangeImagePropertyResponse) InitDefault() { +} + +var ChangeImagePropertyResponse_Base_DEFAULT *model.BaseResp + +func (p *ChangeImagePropertyResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return ChangeImagePropertyResponse_Base_DEFAULT + } + return p.Base +} + +var ChangeImagePropertyResponse_Picture_DEFAULT *model.Picture + +func (p *ChangeImagePropertyResponse) GetPicture() (v *model.Picture) { + if !p.IsSetPicture() { + return ChangeImagePropertyResponse_Picture_DEFAULT + } + return p.Picture +} +func (p *ChangeImagePropertyResponse) SetBase(val *model.BaseResp) { + p.Base = val +} +func (p *ChangeImagePropertyResponse) SetPicture(val *model.Picture) { + p.Picture = val +} + +var fieldIDToName_ChangeImagePropertyResponse = map[int16]string{ + 1: "base", + 2: "picture", +} + +func (p *ChangeImagePropertyResponse) IsSetBase() bool { + return p.Base != nil +} + +func (p *ChangeImagePropertyResponse) IsSetPicture() bool { + return p.Picture != nil +} + +func (p *ChangeImagePropertyResponse) 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 + } + case 2: + if fieldTypeId == thrift.STRUCT { + 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_ChangeImagePropertyResponse[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 *ChangeImagePropertyResponse) ReadField1(iprot thrift.TProtocol) error { + _field := model.NewBaseResp() + if err := _field.Read(iprot); err != nil { + return err + } + p.Base = _field + return nil +} +func (p *ChangeImagePropertyResponse) ReadField2(iprot thrift.TProtocol) error { + _field := model.NewPicture() + if err := _field.Read(iprot); err != nil { + return err + } + p.Picture = _field + return nil +} + +func (p *ChangeImagePropertyResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ChangeImagePropertyResponse"); 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 *ChangeImagePropertyResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Base.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 *ChangeImagePropertyResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetPicture() { + if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { + goto WriteFieldBeginError + } + if err := p.Picture.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 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *ChangeImagePropertyResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ChangeImagePropertyResponse(%+v)", *p) + +} + +func (p *ChangeImagePropertyResponse) DeepEqual(ano *ChangeImagePropertyResponse) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.Base) { + return false + } + if !p.Field2DeepEqual(ano.Picture) { + return false + } + return true +} + +func (p *ChangeImagePropertyResponse) Field1DeepEqual(src *model.BaseResp) bool { + + if !p.Base.DeepEqual(src) { + return false + } + return true +} +func (p *ChangeImagePropertyResponse) Field2DeepEqual(src *model.Picture) bool { + + if !p.Picture.DeepEqual(src) { + return false + } + return true +} + +type ChangeImageRequest struct { + PictureId int64 `thrift:"picture_id,1,required" frugal:"1,required,i64" json:"picture_id"` + Image []byte `thrift:"image,2,required" frugal:"2,required,binary" json:"image"` + BufferCount int64 `thrift:"buffer_count,3" frugal:"3,default,i64" json:"buffer_count"` +} + +func NewChangeImageRequest() *ChangeImageRequest { + return &ChangeImageRequest{} +} + +func (p *ChangeImageRequest) InitDefault() { +} + +func (p *ChangeImageRequest) GetPictureId() (v int64) { + return p.PictureId +} + +func (p *ChangeImageRequest) GetImage() (v []byte) { + return p.Image +} + +func (p *ChangeImageRequest) GetBufferCount() (v int64) { + return p.BufferCount +} +func (p *ChangeImageRequest) SetPictureId(val int64) { + p.PictureId = val +} +func (p *ChangeImageRequest) SetImage(val []byte) { + p.Image = val +} +func (p *ChangeImageRequest) SetBufferCount(val int64) { + p.BufferCount = val +} + +var fieldIDToName_ChangeImageRequest = map[int16]string{ + 1: "picture_id", + 2: "image", + 3: "buffer_count", +} + +func (p *ChangeImageRequest) Read(iprot thrift.TProtocol) (err error) { + + var fieldTypeId thrift.TType + var fieldId int16 + var issetPictureId bool = false + var issetImage bool = false + + 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.I64 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + issetPictureId = true + } 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 + } + issetImage = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.I64 { + 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 + } + + if !issetPictureId { + fieldId = 1 + goto RequiredFieldNotSetError + } + + if !issetImage { + fieldId = 2 + goto RequiredFieldNotSetError + } + 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_ChangeImageRequest[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) +RequiredFieldNotSetError: + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_ChangeImageRequest[fieldId])) +} + +func (p *ChangeImageRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.PictureId = _field + return nil +} +func (p *ChangeImageRequest) ReadField2(iprot thrift.TProtocol) error { + + var _field []byte + if v, err := iprot.ReadBinary(); err != nil { + return err + } else { + _field = []byte(v) + } + p.Image = _field + return nil +} +func (p *ChangeImageRequest) ReadField3(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.BufferCount = _field + return nil +} + +func (p *ChangeImageRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ChangeImageRequest"); 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 *ChangeImageRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("picture_id", thrift.I64, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.PictureId); 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 *ChangeImageRequest) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("image", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteBinary([]byte(p.Image)); 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 *ChangeImageRequest) writeField3(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("buffer_count", thrift.I64, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.BufferCount); 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 *ChangeImageRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ChangeImageRequest(%+v)", *p) + +} + +func (p *ChangeImageRequest) DeepEqual(ano *ChangeImageRequest) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.PictureId) { + return false + } + if !p.Field2DeepEqual(ano.Image) { + return false + } + if !p.Field3DeepEqual(ano.BufferCount) { + return false + } + return true +} + +func (p *ChangeImageRequest) Field1DeepEqual(src int64) bool { + + if p.PictureId != src { + return false + } + return true +} +func (p *ChangeImageRequest) Field2DeepEqual(src []byte) bool { + + if bytes.Compare(p.Image, src) != 0 { + return false + } + return true +} +func (p *ChangeImageRequest) Field3DeepEqual(src int64) bool { + + if p.BufferCount != src { + return false + } + return true +} + +type ChangeImageResponse struct { + Base *model.BaseResp `thrift:"base,1" frugal:"1,default,model.BaseResp" json:"base"` + Picture *model.Picture `thrift:"picture,2,optional" frugal:"2,optional,model.Picture" json:"picture,omitempty"` +} + +func NewChangeImageResponse() *ChangeImageResponse { + return &ChangeImageResponse{} +} + +func (p *ChangeImageResponse) InitDefault() { +} + +var ChangeImageResponse_Base_DEFAULT *model.BaseResp + +func (p *ChangeImageResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return ChangeImageResponse_Base_DEFAULT + } + return p.Base +} + +var ChangeImageResponse_Picture_DEFAULT *model.Picture + +func (p *ChangeImageResponse) GetPicture() (v *model.Picture) { + if !p.IsSetPicture() { + return ChangeImageResponse_Picture_DEFAULT + } + return p.Picture +} +func (p *ChangeImageResponse) SetBase(val *model.BaseResp) { + p.Base = val +} +func (p *ChangeImageResponse) SetPicture(val *model.Picture) { + p.Picture = val +} + +var fieldIDToName_ChangeImageResponse = map[int16]string{ + 1: "base", + 2: "picture", +} + +func (p *ChangeImageResponse) IsSetBase() bool { + return p.Base != nil +} + +func (p *ChangeImageResponse) IsSetPicture() bool { + return p.Picture != nil +} + +func (p *ChangeImageResponse) 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 + } + case 2: + if fieldTypeId == thrift.STRUCT { + 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_ChangeImageResponse[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 *ChangeImageResponse) ReadField1(iprot thrift.TProtocol) error { + _field := model.NewBaseResp() + if err := _field.Read(iprot); err != nil { + return err + } + p.Base = _field + return nil +} +func (p *ChangeImageResponse) ReadField2(iprot thrift.TProtocol) error { + _field := model.NewPicture() + if err := _field.Read(iprot); err != nil { + return err + } + p.Picture = _field + return nil +} + +func (p *ChangeImageResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ChangeImageResponse"); 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 *ChangeImageResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Base.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 *ChangeImageResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetPicture() { + if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { + goto WriteFieldBeginError + } + if err := p.Picture.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 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *ChangeImageResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ChangeImageResponse(%+v)", *p) + +} + +func (p *ChangeImageResponse) DeepEqual(ano *ChangeImageResponse) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.Base) { + return false + } + if !p.Field2DeepEqual(ano.Picture) { + return false + } + return true +} + +func (p *ChangeImageResponse) Field1DeepEqual(src *model.BaseResp) bool { + + if !p.Base.DeepEqual(src) { + return false + } + return true +} +func (p *ChangeImageResponse) Field2DeepEqual(src *model.Picture) bool { + + if !p.Picture.DeepEqual(src) { + return false + } + return true +} + +type DeleteImageRequest struct { + PictureId int64 `thrift:"picture_id,1,required" frugal:"1,required,i64" json:"picture_id"` +} + +func NewDeleteImageRequest() *DeleteImageRequest { + return &DeleteImageRequest{} +} + +func (p *DeleteImageRequest) InitDefault() { +} + +func (p *DeleteImageRequest) GetPictureId() (v int64) { + return p.PictureId +} +func (p *DeleteImageRequest) SetPictureId(val int64) { + p.PictureId = val +} + +var fieldIDToName_DeleteImageRequest = map[int16]string{ + 1: "picture_id", +} + +func (p *DeleteImageRequest) Read(iprot thrift.TProtocol) (err error) { + + var fieldTypeId thrift.TType + var fieldId int16 + var issetPictureId bool = false + + 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.I64 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + issetPictureId = true + } 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 + } + + if !issetPictureId { + fieldId = 1 + goto RequiredFieldNotSetError + } + 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_DeleteImageRequest[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) +RequiredFieldNotSetError: + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_DeleteImageRequest[fieldId])) +} + +func (p *DeleteImageRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.PictureId = _field + return nil +} + +func (p *DeleteImageRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("DeleteImageRequest"); 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 *DeleteImageRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("picture_id", thrift.I64, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.PictureId); 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 *DeleteImageRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("DeleteImageRequest(%+v)", *p) + +} + +func (p *DeleteImageRequest) DeepEqual(ano *DeleteImageRequest) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.PictureId) { + return false + } + return true +} + +func (p *DeleteImageRequest) Field1DeepEqual(src int64) bool { + + if p.PictureId != src { + return false + } + return true +} + +type DeleteImageResponse struct { + Base *model.BaseResp `thrift:"base,1" frugal:"1,default,model.BaseResp" json:"base"` + Picture *model.Picture `thrift:"picture,2,optional" frugal:"2,optional,model.Picture" json:"picture,omitempty"` +} + +func NewDeleteImageResponse() *DeleteImageResponse { + return &DeleteImageResponse{} +} + +func (p *DeleteImageResponse) InitDefault() { +} + +var DeleteImageResponse_Base_DEFAULT *model.BaseResp + +func (p *DeleteImageResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return DeleteImageResponse_Base_DEFAULT + } + return p.Base +} + +var DeleteImageResponse_Picture_DEFAULT *model.Picture + +func (p *DeleteImageResponse) GetPicture() (v *model.Picture) { + if !p.IsSetPicture() { + return DeleteImageResponse_Picture_DEFAULT + } + return p.Picture +} +func (p *DeleteImageResponse) SetBase(val *model.BaseResp) { + p.Base = val +} +func (p *DeleteImageResponse) SetPicture(val *model.Picture) { + p.Picture = val +} + +var fieldIDToName_DeleteImageResponse = map[int16]string{ + 1: "base", + 2: "picture", +} + +func (p *DeleteImageResponse) IsSetBase() bool { + return p.Base != nil +} + +func (p *DeleteImageResponse) IsSetPicture() bool { + return p.Picture != nil +} + +func (p *DeleteImageResponse) 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 + } + case 2: + if fieldTypeId == thrift.STRUCT { + 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_DeleteImageResponse[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 *DeleteImageResponse) ReadField1(iprot thrift.TProtocol) error { + _field := model.NewBaseResp() + if err := _field.Read(iprot); err != nil { + return err + } + p.Base = _field + return nil +} +func (p *DeleteImageResponse) ReadField2(iprot thrift.TProtocol) error { + _field := model.NewPicture() + if err := _field.Read(iprot); err != nil { + return err + } + p.Picture = _field + return nil +} + +func (p *DeleteImageResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("DeleteImageResponse"); 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 *DeleteImageResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Base.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 *DeleteImageResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetPicture() { + if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { + goto WriteFieldBeginError + } + if err := p.Picture.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 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *DeleteImageResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("DeleteImageResponse(%+v)", *p) + +} + +func (p *DeleteImageResponse) DeepEqual(ano *DeleteImageResponse) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.Base) { + return false + } + if !p.Field2DeepEqual(ano.Picture) { + return false + } + return true +} + +func (p *DeleteImageResponse) Field1DeepEqual(src *model.BaseResp) bool { + + if !p.Base.DeepEqual(src) { + return false + } + return true +} +func (p *DeleteImageResponse) Field2DeepEqual(src *model.Picture) bool { + + if !p.Picture.DeepEqual(src) { + return false + } + return true +} + +type MobileGetImageRequest struct { + SType int64 `thrift:"s_type,1,required" frugal:"1,required,i64" json:"s_type"` + StudentId int64 `thrift:"student_id,2,required" frugal:"2,required,i64" json:"student_id"` + College *string `thrift:"college,3,optional" frugal:"3,optional,string" json:"college,omitempty"` + Device string `thrift:"device,4,required" frugal:"4,required,string" json:"device"` +} + +func NewMobileGetImageRequest() *MobileGetImageRequest { + return &MobileGetImageRequest{} +} + +func (p *MobileGetImageRequest) InitDefault() { +} + +func (p *MobileGetImageRequest) GetSType() (v int64) { + return p.SType +} + +func (p *MobileGetImageRequest) GetStudentId() (v int64) { + return p.StudentId +} + +var MobileGetImageRequest_College_DEFAULT string + +func (p *MobileGetImageRequest) GetCollege() (v string) { + if !p.IsSetCollege() { + return MobileGetImageRequest_College_DEFAULT + } + return *p.College +} + +func (p *MobileGetImageRequest) GetDevice() (v string) { + return p.Device +} +func (p *MobileGetImageRequest) SetSType(val int64) { + p.SType = val +} +func (p *MobileGetImageRequest) SetStudentId(val int64) { + p.StudentId = val +} +func (p *MobileGetImageRequest) SetCollege(val *string) { + p.College = val +} +func (p *MobileGetImageRequest) SetDevice(val string) { + p.Device = val +} + +var fieldIDToName_MobileGetImageRequest = map[int16]string{ + 1: "s_type", + 2: "student_id", + 3: "college", + 4: "device", +} + +func (p *MobileGetImageRequest) IsSetCollege() bool { + return p.College != nil +} + +func (p *MobileGetImageRequest) Read(iprot thrift.TProtocol) (err error) { + + var fieldTypeId thrift.TType + var fieldId int16 + var issetSType bool = false + var issetStudentId bool = false + var issetDevice bool = false + + 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.I64 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + issetSType = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.I64 { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + issetStudentId = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.STRING { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 4: + if fieldTypeId == thrift.STRING { + if err = p.ReadField4(iprot); err != nil { + goto ReadFieldError + } + issetDevice = true + } 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 + } + + if !issetSType { + fieldId = 1 + goto RequiredFieldNotSetError + } + + if !issetStudentId { + fieldId = 2 + goto RequiredFieldNotSetError + } + + if !issetDevice { + fieldId = 4 + goto RequiredFieldNotSetError + } + 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_MobileGetImageRequest[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) +RequiredFieldNotSetError: + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_MobileGetImageRequest[fieldId])) +} + +func (p *MobileGetImageRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.SType = _field + return nil +} +func (p *MobileGetImageRequest) ReadField2(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.StudentId = _field + return nil +} +func (p *MobileGetImageRequest) ReadField3(iprot thrift.TProtocol) error { + + var _field *string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = &v + } + p.College = _field + return nil +} +func (p *MobileGetImageRequest) ReadField4(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Device = _field + return nil +} + +func (p *MobileGetImageRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("MobileGetImageRequest"); 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 *MobileGetImageRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("s_type", thrift.I64, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.SType); 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 *MobileGetImageRequest) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("student_id", thrift.I64, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.StudentId); 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 *MobileGetImageRequest) writeField3(oprot thrift.TProtocol) (err error) { + if p.IsSetCollege() { + if err = oprot.WriteFieldBegin("college", thrift.STRING, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(*p.College); 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 *MobileGetImageRequest) writeField4(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("device", thrift.STRING, 4); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Device); 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 *MobileGetImageRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MobileGetImageRequest(%+v)", *p) + +} + +func (p *MobileGetImageRequest) DeepEqual(ano *MobileGetImageRequest) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.SType) { + return false + } + if !p.Field2DeepEqual(ano.StudentId) { + return false + } + if !p.Field3DeepEqual(ano.College) { + return false + } + if !p.Field4DeepEqual(ano.Device) { + return false + } + return true +} + +func (p *MobileGetImageRequest) Field1DeepEqual(src int64) bool { + + if p.SType != src { + return false + } + return true +} +func (p *MobileGetImageRequest) Field2DeepEqual(src int64) bool { + + if p.StudentId != src { + return false + } + return true +} +func (p *MobileGetImageRequest) Field3DeepEqual(src *string) bool { + + if p.College == src { + return true + } else if p.College == nil || src == nil { + return false + } + if strings.Compare(*p.College, *src) != 0 { + return false + } + return true +} +func (p *MobileGetImageRequest) Field4DeepEqual(src string) bool { + + if strings.Compare(p.Device, src) != 0 { + return false + } + return true +} + +type MobileGetImageResponse struct { + Base *model.BaseResp `thrift:"base,1" frugal:"1,default,model.BaseResp" json:"base"` + Count *int64 `thrift:"count,2,optional" frugal:"2,optional,i64" json:"count,omitempty"` + PictureList []*model.Picture `thrift:"picture_list,3,optional" frugal:"3,optional,list" json:"picture_list,omitempty"` +} + +func NewMobileGetImageResponse() *MobileGetImageResponse { + return &MobileGetImageResponse{} +} + +func (p *MobileGetImageResponse) InitDefault() { +} + +var MobileGetImageResponse_Base_DEFAULT *model.BaseResp + +func (p *MobileGetImageResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return MobileGetImageResponse_Base_DEFAULT + } + return p.Base +} + +var MobileGetImageResponse_Count_DEFAULT int64 + +func (p *MobileGetImageResponse) GetCount() (v int64) { + if !p.IsSetCount() { + return MobileGetImageResponse_Count_DEFAULT + } + return *p.Count +} + +var MobileGetImageResponse_PictureList_DEFAULT []*model.Picture + +func (p *MobileGetImageResponse) GetPictureList() (v []*model.Picture) { + if !p.IsSetPictureList() { + return MobileGetImageResponse_PictureList_DEFAULT + } + return p.PictureList +} +func (p *MobileGetImageResponse) SetBase(val *model.BaseResp) { + p.Base = val +} +func (p *MobileGetImageResponse) SetCount(val *int64) { + p.Count = val +} +func (p *MobileGetImageResponse) SetPictureList(val []*model.Picture) { + p.PictureList = val +} + +var fieldIDToName_MobileGetImageResponse = map[int16]string{ + 1: "base", + 2: "count", + 3: "picture_list", +} + +func (p *MobileGetImageResponse) IsSetBase() bool { + return p.Base != nil +} + +func (p *MobileGetImageResponse) IsSetCount() bool { + return p.Count != nil +} + +func (p *MobileGetImageResponse) IsSetPictureList() bool { + return p.PictureList != nil +} + +func (p *MobileGetImageResponse) 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 + } + case 2: + if fieldTypeId == thrift.I64 { + 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_MobileGetImageResponse[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 *MobileGetImageResponse) ReadField1(iprot thrift.TProtocol) error { + _field := model.NewBaseResp() + if err := _field.Read(iprot); err != nil { + return err + } + p.Base = _field + return nil +} +func (p *MobileGetImageResponse) ReadField2(iprot thrift.TProtocol) error { + + var _field *int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = &v + } + p.Count = _field + return nil +} +func (p *MobileGetImageResponse) ReadField3(iprot thrift.TProtocol) error { + _, size, err := iprot.ReadListBegin() + if err != nil { + return err + } + _field := make([]*model.Picture, 0, size) + values := make([]model.Picture, 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.PictureList = _field + return nil +} + +func (p *MobileGetImageResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("MobileGetImageResponse"); 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 *MobileGetImageResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Base.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 *MobileGetImageResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetCount() { + if err = oprot.WriteFieldBegin("count", thrift.I64, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(*p.Count); 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 *MobileGetImageResponse) writeField3(oprot thrift.TProtocol) (err error) { + if p.IsSetPictureList() { + if err = oprot.WriteFieldBegin("picture_list", thrift.LIST, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteListBegin(thrift.STRUCT, len(p.PictureList)); err != nil { + return err + } + for _, v := range p.PictureList { + 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 *MobileGetImageResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MobileGetImageResponse(%+v)", *p) + +} + +func (p *MobileGetImageResponse) DeepEqual(ano *MobileGetImageResponse) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.Base) { + return false + } + if !p.Field2DeepEqual(ano.Count) { + return false + } + if !p.Field3DeepEqual(ano.PictureList) { + return false + } + return true +} + +func (p *MobileGetImageResponse) Field1DeepEqual(src *model.BaseResp) bool { + + if !p.Base.DeepEqual(src) { + return false + } + return true +} +func (p *MobileGetImageResponse) Field2DeepEqual(src *int64) bool { + + if p.Count == src { + return true + } else if p.Count == nil || src == nil { + return false + } + if *p.Count != *src { + return false + } + return true +} +func (p *MobileGetImageResponse) Field3DeepEqual(src []*model.Picture) bool { + + if len(p.PictureList) != len(src) { + return false + } + for i, v := range p.PictureList { + _src := src[i] + if !v.DeepEqual(_src) { + return false + } + } + return true +} + +type AddImagePointTimeRequest struct { + PictureId int64 `thrift:"picture_id,1,required" frugal:"1,required,i64" json:"picture_id"` +} + +func NewAddImagePointTimeRequest() *AddImagePointTimeRequest { + return &AddImagePointTimeRequest{} +} + +func (p *AddImagePointTimeRequest) InitDefault() { +} + +func (p *AddImagePointTimeRequest) GetPictureId() (v int64) { + return p.PictureId +} +func (p *AddImagePointTimeRequest) SetPictureId(val int64) { + p.PictureId = val +} + +var fieldIDToName_AddImagePointTimeRequest = map[int16]string{ + 1: "picture_id", +} + +func (p *AddImagePointTimeRequest) Read(iprot thrift.TProtocol) (err error) { + + var fieldTypeId thrift.TType + var fieldId int16 + var issetPictureId bool = false + + 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.I64 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + issetPictureId = true + } 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 + } + + if !issetPictureId { + fieldId = 1 + goto RequiredFieldNotSetError + } + 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_AddImagePointTimeRequest[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) +RequiredFieldNotSetError: + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_AddImagePointTimeRequest[fieldId])) +} + +func (p *AddImagePointTimeRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.PictureId = _field + return nil +} + +func (p *AddImagePointTimeRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("AddImagePointTimeRequest"); 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 *AddImagePointTimeRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("picture_id", thrift.I64, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.PictureId); 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 *AddImagePointTimeRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("AddImagePointTimeRequest(%+v)", *p) + +} + +func (p *AddImagePointTimeRequest) DeepEqual(ano *AddImagePointTimeRequest) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.PictureId) { + return false + } + return true +} + +func (p *AddImagePointTimeRequest) Field1DeepEqual(src int64) bool { + + if p.PictureId != src { + return false + } + return true +} + +type AddImagePointTimeResponse struct { + Base *model.BaseResp `thrift:"base,1" frugal:"1,default,model.BaseResp" json:"base"` + Picture *model.Picture `thrift:"picture,2,optional" frugal:"2,optional,model.Picture" json:"picture,omitempty"` +} + +func NewAddImagePointTimeResponse() *AddImagePointTimeResponse { + return &AddImagePointTimeResponse{} +} + +func (p *AddImagePointTimeResponse) InitDefault() { +} + +var AddImagePointTimeResponse_Base_DEFAULT *model.BaseResp + +func (p *AddImagePointTimeResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return AddImagePointTimeResponse_Base_DEFAULT + } + return p.Base +} + +var AddImagePointTimeResponse_Picture_DEFAULT *model.Picture + +func (p *AddImagePointTimeResponse) GetPicture() (v *model.Picture) { + if !p.IsSetPicture() { + return AddImagePointTimeResponse_Picture_DEFAULT + } + return p.Picture +} +func (p *AddImagePointTimeResponse) SetBase(val *model.BaseResp) { + p.Base = val +} +func (p *AddImagePointTimeResponse) SetPicture(val *model.Picture) { + p.Picture = val +} + +var fieldIDToName_AddImagePointTimeResponse = map[int16]string{ + 1: "base", + 2: "picture", +} + +func (p *AddImagePointTimeResponse) IsSetBase() bool { + return p.Base != nil +} + +func (p *AddImagePointTimeResponse) IsSetPicture() bool { + return p.Picture != nil +} + +func (p *AddImagePointTimeResponse) 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 + } + case 2: + if fieldTypeId == thrift.STRUCT { + 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_AddImagePointTimeResponse[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 *AddImagePointTimeResponse) ReadField1(iprot thrift.TProtocol) error { + _field := model.NewBaseResp() + if err := _field.Read(iprot); err != nil { + return err + } + p.Base = _field + return nil +} +func (p *AddImagePointTimeResponse) ReadField2(iprot thrift.TProtocol) error { + _field := model.NewPicture() + if err := _field.Read(iprot); err != nil { + return err + } + p.Picture = _field + return nil +} + +func (p *AddImagePointTimeResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("AddImagePointTimeResponse"); 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 *AddImagePointTimeResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Base.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 *AddImagePointTimeResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetPicture() { + if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { + goto WriteFieldBeginError + } + if err := p.Picture.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 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *AddImagePointTimeResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("AddImagePointTimeResponse(%+v)", *p) + +} + +func (p *AddImagePointTimeResponse) DeepEqual(ano *AddImagePointTimeResponse) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.Base) { + return false + } + if !p.Field2DeepEqual(ano.Picture) { + return false + } + return true +} + +func (p *AddImagePointTimeResponse) Field1DeepEqual(src *model.BaseResp) bool { + + if !p.Base.DeepEqual(src) { + return false + } + return true +} +func (p *AddImagePointTimeResponse) Field2DeepEqual(src *model.Picture) bool { + + if !p.Picture.DeepEqual(src) { + return false + } + return true +} + +type LaunchScreenService interface { + CreateImage(stream LaunchScreenService_CreateImageServer) (err error) + + GetImage(ctx context.Context, req *GetImageRequest) (r *GetImageResponse, err error) + + ChangeImageProperty(ctx context.Context, req *ChangeImagePropertyRequest) (r *ChangeImagePropertyResponse, err error) + + ChangeImage(stream LaunchScreenService_ChangeImageServer) (err error) + + DeleteImage(ctx context.Context, req *DeleteImageRequest) (r *DeleteImageResponse, err error) + + MobileGetImage(ctx context.Context, req *MobileGetImageRequest) (r *MobileGetImageResponse, err error) + + AddImagePointTime(ctx context.Context, req *AddImagePointTimeRequest) (r *AddImagePointTimeResponse, err error) +} + +type LaunchScreenServiceClient struct { + c thrift.TClient +} + +func NewLaunchScreenServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *LaunchScreenServiceClient { + return &LaunchScreenServiceClient{ + c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), + } +} + +func NewLaunchScreenServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *LaunchScreenServiceClient { + return &LaunchScreenServiceClient{ + c: thrift.NewTStandardClient(iprot, oprot), + } +} + +func NewLaunchScreenServiceClient(c thrift.TClient) *LaunchScreenServiceClient { + return &LaunchScreenServiceClient{ + c: c, + } +} + +func (p *LaunchScreenServiceClient) Client_() thrift.TClient { + return p.c +} + +func (p *LaunchScreenServiceClient) CreateImage(stream LaunchScreenService_CreateImageServer) (err error) { + panic("streaming method LaunchScreenService.CreateImage(mode = client) not available, please use Kitex Thrift Streaming Client.") +} +func (p *LaunchScreenServiceClient) GetImage(ctx context.Context, req *GetImageRequest) (r *GetImageResponse, err error) { + var _args LaunchScreenServiceGetImageArgs + _args.Req = req + var _result LaunchScreenServiceGetImageResult + if err = p.Client_().Call(ctx, "GetImage", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *LaunchScreenServiceClient) ChangeImageProperty(ctx context.Context, req *ChangeImagePropertyRequest) (r *ChangeImagePropertyResponse, err error) { + var _args LaunchScreenServiceChangeImagePropertyArgs + _args.Req = req + var _result LaunchScreenServiceChangeImagePropertyResult + if err = p.Client_().Call(ctx, "ChangeImageProperty", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *LaunchScreenServiceClient) ChangeImage(stream LaunchScreenService_ChangeImageServer) (err error) { + panic("streaming method LaunchScreenService.ChangeImage(mode = client) not available, please use Kitex Thrift Streaming Client.") +} +func (p *LaunchScreenServiceClient) DeleteImage(ctx context.Context, req *DeleteImageRequest) (r *DeleteImageResponse, err error) { + var _args LaunchScreenServiceDeleteImageArgs + _args.Req = req + var _result LaunchScreenServiceDeleteImageResult + if err = p.Client_().Call(ctx, "DeleteImage", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *LaunchScreenServiceClient) MobileGetImage(ctx context.Context, req *MobileGetImageRequest) (r *MobileGetImageResponse, err error) { + var _args LaunchScreenServiceMobileGetImageArgs + _args.Req = req + var _result LaunchScreenServiceMobileGetImageResult + if err = p.Client_().Call(ctx, "MobileGetImage", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *LaunchScreenServiceClient) AddImagePointTime(ctx context.Context, req *AddImagePointTimeRequest) (r *AddImagePointTimeResponse, err error) { + var _args LaunchScreenServiceAddImagePointTimeArgs + _args.Req = req + var _result LaunchScreenServiceAddImagePointTimeResult + if err = p.Client_().Call(ctx, "AddImagePointTime", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} + +type LaunchScreenService_CreateImageServer interface { + streaming.Stream + + Recv() (*CreateImageRequest, error) + + SendAndClose(*CreateImageResponse) error +} +type LaunchScreenService_ChangeImageServer interface { + streaming.Stream + + Recv() (*ChangeImageRequest, error) + + SendAndClose(*ChangeImageResponse) error +} + +type LaunchScreenServiceProcessor struct { + processorMap map[string]thrift.TProcessorFunction + handler LaunchScreenService +} + +func (p *LaunchScreenServiceProcessor) AddToProcessorMap(key string, processor thrift.TProcessorFunction) { + p.processorMap[key] = processor +} + +func (p *LaunchScreenServiceProcessor) GetProcessorFunction(key string) (processor thrift.TProcessorFunction, ok bool) { + processor, ok = p.processorMap[key] + return processor, ok +} + +func (p *LaunchScreenServiceProcessor) ProcessorMap() map[string]thrift.TProcessorFunction { + return p.processorMap +} + +func NewLaunchScreenServiceProcessor(handler LaunchScreenService) *LaunchScreenServiceProcessor { + self := &LaunchScreenServiceProcessor{handler: handler, processorMap: make(map[string]thrift.TProcessorFunction)} + self.AddToProcessorMap("CreateImage", &launchScreenServiceProcessorCreateImage{handler: handler}) + self.AddToProcessorMap("GetImage", &launchScreenServiceProcessorGetImage{handler: handler}) + self.AddToProcessorMap("ChangeImageProperty", &launchScreenServiceProcessorChangeImageProperty{handler: handler}) + self.AddToProcessorMap("ChangeImage", &launchScreenServiceProcessorChangeImage{handler: handler}) + self.AddToProcessorMap("DeleteImage", &launchScreenServiceProcessorDeleteImage{handler: handler}) + self.AddToProcessorMap("MobileGetImage", &launchScreenServiceProcessorMobileGetImage{handler: handler}) + self.AddToProcessorMap("AddImagePointTime", &launchScreenServiceProcessorAddImagePointTime{handler: handler}) + return self +} +func (p *LaunchScreenServiceProcessor) Process(ctx context.Context, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + name, _, seqId, err := iprot.ReadMessageBegin() + if err != nil { + return false, err + } + if processor, ok := p.GetProcessorFunction(name); ok { + return processor.Process(ctx, seqId, iprot, oprot) + } + iprot.Skip(thrift.STRUCT) + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.UNKNOWN_METHOD, "Unknown function "+name) + oprot.WriteMessageBegin(name, thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, x +} + +type launchScreenServiceProcessorCreateImage struct { + handler LaunchScreenService +} + +func (p *launchScreenServiceProcessorCreateImage) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + panic("streaming method LaunchScreenService.CreateImage(mode = client) not available, please use Kitex Thrift Streaming Client.") +} + +type launchScreenServiceProcessorGetImage struct { + handler LaunchScreenService +} + +func (p *launchScreenServiceProcessorGetImage) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := LaunchScreenServiceGetImageArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("GetImage", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := LaunchScreenServiceGetImageResult{} + var retval *GetImageResponse + if retval, err2 = p.handler.GetImage(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetImage: "+err2.Error()) + oprot.WriteMessageBegin("GetImage", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("GetImage", 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 launchScreenServiceProcessorChangeImageProperty struct { + handler LaunchScreenService +} + +func (p *launchScreenServiceProcessorChangeImageProperty) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := LaunchScreenServiceChangeImagePropertyArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("ChangeImageProperty", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := LaunchScreenServiceChangeImagePropertyResult{} + var retval *ChangeImagePropertyResponse + if retval, err2 = p.handler.ChangeImageProperty(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing ChangeImageProperty: "+err2.Error()) + oprot.WriteMessageBegin("ChangeImageProperty", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("ChangeImageProperty", 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 launchScreenServiceProcessorChangeImage struct { + handler LaunchScreenService +} + +func (p *launchScreenServiceProcessorChangeImage) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + panic("streaming method LaunchScreenService.ChangeImage(mode = client) not available, please use Kitex Thrift Streaming Client.") +} + +type launchScreenServiceProcessorDeleteImage struct { + handler LaunchScreenService +} + +func (p *launchScreenServiceProcessorDeleteImage) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := LaunchScreenServiceDeleteImageArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("DeleteImage", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := LaunchScreenServiceDeleteImageResult{} + var retval *DeleteImageResponse + if retval, err2 = p.handler.DeleteImage(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing DeleteImage: "+err2.Error()) + oprot.WriteMessageBegin("DeleteImage", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("DeleteImage", 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 launchScreenServiceProcessorMobileGetImage struct { + handler LaunchScreenService +} + +func (p *launchScreenServiceProcessorMobileGetImage) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := LaunchScreenServiceMobileGetImageArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("MobileGetImage", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := LaunchScreenServiceMobileGetImageResult{} + var retval *MobileGetImageResponse + if retval, err2 = p.handler.MobileGetImage(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing MobileGetImage: "+err2.Error()) + oprot.WriteMessageBegin("MobileGetImage", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("MobileGetImage", 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 launchScreenServiceProcessorAddImagePointTime struct { + handler LaunchScreenService +} + +func (p *launchScreenServiceProcessorAddImagePointTime) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := LaunchScreenServiceAddImagePointTimeArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("AddImagePointTime", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := LaunchScreenServiceAddImagePointTimeResult{} + var retval *AddImagePointTimeResponse + if retval, err2 = p.handler.AddImagePointTime(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing AddImagePointTime: "+err2.Error()) + oprot.WriteMessageBegin("AddImagePointTime", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("AddImagePointTime", 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 LaunchScreenServiceCreateImageArgs struct { + Req *CreateImageRequest `thrift:"req,1" frugal:"1,default,CreateImageRequest" json:"req"` +} + +func NewLaunchScreenServiceCreateImageArgs() *LaunchScreenServiceCreateImageArgs { + return &LaunchScreenServiceCreateImageArgs{} +} + +func (p *LaunchScreenServiceCreateImageArgs) InitDefault() { +} + +var LaunchScreenServiceCreateImageArgs_Req_DEFAULT *CreateImageRequest + +func (p *LaunchScreenServiceCreateImageArgs) GetReq() (v *CreateImageRequest) { + if !p.IsSetReq() { + return LaunchScreenServiceCreateImageArgs_Req_DEFAULT + } + return p.Req +} +func (p *LaunchScreenServiceCreateImageArgs) SetReq(val *CreateImageRequest) { + p.Req = val +} + +var fieldIDToName_LaunchScreenServiceCreateImageArgs = map[int16]string{ + 1: "req", +} + +func (p *LaunchScreenServiceCreateImageArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *LaunchScreenServiceCreateImageArgs) 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_LaunchScreenServiceCreateImageArgs[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 *LaunchScreenServiceCreateImageArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewCreateImageRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *LaunchScreenServiceCreateImageArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("CreateImage_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 *LaunchScreenServiceCreateImageArgs) 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 *LaunchScreenServiceCreateImageArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceCreateImageArgs(%+v)", *p) + +} + +func (p *LaunchScreenServiceCreateImageArgs) DeepEqual(ano *LaunchScreenServiceCreateImageArgs) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.Req) { + return false + } + return true +} + +func (p *LaunchScreenServiceCreateImageArgs) Field1DeepEqual(src *CreateImageRequest) bool { + + if !p.Req.DeepEqual(src) { + return false + } + return true +} + +type LaunchScreenServiceCreateImageResult struct { + Success *CreateImageResponse `thrift:"success,0,optional" frugal:"0,optional,CreateImageResponse" json:"success,omitempty"` +} + +func NewLaunchScreenServiceCreateImageResult() *LaunchScreenServiceCreateImageResult { + return &LaunchScreenServiceCreateImageResult{} +} + +func (p *LaunchScreenServiceCreateImageResult) InitDefault() { +} + +var LaunchScreenServiceCreateImageResult_Success_DEFAULT *CreateImageResponse + +func (p *LaunchScreenServiceCreateImageResult) GetSuccess() (v *CreateImageResponse) { + if !p.IsSetSuccess() { + return LaunchScreenServiceCreateImageResult_Success_DEFAULT + } + return p.Success +} +func (p *LaunchScreenServiceCreateImageResult) SetSuccess(x interface{}) { + p.Success = x.(*CreateImageResponse) +} + +var fieldIDToName_LaunchScreenServiceCreateImageResult = map[int16]string{ + 0: "success", +} + +func (p *LaunchScreenServiceCreateImageResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *LaunchScreenServiceCreateImageResult) 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_LaunchScreenServiceCreateImageResult[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 *LaunchScreenServiceCreateImageResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewCreateImageResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *LaunchScreenServiceCreateImageResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("CreateImage_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 *LaunchScreenServiceCreateImageResult) 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 *LaunchScreenServiceCreateImageResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceCreateImageResult(%+v)", *p) + +} + +func (p *LaunchScreenServiceCreateImageResult) DeepEqual(ano *LaunchScreenServiceCreateImageResult) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field0DeepEqual(ano.Success) { + return false + } + return true +} + +func (p *LaunchScreenServiceCreateImageResult) Field0DeepEqual(src *CreateImageResponse) bool { + + if !p.Success.DeepEqual(src) { + return false + } + return true +} + +type LaunchScreenServiceGetImageArgs struct { + Req *GetImageRequest `thrift:"req,1" frugal:"1,default,GetImageRequest" json:"req"` +} + +func NewLaunchScreenServiceGetImageArgs() *LaunchScreenServiceGetImageArgs { + return &LaunchScreenServiceGetImageArgs{} +} + +func (p *LaunchScreenServiceGetImageArgs) InitDefault() { +} + +var LaunchScreenServiceGetImageArgs_Req_DEFAULT *GetImageRequest + +func (p *LaunchScreenServiceGetImageArgs) GetReq() (v *GetImageRequest) { + if !p.IsSetReq() { + return LaunchScreenServiceGetImageArgs_Req_DEFAULT + } + return p.Req +} +func (p *LaunchScreenServiceGetImageArgs) SetReq(val *GetImageRequest) { + p.Req = val +} + +var fieldIDToName_LaunchScreenServiceGetImageArgs = map[int16]string{ + 1: "req", +} + +func (p *LaunchScreenServiceGetImageArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *LaunchScreenServiceGetImageArgs) 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_LaunchScreenServiceGetImageArgs[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 *LaunchScreenServiceGetImageArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewGetImageRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *LaunchScreenServiceGetImageArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetImage_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 *LaunchScreenServiceGetImageArgs) 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 *LaunchScreenServiceGetImageArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceGetImageArgs(%+v)", *p) + +} + +func (p *LaunchScreenServiceGetImageArgs) DeepEqual(ano *LaunchScreenServiceGetImageArgs) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.Req) { + return false + } + return true +} + +func (p *LaunchScreenServiceGetImageArgs) Field1DeepEqual(src *GetImageRequest) bool { + + if !p.Req.DeepEqual(src) { + return false + } + return true +} + +type LaunchScreenServiceGetImageResult struct { + Success *GetImageResponse `thrift:"success,0,optional" frugal:"0,optional,GetImageResponse" json:"success,omitempty"` +} + +func NewLaunchScreenServiceGetImageResult() *LaunchScreenServiceGetImageResult { + return &LaunchScreenServiceGetImageResult{} +} + +func (p *LaunchScreenServiceGetImageResult) InitDefault() { +} + +var LaunchScreenServiceGetImageResult_Success_DEFAULT *GetImageResponse + +func (p *LaunchScreenServiceGetImageResult) GetSuccess() (v *GetImageResponse) { + if !p.IsSetSuccess() { + return LaunchScreenServiceGetImageResult_Success_DEFAULT + } + return p.Success +} +func (p *LaunchScreenServiceGetImageResult) SetSuccess(x interface{}) { + p.Success = x.(*GetImageResponse) +} + +var fieldIDToName_LaunchScreenServiceGetImageResult = map[int16]string{ + 0: "success", +} + +func (p *LaunchScreenServiceGetImageResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *LaunchScreenServiceGetImageResult) 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_LaunchScreenServiceGetImageResult[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 *LaunchScreenServiceGetImageResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewGetImageResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *LaunchScreenServiceGetImageResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("GetImage_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 *LaunchScreenServiceGetImageResult) 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 *LaunchScreenServiceGetImageResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceGetImageResult(%+v)", *p) + +} + +func (p *LaunchScreenServiceGetImageResult) DeepEqual(ano *LaunchScreenServiceGetImageResult) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field0DeepEqual(ano.Success) { + return false + } + return true +} + +func (p *LaunchScreenServiceGetImageResult) Field0DeepEqual(src *GetImageResponse) bool { + + if !p.Success.DeepEqual(src) { + return false + } + return true +} + +type LaunchScreenServiceChangeImagePropertyArgs struct { + Req *ChangeImagePropertyRequest `thrift:"req,1" frugal:"1,default,ChangeImagePropertyRequest" json:"req"` +} + +func NewLaunchScreenServiceChangeImagePropertyArgs() *LaunchScreenServiceChangeImagePropertyArgs { + return &LaunchScreenServiceChangeImagePropertyArgs{} +} + +func (p *LaunchScreenServiceChangeImagePropertyArgs) InitDefault() { +} + +var LaunchScreenServiceChangeImagePropertyArgs_Req_DEFAULT *ChangeImagePropertyRequest + +func (p *LaunchScreenServiceChangeImagePropertyArgs) GetReq() (v *ChangeImagePropertyRequest) { + if !p.IsSetReq() { + return LaunchScreenServiceChangeImagePropertyArgs_Req_DEFAULT + } + return p.Req +} +func (p *LaunchScreenServiceChangeImagePropertyArgs) SetReq(val *ChangeImagePropertyRequest) { + p.Req = val +} + +var fieldIDToName_LaunchScreenServiceChangeImagePropertyArgs = map[int16]string{ + 1: "req", +} + +func (p *LaunchScreenServiceChangeImagePropertyArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *LaunchScreenServiceChangeImagePropertyArgs) 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_LaunchScreenServiceChangeImagePropertyArgs[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 *LaunchScreenServiceChangeImagePropertyArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewChangeImagePropertyRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *LaunchScreenServiceChangeImagePropertyArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ChangeImageProperty_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 *LaunchScreenServiceChangeImagePropertyArgs) 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 *LaunchScreenServiceChangeImagePropertyArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceChangeImagePropertyArgs(%+v)", *p) + +} + +func (p *LaunchScreenServiceChangeImagePropertyArgs) DeepEqual(ano *LaunchScreenServiceChangeImagePropertyArgs) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.Req) { + return false + } + return true +} + +func (p *LaunchScreenServiceChangeImagePropertyArgs) Field1DeepEqual(src *ChangeImagePropertyRequest) bool { + + if !p.Req.DeepEqual(src) { + return false + } + return true +} + +type LaunchScreenServiceChangeImagePropertyResult struct { + Success *ChangeImagePropertyResponse `thrift:"success,0,optional" frugal:"0,optional,ChangeImagePropertyResponse" json:"success,omitempty"` +} + +func NewLaunchScreenServiceChangeImagePropertyResult() *LaunchScreenServiceChangeImagePropertyResult { + return &LaunchScreenServiceChangeImagePropertyResult{} +} + +func (p *LaunchScreenServiceChangeImagePropertyResult) InitDefault() { +} + +var LaunchScreenServiceChangeImagePropertyResult_Success_DEFAULT *ChangeImagePropertyResponse + +func (p *LaunchScreenServiceChangeImagePropertyResult) GetSuccess() (v *ChangeImagePropertyResponse) { + if !p.IsSetSuccess() { + return LaunchScreenServiceChangeImagePropertyResult_Success_DEFAULT + } + return p.Success +} +func (p *LaunchScreenServiceChangeImagePropertyResult) SetSuccess(x interface{}) { + p.Success = x.(*ChangeImagePropertyResponse) +} + +var fieldIDToName_LaunchScreenServiceChangeImagePropertyResult = map[int16]string{ + 0: "success", +} + +func (p *LaunchScreenServiceChangeImagePropertyResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *LaunchScreenServiceChangeImagePropertyResult) 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_LaunchScreenServiceChangeImagePropertyResult[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 *LaunchScreenServiceChangeImagePropertyResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewChangeImagePropertyResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *LaunchScreenServiceChangeImagePropertyResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ChangeImageProperty_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 *LaunchScreenServiceChangeImagePropertyResult) 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 *LaunchScreenServiceChangeImagePropertyResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceChangeImagePropertyResult(%+v)", *p) + +} + +func (p *LaunchScreenServiceChangeImagePropertyResult) DeepEqual(ano *LaunchScreenServiceChangeImagePropertyResult) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field0DeepEqual(ano.Success) { + return false + } + return true +} + +func (p *LaunchScreenServiceChangeImagePropertyResult) Field0DeepEqual(src *ChangeImagePropertyResponse) bool { + + if !p.Success.DeepEqual(src) { + return false + } + return true +} + +type LaunchScreenServiceChangeImageArgs struct { + Req *ChangeImageRequest `thrift:"req,1" frugal:"1,default,ChangeImageRequest" json:"req"` +} + +func NewLaunchScreenServiceChangeImageArgs() *LaunchScreenServiceChangeImageArgs { + return &LaunchScreenServiceChangeImageArgs{} +} + +func (p *LaunchScreenServiceChangeImageArgs) InitDefault() { +} + +var LaunchScreenServiceChangeImageArgs_Req_DEFAULT *ChangeImageRequest + +func (p *LaunchScreenServiceChangeImageArgs) GetReq() (v *ChangeImageRequest) { + if !p.IsSetReq() { + return LaunchScreenServiceChangeImageArgs_Req_DEFAULT + } + return p.Req +} +func (p *LaunchScreenServiceChangeImageArgs) SetReq(val *ChangeImageRequest) { + p.Req = val +} + +var fieldIDToName_LaunchScreenServiceChangeImageArgs = map[int16]string{ + 1: "req", +} + +func (p *LaunchScreenServiceChangeImageArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *LaunchScreenServiceChangeImageArgs) 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_LaunchScreenServiceChangeImageArgs[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 *LaunchScreenServiceChangeImageArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewChangeImageRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *LaunchScreenServiceChangeImageArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ChangeImage_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 *LaunchScreenServiceChangeImageArgs) 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 *LaunchScreenServiceChangeImageArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceChangeImageArgs(%+v)", *p) + +} + +func (p *LaunchScreenServiceChangeImageArgs) DeepEqual(ano *LaunchScreenServiceChangeImageArgs) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.Req) { + return false + } + return true +} + +func (p *LaunchScreenServiceChangeImageArgs) Field1DeepEqual(src *ChangeImageRequest) bool { + + if !p.Req.DeepEqual(src) { + return false + } + return true +} + +type LaunchScreenServiceChangeImageResult struct { + Success *ChangeImageResponse `thrift:"success,0,optional" frugal:"0,optional,ChangeImageResponse" json:"success,omitempty"` +} + +func NewLaunchScreenServiceChangeImageResult() *LaunchScreenServiceChangeImageResult { + return &LaunchScreenServiceChangeImageResult{} +} + +func (p *LaunchScreenServiceChangeImageResult) InitDefault() { +} + +var LaunchScreenServiceChangeImageResult_Success_DEFAULT *ChangeImageResponse + +func (p *LaunchScreenServiceChangeImageResult) GetSuccess() (v *ChangeImageResponse) { + if !p.IsSetSuccess() { + return LaunchScreenServiceChangeImageResult_Success_DEFAULT + } + return p.Success +} +func (p *LaunchScreenServiceChangeImageResult) SetSuccess(x interface{}) { + p.Success = x.(*ChangeImageResponse) +} + +var fieldIDToName_LaunchScreenServiceChangeImageResult = map[int16]string{ + 0: "success", +} + +func (p *LaunchScreenServiceChangeImageResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *LaunchScreenServiceChangeImageResult) 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_LaunchScreenServiceChangeImageResult[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 *LaunchScreenServiceChangeImageResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewChangeImageResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *LaunchScreenServiceChangeImageResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ChangeImage_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 *LaunchScreenServiceChangeImageResult) 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 *LaunchScreenServiceChangeImageResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceChangeImageResult(%+v)", *p) + +} + +func (p *LaunchScreenServiceChangeImageResult) DeepEqual(ano *LaunchScreenServiceChangeImageResult) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field0DeepEqual(ano.Success) { + return false + } + return true +} + +func (p *LaunchScreenServiceChangeImageResult) Field0DeepEqual(src *ChangeImageResponse) bool { + + if !p.Success.DeepEqual(src) { + return false + } + return true +} + +type LaunchScreenServiceDeleteImageArgs struct { + Req *DeleteImageRequest `thrift:"req,1" frugal:"1,default,DeleteImageRequest" json:"req"` +} + +func NewLaunchScreenServiceDeleteImageArgs() *LaunchScreenServiceDeleteImageArgs { + return &LaunchScreenServiceDeleteImageArgs{} +} + +func (p *LaunchScreenServiceDeleteImageArgs) InitDefault() { +} + +var LaunchScreenServiceDeleteImageArgs_Req_DEFAULT *DeleteImageRequest + +func (p *LaunchScreenServiceDeleteImageArgs) GetReq() (v *DeleteImageRequest) { + if !p.IsSetReq() { + return LaunchScreenServiceDeleteImageArgs_Req_DEFAULT + } + return p.Req +} +func (p *LaunchScreenServiceDeleteImageArgs) SetReq(val *DeleteImageRequest) { + p.Req = val +} + +var fieldIDToName_LaunchScreenServiceDeleteImageArgs = map[int16]string{ + 1: "req", +} + +func (p *LaunchScreenServiceDeleteImageArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *LaunchScreenServiceDeleteImageArgs) 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_LaunchScreenServiceDeleteImageArgs[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 *LaunchScreenServiceDeleteImageArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewDeleteImageRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *LaunchScreenServiceDeleteImageArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("DeleteImage_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 *LaunchScreenServiceDeleteImageArgs) 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 *LaunchScreenServiceDeleteImageArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceDeleteImageArgs(%+v)", *p) + +} + +func (p *LaunchScreenServiceDeleteImageArgs) DeepEqual(ano *LaunchScreenServiceDeleteImageArgs) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.Req) { + return false + } + return true +} + +func (p *LaunchScreenServiceDeleteImageArgs) Field1DeepEqual(src *DeleteImageRequest) bool { + + if !p.Req.DeepEqual(src) { + return false + } + return true +} + +type LaunchScreenServiceDeleteImageResult struct { + Success *DeleteImageResponse `thrift:"success,0,optional" frugal:"0,optional,DeleteImageResponse" json:"success,omitempty"` +} + +func NewLaunchScreenServiceDeleteImageResult() *LaunchScreenServiceDeleteImageResult { + return &LaunchScreenServiceDeleteImageResult{} +} + +func (p *LaunchScreenServiceDeleteImageResult) InitDefault() { +} + +var LaunchScreenServiceDeleteImageResult_Success_DEFAULT *DeleteImageResponse + +func (p *LaunchScreenServiceDeleteImageResult) GetSuccess() (v *DeleteImageResponse) { + if !p.IsSetSuccess() { + return LaunchScreenServiceDeleteImageResult_Success_DEFAULT + } + return p.Success +} +func (p *LaunchScreenServiceDeleteImageResult) SetSuccess(x interface{}) { + p.Success = x.(*DeleteImageResponse) +} + +var fieldIDToName_LaunchScreenServiceDeleteImageResult = map[int16]string{ + 0: "success", +} + +func (p *LaunchScreenServiceDeleteImageResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *LaunchScreenServiceDeleteImageResult) 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_LaunchScreenServiceDeleteImageResult[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 *LaunchScreenServiceDeleteImageResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewDeleteImageResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *LaunchScreenServiceDeleteImageResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("DeleteImage_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 *LaunchScreenServiceDeleteImageResult) 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 *LaunchScreenServiceDeleteImageResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceDeleteImageResult(%+v)", *p) + +} + +func (p *LaunchScreenServiceDeleteImageResult) DeepEqual(ano *LaunchScreenServiceDeleteImageResult) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field0DeepEqual(ano.Success) { + return false + } + return true +} + +func (p *LaunchScreenServiceDeleteImageResult) Field0DeepEqual(src *DeleteImageResponse) bool { + + if !p.Success.DeepEqual(src) { + return false + } + return true +} + +type LaunchScreenServiceMobileGetImageArgs struct { + Req *MobileGetImageRequest `thrift:"req,1" frugal:"1,default,MobileGetImageRequest" json:"req"` +} + +func NewLaunchScreenServiceMobileGetImageArgs() *LaunchScreenServiceMobileGetImageArgs { + return &LaunchScreenServiceMobileGetImageArgs{} +} + +func (p *LaunchScreenServiceMobileGetImageArgs) InitDefault() { +} + +var LaunchScreenServiceMobileGetImageArgs_Req_DEFAULT *MobileGetImageRequest + +func (p *LaunchScreenServiceMobileGetImageArgs) GetReq() (v *MobileGetImageRequest) { + if !p.IsSetReq() { + return LaunchScreenServiceMobileGetImageArgs_Req_DEFAULT + } + return p.Req +} +func (p *LaunchScreenServiceMobileGetImageArgs) SetReq(val *MobileGetImageRequest) { + p.Req = val +} + +var fieldIDToName_LaunchScreenServiceMobileGetImageArgs = map[int16]string{ + 1: "req", +} + +func (p *LaunchScreenServiceMobileGetImageArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *LaunchScreenServiceMobileGetImageArgs) 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_LaunchScreenServiceMobileGetImageArgs[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 *LaunchScreenServiceMobileGetImageArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewMobileGetImageRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *LaunchScreenServiceMobileGetImageArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("MobileGetImage_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 *LaunchScreenServiceMobileGetImageArgs) 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 *LaunchScreenServiceMobileGetImageArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceMobileGetImageArgs(%+v)", *p) + +} + +func (p *LaunchScreenServiceMobileGetImageArgs) DeepEqual(ano *LaunchScreenServiceMobileGetImageArgs) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.Req) { + return false + } + return true +} + +func (p *LaunchScreenServiceMobileGetImageArgs) Field1DeepEqual(src *MobileGetImageRequest) bool { + + if !p.Req.DeepEqual(src) { + return false + } + return true +} + +type LaunchScreenServiceMobileGetImageResult struct { + Success *MobileGetImageResponse `thrift:"success,0,optional" frugal:"0,optional,MobileGetImageResponse" json:"success,omitempty"` +} + +func NewLaunchScreenServiceMobileGetImageResult() *LaunchScreenServiceMobileGetImageResult { + return &LaunchScreenServiceMobileGetImageResult{} +} + +func (p *LaunchScreenServiceMobileGetImageResult) InitDefault() { +} + +var LaunchScreenServiceMobileGetImageResult_Success_DEFAULT *MobileGetImageResponse + +func (p *LaunchScreenServiceMobileGetImageResult) GetSuccess() (v *MobileGetImageResponse) { + if !p.IsSetSuccess() { + return LaunchScreenServiceMobileGetImageResult_Success_DEFAULT + } + return p.Success +} +func (p *LaunchScreenServiceMobileGetImageResult) SetSuccess(x interface{}) { + p.Success = x.(*MobileGetImageResponse) +} + +var fieldIDToName_LaunchScreenServiceMobileGetImageResult = map[int16]string{ + 0: "success", +} + +func (p *LaunchScreenServiceMobileGetImageResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *LaunchScreenServiceMobileGetImageResult) 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_LaunchScreenServiceMobileGetImageResult[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 *LaunchScreenServiceMobileGetImageResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewMobileGetImageResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *LaunchScreenServiceMobileGetImageResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("MobileGetImage_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 *LaunchScreenServiceMobileGetImageResult) 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 *LaunchScreenServiceMobileGetImageResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceMobileGetImageResult(%+v)", *p) + +} + +func (p *LaunchScreenServiceMobileGetImageResult) DeepEqual(ano *LaunchScreenServiceMobileGetImageResult) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field0DeepEqual(ano.Success) { + return false + } + return true +} + +func (p *LaunchScreenServiceMobileGetImageResult) Field0DeepEqual(src *MobileGetImageResponse) bool { + + if !p.Success.DeepEqual(src) { + return false + } + return true +} + +type LaunchScreenServiceAddImagePointTimeArgs struct { + Req *AddImagePointTimeRequest `thrift:"req,1" frugal:"1,default,AddImagePointTimeRequest" json:"req"` +} + +func NewLaunchScreenServiceAddImagePointTimeArgs() *LaunchScreenServiceAddImagePointTimeArgs { + return &LaunchScreenServiceAddImagePointTimeArgs{} +} + +func (p *LaunchScreenServiceAddImagePointTimeArgs) InitDefault() { +} + +var LaunchScreenServiceAddImagePointTimeArgs_Req_DEFAULT *AddImagePointTimeRequest + +func (p *LaunchScreenServiceAddImagePointTimeArgs) GetReq() (v *AddImagePointTimeRequest) { + if !p.IsSetReq() { + return LaunchScreenServiceAddImagePointTimeArgs_Req_DEFAULT + } + return p.Req +} +func (p *LaunchScreenServiceAddImagePointTimeArgs) SetReq(val *AddImagePointTimeRequest) { + p.Req = val +} + +var fieldIDToName_LaunchScreenServiceAddImagePointTimeArgs = map[int16]string{ + 1: "req", +} + +func (p *LaunchScreenServiceAddImagePointTimeArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *LaunchScreenServiceAddImagePointTimeArgs) 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_LaunchScreenServiceAddImagePointTimeArgs[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 *LaunchScreenServiceAddImagePointTimeArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewAddImagePointTimeRequest() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *LaunchScreenServiceAddImagePointTimeArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("AddImagePointTime_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 *LaunchScreenServiceAddImagePointTimeArgs) 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 *LaunchScreenServiceAddImagePointTimeArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceAddImagePointTimeArgs(%+v)", *p) + +} + +func (p *LaunchScreenServiceAddImagePointTimeArgs) DeepEqual(ano *LaunchScreenServiceAddImagePointTimeArgs) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.Req) { + return false + } + return true +} + +func (p *LaunchScreenServiceAddImagePointTimeArgs) Field1DeepEqual(src *AddImagePointTimeRequest) bool { + + if !p.Req.DeepEqual(src) { + return false + } + return true +} + +type LaunchScreenServiceAddImagePointTimeResult struct { + Success *AddImagePointTimeResponse `thrift:"success,0,optional" frugal:"0,optional,AddImagePointTimeResponse" json:"success,omitempty"` +} + +func NewLaunchScreenServiceAddImagePointTimeResult() *LaunchScreenServiceAddImagePointTimeResult { + return &LaunchScreenServiceAddImagePointTimeResult{} +} + +func (p *LaunchScreenServiceAddImagePointTimeResult) InitDefault() { +} + +var LaunchScreenServiceAddImagePointTimeResult_Success_DEFAULT *AddImagePointTimeResponse + +func (p *LaunchScreenServiceAddImagePointTimeResult) GetSuccess() (v *AddImagePointTimeResponse) { + if !p.IsSetSuccess() { + return LaunchScreenServiceAddImagePointTimeResult_Success_DEFAULT + } + return p.Success +} +func (p *LaunchScreenServiceAddImagePointTimeResult) SetSuccess(x interface{}) { + p.Success = x.(*AddImagePointTimeResponse) +} + +var fieldIDToName_LaunchScreenServiceAddImagePointTimeResult = map[int16]string{ + 0: "success", +} + +func (p *LaunchScreenServiceAddImagePointTimeResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *LaunchScreenServiceAddImagePointTimeResult) 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_LaunchScreenServiceAddImagePointTimeResult[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 *LaunchScreenServiceAddImagePointTimeResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewAddImagePointTimeResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *LaunchScreenServiceAddImagePointTimeResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("AddImagePointTime_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 *LaunchScreenServiceAddImagePointTimeResult) 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 *LaunchScreenServiceAddImagePointTimeResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("LaunchScreenServiceAddImagePointTimeResult(%+v)", *p) + +} + +func (p *LaunchScreenServiceAddImagePointTimeResult) DeepEqual(ano *LaunchScreenServiceAddImagePointTimeResult) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field0DeepEqual(ano.Success) { + return false + } + return true +} + +func (p *LaunchScreenServiceAddImagePointTimeResult) Field0DeepEqual(src *AddImagePointTimeResponse) bool { + + if !p.Success.DeepEqual(src) { + return false + } + return true +} diff --git a/kitex_gen/launch_screen/launchscreenservice/client.go b/kitex_gen/launch_screen/launchscreenservice/client.go new file mode 100644 index 0000000..305c496 --- /dev/null +++ b/kitex_gen/launch_screen/launchscreenservice/client.go @@ -0,0 +1,153 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by Kitex v0.9.1. DO NOT EDIT. + +package launchscreenservice + +import ( + "context" + + client "github.com/cloudwego/kitex/client" + callopt "github.com/cloudwego/kitex/client/callopt" + "github.com/cloudwego/kitex/client/callopt/streamcall" + "github.com/cloudwego/kitex/client/streamclient" + streaming "github.com/cloudwego/kitex/pkg/streaming" + transport "github.com/cloudwego/kitex/transport" + + launch_screen "github.com/west2-online/fzuhelper-server/kitex_gen/launch_screen" +) + +// Client is designed to provide IDL-compatible methods with call-option parameter for kitex framework. +type Client interface { + GetImage(ctx context.Context, req *launch_screen.GetImageRequest, callOptions ...callopt.Option) (r *launch_screen.GetImageResponse, err error) + ChangeImageProperty(ctx context.Context, req *launch_screen.ChangeImagePropertyRequest, callOptions ...callopt.Option) (r *launch_screen.ChangeImagePropertyResponse, err error) + DeleteImage(ctx context.Context, req *launch_screen.DeleteImageRequest, callOptions ...callopt.Option) (r *launch_screen.DeleteImageResponse, err error) + MobileGetImage(ctx context.Context, req *launch_screen.MobileGetImageRequest, callOptions ...callopt.Option) (r *launch_screen.MobileGetImageResponse, err error) + AddImagePointTime(ctx context.Context, req *launch_screen.AddImagePointTimeRequest, callOptions ...callopt.Option) (r *launch_screen.AddImagePointTimeResponse, err error) +} + +// StreamClient is designed to provide Interface for Streaming APIs. +type StreamClient interface { + CreateImage(ctx context.Context, callOptions ...streamcall.Option) (stream LaunchScreenService_CreateImageClient, err error) + ChangeImage(ctx context.Context, callOptions ...streamcall.Option) (stream LaunchScreenService_ChangeImageClient, err error) +} + +type LaunchScreenService_CreateImageClient interface { + streaming.Stream + Send(*launch_screen.CreateImageRequest) error + CloseAndRecv() (*launch_screen.CreateImageResponse, error) +} + +type LaunchScreenService_ChangeImageClient interface { + streaming.Stream + Send(*launch_screen.ChangeImageRequest) error + CloseAndRecv() (*launch_screen.ChangeImageResponse, error) +} + +// NewClient creates a client for the service defined in IDL. +func NewClient(destService string, opts ...client.Option) (Client, error) { + var options []client.Option + options = append(options, client.WithDestService(destService)) + + options = append(options, opts...) + + kc, err := client.NewClient(serviceInfoForClient(), options...) + if err != nil { + return nil, err + } + return &kLaunchScreenServiceClient{ + kClient: newServiceClient(kc), + }, nil +} + +// MustNewClient creates a client for the service defined in IDL. It panics if any error occurs. +func MustNewClient(destService string, opts ...client.Option) Client { + kc, err := NewClient(destService, opts...) + if err != nil { + panic(err) + } + return kc +} + +type kLaunchScreenServiceClient struct { + *kClient +} + +func (p *kLaunchScreenServiceClient) GetImage(ctx context.Context, req *launch_screen.GetImageRequest, callOptions ...callopt.Option) (r *launch_screen.GetImageResponse, err error) { + ctx = client.NewCtxWithCallOptions(ctx, callOptions) + return p.kClient.GetImage(ctx, req) +} + +func (p *kLaunchScreenServiceClient) ChangeImageProperty(ctx context.Context, req *launch_screen.ChangeImagePropertyRequest, callOptions ...callopt.Option) (r *launch_screen.ChangeImagePropertyResponse, err error) { + ctx = client.NewCtxWithCallOptions(ctx, callOptions) + return p.kClient.ChangeImageProperty(ctx, req) +} + +func (p *kLaunchScreenServiceClient) DeleteImage(ctx context.Context, req *launch_screen.DeleteImageRequest, callOptions ...callopt.Option) (r *launch_screen.DeleteImageResponse, err error) { + ctx = client.NewCtxWithCallOptions(ctx, callOptions) + return p.kClient.DeleteImage(ctx, req) +} + +func (p *kLaunchScreenServiceClient) MobileGetImage(ctx context.Context, req *launch_screen.MobileGetImageRequest, callOptions ...callopt.Option) (r *launch_screen.MobileGetImageResponse, err error) { + ctx = client.NewCtxWithCallOptions(ctx, callOptions) + return p.kClient.MobileGetImage(ctx, req) +} + +func (p *kLaunchScreenServiceClient) AddImagePointTime(ctx context.Context, req *launch_screen.AddImagePointTimeRequest, callOptions ...callopt.Option) (r *launch_screen.AddImagePointTimeResponse, err error) { + ctx = client.NewCtxWithCallOptions(ctx, callOptions) + return p.kClient.AddImagePointTime(ctx, req) +} + +// NewStreamClient creates a stream client for the service's streaming APIs defined in IDL. +func NewStreamClient(destService string, opts ...streamclient.Option) (StreamClient, error) { + var options []client.Option + options = append(options, client.WithDestService(destService)) + options = append(options, client.WithTransportProtocol(transport.GRPC)) + options = append(options, streamclient.GetClientOptions(opts)...) + + kc, err := client.NewClient(serviceInfoForStreamClient(), options...) + if err != nil { + return nil, err + } + return &kLaunchScreenServiceStreamClient{ + kClient: newServiceClient(kc), + }, nil +} + +// MustNewStreamClient creates a stream client for the service's streaming APIs defined in IDL. +// It panics if any error occurs. +func MustNewStreamClient(destService string, opts ...streamclient.Option) StreamClient { + kc, err := NewStreamClient(destService, opts...) + if err != nil { + panic(err) + } + return kc +} + +type kLaunchScreenServiceStreamClient struct { + *kClient +} + +func (p *kLaunchScreenServiceStreamClient) CreateImage(ctx context.Context, callOptions ...streamcall.Option) (stream LaunchScreenService_CreateImageClient, err error) { + ctx = client.NewCtxWithCallOptions(ctx, streamcall.GetCallOptions(callOptions)) + return p.kClient.CreateImage(ctx) +} + +func (p *kLaunchScreenServiceStreamClient) ChangeImage(ctx context.Context, callOptions ...streamcall.Option) (stream LaunchScreenService_ChangeImageClient, err error) { + ctx = client.NewCtxWithCallOptions(ctx, streamcall.GetCallOptions(callOptions)) + return p.kClient.ChangeImage(ctx) +} diff --git a/kitex_gen/launch_screen/launchscreenservice/invoker.go b/kitex_gen/launch_screen/launchscreenservice/invoker.go new file mode 100644 index 0000000..35fba68 --- /dev/null +++ b/kitex_gen/launch_screen/launchscreenservice/invoker.go @@ -0,0 +1,41 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by Kitex v0.9.1. DO NOT EDIT. + +package launchscreenservice + +import ( + server "github.com/cloudwego/kitex/server" + + launch_screen "github.com/west2-online/fzuhelper-server/kitex_gen/launch_screen" +) + +// NewInvoker creates a server.Invoker with the given handler and options. +func NewInvoker(handler launch_screen.LaunchScreenService, opts ...server.Option) server.Invoker { + var options []server.Option + + options = append(options, opts...) + + s := server.NewInvoker(options...) + if err := s.RegisterService(serviceInfo(), handler); err != nil { + panic(err) + } + if err := s.Init(); err != nil { + panic(err) + } + return s +} diff --git a/kitex_gen/launch_screen/launchscreenservice/launchscreenservice.go b/kitex_gen/launch_screen/launchscreenservice/launchscreenservice.go new file mode 100644 index 0000000..0521cf4 --- /dev/null +++ b/kitex_gen/launch_screen/launchscreenservice/launchscreenservice.go @@ -0,0 +1,431 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by Kitex v0.9.1. DO NOT EDIT. + +package launchscreenservice + +import ( + "context" + "errors" + "fmt" + + client "github.com/cloudwego/kitex/client" + kitex "github.com/cloudwego/kitex/pkg/serviceinfo" + streaming "github.com/cloudwego/kitex/pkg/streaming" + + launch_screen "github.com/west2-online/fzuhelper-server/kitex_gen/launch_screen" +) + +var errInvalidMessageType = errors.New("invalid message type for service method handler") + +var serviceMethods = map[string]kitex.MethodInfo{ + "CreateImage": kitex.NewMethodInfo( + createImageHandler, + newLaunchScreenServiceCreateImageArgs, + newLaunchScreenServiceCreateImageResult, + false, + kitex.WithStreamingMode(kitex.StreamingClient), + ), + "GetImage": kitex.NewMethodInfo( + getImageHandler, + newLaunchScreenServiceGetImageArgs, + newLaunchScreenServiceGetImageResult, + false, + kitex.WithStreamingMode(kitex.StreamingNone), + ), + "ChangeImageProperty": kitex.NewMethodInfo( + changeImagePropertyHandler, + newLaunchScreenServiceChangeImagePropertyArgs, + newLaunchScreenServiceChangeImagePropertyResult, + false, + kitex.WithStreamingMode(kitex.StreamingNone), + ), + "ChangeImage": kitex.NewMethodInfo( + changeImageHandler, + newLaunchScreenServiceChangeImageArgs, + newLaunchScreenServiceChangeImageResult, + false, + kitex.WithStreamingMode(kitex.StreamingClient), + ), + "DeleteImage": kitex.NewMethodInfo( + deleteImageHandler, + newLaunchScreenServiceDeleteImageArgs, + newLaunchScreenServiceDeleteImageResult, + false, + kitex.WithStreamingMode(kitex.StreamingNone), + ), + "MobileGetImage": kitex.NewMethodInfo( + mobileGetImageHandler, + newLaunchScreenServiceMobileGetImageArgs, + newLaunchScreenServiceMobileGetImageResult, + false, + kitex.WithStreamingMode(kitex.StreamingNone), + ), + "AddImagePointTime": kitex.NewMethodInfo( + addImagePointTimeHandler, + newLaunchScreenServiceAddImagePointTimeArgs, + newLaunchScreenServiceAddImagePointTimeResult, + false, + kitex.WithStreamingMode(kitex.StreamingNone), + ), +} + +var ( + launchScreenServiceServiceInfo = NewServiceInfo() + launchScreenServiceServiceInfoForClient = NewServiceInfoForClient() + launchScreenServiceServiceInfoForStreamClient = NewServiceInfoForStreamClient() +) + +// for server +func serviceInfo() *kitex.ServiceInfo { + return launchScreenServiceServiceInfo +} + +// for client +func serviceInfoForStreamClient() *kitex.ServiceInfo { + return launchScreenServiceServiceInfoForStreamClient +} + +// for stream client +func serviceInfoForClient() *kitex.ServiceInfo { + return launchScreenServiceServiceInfoForClient +} + +// NewServiceInfo creates a new ServiceInfo containing all methods +func NewServiceInfo() *kitex.ServiceInfo { + return newServiceInfo(true, true, true) +} + +// NewServiceInfo creates a new ServiceInfo containing non-streaming methods +func NewServiceInfoForClient() *kitex.ServiceInfo { + return newServiceInfo(false, false, true) +} +func NewServiceInfoForStreamClient() *kitex.ServiceInfo { + return newServiceInfo(true, true, false) +} + +func newServiceInfo(hasStreaming bool, keepStreamingMethods bool, keepNonStreamingMethods bool) *kitex.ServiceInfo { + serviceName := "LaunchScreenService" + handlerType := (*launch_screen.LaunchScreenService)(nil) + methods := map[string]kitex.MethodInfo{} + for name, m := range serviceMethods { + if m.IsStreaming() && !keepStreamingMethods { + continue + } + if !m.IsStreaming() && !keepNonStreamingMethods { + continue + } + methods[name] = m + } + extra := map[string]interface{}{ + "PackageName": "launch_screen", + } + if hasStreaming { + extra["streaming"] = hasStreaming + } + svcInfo := &kitex.ServiceInfo{ + ServiceName: serviceName, + HandlerType: handlerType, + Methods: methods, + PayloadCodec: kitex.Thrift, + KiteXGenVersion: "v0.9.1", + Extra: extra, + } + return svcInfo +} + +func createImageHandler(ctx context.Context, handler interface{}, arg, result interface{}) error { + st, ok := arg.(*streaming.Args) + if !ok { + return errors.New("LaunchScreenService.CreateImage is a thrift streaming method, please call with Kitex StreamClient") + } + stream := &launchScreenServiceCreateImageServer{st.Stream} + return handler.(launch_screen.LaunchScreenService).CreateImage(stream) +} + +type launchScreenServiceCreateImageClient struct { + streaming.Stream +} + +func (x *launchScreenServiceCreateImageClient) DoFinish(err error) { + if finisher, ok := x.Stream.(streaming.WithDoFinish); ok { + finisher.DoFinish(err) + } else { + panic(fmt.Sprintf("streaming.WithDoFinish is not implemented by %T", x.Stream)) + } +} +func (x *launchScreenServiceCreateImageClient) Send(m *launch_screen.CreateImageRequest) error { + return x.Stream.SendMsg(m) +} +func (x *launchScreenServiceCreateImageClient) CloseAndRecv() (*launch_screen.CreateImageResponse, error) { + if err := x.Stream.Close(); err != nil { + return nil, err + } + m := new(launch_screen.CreateImageResponse) + return m, x.Stream.RecvMsg(m) +} + +type launchScreenServiceCreateImageServer struct { + streaming.Stream +} + +func (x *launchScreenServiceCreateImageServer) SendAndClose(m *launch_screen.CreateImageResponse) error { + return x.Stream.SendMsg(m) +} + +func (x *launchScreenServiceCreateImageServer) Recv() (*launch_screen.CreateImageRequest, error) { + m := new(launch_screen.CreateImageRequest) + return m, x.Stream.RecvMsg(m) +} + +func newLaunchScreenServiceCreateImageArgs() interface{} { + return launch_screen.NewLaunchScreenServiceCreateImageArgs() +} + +func newLaunchScreenServiceCreateImageResult() interface{} { + return launch_screen.NewLaunchScreenServiceCreateImageResult() +} + +func getImageHandler(ctx context.Context, handler interface{}, arg, result interface{}) error { + realArg := arg.(*launch_screen.LaunchScreenServiceGetImageArgs) + realResult := result.(*launch_screen.LaunchScreenServiceGetImageResult) + success, err := handler.(launch_screen.LaunchScreenService).GetImage(ctx, realArg.Req) + if err != nil { + return err + } + realResult.Success = success + return nil +} +func newLaunchScreenServiceGetImageArgs() interface{} { + return launch_screen.NewLaunchScreenServiceGetImageArgs() +} + +func newLaunchScreenServiceGetImageResult() interface{} { + return launch_screen.NewLaunchScreenServiceGetImageResult() +} + +func changeImagePropertyHandler(ctx context.Context, handler interface{}, arg, result interface{}) error { + realArg := arg.(*launch_screen.LaunchScreenServiceChangeImagePropertyArgs) + realResult := result.(*launch_screen.LaunchScreenServiceChangeImagePropertyResult) + success, err := handler.(launch_screen.LaunchScreenService).ChangeImageProperty(ctx, realArg.Req) + if err != nil { + return err + } + realResult.Success = success + return nil +} +func newLaunchScreenServiceChangeImagePropertyArgs() interface{} { + return launch_screen.NewLaunchScreenServiceChangeImagePropertyArgs() +} + +func newLaunchScreenServiceChangeImagePropertyResult() interface{} { + return launch_screen.NewLaunchScreenServiceChangeImagePropertyResult() +} + +func changeImageHandler(ctx context.Context, handler interface{}, arg, result interface{}) error { + st, ok := arg.(*streaming.Args) + if !ok { + return errors.New("LaunchScreenService.ChangeImage is a thrift streaming method, please call with Kitex StreamClient") + } + stream := &launchScreenServiceChangeImageServer{st.Stream} + return handler.(launch_screen.LaunchScreenService).ChangeImage(stream) +} + +type launchScreenServiceChangeImageClient struct { + streaming.Stream +} + +func (x *launchScreenServiceChangeImageClient) DoFinish(err error) { + if finisher, ok := x.Stream.(streaming.WithDoFinish); ok { + finisher.DoFinish(err) + } else { + panic(fmt.Sprintf("streaming.WithDoFinish is not implemented by %T", x.Stream)) + } +} +func (x *launchScreenServiceChangeImageClient) Send(m *launch_screen.ChangeImageRequest) error { + return x.Stream.SendMsg(m) +} +func (x *launchScreenServiceChangeImageClient) CloseAndRecv() (*launch_screen.ChangeImageResponse, error) { + if err := x.Stream.Close(); err != nil { + return nil, err + } + m := new(launch_screen.ChangeImageResponse) + return m, x.Stream.RecvMsg(m) +} + +type launchScreenServiceChangeImageServer struct { + streaming.Stream +} + +func (x *launchScreenServiceChangeImageServer) SendAndClose(m *launch_screen.ChangeImageResponse) error { + return x.Stream.SendMsg(m) +} + +func (x *launchScreenServiceChangeImageServer) Recv() (*launch_screen.ChangeImageRequest, error) { + m := new(launch_screen.ChangeImageRequest) + return m, x.Stream.RecvMsg(m) +} + +func newLaunchScreenServiceChangeImageArgs() interface{} { + return launch_screen.NewLaunchScreenServiceChangeImageArgs() +} + +func newLaunchScreenServiceChangeImageResult() interface{} { + return launch_screen.NewLaunchScreenServiceChangeImageResult() +} + +func deleteImageHandler(ctx context.Context, handler interface{}, arg, result interface{}) error { + realArg := arg.(*launch_screen.LaunchScreenServiceDeleteImageArgs) + realResult := result.(*launch_screen.LaunchScreenServiceDeleteImageResult) + success, err := handler.(launch_screen.LaunchScreenService).DeleteImage(ctx, realArg.Req) + if err != nil { + return err + } + realResult.Success = success + return nil +} +func newLaunchScreenServiceDeleteImageArgs() interface{} { + return launch_screen.NewLaunchScreenServiceDeleteImageArgs() +} + +func newLaunchScreenServiceDeleteImageResult() interface{} { + return launch_screen.NewLaunchScreenServiceDeleteImageResult() +} + +func mobileGetImageHandler(ctx context.Context, handler interface{}, arg, result interface{}) error { + realArg := arg.(*launch_screen.LaunchScreenServiceMobileGetImageArgs) + realResult := result.(*launch_screen.LaunchScreenServiceMobileGetImageResult) + success, err := handler.(launch_screen.LaunchScreenService).MobileGetImage(ctx, realArg.Req) + if err != nil { + return err + } + realResult.Success = success + return nil +} +func newLaunchScreenServiceMobileGetImageArgs() interface{} { + return launch_screen.NewLaunchScreenServiceMobileGetImageArgs() +} + +func newLaunchScreenServiceMobileGetImageResult() interface{} { + return launch_screen.NewLaunchScreenServiceMobileGetImageResult() +} + +func addImagePointTimeHandler(ctx context.Context, handler interface{}, arg, result interface{}) error { + realArg := arg.(*launch_screen.LaunchScreenServiceAddImagePointTimeArgs) + realResult := result.(*launch_screen.LaunchScreenServiceAddImagePointTimeResult) + success, err := handler.(launch_screen.LaunchScreenService).AddImagePointTime(ctx, realArg.Req) + if err != nil { + return err + } + realResult.Success = success + return nil +} +func newLaunchScreenServiceAddImagePointTimeArgs() interface{} { + return launch_screen.NewLaunchScreenServiceAddImagePointTimeArgs() +} + +func newLaunchScreenServiceAddImagePointTimeResult() interface{} { + return launch_screen.NewLaunchScreenServiceAddImagePointTimeResult() +} + +type kClient struct { + c client.Client +} + +func newServiceClient(c client.Client) *kClient { + return &kClient{ + c: c, + } +} + +func (p *kClient) CreateImage(ctx context.Context) (LaunchScreenService_CreateImageClient, error) { + streamClient, ok := p.c.(client.Streaming) + if !ok { + return nil, fmt.Errorf("client not support streaming") + } + res := new(streaming.Result) + err := streamClient.Stream(ctx, "CreateImage", nil, res) + if err != nil { + return nil, err + } + stream := &launchScreenServiceCreateImageClient{res.Stream} + return stream, nil +} + +func (p *kClient) GetImage(ctx context.Context, req *launch_screen.GetImageRequest) (r *launch_screen.GetImageResponse, err error) { + var _args launch_screen.LaunchScreenServiceGetImageArgs + _args.Req = req + var _result launch_screen.LaunchScreenServiceGetImageResult + if err = p.c.Call(ctx, "GetImage", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} + +func (p *kClient) ChangeImageProperty(ctx context.Context, req *launch_screen.ChangeImagePropertyRequest) (r *launch_screen.ChangeImagePropertyResponse, err error) { + var _args launch_screen.LaunchScreenServiceChangeImagePropertyArgs + _args.Req = req + var _result launch_screen.LaunchScreenServiceChangeImagePropertyResult + if err = p.c.Call(ctx, "ChangeImageProperty", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} + +func (p *kClient) ChangeImage(ctx context.Context) (LaunchScreenService_ChangeImageClient, error) { + streamClient, ok := p.c.(client.Streaming) + if !ok { + return nil, fmt.Errorf("client not support streaming") + } + res := new(streaming.Result) + err := streamClient.Stream(ctx, "ChangeImage", nil, res) + if err != nil { + return nil, err + } + stream := &launchScreenServiceChangeImageClient{res.Stream} + return stream, nil +} + +func (p *kClient) DeleteImage(ctx context.Context, req *launch_screen.DeleteImageRequest) (r *launch_screen.DeleteImageResponse, err error) { + var _args launch_screen.LaunchScreenServiceDeleteImageArgs + _args.Req = req + var _result launch_screen.LaunchScreenServiceDeleteImageResult + if err = p.c.Call(ctx, "DeleteImage", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} + +func (p *kClient) MobileGetImage(ctx context.Context, req *launch_screen.MobileGetImageRequest) (r *launch_screen.MobileGetImageResponse, err error) { + var _args launch_screen.LaunchScreenServiceMobileGetImageArgs + _args.Req = req + var _result launch_screen.LaunchScreenServiceMobileGetImageResult + if err = p.c.Call(ctx, "MobileGetImage", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} + +func (p *kClient) AddImagePointTime(ctx context.Context, req *launch_screen.AddImagePointTimeRequest) (r *launch_screen.AddImagePointTimeResponse, err error) { + var _args launch_screen.LaunchScreenServiceAddImagePointTimeArgs + _args.Req = req + var _result launch_screen.LaunchScreenServiceAddImagePointTimeResult + if err = p.c.Call(ctx, "AddImagePointTime", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} diff --git a/kitex_gen/launch_screen/launchscreenservice/server.go b/kitex_gen/launch_screen/launchscreenservice/server.go new file mode 100644 index 0000000..d4d3400 --- /dev/null +++ b/kitex_gen/launch_screen/launchscreenservice/server.go @@ -0,0 +1,42 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by Kitex v0.9.1. DO NOT EDIT. +package launchscreenservice + +import ( + server "github.com/cloudwego/kitex/server" + + launch_screen "github.com/west2-online/fzuhelper-server/kitex_gen/launch_screen" +) + +// NewServer creates a server.Server with the given handler and options. +func NewServer(handler launch_screen.LaunchScreenService, opts ...server.Option) server.Server { + var options []server.Option + + options = append(options, opts...) + options = append(options, server.WithCompatibleMiddlewareForUnary()) + + svr := server.NewServer(options...) + if err := svr.RegisterService(serviceInfo(), handler); err != nil { + panic(err) + } + return svr +} + +func RegisterService(svr server.Server, handler launch_screen.LaunchScreenService, opts ...server.RegisterOption) error { + return svr.RegisterService(serviceInfo(), handler, opts...) +} diff --git a/kitex_gen/model/k-model.go b/kitex_gen/model/k-model.go index 86bb184..cc0985b 100644 --- a/kitex_gen/model/k-model.go +++ b/kitex_gen/model/k-model.go @@ -740,3 +740,814 @@ func (p *Classroom) field4Length() int { l += bthrift.Binary.FieldEndLength() return l } + +func (p *Picture) FastRead(buf []byte) (int, error) { + var err error + var offset int + var l int + var fieldTypeId thrift.TType + var fieldId int16 + _, l, err = bthrift.Binary.ReadStructBegin(buf) + offset += l + if err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + switch fieldId { + case 1: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField1(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 3: + if fieldTypeId == thrift.STRING { + l, err = p.FastReadField3(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 4: + if fieldTypeId == thrift.STRING { + l, err = p.FastReadField4(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 5: + if fieldTypeId == thrift.STRING { + l, err = p.FastReadField5(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 6: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField6(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 7: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField7(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 8: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField8(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 9: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField9(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 10: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField10(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 11: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField11(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 12: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField12(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 13: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField13(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 14: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField14(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 15: + if fieldTypeId == thrift.I64 { + l, err = p.FastReadField15(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + case 16: + if fieldTypeId == thrift.STRING { + l, err = p.FastReadField16(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldError + } + } else { + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + default: + l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) + offset += l + if err != nil { + goto SkipFieldError + } + } + + l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadFieldEndError + } + } + l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) + offset += l + if err != nil { + goto ReadStructEndError + } + + return offset, nil +ReadStructBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_Picture[fieldId]), err) +SkipFieldError: + return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +ReadFieldEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *Picture) FastReadField1(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.Id = v + + } + return offset, nil +} + +func (p *Picture) FastReadField3(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.Url = v + + } + return offset, nil +} + +func (p *Picture) FastReadField4(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.Href = v + + } + return offset, nil +} + +func (p *Picture) FastReadField5(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.Text = v + + } + return offset, nil +} + +func (p *Picture) FastReadField6(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.Type = v + + } + return offset, nil +} + +func (p *Picture) FastReadField7(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + p.ShowTimes = &v + + } + return offset, nil +} + +func (p *Picture) FastReadField8(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + p.PointTimes = &v + + } + return offset, nil +} + +func (p *Picture) FastReadField9(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.Duration = v + + } + return offset, nil +} + +func (p *Picture) FastReadField10(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + p.SType = &v + + } + return offset, nil +} + +func (p *Picture) FastReadField11(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.Frequency = v + + } + return offset, nil +} + +func (p *Picture) FastReadField12(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.StartAt = v + + } + return offset, nil +} + +func (p *Picture) FastReadField13(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.EndAt = v + + } + return offset, nil +} + +func (p *Picture) FastReadField14(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.StartTime = v + + } + return offset, nil +} + +func (p *Picture) FastReadField15(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadI64(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.EndTime = v + + } + return offset, nil +} + +func (p *Picture) FastReadField16(buf []byte) (int, error) { + offset := 0 + + if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { + return offset, err + } else { + offset += l + + p.Regex = v + + } + return offset, nil +} + +// for compatibility +func (p *Picture) FastWrite(buf []byte) int { + return 0 +} + +func (p *Picture) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteStructBegin(buf[offset:], "Picture") + if p != nil { + offset += p.fastWriteField1(buf[offset:], binaryWriter) + offset += p.fastWriteField6(buf[offset:], binaryWriter) + offset += p.fastWriteField7(buf[offset:], binaryWriter) + offset += p.fastWriteField8(buf[offset:], binaryWriter) + offset += p.fastWriteField9(buf[offset:], binaryWriter) + offset += p.fastWriteField10(buf[offset:], binaryWriter) + offset += p.fastWriteField11(buf[offset:], binaryWriter) + offset += p.fastWriteField12(buf[offset:], binaryWriter) + offset += p.fastWriteField13(buf[offset:], binaryWriter) + offset += p.fastWriteField14(buf[offset:], binaryWriter) + offset += p.fastWriteField15(buf[offset:], binaryWriter) + offset += p.fastWriteField3(buf[offset:], binaryWriter) + offset += p.fastWriteField4(buf[offset:], binaryWriter) + offset += p.fastWriteField5(buf[offset:], binaryWriter) + offset += p.fastWriteField16(buf[offset:], binaryWriter) + } + offset += bthrift.Binary.WriteFieldStop(buf[offset:]) + offset += bthrift.Binary.WriteStructEnd(buf[offset:]) + return offset +} + +func (p *Picture) BLength() int { + l := 0 + l += bthrift.Binary.StructBeginLength("Picture") + if p != nil { + l += p.field1Length() + l += p.field3Length() + l += p.field4Length() + l += p.field5Length() + l += p.field6Length() + l += p.field7Length() + l += p.field8Length() + l += p.field9Length() + l += p.field10Length() + l += p.field11Length() + l += p.field12Length() + l += p.field13Length() + l += p.field14Length() + l += p.field15Length() + l += p.field16Length() + } + l += bthrift.Binary.FieldStopLength() + l += bthrift.Binary.StructEndLength() + return l +} + +func (p *Picture) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "id", thrift.I64, 1) + offset += bthrift.Binary.WriteI64(buf[offset:], p.Id) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *Picture) fastWriteField3(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "url", thrift.STRING, 3) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Url) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *Picture) fastWriteField4(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "href", thrift.STRING, 4) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Href) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *Picture) fastWriteField5(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "text", thrift.STRING, 5) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Text) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *Picture) fastWriteField6(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "type", thrift.I64, 6) + offset += bthrift.Binary.WriteI64(buf[offset:], p.Type) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *Picture) fastWriteField7(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetShowTimes() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "show_times", thrift.I64, 7) + offset += bthrift.Binary.WriteI64(buf[offset:], *p.ShowTimes) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *Picture) fastWriteField8(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetPointTimes() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "point_times", thrift.I64, 8) + offset += bthrift.Binary.WriteI64(buf[offset:], *p.PointTimes) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *Picture) fastWriteField9(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "duration", thrift.I64, 9) + offset += bthrift.Binary.WriteI64(buf[offset:], p.Duration) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *Picture) fastWriteField10(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + if p.IsSetSType() { + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "s_type", thrift.I64, 10) + offset += bthrift.Binary.WriteI64(buf[offset:], *p.SType) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + } + return offset +} + +func (p *Picture) fastWriteField11(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "frequency", thrift.I64, 11) + offset += bthrift.Binary.WriteI64(buf[offset:], p.Frequency) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *Picture) fastWriteField12(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "start_at", thrift.I64, 12) + offset += bthrift.Binary.WriteI64(buf[offset:], p.StartAt) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *Picture) fastWriteField13(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "end_at", thrift.I64, 13) + offset += bthrift.Binary.WriteI64(buf[offset:], p.EndAt) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *Picture) fastWriteField14(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "start_time", thrift.I64, 14) + offset += bthrift.Binary.WriteI64(buf[offset:], p.StartTime) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *Picture) fastWriteField15(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "end_time", thrift.I64, 15) + offset += bthrift.Binary.WriteI64(buf[offset:], p.EndTime) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *Picture) fastWriteField16(buf []byte, binaryWriter bthrift.BinaryWriter) int { + offset := 0 + offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "regex", thrift.STRING, 16) + offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Regex) + + offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) + return offset +} + +func (p *Picture) field1Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("id", thrift.I64, 1) + l += bthrift.Binary.I64Length(p.Id) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *Picture) field3Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("url", thrift.STRING, 3) + l += bthrift.Binary.StringLengthNocopy(p.Url) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *Picture) field4Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("href", thrift.STRING, 4) + l += bthrift.Binary.StringLengthNocopy(p.Href) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *Picture) field5Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("text", thrift.STRING, 5) + l += bthrift.Binary.StringLengthNocopy(p.Text) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *Picture) field6Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("type", thrift.I64, 6) + l += bthrift.Binary.I64Length(p.Type) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *Picture) field7Length() int { + l := 0 + if p.IsSetShowTimes() { + l += bthrift.Binary.FieldBeginLength("show_times", thrift.I64, 7) + l += bthrift.Binary.I64Length(*p.ShowTimes) + + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *Picture) field8Length() int { + l := 0 + if p.IsSetPointTimes() { + l += bthrift.Binary.FieldBeginLength("point_times", thrift.I64, 8) + l += bthrift.Binary.I64Length(*p.PointTimes) + + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *Picture) field9Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("duration", thrift.I64, 9) + l += bthrift.Binary.I64Length(p.Duration) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *Picture) field10Length() int { + l := 0 + if p.IsSetSType() { + l += bthrift.Binary.FieldBeginLength("s_type", thrift.I64, 10) + l += bthrift.Binary.I64Length(*p.SType) + + l += bthrift.Binary.FieldEndLength() + } + return l +} + +func (p *Picture) field11Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("frequency", thrift.I64, 11) + l += bthrift.Binary.I64Length(p.Frequency) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *Picture) field12Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("start_at", thrift.I64, 12) + l += bthrift.Binary.I64Length(p.StartAt) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *Picture) field13Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("end_at", thrift.I64, 13) + l += bthrift.Binary.I64Length(p.EndAt) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *Picture) field14Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("start_time", thrift.I64, 14) + l += bthrift.Binary.I64Length(p.StartTime) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *Picture) field15Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("end_time", thrift.I64, 15) + l += bthrift.Binary.I64Length(p.EndTime) + + l += bthrift.Binary.FieldEndLength() + return l +} + +func (p *Picture) field16Length() int { + l := 0 + l += bthrift.Binary.FieldBeginLength("regex", thrift.STRING, 16) + l += bthrift.Binary.StringLengthNocopy(p.Regex) + + l += bthrift.Binary.FieldEndLength() + return l +} diff --git a/kitex_gen/model/model.go b/kitex_gen/model/model.go index e6a88c8..f48e945 100644 --- a/kitex_gen/model/model.go +++ b/kitex_gen/model/model.go @@ -878,3 +878,1040 @@ func (p *Classroom) Field4DeepEqual(src string) bool { } return true } + +type Picture struct { + Id int64 `thrift:"id,1" frugal:"1,default,i64" json:"id"` + Url string `thrift:"url,3" frugal:"3,default,string" json:"url"` + Href string `thrift:"href,4" frugal:"4,default,string" json:"href"` + Text string `thrift:"text,5" frugal:"5,default,string" json:"text"` + Type int64 `thrift:"type,6" frugal:"6,default,i64" json:"type"` + ShowTimes *int64 `thrift:"show_times,7,optional" frugal:"7,optional,i64" json:"show_times,omitempty"` + PointTimes *int64 `thrift:"point_times,8,optional" frugal:"8,optional,i64" json:"point_times,omitempty"` + Duration int64 `thrift:"duration,9" frugal:"9,default,i64" json:"duration"` + SType *int64 `thrift:"s_type,10,optional" frugal:"10,optional,i64" json:"s_type,omitempty"` + Frequency int64 `thrift:"frequency,11" frugal:"11,default,i64" json:"frequency"` + StartAt int64 `thrift:"start_at,12" frugal:"12,default,i64" json:"start_at"` + EndAt int64 `thrift:"end_at,13" frugal:"13,default,i64" json:"end_at"` + StartTime int64 `thrift:"start_time,14" frugal:"14,default,i64" json:"start_time"` + EndTime int64 `thrift:"end_time,15" frugal:"15,default,i64" json:"end_time"` + Regex string `thrift:"regex,16" frugal:"16,default,string" json:"regex"` +} + +func NewPicture() *Picture { + return &Picture{} +} + +func (p *Picture) InitDefault() { +} + +func (p *Picture) GetId() (v int64) { + return p.Id +} + +func (p *Picture) GetUrl() (v string) { + return p.Url +} + +func (p *Picture) GetHref() (v string) { + return p.Href +} + +func (p *Picture) GetText() (v string) { + return p.Text +} + +func (p *Picture) GetType() (v int64) { + return p.Type +} + +var Picture_ShowTimes_DEFAULT int64 + +func (p *Picture) GetShowTimes() (v int64) { + if !p.IsSetShowTimes() { + return Picture_ShowTimes_DEFAULT + } + return *p.ShowTimes +} + +var Picture_PointTimes_DEFAULT int64 + +func (p *Picture) GetPointTimes() (v int64) { + if !p.IsSetPointTimes() { + return Picture_PointTimes_DEFAULT + } + return *p.PointTimes +} + +func (p *Picture) GetDuration() (v int64) { + return p.Duration +} + +var Picture_SType_DEFAULT int64 + +func (p *Picture) GetSType() (v int64) { + if !p.IsSetSType() { + return Picture_SType_DEFAULT + } + return *p.SType +} + +func (p *Picture) GetFrequency() (v int64) { + return p.Frequency +} + +func (p *Picture) GetStartAt() (v int64) { + return p.StartAt +} + +func (p *Picture) GetEndAt() (v int64) { + return p.EndAt +} + +func (p *Picture) GetStartTime() (v int64) { + return p.StartTime +} + +func (p *Picture) GetEndTime() (v int64) { + return p.EndTime +} + +func (p *Picture) GetRegex() (v string) { + return p.Regex +} +func (p *Picture) SetId(val int64) { + p.Id = val +} +func (p *Picture) SetUrl(val string) { + p.Url = val +} +func (p *Picture) SetHref(val string) { + p.Href = val +} +func (p *Picture) SetText(val string) { + p.Text = val +} +func (p *Picture) SetType(val int64) { + p.Type = val +} +func (p *Picture) SetShowTimes(val *int64) { + p.ShowTimes = val +} +func (p *Picture) SetPointTimes(val *int64) { + p.PointTimes = val +} +func (p *Picture) SetDuration(val int64) { + p.Duration = val +} +func (p *Picture) SetSType(val *int64) { + p.SType = val +} +func (p *Picture) SetFrequency(val int64) { + p.Frequency = val +} +func (p *Picture) SetStartAt(val int64) { + p.StartAt = val +} +func (p *Picture) SetEndAt(val int64) { + p.EndAt = val +} +func (p *Picture) SetStartTime(val int64) { + p.StartTime = val +} +func (p *Picture) SetEndTime(val int64) { + p.EndTime = val +} +func (p *Picture) SetRegex(val string) { + p.Regex = val +} + +var fieldIDToName_Picture = map[int16]string{ + 1: "id", + 3: "url", + 4: "href", + 5: "text", + 6: "type", + 7: "show_times", + 8: "point_times", + 9: "duration", + 10: "s_type", + 11: "frequency", + 12: "start_at", + 13: "end_at", + 14: "start_time", + 15: "end_time", + 16: "regex", +} + +func (p *Picture) IsSetShowTimes() bool { + return p.ShowTimes != nil +} + +func (p *Picture) IsSetPointTimes() bool { + return p.PointTimes != nil +} + +func (p *Picture) IsSetSType() bool { + return p.SType != nil +} + +func (p *Picture) 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.I64 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.STRING { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 4: + if fieldTypeId == thrift.STRING { + if err = p.ReadField4(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 5: + if fieldTypeId == thrift.STRING { + if err = p.ReadField5(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 6: + if fieldTypeId == thrift.I64 { + if err = p.ReadField6(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 7: + if fieldTypeId == thrift.I64 { + if err = p.ReadField7(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 8: + if fieldTypeId == thrift.I64 { + if err = p.ReadField8(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 9: + if fieldTypeId == thrift.I64 { + if err = p.ReadField9(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 10: + if fieldTypeId == thrift.I64 { + if err = p.ReadField10(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 11: + if fieldTypeId == thrift.I64 { + if err = p.ReadField11(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 12: + if fieldTypeId == thrift.I64 { + if err = p.ReadField12(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 13: + if fieldTypeId == thrift.I64 { + if err = p.ReadField13(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 14: + if fieldTypeId == thrift.I64 { + if err = p.ReadField14(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 15: + if fieldTypeId == thrift.I64 { + if err = p.ReadField15(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 16: + if fieldTypeId == thrift.STRING { + if err = p.ReadField16(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_Picture[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 *Picture) ReadField1(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.Id = _field + return nil +} +func (p *Picture) ReadField3(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Url = _field + return nil +} +func (p *Picture) ReadField4(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Href = _field + return nil +} +func (p *Picture) ReadField5(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Text = _field + return nil +} +func (p *Picture) ReadField6(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.Type = _field + return nil +} +func (p *Picture) ReadField7(iprot thrift.TProtocol) error { + + var _field *int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = &v + } + p.ShowTimes = _field + return nil +} +func (p *Picture) ReadField8(iprot thrift.TProtocol) error { + + var _field *int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = &v + } + p.PointTimes = _field + return nil +} +func (p *Picture) ReadField9(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.Duration = _field + return nil +} +func (p *Picture) ReadField10(iprot thrift.TProtocol) error { + + var _field *int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = &v + } + p.SType = _field + return nil +} +func (p *Picture) ReadField11(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.Frequency = _field + return nil +} +func (p *Picture) ReadField12(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.StartAt = _field + return nil +} +func (p *Picture) ReadField13(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.EndAt = _field + return nil +} +func (p *Picture) ReadField14(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.StartTime = _field + return nil +} +func (p *Picture) ReadField15(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.EndTime = _field + return nil +} +func (p *Picture) ReadField16(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Regex = _field + return nil +} + +func (p *Picture) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("Picture"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + 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 = p.writeField5(oprot); err != nil { + fieldId = 5 + goto WriteFieldError + } + if err = p.writeField6(oprot); err != nil { + fieldId = 6 + goto WriteFieldError + } + if err = p.writeField7(oprot); err != nil { + fieldId = 7 + goto WriteFieldError + } + if err = p.writeField8(oprot); err != nil { + fieldId = 8 + goto WriteFieldError + } + if err = p.writeField9(oprot); err != nil { + fieldId = 9 + goto WriteFieldError + } + if err = p.writeField10(oprot); err != nil { + fieldId = 10 + goto WriteFieldError + } + if err = p.writeField11(oprot); err != nil { + fieldId = 11 + goto WriteFieldError + } + if err = p.writeField12(oprot); err != nil { + fieldId = 12 + goto WriteFieldError + } + if err = p.writeField13(oprot); err != nil { + fieldId = 13 + goto WriteFieldError + } + if err = p.writeField14(oprot); err != nil { + fieldId = 14 + goto WriteFieldError + } + if err = p.writeField15(oprot); err != nil { + fieldId = 15 + goto WriteFieldError + } + if err = p.writeField16(oprot); err != nil { + fieldId = 16 + 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 *Picture) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("id", thrift.I64, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(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 *Picture) writeField3(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("url", thrift.STRING, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Url); 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 *Picture) writeField4(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("href", thrift.STRING, 4); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Href); 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 *Picture) writeField5(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("text", thrift.STRING, 5); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Text); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 5 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 5 end error: ", p), err) +} + +func (p *Picture) writeField6(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("type", thrift.I64, 6); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.Type); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 6 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 6 end error: ", p), err) +} + +func (p *Picture) writeField7(oprot thrift.TProtocol) (err error) { + if p.IsSetShowTimes() { + if err = oprot.WriteFieldBegin("show_times", thrift.I64, 7); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(*p.ShowTimes); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 7 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 7 end error: ", p), err) +} + +func (p *Picture) writeField8(oprot thrift.TProtocol) (err error) { + if p.IsSetPointTimes() { + if err = oprot.WriteFieldBegin("point_times", thrift.I64, 8); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(*p.PointTimes); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 8 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 8 end error: ", p), err) +} + +func (p *Picture) writeField9(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("duration", thrift.I64, 9); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.Duration); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 9 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 9 end error: ", p), err) +} + +func (p *Picture) writeField10(oprot thrift.TProtocol) (err error) { + if p.IsSetSType() { + if err = oprot.WriteFieldBegin("s_type", thrift.I64, 10); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(*p.SType); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 10 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 10 end error: ", p), err) +} + +func (p *Picture) writeField11(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("frequency", thrift.I64, 11); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.Frequency); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 11 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 11 end error: ", p), err) +} + +func (p *Picture) writeField12(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("start_at", thrift.I64, 12); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.StartAt); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 12 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 12 end error: ", p), err) +} + +func (p *Picture) writeField13(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("end_at", thrift.I64, 13); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.EndAt); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 13 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 13 end error: ", p), err) +} + +func (p *Picture) writeField14(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("start_time", thrift.I64, 14); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.StartTime); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 14 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 14 end error: ", p), err) +} + +func (p *Picture) writeField15(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("end_time", thrift.I64, 15); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.EndTime); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 15 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 15 end error: ", p), err) +} + +func (p *Picture) writeField16(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("regex", thrift.STRING, 16); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Regex); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 16 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 16 end error: ", p), err) +} + +func (p *Picture) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("Picture(%+v)", *p) + +} + +func (p *Picture) DeepEqual(ano *Picture) bool { + if p == ano { + return true + } else if p == nil || ano == nil { + return false + } + if !p.Field1DeepEqual(ano.Id) { + return false + } + if !p.Field3DeepEqual(ano.Url) { + return false + } + if !p.Field4DeepEqual(ano.Href) { + return false + } + if !p.Field5DeepEqual(ano.Text) { + return false + } + if !p.Field6DeepEqual(ano.Type) { + return false + } + if !p.Field7DeepEqual(ano.ShowTimes) { + return false + } + if !p.Field8DeepEqual(ano.PointTimes) { + return false + } + if !p.Field9DeepEqual(ano.Duration) { + return false + } + if !p.Field10DeepEqual(ano.SType) { + return false + } + if !p.Field11DeepEqual(ano.Frequency) { + return false + } + if !p.Field12DeepEqual(ano.StartAt) { + return false + } + if !p.Field13DeepEqual(ano.EndAt) { + return false + } + if !p.Field14DeepEqual(ano.StartTime) { + return false + } + if !p.Field15DeepEqual(ano.EndTime) { + return false + } + if !p.Field16DeepEqual(ano.Regex) { + return false + } + return true +} + +func (p *Picture) Field1DeepEqual(src int64) bool { + + if p.Id != src { + return false + } + return true +} +func (p *Picture) Field3DeepEqual(src string) bool { + + if strings.Compare(p.Url, src) != 0 { + return false + } + return true +} +func (p *Picture) Field4DeepEqual(src string) bool { + + if strings.Compare(p.Href, src) != 0 { + return false + } + return true +} +func (p *Picture) Field5DeepEqual(src string) bool { + + if strings.Compare(p.Text, src) != 0 { + return false + } + return true +} +func (p *Picture) Field6DeepEqual(src int64) bool { + + if p.Type != src { + return false + } + return true +} +func (p *Picture) Field7DeepEqual(src *int64) bool { + + if p.ShowTimes == src { + return true + } else if p.ShowTimes == nil || src == nil { + return false + } + if *p.ShowTimes != *src { + return false + } + return true +} +func (p *Picture) Field8DeepEqual(src *int64) bool { + + if p.PointTimes == src { + return true + } else if p.PointTimes == nil || src == nil { + return false + } + if *p.PointTimes != *src { + return false + } + return true +} +func (p *Picture) Field9DeepEqual(src int64) bool { + + if p.Duration != src { + return false + } + return true +} +func (p *Picture) Field10DeepEqual(src *int64) bool { + + if p.SType == src { + return true + } else if p.SType == nil || src == nil { + return false + } + if *p.SType != *src { + return false + } + return true +} +func (p *Picture) Field11DeepEqual(src int64) bool { + + if p.Frequency != src { + return false + } + return true +} +func (p *Picture) Field12DeepEqual(src int64) bool { + + if p.StartAt != src { + return false + } + return true +} +func (p *Picture) Field13DeepEqual(src int64) bool { + + if p.EndAt != src { + return false + } + return true +} +func (p *Picture) Field14DeepEqual(src int64) bool { + + if p.StartTime != src { + return false + } + return true +} +func (p *Picture) Field15DeepEqual(src int64) bool { + + if p.EndTime != src { + return false + } + return true +} +func (p *Picture) Field16DeepEqual(src string) bool { + + if strings.Compare(p.Regex, src) != 0 { + return false + } + return true +} diff --git a/pkg/client/db.go b/pkg/client/db.go index db1478d..27d3a18 100644 --- a/pkg/client/db.go +++ b/pkg/client/db.go @@ -15,3 +15,44 @@ limitations under the License. */ package client + +import ( + "context" + "fmt" + + "gorm.io/driver/mysql" + "gorm.io/gorm" + "gorm.io/gorm/schema" + + "github.com/west2-online/fzuhelper-server/config" + "github.com/west2-online/fzuhelper-server/pkg/constants" + "github.com/west2-online/fzuhelper-server/pkg/utils" +) + +// InitMySQL 通用初始化mysql函数,传入tableName指定表 +func InitMySQL(tableName string) (db *gorm.DB, sf *utils.Snowflake, err error) { + dsn, err := utils.GetMysqlDSN() + if err != nil { + return nil, nil, fmt.Errorf("dal.InitMySQL %s:get mysql DSN error: %v", tableName, err.Error()) + } + db, err = gorm.Open(mysql.Open(dsn), + &gorm.Config{ + NamingStrategy: schema.NamingStrategy{ + SingularTable: true, + }, + }) + if err != nil { + return nil, nil, fmt.Errorf("dal.InitMySQL %s:mysql connect error: %v", tableName, err.Error()) + } + + sqlDB, _ := db.DB() + sqlDB.SetMaxIdleConns(constants.MaxIdleConns) + sqlDB.SetMaxOpenConns(constants.MaxConnections) + sqlDB.SetConnMaxLifetime(constants.ConnMaxLifetime) + db = db.Table(tableName).WithContext(context.Background()) + + if sf, err = utils.NewSnowflake(config.Snowflake.DatancenterID, config.Snowflake.WorkerID); err != nil { + return nil, nil, fmt.Errorf("dal.InitMySQL %s:Snowflake init error: %v", tableName, err.Error()) + } + return db, sf, nil +} diff --git a/pkg/client/rpc.go b/pkg/client/rpc.go index 9e8a72f..8045ad7 100644 --- a/pkg/client/rpc.go +++ b/pkg/client/rpc.go @@ -20,6 +20,10 @@ import ( "errors" "fmt" + "github.com/cloudwego/kitex/client/streamclient" + + "github.com/west2-online/fzuhelper-server/kitex_gen/launch_screen/launchscreenservice" + "github.com/cloudwego/kitex/client" etcd "github.com/kitex-contrib/registry-etcd" @@ -60,3 +64,31 @@ func InitClassroomRPC() (*classroomservice.Client, error) { } return &client, nil } + +func InitLaunchScreenRPC() (*launchscreenservice.Client, error) { + if config.Etcd == nil || config.Etcd.Addr == "" { + return nil, errors.New("config.Etcd.Addr is nil") + } + r, err := etcd.NewEtcdResolver([]string{config.Etcd.Addr}) + if err != nil { + return nil, fmt.Errorf("InitClassroomRPC etcd.NewEtcdResolver failed: %w", err) + } + client, err := launchscreenservice.NewClient(constants.LaunchScreenServiceName, client.WithResolver(r), client.WithMuxConnection(constants.MuxConnection)) + if err != nil { + return nil, fmt.Errorf("InitClassroomRPC NewClient failed: %w", err) + } + return &client, nil +} + +func InitLaunchScreenStreamRPC() (*launchscreenservice.StreamClient, error) { + if config.Etcd == nil || config.Etcd.Addr == "" { + return nil, errors.New("config.Etcd.Addr is nil") + } + r, err := etcd.NewEtcdResolver([]string{config.Etcd.Addr}) + if err != nil { + return nil, fmt.Errorf("InitClassroomRPC etcd.NewEtcdResolver failed: %w", err) + } + streamClient := launchscreenservice.MustNewStreamClient(constants.LaunchScreenServiceName, streamclient.WithResolver(r)) + + return &streamClient, nil +} diff --git a/pkg/constants/constants.go b/pkg/constants/constants.go index d1c676d..df7f2ae 100644 --- a/pkg/constants/constants.go +++ b/pkg/constants/constants.go @@ -24,22 +24,29 @@ const ( StartID = 10000 // RPC - MuxConnection = 1 - RPCTimeout = 3 * time.Second - ConnectTimeout = 50 * time.Millisecond + MuxConnection = 1 + RPCTimeout = 3 * time.Second + ConnectTimeout = 50 * time.Millisecond + StreamBufferSize = 1024 // service name - TemplateServiceName = "template" - ClassroomServiceName = "classroom" - UserServiceName = "user" - ApiServiceName = "api" + TemplateServiceName = "template" + ClassroomServiceName = "classroom" + UserServiceName = "user" + ApiServiceName = "api" + LaunchScreenServiceName = "launch_screen" // db table name TemplateServiceTableName = "template" + UserTableName = "user" + LaunchScreenTableName = "launch_screen" // redis - RedisDBEmptyRoom = 0 - ClassroomKeyExpire = 2 * 24 * time.Hour + RedisDBEmptyRoom = 0 + RedisDBLaunchScreen = 1 + ClassroomKeyExpire = 2 * 24 * time.Hour + LaunchScreenKeyExpire = 2 * 24 * time.Hour + LastLaunchScreenIdKey = "last_launch_screen_id" // snowflake SnowflakeWorkerID = 0 SnowflakeDatacenterID = 0 @@ -53,6 +60,7 @@ const ( MaxGoroutines = 10 MaxOpenConns = 100 ConnMaxLifetime = 10 * time.Second + PageSize = 10 NumWorkers = 10 // 最大的并发数量 diff --git a/pkg/errno/default.go b/pkg/errno/default.go index 46bc868..fc06764 100644 --- a/pkg/errno/default.go +++ b/pkg/errno/default.go @@ -30,6 +30,16 @@ var ( BizError = NewErrNo(BizErrorCode, "business error") InternalServiceError = NewErrNo(InternalServiceErrorCode, "internal service error") + UserExistedError = NewErrNo(InternalDatabaseErrorCode, "user existed") + UserNonExistError = NewErrNo(InternalDatabaseErrorCode, "user didn't exist") + SuffixError = NewErrNo(ParamErrorCode, "invalid file") + NoAccessError = NewErrNo(AuthErrorCode, "user don't have authority to this biz") + NoRunningPictureError = NewErrNo(BizErrorCode, "no valid picture") + + // internal error + UpcloudError = NewErrNo(BizFileUploadErrorCode, "upload to upcloud error") + SFCreateIDError = NewErrNo(InternalDatabaseErrorCode, "sf create id failed") + // redis RedisError = NewErrNo(InternalRedisErrorCode, "redis error") ) diff --git a/pkg/upcloud/upcloud.go b/pkg/upcloud/upcloud.go new file mode 100644 index 0000000..c5b6ebf --- /dev/null +++ b/pkg/upcloud/upcloud.go @@ -0,0 +1,81 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package upcloud + +import ( + "bytes" + "fmt" + "net/http" + "time" + + "github.com/west2-online/fzuhelper-server/config" + "github.com/west2-online/fzuhelper-server/pkg/errno" +) + +// UploadImg 又拍云上传文件 +func UploadImg(file []byte, name string) error { + body := bytes.NewReader(file) + url := config.Upcloud.DomainName + config.Upcloud.Path + name + + req, err := http.NewRequest("PUT", url, body) + if err != nil { + return err + } + req.SetBasicAuth(config.Upcloud.User, config.Upcloud.Pass) + req.Header.Add("Date", time.Now().UTC().Format(http.TimeFormat)) + res, err := http.DefaultClient.Do(req) + if err != nil { + return err + } + defer res.Body.Close() + if res.StatusCode != 200 { + return errno.UpcloudError + } + return nil +} + +// DeleteImg 又拍云删除文件 +func DeleteImg(name string) error { + // body := bytes.NewReader(file) + url := config.Upcloud.DomainName + config.Upcloud.Path + name + + req, err := http.NewRequest("DELETE", url, nil) + if err != nil { + return err + } + req.SetBasicAuth(config.Upcloud.User, config.Upcloud.Pass) + req.Header.Add("Date", time.Now().UTC().Format(http.TimeFormat)) + res, err := http.DefaultClient.Do(req) + if err != nil { + return err + } + defer res.Body.Close() + if res.StatusCode != 200 { + return errno.UpcloudError + } + return nil +} + +// GenerateImgName 生成图片名字 +func GenerateImgName(uid int64) string { + currentTime := time.Now() + // 获取年月日和小时分钟 + year, month, day := currentTime.Date() + hour, minute := currentTime.Hour(), currentTime.Minute() + second := currentTime.Second() + return fmt.Sprintf("%v_%d%02d%02d_%02d%02d%02d.jpg", uid, year, month, day, hour, minute, second) +} diff --git a/pkg/utils/utils.go b/pkg/utils/utils.go index b806764..f5a1c18 100644 --- a/pkg/utils/utils.go +++ b/pkg/utils/utils.go @@ -17,14 +17,23 @@ limitations under the License. package utils import ( + "bytes" "errors" "fmt" + "image" + "image/jpeg" + "image/png" + "io" + "mime/multipart" "net" "net/http" + "os" "strconv" "strings" "time" + "github.com/west2-online/fzuhelper-server/pkg/errno" + "github.com/west2-online/fzuhelper-server/pkg/constants" "github.com/west2-online/jwch" @@ -162,3 +171,91 @@ func RetryLogin(stu *jwch.Student) error { return fmt.Errorf("failed to login after %d attempts: %w", constants.MaxRetries, err) } + +// FileToByteArray 用于将客户端发来的文件转换为[][]byte格式,用于流式传输 +func FileToByteArray(file *multipart.FileHeader) (fileBuf [][]byte, err error) { + fileContent, err := file.Open() + if err != nil { + return nil, errno.ParamError + } + defer fileContent.Close() + for { + buf := make([]byte, constants.StreamBufferSize) + _, err = fileContent.Read(buf) + if err == io.EOF { + break + } + if err != nil { + return nil, errno.InternalServiceError + } + fileBuf = append(fileBuf, buf) + } + return fileBuf, nil +} + +// IsAllowImageFile 检查文件格式是否合规,支持jpg png jpeg格式 +func IsAllowImageFile(header *multipart.FileHeader) bool { + contentType := header.Header.Get("Content-Type") + // MIME类型判断 + if strings.HasPrefix(contentType, "image/") { + return true + } + + filename := header.Filename + extensions := []string{".jpg", ".png", ".jpeg"} // Add more image extensions if needed + for _, ext := range extensions { + if strings.HasSuffix(strings.ToLower(filename), ext) { + return true + } + } + + return false +} + +// LoadCNLocation 载入cn时间 +func LoadCNLocation() *time.Location { + Loc, _ := time.LoadLocation("Asia/Shanghai") + return Loc +} + +// GenerateRedisKeyByStuId 开屏页通过学号与sType生成缓存对应Key +func GenerateRedisKeyByStuId(stuId int64, sType int64) string { + return strings.Join([]string{strconv.FormatInt(stuId, 10), strconv.FormatInt(sType, 10)}, ":") +} + +// SaveImageFromBytes 仅用于测试流式传输结果是否正确 +func SaveImageFromBytes(imgBytes []byte, format string) error { + // 使用 bytes.NewReader 将 []byte 转换为 io.Reader + imgReader := bytes.NewReader(imgBytes) + + // 解码图片,自动检测图片格式(jpeg, png 等) + img, _, err := image.Decode(imgReader) + if err != nil { + return fmt.Errorf("无法解码图片: %v", err) + } + + // 创建保存图片的文件 + outFile, err := os.OpenFile("testImg.jpg", os.O_CREATE|os.O_WRONLY, 0o666) + if err != nil { + return fmt.Errorf("无法创建文件: %v", err) + } + defer outFile.Close() + + // 根据格式保存图片 + switch format { + case "jpeg", "jpg": + // 将图片保存为 JPEG 格式 + err = jpeg.Encode(outFile, img, nil) + case "png": + // 将图片保存为 PNG 格式 + err = png.Encode(outFile, img) + default: + return fmt.Errorf("不支持的图片格式: %v", format) + } + + if err != nil { + return fmt.Errorf("保存图片失败: %v", err) + } + + return nil +} From 91253a1b15622c43eac16e10b9b04ffaf884bd82 Mon Sep 17 00:00:00 2001 From: FantasyRL <1845983502@qq.com> Date: Thu, 17 Oct 2024 20:50:42 +0800 Subject: [PATCH 09/19] revert:get_validate_code service of user --- cmd/api/biz/handler/api/user_service.go | 25 - cmd/api/biz/model/api/api.go | 5483 +++++++++------------ cmd/api/biz/router/api/api.go | 1 - cmd/api/biz/rpc/user.go | 12 - cmd/user/handler.go | 16 - cmd/user/service/get_validate_code.go | 26 - idl/api.thrift | 11 - idl/user.thrift | 11 - kitex_gen/user/k-user.go | 582 --- kitex_gen/user/user.go | 1097 +---- kitex_gen/user/userservice/client.go | 6 - kitex_gen/user/userservice/userservice.go | 35 - 12 files changed, 2530 insertions(+), 4775 deletions(-) delete mode 100644 cmd/user/service/get_validate_code.go diff --git a/cmd/api/biz/handler/api/user_service.go b/cmd/api/biz/handler/api/user_service.go index e37022d..92ee3c1 100644 --- a/cmd/api/biz/handler/api/user_service.go +++ b/cmd/api/biz/handler/api/user_service.go @@ -21,8 +21,6 @@ package api import ( "context" - "github.com/cloudwego/hertz/pkg/protocol/consts" - "github.com/cloudwego/hertz/pkg/app" api "github.com/west2-online/fzuhelper-server/cmd/api/biz/model/api" @@ -57,26 +55,3 @@ func GetLoginData(ctx context.Context, c *app.RequestContext) { resp.Cookies = cookies pack.RespData(c, resp) } - -// GetValidateCode . -// @router /api/v1/jwch/user/validateCode [POST] -func GetValidateCode(ctx context.Context, c *app.RequestContext) { - var err error - var req api.GetValidateCodeRequest - err = c.BindAndValidate(&req) - if err != nil { - c.String(consts.StatusBadRequest, err.Error()) - return - } - - resp := new(api.GetValidateCodeResponse) - code, err := rpc.GetInvalidateCodeRPC(ctx, &user.GetValidateCodeRequest{ - Image: req.Image, - }) - if err != nil { - pack.RespError(c, err) - return - } - resp.Code = &code - pack.RespData(c, resp.Code) -} diff --git a/cmd/api/biz/model/api/api.go b/cmd/api/biz/model/api/api.go index 4aab692..88b8b9d 100644 --- a/cmd/api/biz/model/api/api.go +++ b/cmd/api/biz/model/api/api.go @@ -927,30 +927,123 @@ func (p *GetLoginDataResponse) String() string { } -type GetValidateCodeRequest struct { - Image string `thrift:"image,1,required" form:"image,required" json:"image,required" query:"image,required"` +// launch_screen +type CreateImageRequest struct { + PicType int64 `thrift:"pic_type,1,required" form:"pic_type,required" json:"pic_type,required" query:"pic_type,required"` + Duration *int64 `thrift:"duration,2,optional" form:"duration" json:"duration,omitempty" query:"duration"` + Href *string `thrift:"href,3,optional" form:"href" json:"href,omitempty" query:"href"` + Image []byte `thrift:"image,4" form:"image" json:"image" query:"image"` + StartAt int64 `thrift:"start_at,5,required" form:"start_at,required" json:"start_at,required" query:"start_at,required"` + EndAt int64 `thrift:"end_at,6,required" form:"end_at,required" json:"end_at,required" query:"end_at,required"` + SType int64 `thrift:"s_type,7,required" form:"s_type,required" json:"s_type,required" query:"s_type,required"` + Frequency int64 `thrift:"frequency,8,required" form:"frequency,required" json:"frequency,required" query:"frequency,required"` + StartTime int64 `thrift:"start_time,9,required" form:"start_time,required" json:"start_time,required" query:"start_time,required"` + EndTime int64 `thrift:"end_time,10,required" form:"end_time,required" json:"end_time,required" query:"end_time,required"` + Text string `thrift:"text,11,required" form:"text,required" json:"text,required" query:"text,required"` + Regex string `thrift:"regex,12,required" form:"regex,required" json:"regex,required" query:"regex,required"` +} + +func NewCreateImageRequest() *CreateImageRequest { + return &CreateImageRequest{} +} + +func (p *CreateImageRequest) InitDefault() { +} + +func (p *CreateImageRequest) GetPicType() (v int64) { + return p.PicType } -func NewGetValidateCodeRequest() *GetValidateCodeRequest { - return &GetValidateCodeRequest{} +var CreateImageRequest_Duration_DEFAULT int64 + +func (p *CreateImageRequest) GetDuration() (v int64) { + if !p.IsSetDuration() { + return CreateImageRequest_Duration_DEFAULT + } + return *p.Duration } -func (p *GetValidateCodeRequest) InitDefault() { +var CreateImageRequest_Href_DEFAULT string + +func (p *CreateImageRequest) GetHref() (v string) { + if !p.IsSetHref() { + return CreateImageRequest_Href_DEFAULT + } + return *p.Href } -func (p *GetValidateCodeRequest) GetImage() (v string) { +func (p *CreateImageRequest) GetImage() (v []byte) { return p.Image } -var fieldIDToName_GetValidateCodeRequest = map[int16]string{ - 1: "image", +func (p *CreateImageRequest) GetStartAt() (v int64) { + return p.StartAt +} + +func (p *CreateImageRequest) GetEndAt() (v int64) { + return p.EndAt +} + +func (p *CreateImageRequest) GetSType() (v int64) { + return p.SType +} + +func (p *CreateImageRequest) GetFrequency() (v int64) { + return p.Frequency +} + +func (p *CreateImageRequest) GetStartTime() (v int64) { + return p.StartTime +} + +func (p *CreateImageRequest) GetEndTime() (v int64) { + return p.EndTime +} + +func (p *CreateImageRequest) GetText() (v string) { + return p.Text +} + +func (p *CreateImageRequest) GetRegex() (v string) { + return p.Regex +} + +var fieldIDToName_CreateImageRequest = map[int16]string{ + 1: "pic_type", + 2: "duration", + 3: "href", + 4: "image", + 5: "start_at", + 6: "end_at", + 7: "s_type", + 8: "frequency", + 9: "start_time", + 10: "end_time", + 11: "text", + 12: "regex", +} + +func (p *CreateImageRequest) IsSetDuration() bool { + return p.Duration != nil +} + +func (p *CreateImageRequest) IsSetHref() bool { + return p.Href != nil } -func (p *GetValidateCodeRequest) Read(iprot thrift.TProtocol) (err error) { +func (p *CreateImageRequest) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 - var issetImage bool = false + var issetPicType bool = false + var issetStartAt bool = false + var issetEndAt bool = false + var issetSType bool = false + var issetFrequency bool = false + var issetStartTime bool = false + var issetEndTime bool = false + var issetText bool = false + var issetRegex bool = false if _, err = iprot.ReadStructBegin(); err != nil { goto ReadStructBeginError @@ -967,11 +1060,107 @@ func (p *GetValidateCodeRequest) Read(iprot thrift.TProtocol) (err error) { switch fieldId { case 1: - if fieldTypeId == thrift.STRING { + if fieldTypeId == thrift.I64 { if err = p.ReadField1(iprot); err != nil { goto ReadFieldError } - issetImage = true + issetPicType = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.I64 { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.STRING { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 4: + if fieldTypeId == thrift.STRING { + if err = p.ReadField4(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 5: + if fieldTypeId == thrift.I64 { + if err = p.ReadField5(iprot); err != nil { + goto ReadFieldError + } + issetStartAt = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 6: + if fieldTypeId == thrift.I64 { + if err = p.ReadField6(iprot); err != nil { + goto ReadFieldError + } + issetEndAt = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 7: + if fieldTypeId == thrift.I64 { + if err = p.ReadField7(iprot); err != nil { + goto ReadFieldError + } + issetSType = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 8: + if fieldTypeId == thrift.I64 { + if err = p.ReadField8(iprot); err != nil { + goto ReadFieldError + } + issetFrequency = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 9: + if fieldTypeId == thrift.I64 { + if err = p.ReadField9(iprot); err != nil { + goto ReadFieldError + } + issetStartTime = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 10: + if fieldTypeId == thrift.I64 { + if err = p.ReadField10(iprot); err != nil { + goto ReadFieldError + } + issetEndTime = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 11: + if fieldTypeId == thrift.STRING { + if err = p.ReadField11(iprot); err != nil { + goto ReadFieldError + } + issetText = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 12: + if fieldTypeId == thrift.STRING { + if err = p.ReadField12(iprot); err != nil { + goto ReadFieldError + } + issetRegex = true } else if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } @@ -988,17 +1177,57 @@ func (p *GetValidateCodeRequest) Read(iprot thrift.TProtocol) (err error) { goto ReadStructEndError } - if !issetImage { + if !issetPicType { fieldId = 1 goto RequiredFieldNotSetError } + + if !issetStartAt { + fieldId = 5 + goto RequiredFieldNotSetError + } + + if !issetEndAt { + fieldId = 6 + goto RequiredFieldNotSetError + } + + if !issetSType { + fieldId = 7 + goto RequiredFieldNotSetError + } + + if !issetFrequency { + fieldId = 8 + goto RequiredFieldNotSetError + } + + if !issetStartTime { + fieldId = 9 + goto RequiredFieldNotSetError + } + + if !issetEndTime { + fieldId = 10 + goto RequiredFieldNotSetError + } + + if !issetText { + fieldId = 11 + goto RequiredFieldNotSetError + } + + if !issetRegex { + fieldId = 12 + goto RequiredFieldNotSetError + } 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_GetValidateCodeRequest[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_CreateImageRequest[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -1007,204 +1236,145 @@ ReadFieldEndError: ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) RequiredFieldNotSetError: - return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_GetValidateCodeRequest[fieldId])) + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_CreateImageRequest[fieldId])) } -func (p *GetValidateCodeRequest) ReadField1(iprot thrift.TProtocol) error { +func (p *CreateImageRequest) ReadField1(iprot thrift.TProtocol) error { - var _field string - if v, err := iprot.ReadString(); err != nil { + var _field int64 + if v, err := iprot.ReadI64(); err != nil { return err } else { _field = v } - p.Image = _field + p.PicType = _field return nil } +func (p *CreateImageRequest) ReadField2(iprot thrift.TProtocol) error { -func (p *GetValidateCodeRequest) Write(oprot thrift.TProtocol) (err error) { - var fieldId int16 - if err = oprot.WriteStructBegin("GetValidateCodeRequest"); 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 + var _field *int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = &v } + p.Duration = _field 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 *CreateImageRequest) ReadField3(iprot thrift.TProtocol) error { -func (p *GetValidateCodeRequest) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("image", thrift.STRING, 1); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteString(p.Image); err != nil { + var _field *string + if v, err := iprot.ReadString(); err != nil { return err + } else { + _field = &v } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } + p.Href = _field 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 *CreateImageRequest) ReadField4(iprot thrift.TProtocol) error { -func (p *GetValidateCodeRequest) String() string { - if p == nil { - return "" + var _field []byte + if v, err := iprot.ReadBinary(); err != nil { + return err + } else { + _field = []byte(v) } - return fmt.Sprintf("GetValidateCodeRequest(%+v)", *p) - -} - -type GetValidateCodeResponse struct { - Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` - Code *string `thrift:"code,2,optional" form:"code" json:"code,omitempty" query:"code"` -} - -func NewGetValidateCodeResponse() *GetValidateCodeResponse { - return &GetValidateCodeResponse{} -} - -func (p *GetValidateCodeResponse) InitDefault() { + p.Image = _field + return nil } +func (p *CreateImageRequest) ReadField5(iprot thrift.TProtocol) error { -var GetValidateCodeResponse_Base_DEFAULT *model.BaseResp - -func (p *GetValidateCodeResponse) GetBase() (v *model.BaseResp) { - if !p.IsSetBase() { - return GetValidateCodeResponse_Base_DEFAULT + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v } - return p.Base + p.StartAt = _field + return nil } +func (p *CreateImageRequest) ReadField6(iprot thrift.TProtocol) error { -var GetValidateCodeResponse_Code_DEFAULT string - -func (p *GetValidateCodeResponse) GetCode() (v string) { - if !p.IsSetCode() { - return GetValidateCodeResponse_Code_DEFAULT + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v } - return *p.Code -} - -var fieldIDToName_GetValidateCodeResponse = map[int16]string{ - 1: "base", - 2: "code", + p.EndAt = _field + return nil } +func (p *CreateImageRequest) ReadField7(iprot thrift.TProtocol) error { -func (p *GetValidateCodeResponse) IsSetBase() bool { - return p.Base != nil + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.SType = _field + return nil } +func (p *CreateImageRequest) ReadField8(iprot thrift.TProtocol) error { -func (p *GetValidateCodeResponse) IsSetCode() bool { - return p.Code != nil + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.Frequency = _field + return nil } +func (p *CreateImageRequest) ReadField9(iprot thrift.TProtocol) error { -func (p *GetValidateCodeResponse) Read(iprot thrift.TProtocol) (err error) { - - var fieldTypeId thrift.TType - var fieldId int16 - - if _, err = iprot.ReadStructBegin(); err != nil { - goto ReadStructBeginError + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v } + p.StartTime = _field + return nil +} +func (p *CreateImageRequest) ReadField10(iprot thrift.TProtocol) error { - 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 - } - 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 + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v } - + p.EndTime = _field 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_GetValidateCodeResponse[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 *CreateImageRequest) ReadField11(iprot thrift.TProtocol) error { -func (p *GetValidateCodeResponse) ReadField1(iprot thrift.TProtocol) error { - _field := model.NewBaseResp() - if err := _field.Read(iprot); err != nil { + var _field string + if v, err := iprot.ReadString(); err != nil { return err + } else { + _field = v } - p.Base = _field + p.Text = _field return nil } -func (p *GetValidateCodeResponse) ReadField2(iprot thrift.TProtocol) error { +func (p *CreateImageRequest) ReadField12(iprot thrift.TProtocol) error { - var _field *string + var _field string if v, err := iprot.ReadString(); err != nil { return err } else { - _field = &v + _field = v } - p.Code = _field + p.Regex = _field return nil } -func (p *GetValidateCodeResponse) Write(oprot thrift.TProtocol) (err error) { +func (p *CreateImageRequest) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetValidateCodeResponse"); err != nil { + if err = oprot.WriteStructBegin("CreateImageRequest"); err != nil { goto WriteStructBeginError } if p != nil { @@ -1216,6 +1386,46 @@ func (p *GetValidateCodeResponse) Write(oprot thrift.TProtocol) (err error) { 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 = p.writeField5(oprot); err != nil { + fieldId = 5 + goto WriteFieldError + } + if err = p.writeField6(oprot); err != nil { + fieldId = 6 + goto WriteFieldError + } + if err = p.writeField7(oprot); err != nil { + fieldId = 7 + goto WriteFieldError + } + if err = p.writeField8(oprot); err != nil { + fieldId = 8 + goto WriteFieldError + } + if err = p.writeField9(oprot); err != nil { + fieldId = 9 + goto WriteFieldError + } + if err = p.writeField10(oprot); err != nil { + fieldId = 10 + goto WriteFieldError + } + if err = p.writeField11(oprot); err != nil { + fieldId = 11 + goto WriteFieldError + } + if err = p.writeField12(oprot); err != nil { + fieldId = 12 + goto WriteFieldError + } } if err = oprot.WriteFieldStop(); err != nil { goto WriteFieldStopError @@ -1234,11 +1444,11 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *GetValidateCodeResponse) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { +func (p *CreateImageRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("pic_type", thrift.I64, 1); err != nil { goto WriteFieldBeginError } - if err := p.Base.Write(oprot); err != nil { + if err := oprot.WriteI64(p.PicType); err != nil { return err } if err = oprot.WriteFieldEnd(); err != nil { @@ -1251,12 +1461,12 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *GetValidateCodeResponse) writeField2(oprot thrift.TProtocol) (err error) { - if p.IsSetCode() { - if err = oprot.WriteFieldBegin("code", thrift.STRING, 2); err != nil { +func (p *CreateImageRequest) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetDuration() { + if err = oprot.WriteFieldBegin("duration", thrift.I64, 2); err != nil { goto WriteFieldBeginError } - if err := oprot.WriteString(*p.Code); err != nil { + if err := oprot.WriteI64(*p.Duration); err != nil { return err } if err = oprot.WriteFieldEnd(); err != nil { @@ -1270,131 +1480,233 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) } -func (p *GetValidateCodeResponse) String() string { - if p == nil { - return "" +func (p *CreateImageRequest) writeField3(oprot thrift.TProtocol) (err error) { + if p.IsSetHref() { + if err = oprot.WriteFieldBegin("href", thrift.STRING, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(*p.Href); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } } - return fmt.Sprintf("GetValidateCodeResponse(%+v)", *p) - + 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) } -// launch_screen -type CreateImageRequest struct { - PicType int64 `thrift:"pic_type,1,required" form:"pic_type,required" json:"pic_type,required" query:"pic_type,required"` - Duration *int64 `thrift:"duration,2,optional" form:"duration" json:"duration,omitempty" query:"duration"` - Href *string `thrift:"href,3,optional" form:"href" json:"href,omitempty" query:"href"` - Image []byte `thrift:"image,4" form:"image" json:"image" query:"image"` - StartAt int64 `thrift:"start_at,5,required" form:"start_at,required" json:"start_at,required" query:"start_at,required"` - EndAt int64 `thrift:"end_at,6,required" form:"end_at,required" json:"end_at,required" query:"end_at,required"` - SType int64 `thrift:"s_type,7,required" form:"s_type,required" json:"s_type,required" query:"s_type,required"` - Frequency int64 `thrift:"frequency,8,required" form:"frequency,required" json:"frequency,required" query:"frequency,required"` - StartTime int64 `thrift:"start_time,9,required" form:"start_time,required" json:"start_time,required" query:"start_time,required"` - EndTime int64 `thrift:"end_time,10,required" form:"end_time,required" json:"end_time,required" query:"end_time,required"` - Text string `thrift:"text,11,required" form:"text,required" json:"text,required" query:"text,required"` - Regex string `thrift:"regex,12,required" form:"regex,required" json:"regex,required" query:"regex,required"` +func (p *CreateImageRequest) writeField4(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("image", thrift.STRING, 4); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteBinary([]byte(p.Image)); 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 NewCreateImageRequest() *CreateImageRequest { - return &CreateImageRequest{} +func (p *CreateImageRequest) writeField5(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("start_at", thrift.I64, 5); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.StartAt); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 5 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 5 end error: ", p), err) } -func (p *CreateImageRequest) InitDefault() { +func (p *CreateImageRequest) writeField6(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("end_at", thrift.I64, 6); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.EndAt); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 6 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 6 end error: ", p), err) } -func (p *CreateImageRequest) GetPicType() (v int64) { - return p.PicType +func (p *CreateImageRequest) writeField7(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("s_type", thrift.I64, 7); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.SType); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 7 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 7 end error: ", p), err) } -var CreateImageRequest_Duration_DEFAULT int64 - -func (p *CreateImageRequest) GetDuration() (v int64) { - if !p.IsSetDuration() { - return CreateImageRequest_Duration_DEFAULT +func (p *CreateImageRequest) writeField8(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("frequency", thrift.I64, 8); err != nil { + goto WriteFieldBeginError } - return *p.Duration + if err := oprot.WriteI64(p.Frequency); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 8 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 8 end error: ", p), err) } -var CreateImageRequest_Href_DEFAULT string - -func (p *CreateImageRequest) GetHref() (v string) { - if !p.IsSetHref() { - return CreateImageRequest_Href_DEFAULT +func (p *CreateImageRequest) writeField9(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("start_time", thrift.I64, 9); err != nil { + goto WriteFieldBeginError } - return *p.Href + if err := oprot.WriteI64(p.StartTime); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 9 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 9 end error: ", p), err) } -func (p *CreateImageRequest) GetImage() (v []byte) { - return p.Image +func (p *CreateImageRequest) writeField10(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("end_time", thrift.I64, 10); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.EndTime); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 10 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 10 end error: ", p), err) } -func (p *CreateImageRequest) GetStartAt() (v int64) { - return p.StartAt +func (p *CreateImageRequest) writeField11(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("text", thrift.STRING, 11); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Text); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 11 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 11 end error: ", p), err) } -func (p *CreateImageRequest) GetEndAt() (v int64) { - return p.EndAt +func (p *CreateImageRequest) writeField12(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("regex", thrift.STRING, 12); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Regex); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 12 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 12 end error: ", p), err) } -func (p *CreateImageRequest) GetSType() (v int64) { - return p.SType +func (p *CreateImageRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("CreateImageRequest(%+v)", *p) + } -func (p *CreateImageRequest) GetFrequency() (v int64) { - return p.Frequency +type CreateImageResponse struct { + Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` + Picture *model.Picture `thrift:"picture,2,optional" form:"picture" json:"picture,omitempty" query:"picture"` } -func (p *CreateImageRequest) GetStartTime() (v int64) { - return p.StartTime +func NewCreateImageResponse() *CreateImageResponse { + return &CreateImageResponse{} } -func (p *CreateImageRequest) GetEndTime() (v int64) { - return p.EndTime +func (p *CreateImageResponse) InitDefault() { } -func (p *CreateImageRequest) GetText() (v string) { - return p.Text +var CreateImageResponse_Base_DEFAULT *model.BaseResp + +func (p *CreateImageResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return CreateImageResponse_Base_DEFAULT + } + return p.Base } -func (p *CreateImageRequest) GetRegex() (v string) { - return p.Regex +var CreateImageResponse_Picture_DEFAULT *model.Picture + +func (p *CreateImageResponse) GetPicture() (v *model.Picture) { + if !p.IsSetPicture() { + return CreateImageResponse_Picture_DEFAULT + } + return p.Picture } -var fieldIDToName_CreateImageRequest = map[int16]string{ - 1: "pic_type", - 2: "duration", - 3: "href", - 4: "image", - 5: "start_at", - 6: "end_at", - 7: "s_type", - 8: "frequency", - 9: "start_time", - 10: "end_time", - 11: "text", - 12: "regex", +var fieldIDToName_CreateImageResponse = map[int16]string{ + 1: "base", + 2: "picture", } -func (p *CreateImageRequest) IsSetDuration() bool { - return p.Duration != nil +func (p *CreateImageResponse) IsSetBase() bool { + return p.Base != nil } -func (p *CreateImageRequest) IsSetHref() bool { - return p.Href != nil +func (p *CreateImageResponse) IsSetPicture() bool { + return p.Picture != nil } -func (p *CreateImageRequest) Read(iprot thrift.TProtocol) (err error) { +func (p *CreateImageResponse) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 - var issetPicType bool = false - var issetStartAt bool = false - var issetEndAt bool = false - var issetSType bool = false - var issetFrequency bool = false - var issetStartTime bool = false - var issetEndTime bool = false - var issetText bool = false - var issetRegex bool = false if _, err = iprot.ReadStructBegin(); err != nil { goto ReadStructBeginError @@ -1411,112 +1723,23 @@ func (p *CreateImageRequest) Read(iprot thrift.TProtocol) (err error) { switch fieldId { case 1: - if fieldTypeId == thrift.I64 { + if fieldTypeId == thrift.STRUCT { if err = p.ReadField1(iprot); err != nil { goto ReadFieldError } - issetPicType = true } else if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } case 2: - if fieldTypeId == thrift.I64 { + if fieldTypeId == thrift.STRUCT { if err = p.ReadField2(iprot); err != nil { goto ReadFieldError } } else if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } - case 3: - if fieldTypeId == thrift.STRING { - if err = p.ReadField3(iprot); err != nil { - goto ReadFieldError - } - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 4: - if fieldTypeId == thrift.STRING { - if err = p.ReadField4(iprot); err != nil { - goto ReadFieldError - } - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 5: - if fieldTypeId == thrift.I64 { - if err = p.ReadField5(iprot); err != nil { - goto ReadFieldError - } - issetStartAt = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 6: - if fieldTypeId == thrift.I64 { - if err = p.ReadField6(iprot); err != nil { - goto ReadFieldError - } - issetEndAt = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 7: - if fieldTypeId == thrift.I64 { - if err = p.ReadField7(iprot); err != nil { - goto ReadFieldError - } - issetSType = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 8: - if fieldTypeId == thrift.I64 { - if err = p.ReadField8(iprot); err != nil { - goto ReadFieldError - } - issetFrequency = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 9: - if fieldTypeId == thrift.I64 { - if err = p.ReadField9(iprot); err != nil { - goto ReadFieldError - } - issetStartTime = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 10: - if fieldTypeId == thrift.I64 { - if err = p.ReadField10(iprot); err != nil { - goto ReadFieldError - } - issetEndTime = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 11: - if fieldTypeId == thrift.STRING { - if err = p.ReadField11(iprot); err != nil { - goto ReadFieldError - } - issetText = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 12: - if fieldTypeId == thrift.STRING { - if err = p.ReadField12(iprot); err != nil { - goto ReadFieldError - } - issetRegex = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - default: - if err = iprot.Skip(fieldTypeId); err != nil { + default: + if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } } @@ -1528,57 +1751,13 @@ func (p *CreateImageRequest) Read(iprot thrift.TProtocol) (err error) { goto ReadStructEndError } - if !issetPicType { - fieldId = 1 - goto RequiredFieldNotSetError - } - - if !issetStartAt { - fieldId = 5 - goto RequiredFieldNotSetError - } - - if !issetEndAt { - fieldId = 6 - goto RequiredFieldNotSetError - } - - if !issetSType { - fieldId = 7 - goto RequiredFieldNotSetError - } - - if !issetFrequency { - fieldId = 8 - goto RequiredFieldNotSetError - } - - if !issetStartTime { - fieldId = 9 - goto RequiredFieldNotSetError - } - - if !issetEndTime { - fieldId = 10 - goto RequiredFieldNotSetError - } - - if !issetText { - fieldId = 11 - goto RequiredFieldNotSetError - } - - if !issetRegex { - fieldId = 12 - goto RequiredFieldNotSetError - } 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_CreateImageRequest[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_CreateImageResponse[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -1586,146 +1765,199 @@ 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) -RequiredFieldNotSetError: - return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_CreateImageRequest[fieldId])) } -func (p *CreateImageRequest) ReadField1(iprot thrift.TProtocol) error { - - var _field int64 - if v, err := iprot.ReadI64(); err != nil { +func (p *CreateImageResponse) ReadField1(iprot thrift.TProtocol) error { + _field := model.NewBaseResp() + if err := _field.Read(iprot); err != nil { return err - } else { - _field = v } - p.PicType = _field + p.Base = _field return nil } -func (p *CreateImageRequest) ReadField2(iprot thrift.TProtocol) error { - - var _field *int64 - if v, err := iprot.ReadI64(); err != nil { +func (p *CreateImageResponse) ReadField2(iprot thrift.TProtocol) error { + _field := model.NewPicture() + if err := _field.Read(iprot); err != nil { return err - } else { - _field = &v } - p.Duration = _field + p.Picture = _field return nil } -func (p *CreateImageRequest) ReadField3(iprot thrift.TProtocol) error { - var _field *string - if v, err := iprot.ReadString(); err != nil { - return err - } else { - _field = &v +func (p *CreateImageResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("CreateImageResponse"); 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 } - p.Href = _field 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 *CreateImageRequest) ReadField4(iprot thrift.TProtocol) error { - var _field []byte - if v, err := iprot.ReadBinary(); err != nil { +func (p *CreateImageResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Base.Write(oprot); err != nil { return err - } else { - _field = []byte(v) } - p.Image = _field + 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 *CreateImageRequest) ReadField5(iprot thrift.TProtocol) error { - var _field int64 - if v, err := iprot.ReadI64(); err != nil { - return err - } else { - _field = v +func (p *CreateImageResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetPicture() { + if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { + goto WriteFieldBeginError + } + if err := p.Picture.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } } - p.StartAt = _field 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 *CreateImageRequest) ReadField6(iprot thrift.TProtocol) error { - var _field int64 - if v, err := iprot.ReadI64(); err != nil { - return err - } else { - _field = v +func (p *CreateImageResponse) String() string { + if p == nil { + return "" } - p.EndAt = _field - return nil + return fmt.Sprintf("CreateImageResponse(%+v)", *p) + } -func (p *CreateImageRequest) ReadField7(iprot thrift.TProtocol) error { - var _field int64 - if v, err := iprot.ReadI64(); err != nil { - return err - } else { - _field = v - } - p.SType = _field - return nil +type GetImageRequest struct { + PictureID int64 `thrift:"picture_id,1,required" form:"picture_id,required" json:"picture_id,required" query:"picture_id,required"` } -func (p *CreateImageRequest) ReadField8(iprot thrift.TProtocol) error { - var _field int64 - if v, err := iprot.ReadI64(); err != nil { - return err - } else { - _field = v - } - p.Frequency = _field - return nil +func NewGetImageRequest() *GetImageRequest { + return &GetImageRequest{} } -func (p *CreateImageRequest) ReadField9(iprot thrift.TProtocol) error { - var _field int64 - if v, err := iprot.ReadI64(); err != nil { - return err - } else { - _field = v - } - p.StartTime = _field - return nil +func (p *GetImageRequest) InitDefault() { } -func (p *CreateImageRequest) ReadField10(iprot thrift.TProtocol) error { - var _field int64 - if v, err := iprot.ReadI64(); err != nil { - return err - } else { - _field = v - } - p.EndTime = _field - return nil +func (p *GetImageRequest) GetPictureID() (v int64) { + return p.PictureID } -func (p *CreateImageRequest) ReadField11(iprot thrift.TProtocol) error { - var _field string - if v, err := iprot.ReadString(); err != nil { - return err - } else { - _field = v +var fieldIDToName_GetImageRequest = map[int16]string{ + 1: "picture_id", +} + +func (p *GetImageRequest) Read(iprot thrift.TProtocol) (err error) { + + var fieldTypeId thrift.TType + var fieldId int16 + var issetPictureID bool = false + + 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.I64 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + issetPictureID = true + } 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 + } + + if !issetPictureID { + fieldId = 1 + goto RequiredFieldNotSetError } - p.Text = _field 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_GetImageRequest[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) +RequiredFieldNotSetError: + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_GetImageRequest[fieldId])) } -func (p *CreateImageRequest) ReadField12(iprot thrift.TProtocol) error { - var _field string - if v, err := iprot.ReadString(); err != nil { +func (p *GetImageRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { return err } else { _field = v } - p.Regex = _field + p.PictureID = _field return nil } -func (p *CreateImageRequest) Write(oprot thrift.TProtocol) (err error) { +func (p *GetImageRequest) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("CreateImageRequest"); err != nil { + if err = oprot.WriteStructBegin("GetImageRequest"); err != nil { goto WriteStructBeginError } if p != nil { @@ -1733,50 +1965,6 @@ func (p *CreateImageRequest) Write(oprot thrift.TProtocol) (err error) { 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 = p.writeField5(oprot); err != nil { - fieldId = 5 - goto WriteFieldError - } - if err = p.writeField6(oprot); err != nil { - fieldId = 6 - goto WriteFieldError - } - if err = p.writeField7(oprot); err != nil { - fieldId = 7 - goto WriteFieldError - } - if err = p.writeField8(oprot); err != nil { - fieldId = 8 - goto WriteFieldError - } - if err = p.writeField9(oprot); err != nil { - fieldId = 9 - goto WriteFieldError - } - if err = p.writeField10(oprot); err != nil { - fieldId = 10 - goto WriteFieldError - } - if err = p.writeField11(oprot); err != nil { - fieldId = 11 - goto WriteFieldError - } - if err = p.writeField12(oprot); err != nil { - fieldId = 12 - goto WriteFieldError - } } if err = oprot.WriteFieldStop(); err != nil { goto WriteFieldStopError @@ -1795,11 +1983,11 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *CreateImageRequest) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("pic_type", thrift.I64, 1); err != nil { +func (p *GetImageRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("picture_id", thrift.I64, 1); err != nil { goto WriteFieldBeginError } - if err := oprot.WriteI64(p.PicType); err != nil { + if err := oprot.WriteI64(p.PictureID); err != nil { return err } if err = oprot.WriteFieldEnd(); err != nil { @@ -1812,249 +2000,58 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *CreateImageRequest) writeField2(oprot thrift.TProtocol) (err error) { - if p.IsSetDuration() { - if err = oprot.WriteFieldBegin("duration", thrift.I64, 2); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(*p.Duration); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } +func (p *GetImageRequest) String() string { + if p == nil { + return "" } - 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) + return fmt.Sprintf("GetImageRequest(%+v)", *p) + } -func (p *CreateImageRequest) writeField3(oprot thrift.TProtocol) (err error) { - if p.IsSetHref() { - if err = oprot.WriteFieldBegin("href", thrift.STRING, 3); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteString(*p.Href); 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) +type GetImageResponse struct { + Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` + Picture *model.Picture `thrift:"picture,2,optional" form:"picture" json:"picture,omitempty" query:"picture"` } -func (p *CreateImageRequest) writeField4(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("image", thrift.STRING, 4); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteBinary([]byte(p.Image)); 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 NewGetImageResponse() *GetImageResponse { + return &GetImageResponse{} } -func (p *CreateImageRequest) writeField5(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("start_at", thrift.I64, 5); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(p.StartAt); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } - return nil -WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 5 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 5 end error: ", p), err) +func (p *GetImageResponse) InitDefault() { } -func (p *CreateImageRequest) writeField6(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("end_at", thrift.I64, 6); err != nil { - goto WriteFieldBeginError +var GetImageResponse_Base_DEFAULT *model.BaseResp + +func (p *GetImageResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return GetImageResponse_Base_DEFAULT } - if err := oprot.WriteI64(p.EndAt); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } - return nil -WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 6 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 6 end error: ", p), err) -} - -func (p *CreateImageRequest) writeField7(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("s_type", thrift.I64, 7); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(p.SType); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } - return nil -WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 7 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 7 end error: ", p), err) -} - -func (p *CreateImageRequest) writeField8(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("frequency", thrift.I64, 8); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(p.Frequency); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } - return nil -WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 8 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 8 end error: ", p), err) -} - -func (p *CreateImageRequest) writeField9(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("start_time", thrift.I64, 9); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(p.StartTime); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } - return nil -WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 9 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 9 end error: ", p), err) -} - -func (p *CreateImageRequest) writeField10(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("end_time", thrift.I64, 10); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(p.EndTime); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } - return nil -WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 10 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 10 end error: ", p), err) -} - -func (p *CreateImageRequest) writeField11(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("text", thrift.STRING, 11); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteString(p.Text); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } - return nil -WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 11 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 11 end error: ", p), err) -} - -func (p *CreateImageRequest) writeField12(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("regex", thrift.STRING, 12); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteString(p.Regex); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } - return nil -WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 12 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 12 end error: ", p), err) -} - -func (p *CreateImageRequest) String() string { - if p == nil { - return "" - } - return fmt.Sprintf("CreateImageRequest(%+v)", *p) - -} - -type CreateImageResponse struct { - Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` - Picture *model.Picture `thrift:"picture,2,optional" form:"picture" json:"picture,omitempty" query:"picture"` -} - -func NewCreateImageResponse() *CreateImageResponse { - return &CreateImageResponse{} -} - -func (p *CreateImageResponse) InitDefault() { -} - -var CreateImageResponse_Base_DEFAULT *model.BaseResp - -func (p *CreateImageResponse) GetBase() (v *model.BaseResp) { - if !p.IsSetBase() { - return CreateImageResponse_Base_DEFAULT - } - return p.Base -} - -var CreateImageResponse_Picture_DEFAULT *model.Picture - -func (p *CreateImageResponse) GetPicture() (v *model.Picture) { - if !p.IsSetPicture() { - return CreateImageResponse_Picture_DEFAULT + return p.Base +} + +var GetImageResponse_Picture_DEFAULT *model.Picture + +func (p *GetImageResponse) GetPicture() (v *model.Picture) { + if !p.IsSetPicture() { + return GetImageResponse_Picture_DEFAULT } return p.Picture } -var fieldIDToName_CreateImageResponse = map[int16]string{ +var fieldIDToName_GetImageResponse = map[int16]string{ 1: "base", 2: "picture", } -func (p *CreateImageResponse) IsSetBase() bool { +func (p *GetImageResponse) IsSetBase() bool { return p.Base != nil } -func (p *CreateImageResponse) IsSetPicture() bool { +func (p *GetImageResponse) IsSetPicture() bool { return p.Picture != nil } -func (p *CreateImageResponse) Read(iprot thrift.TProtocol) (err error) { +func (p *GetImageResponse) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -2108,7 +2105,7 @@ ReadStructBeginError: 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_CreateImageResponse[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_GetImageResponse[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -2118,7 +2115,7 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *CreateImageResponse) ReadField1(iprot thrift.TProtocol) error { +func (p *GetImageResponse) ReadField1(iprot thrift.TProtocol) error { _field := model.NewBaseResp() if err := _field.Read(iprot); err != nil { return err @@ -2126,7 +2123,7 @@ func (p *CreateImageResponse) ReadField1(iprot thrift.TProtocol) error { p.Base = _field return nil } -func (p *CreateImageResponse) ReadField2(iprot thrift.TProtocol) error { +func (p *GetImageResponse) ReadField2(iprot thrift.TProtocol) error { _field := model.NewPicture() if err := _field.Read(iprot); err != nil { return err @@ -2135,9 +2132,9 @@ func (p *CreateImageResponse) ReadField2(iprot thrift.TProtocol) error { return nil } -func (p *CreateImageResponse) Write(oprot thrift.TProtocol) (err error) { +func (p *GetImageResponse) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("CreateImageResponse"); err != nil { + if err = oprot.WriteStructBegin("GetImageResponse"); err != nil { goto WriteStructBeginError } if p != nil { @@ -2167,7 +2164,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *CreateImageResponse) writeField1(oprot thrift.TProtocol) (err error) { +func (p *GetImageResponse) writeField1(oprot thrift.TProtocol) (err error) { if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { goto WriteFieldBeginError } @@ -2184,7 +2181,7 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *CreateImageResponse) writeField2(oprot thrift.TProtocol) (err error) { +func (p *GetImageResponse) writeField2(oprot thrift.TProtocol) (err error) { if p.IsSetPicture() { if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { goto WriteFieldBeginError @@ -2203,209 +2200,135 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) } -func (p *CreateImageResponse) String() string { +func (p *GetImageResponse) String() string { if p == nil { return "" } - return fmt.Sprintf("CreateImageResponse(%+v)", *p) - -} + return fmt.Sprintf("GetImageResponse(%+v)", *p) -type GetImageRequest struct { - PictureID int64 `thrift:"picture_id,1,required" form:"picture_id,required" json:"picture_id,required" query:"picture_id,required"` } -func NewGetImageRequest() *GetImageRequest { - return &GetImageRequest{} +type ChangeImagePropertyRequest struct { + //1为空,2为页面跳转,3为app跳转 + Type int64 `thrift:"type,1,required" form:"type,required" json:"type,required" query:"type,required"` + Duration *int64 `thrift:"duration,2,optional" form:"duration" json:"duration,omitempty" query:"duration"` + //连接 + Href *string `thrift:"href,3,optional" form:"href" json:"href,omitempty" query:"href"` + StartAt int64 `thrift:"start_at,4,required" form:"start_at,required" json:"start_at,required" query:"start_at,required"` + EndAt int64 `thrift:"end_at,5,required" form:"end_at,required" json:"end_at,required" query:"end_at,required"` + SType int64 `thrift:"s_type,6,required" form:"s_type,required" json:"s_type,required" query:"s_type,required"` + Frequency int64 `thrift:"frequency,7,required" form:"frequency,required" json:"frequency,required" query:"frequency,required"` + //比如6表示6点 + StartTime int64 `thrift:"start_time,8,required" form:"start_time,required" json:"start_time,required" query:"start_time,required"` + EndTime int64 `thrift:"end_time,9,required" form:"end_time,required" json:"end_time,required" query:"end_time,required"` + //描述图片 + Text string `thrift:"text,10,required" form:"text,required" json:"text,required" query:"text,required"` + PictureID int64 `thrift:"picture_id,11,required" form:"picture_id,required" json:"picture_id,required" query:"picture_id,required"` + Regex string `thrift:"regex,12,required" form:"regex,required" json:"regex,required" query:"regex,required"` } -func (p *GetImageRequest) InitDefault() { +func NewChangeImagePropertyRequest() *ChangeImagePropertyRequest { + return &ChangeImagePropertyRequest{} } -func (p *GetImageRequest) GetPictureID() (v int64) { - return p.PictureID +func (p *ChangeImagePropertyRequest) InitDefault() { } -var fieldIDToName_GetImageRequest = map[int16]string{ - 1: "picture_id", +func (p *ChangeImagePropertyRequest) GetType() (v int64) { + return p.Type } -func (p *GetImageRequest) Read(iprot thrift.TProtocol) (err error) { - - var fieldTypeId thrift.TType - var fieldId int16 - var issetPictureID bool = false +var ChangeImagePropertyRequest_Duration_DEFAULT int64 - if _, err = iprot.ReadStructBegin(); err != nil { - goto ReadStructBeginError +func (p *ChangeImagePropertyRequest) GetDuration() (v int64) { + if !p.IsSetDuration() { + return ChangeImagePropertyRequest_Duration_DEFAULT } + return *p.Duration +} - for { - _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() - if err != nil { - goto ReadFieldBeginError - } - if fieldTypeId == thrift.STOP { - break - } +var ChangeImagePropertyRequest_Href_DEFAULT string - switch fieldId { - case 1: - if fieldTypeId == thrift.I64 { - if err = p.ReadField1(iprot); err != nil { - goto ReadFieldError - } - issetPictureID = true - } 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 +func (p *ChangeImagePropertyRequest) GetHref() (v string) { + if !p.IsSetHref() { + return ChangeImagePropertyRequest_Href_DEFAULT } + return *p.Href +} - if !issetPictureID { - fieldId = 1 - goto RequiredFieldNotSetError - } - 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_GetImageRequest[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) -RequiredFieldNotSetError: - return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_GetImageRequest[fieldId])) -} - -func (p *GetImageRequest) ReadField1(iprot thrift.TProtocol) error { - - var _field int64 - if v, err := iprot.ReadI64(); err != nil { - return err - } else { - _field = v - } - p.PictureID = _field - return nil +func (p *ChangeImagePropertyRequest) GetStartAt() (v int64) { + return p.StartAt } -func (p *GetImageRequest) Write(oprot thrift.TProtocol) (err error) { - var fieldId int16 - if err = oprot.WriteStructBegin("GetImageRequest"); 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 *ChangeImagePropertyRequest) GetEndAt() (v int64) { + return p.EndAt } -func (p *GetImageRequest) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("picture_id", thrift.I64, 1); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(p.PictureID); 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 *ChangeImagePropertyRequest) GetSType() (v int64) { + return p.SType } -func (p *GetImageRequest) String() string { - if p == nil { - return "" - } - return fmt.Sprintf("GetImageRequest(%+v)", *p) - +func (p *ChangeImagePropertyRequest) GetFrequency() (v int64) { + return p.Frequency } -type GetImageResponse struct { - Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` - Picture *model.Picture `thrift:"picture,2,optional" form:"picture" json:"picture,omitempty" query:"picture"` +func (p *ChangeImagePropertyRequest) GetStartTime() (v int64) { + return p.StartTime } -func NewGetImageResponse() *GetImageResponse { - return &GetImageResponse{} +func (p *ChangeImagePropertyRequest) GetEndTime() (v int64) { + return p.EndTime } -func (p *GetImageResponse) InitDefault() { +func (p *ChangeImagePropertyRequest) GetText() (v string) { + return p.Text } -var GetImageResponse_Base_DEFAULT *model.BaseResp - -func (p *GetImageResponse) GetBase() (v *model.BaseResp) { - if !p.IsSetBase() { - return GetImageResponse_Base_DEFAULT - } - return p.Base +func (p *ChangeImagePropertyRequest) GetPictureID() (v int64) { + return p.PictureID } -var GetImageResponse_Picture_DEFAULT *model.Picture - -func (p *GetImageResponse) GetPicture() (v *model.Picture) { - if !p.IsSetPicture() { - return GetImageResponse_Picture_DEFAULT - } - return p.Picture +func (p *ChangeImagePropertyRequest) GetRegex() (v string) { + return p.Regex } -var fieldIDToName_GetImageResponse = map[int16]string{ - 1: "base", - 2: "picture", +var fieldIDToName_ChangeImagePropertyRequest = map[int16]string{ + 1: "type", + 2: "duration", + 3: "href", + 4: "start_at", + 5: "end_at", + 6: "s_type", + 7: "frequency", + 8: "start_time", + 9: "end_time", + 10: "text", + 11: "picture_id", + 12: "regex", } -func (p *GetImageResponse) IsSetBase() bool { - return p.Base != nil +func (p *ChangeImagePropertyRequest) IsSetDuration() bool { + return p.Duration != nil } -func (p *GetImageResponse) IsSetPicture() bool { - return p.Picture != nil +func (p *ChangeImagePropertyRequest) IsSetHref() bool { + return p.Href != nil } -func (p *GetImageResponse) Read(iprot thrift.TProtocol) (err error) { +func (p *ChangeImagePropertyRequest) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 + var issetType bool = false + var issetStartAt bool = false + var issetEndAt bool = false + var issetSType bool = false + var issetFrequency bool = false + var issetStartTime bool = false + var issetEndTime bool = false + var issetText bool = false + var issetPictureID bool = false + var issetRegex bool = false if _, err = iprot.ReadStructBegin(); err != nil { goto ReadStructBeginError @@ -2422,21 +2345,111 @@ func (p *GetImageResponse) Read(iprot thrift.TProtocol) (err error) { switch fieldId { case 1: - if fieldTypeId == thrift.STRUCT { + if fieldTypeId == thrift.I64 { if err = p.ReadField1(iprot); err != nil { goto ReadFieldError } + issetType = true } else if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } case 2: - if fieldTypeId == thrift.STRUCT { + if fieldTypeId == thrift.I64 { if err = p.ReadField2(iprot); err != nil { goto ReadFieldError } } else if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } + case 3: + if fieldTypeId == thrift.STRING { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 4: + if fieldTypeId == thrift.I64 { + if err = p.ReadField4(iprot); err != nil { + goto ReadFieldError + } + issetStartAt = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 5: + if fieldTypeId == thrift.I64 { + if err = p.ReadField5(iprot); err != nil { + goto ReadFieldError + } + issetEndAt = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 6: + if fieldTypeId == thrift.I64 { + if err = p.ReadField6(iprot); err != nil { + goto ReadFieldError + } + issetSType = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 7: + if fieldTypeId == thrift.I64 { + if err = p.ReadField7(iprot); err != nil { + goto ReadFieldError + } + issetFrequency = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 8: + if fieldTypeId == thrift.I64 { + if err = p.ReadField8(iprot); err != nil { + goto ReadFieldError + } + issetStartTime = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 9: + if fieldTypeId == thrift.I64 { + if err = p.ReadField9(iprot); err != nil { + goto ReadFieldError + } + issetEndTime = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 10: + if fieldTypeId == thrift.STRING { + if err = p.ReadField10(iprot); err != nil { + goto ReadFieldError + } + issetText = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 11: + if fieldTypeId == thrift.I64 { + if err = p.ReadField11(iprot); err != nil { + goto ReadFieldError + } + issetPictureID = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 12: + if fieldTypeId == thrift.STRING { + if err = p.ReadField12(iprot); err != nil { + goto ReadFieldError + } + issetRegex = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } default: if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError @@ -2450,42 +2463,209 @@ func (p *GetImageResponse) Read(iprot thrift.TProtocol) (err error) { 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_GetImageResponse[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) + if !issetType { + fieldId = 1 + goto RequiredFieldNotSetError + } + + if !issetStartAt { + fieldId = 4 + goto RequiredFieldNotSetError + } + + if !issetEndAt { + fieldId = 5 + goto RequiredFieldNotSetError + } + + if !issetSType { + fieldId = 6 + goto RequiredFieldNotSetError + } + + if !issetFrequency { + fieldId = 7 + goto RequiredFieldNotSetError + } + + if !issetStartTime { + fieldId = 8 + goto RequiredFieldNotSetError + } + + if !issetEndTime { + fieldId = 9 + goto RequiredFieldNotSetError + } + + if !issetText { + fieldId = 10 + goto RequiredFieldNotSetError + } + + if !issetPictureID { + fieldId = 11 + goto RequiredFieldNotSetError + } + + if !issetRegex { + fieldId = 12 + goto RequiredFieldNotSetError + } + 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_ChangeImagePropertyRequest[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) +RequiredFieldNotSetError: + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_ChangeImagePropertyRequest[fieldId])) } -func (p *GetImageResponse) ReadField1(iprot thrift.TProtocol) error { - _field := model.NewBaseResp() - if err := _field.Read(iprot); err != nil { +func (p *ChangeImagePropertyRequest) ReadField1(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { return err + } else { + _field = v } - p.Base = _field + p.Type = _field return nil } -func (p *GetImageResponse) ReadField2(iprot thrift.TProtocol) error { - _field := model.NewPicture() - if err := _field.Read(iprot); err != nil { +func (p *ChangeImagePropertyRequest) ReadField2(iprot thrift.TProtocol) error { + + var _field *int64 + if v, err := iprot.ReadI64(); err != nil { return err + } else { + _field = &v } - p.Picture = _field + p.Duration = _field return nil } +func (p *ChangeImagePropertyRequest) ReadField3(iprot thrift.TProtocol) error { -func (p *GetImageResponse) Write(oprot thrift.TProtocol) (err error) { + var _field *string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = &v + } + p.Href = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField4(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.StartAt = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField5(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.EndAt = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField6(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.SType = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField7(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.Frequency = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField8(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.StartTime = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField9(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.EndTime = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField10(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Text = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField11(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.PictureID = _field + return nil +} +func (p *ChangeImagePropertyRequest) ReadField12(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Regex = _field + return nil +} + +func (p *ChangeImagePropertyRequest) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetImageResponse"); err != nil { + if err = oprot.WriteStructBegin("ChangeImagePropertyRequest"); err != nil { goto WriteStructBeginError } if p != nil { @@ -2497,6 +2677,46 @@ func (p *GetImageResponse) Write(oprot thrift.TProtocol) (err error) { 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 = p.writeField5(oprot); err != nil { + fieldId = 5 + goto WriteFieldError + } + if err = p.writeField6(oprot); err != nil { + fieldId = 6 + goto WriteFieldError + } + if err = p.writeField7(oprot); err != nil { + fieldId = 7 + goto WriteFieldError + } + if err = p.writeField8(oprot); err != nil { + fieldId = 8 + goto WriteFieldError + } + if err = p.writeField9(oprot); err != nil { + fieldId = 9 + goto WriteFieldError + } + if err = p.writeField10(oprot); err != nil { + fieldId = 10 + goto WriteFieldError + } + if err = p.writeField11(oprot); err != nil { + fieldId = 11 + goto WriteFieldError + } + if err = p.writeField12(oprot); err != nil { + fieldId = 12 + goto WriteFieldError + } } if err = oprot.WriteFieldStop(); err != nil { goto WriteFieldStopError @@ -2515,11 +2735,11 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *GetImageResponse) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { +func (p *ChangeImagePropertyRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("type", thrift.I64, 1); err != nil { goto WriteFieldBeginError } - if err := p.Base.Write(oprot); err != nil { + if err := oprot.WriteI64(p.Type); err != nil { return err } if err = oprot.WriteFieldEnd(); err != nil { @@ -2532,12 +2752,12 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *GetImageResponse) writeField2(oprot thrift.TProtocol) (err error) { - if p.IsSetPicture() { - if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { +func (p *ChangeImagePropertyRequest) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetDuration() { + if err = oprot.WriteFieldBegin("duration", thrift.I64, 2); err != nil { goto WriteFieldBeginError } - if err := p.Picture.Write(oprot); err != nil { + if err := oprot.WriteI64(*p.Duration); err != nil { return err } if err = oprot.WriteFieldEnd(); err != nil { @@ -2551,135 +2771,233 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) } -func (p *GetImageResponse) String() string { - if p == nil { - return "" +func (p *ChangeImagePropertyRequest) writeField3(oprot thrift.TProtocol) (err error) { + if p.IsSetHref() { + if err = oprot.WriteFieldBegin("href", thrift.STRING, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(*p.Href); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } } - return fmt.Sprintf("GetImageResponse(%+v)", *p) - + 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) } -type ChangeImagePropertyRequest struct { - //1为空,2为页面跳转,3为app跳转 - Type int64 `thrift:"type,1,required" form:"type,required" json:"type,required" query:"type,required"` - Duration *int64 `thrift:"duration,2,optional" form:"duration" json:"duration,omitempty" query:"duration"` - //连接 - Href *string `thrift:"href,3,optional" form:"href" json:"href,omitempty" query:"href"` - StartAt int64 `thrift:"start_at,4,required" form:"start_at,required" json:"start_at,required" query:"start_at,required"` - EndAt int64 `thrift:"end_at,5,required" form:"end_at,required" json:"end_at,required" query:"end_at,required"` - SType int64 `thrift:"s_type,6,required" form:"s_type,required" json:"s_type,required" query:"s_type,required"` - Frequency int64 `thrift:"frequency,7,required" form:"frequency,required" json:"frequency,required" query:"frequency,required"` - //比如6表示6点 - StartTime int64 `thrift:"start_time,8,required" form:"start_time,required" json:"start_time,required" query:"start_time,required"` - EndTime int64 `thrift:"end_time,9,required" form:"end_time,required" json:"end_time,required" query:"end_time,required"` - //描述图片 - Text string `thrift:"text,10,required" form:"text,required" json:"text,required" query:"text,required"` - PictureID int64 `thrift:"picture_id,11,required" form:"picture_id,required" json:"picture_id,required" query:"picture_id,required"` - Regex string `thrift:"regex,12,required" form:"regex,required" json:"regex,required" query:"regex,required"` +func (p *ChangeImagePropertyRequest) writeField4(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("start_at", thrift.I64, 4); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.StartAt); 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 NewChangeImagePropertyRequest() *ChangeImagePropertyRequest { - return &ChangeImagePropertyRequest{} +func (p *ChangeImagePropertyRequest) writeField5(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("end_at", thrift.I64, 5); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.EndAt); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 5 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 5 end error: ", p), err) } -func (p *ChangeImagePropertyRequest) InitDefault() { +func (p *ChangeImagePropertyRequest) writeField6(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("s_type", thrift.I64, 6); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.SType); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 6 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 6 end error: ", p), err) } -func (p *ChangeImagePropertyRequest) GetType() (v int64) { - return p.Type +func (p *ChangeImagePropertyRequest) writeField7(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("frequency", thrift.I64, 7); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.Frequency); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 7 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 7 end error: ", p), err) } -var ChangeImagePropertyRequest_Duration_DEFAULT int64 - -func (p *ChangeImagePropertyRequest) GetDuration() (v int64) { - if !p.IsSetDuration() { - return ChangeImagePropertyRequest_Duration_DEFAULT +func (p *ChangeImagePropertyRequest) writeField8(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("start_time", thrift.I64, 8); err != nil { + goto WriteFieldBeginError } - return *p.Duration + if err := oprot.WriteI64(p.StartTime); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 8 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 8 end error: ", p), err) } -var ChangeImagePropertyRequest_Href_DEFAULT string - -func (p *ChangeImagePropertyRequest) GetHref() (v string) { - if !p.IsSetHref() { - return ChangeImagePropertyRequest_Href_DEFAULT +func (p *ChangeImagePropertyRequest) writeField9(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("end_time", thrift.I64, 9); err != nil { + goto WriteFieldBeginError } - return *p.Href + if err := oprot.WriteI64(p.EndTime); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 9 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 9 end error: ", p), err) } -func (p *ChangeImagePropertyRequest) GetStartAt() (v int64) { - return p.StartAt +func (p *ChangeImagePropertyRequest) writeField10(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("text", thrift.STRING, 10); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Text); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 10 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 10 end error: ", p), err) } -func (p *ChangeImagePropertyRequest) GetEndAt() (v int64) { - return p.EndAt +func (p *ChangeImagePropertyRequest) writeField11(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("picture_id", thrift.I64, 11); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.PictureID); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 11 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 11 end error: ", p), err) } -func (p *ChangeImagePropertyRequest) GetSType() (v int64) { - return p.SType +func (p *ChangeImagePropertyRequest) writeField12(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("regex", thrift.STRING, 12); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Regex); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 12 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 12 end error: ", p), err) } -func (p *ChangeImagePropertyRequest) GetFrequency() (v int64) { - return p.Frequency +func (p *ChangeImagePropertyRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ChangeImagePropertyRequest(%+v)", *p) + } -func (p *ChangeImagePropertyRequest) GetStartTime() (v int64) { - return p.StartTime +type ChangeImagePropertyResponse struct { + Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` + Picture *model.Picture `thrift:"picture,2,optional" form:"picture" json:"picture,omitempty" query:"picture"` } -func (p *ChangeImagePropertyRequest) GetEndTime() (v int64) { - return p.EndTime +func NewChangeImagePropertyResponse() *ChangeImagePropertyResponse { + return &ChangeImagePropertyResponse{} } -func (p *ChangeImagePropertyRequest) GetText() (v string) { - return p.Text +func (p *ChangeImagePropertyResponse) InitDefault() { } -func (p *ChangeImagePropertyRequest) GetPictureID() (v int64) { - return p.PictureID +var ChangeImagePropertyResponse_Base_DEFAULT *model.BaseResp + +func (p *ChangeImagePropertyResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return ChangeImagePropertyResponse_Base_DEFAULT + } + return p.Base } -func (p *ChangeImagePropertyRequest) GetRegex() (v string) { - return p.Regex +var ChangeImagePropertyResponse_Picture_DEFAULT *model.Picture + +func (p *ChangeImagePropertyResponse) GetPicture() (v *model.Picture) { + if !p.IsSetPicture() { + return ChangeImagePropertyResponse_Picture_DEFAULT + } + return p.Picture } -var fieldIDToName_ChangeImagePropertyRequest = map[int16]string{ - 1: "type", - 2: "duration", - 3: "href", - 4: "start_at", - 5: "end_at", - 6: "s_type", - 7: "frequency", - 8: "start_time", - 9: "end_time", - 10: "text", - 11: "picture_id", - 12: "regex", +var fieldIDToName_ChangeImagePropertyResponse = map[int16]string{ + 1: "base", + 2: "picture", } -func (p *ChangeImagePropertyRequest) IsSetDuration() bool { - return p.Duration != nil +func (p *ChangeImagePropertyResponse) IsSetBase() bool { + return p.Base != nil } -func (p *ChangeImagePropertyRequest) IsSetHref() bool { - return p.Href != nil +func (p *ChangeImagePropertyResponse) IsSetPicture() bool { + return p.Picture != nil } -func (p *ChangeImagePropertyRequest) Read(iprot thrift.TProtocol) (err error) { +func (p *ChangeImagePropertyResponse) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 - var issetType bool = false - var issetStartAt bool = false - var issetEndAt bool = false - var issetSType bool = false - var issetFrequency bool = false - var issetStartTime bool = false - var issetEndTime bool = false - var issetText bool = false - var issetPictureID bool = false - var issetRegex bool = false if _, err = iprot.ReadStructBegin(); err != nil { goto ReadStructBeginError @@ -2696,111 +3014,21 @@ func (p *ChangeImagePropertyRequest) Read(iprot thrift.TProtocol) (err error) { switch fieldId { case 1: - if fieldTypeId == thrift.I64 { + if fieldTypeId == thrift.STRUCT { if err = p.ReadField1(iprot); err != nil { goto ReadFieldError } - issetType = true } else if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } case 2: - if fieldTypeId == thrift.I64 { + if fieldTypeId == thrift.STRUCT { if err = p.ReadField2(iprot); err != nil { goto ReadFieldError } } else if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } - case 3: - if fieldTypeId == thrift.STRING { - if err = p.ReadField3(iprot); err != nil { - goto ReadFieldError - } - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 4: - if fieldTypeId == thrift.I64 { - if err = p.ReadField4(iprot); err != nil { - goto ReadFieldError - } - issetStartAt = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 5: - if fieldTypeId == thrift.I64 { - if err = p.ReadField5(iprot); err != nil { - goto ReadFieldError - } - issetEndAt = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 6: - if fieldTypeId == thrift.I64 { - if err = p.ReadField6(iprot); err != nil { - goto ReadFieldError - } - issetSType = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 7: - if fieldTypeId == thrift.I64 { - if err = p.ReadField7(iprot); err != nil { - goto ReadFieldError - } - issetFrequency = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 8: - if fieldTypeId == thrift.I64 { - if err = p.ReadField8(iprot); err != nil { - goto ReadFieldError - } - issetStartTime = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 9: - if fieldTypeId == thrift.I64 { - if err = p.ReadField9(iprot); err != nil { - goto ReadFieldError - } - issetEndTime = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 10: - if fieldTypeId == thrift.STRING { - if err = p.ReadField10(iprot); err != nil { - goto ReadFieldError - } - issetText = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 11: - if fieldTypeId == thrift.I64 { - if err = p.ReadField11(iprot); err != nil { - goto ReadFieldError - } - issetPictureID = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 12: - if fieldTypeId == thrift.STRING { - if err = p.ReadField12(iprot); err != nil { - goto ReadFieldError - } - issetRegex = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } default: if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError @@ -2814,62 +3042,13 @@ func (p *ChangeImagePropertyRequest) Read(iprot thrift.TProtocol) (err error) { goto ReadStructEndError } - if !issetType { - fieldId = 1 - goto RequiredFieldNotSetError - } - - if !issetStartAt { - fieldId = 4 - goto RequiredFieldNotSetError - } - - if !issetEndAt { - fieldId = 5 - goto RequiredFieldNotSetError - } - - if !issetSType { - fieldId = 6 - goto RequiredFieldNotSetError - } - - if !issetFrequency { - fieldId = 7 - goto RequiredFieldNotSetError - } - - if !issetStartTime { - fieldId = 8 - goto RequiredFieldNotSetError - } - - if !issetEndTime { - fieldId = 9 - goto RequiredFieldNotSetError - } - - if !issetText { - fieldId = 10 - goto RequiredFieldNotSetError - } - - if !issetPictureID { - fieldId = 11 - goto RequiredFieldNotSetError - } - - if !issetRegex { - fieldId = 12 - goto RequiredFieldNotSetError - } 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_ChangeImagePropertyRequest[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_ChangeImagePropertyResponse[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -2877,121 +3056,199 @@ 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) -RequiredFieldNotSetError: - return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_ChangeImagePropertyRequest[fieldId])) } -func (p *ChangeImagePropertyRequest) ReadField1(iprot thrift.TProtocol) error { - - var _field int64 - if v, err := iprot.ReadI64(); err != nil { +func (p *ChangeImagePropertyResponse) ReadField1(iprot thrift.TProtocol) error { + _field := model.NewBaseResp() + if err := _field.Read(iprot); err != nil { return err - } else { - _field = v } - p.Type = _field + p.Base = _field return nil } -func (p *ChangeImagePropertyRequest) ReadField2(iprot thrift.TProtocol) error { - - var _field *int64 - if v, err := iprot.ReadI64(); err != nil { +func (p *ChangeImagePropertyResponse) ReadField2(iprot thrift.TProtocol) error { + _field := model.NewPicture() + if err := _field.Read(iprot); err != nil { return err - } else { - _field = &v } - p.Duration = _field + p.Picture = _field return nil } -func (p *ChangeImagePropertyRequest) ReadField3(iprot thrift.TProtocol) error { - var _field *string - if v, err := iprot.ReadString(); err != nil { - return err - } else { - _field = &v +func (p *ChangeImagePropertyResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ChangeImagePropertyResponse"); 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 } - p.Href = _field 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 *ChangeImagePropertyRequest) ReadField4(iprot thrift.TProtocol) error { - var _field int64 - if v, err := iprot.ReadI64(); err != nil { +func (p *ChangeImagePropertyResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Base.Write(oprot); err != nil { return err - } else { - _field = v } - p.StartAt = _field + 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 *ChangeImagePropertyRequest) ReadField5(iprot thrift.TProtocol) error { - var _field int64 - if v, err := iprot.ReadI64(); err != nil { - return err - } else { - _field = v +func (p *ChangeImagePropertyResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetPicture() { + if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { + goto WriteFieldBeginError + } + if err := p.Picture.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } } - p.EndAt = _field 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 *ChangeImagePropertyRequest) ReadField6(iprot thrift.TProtocol) error { - var _field int64 - if v, err := iprot.ReadI64(); err != nil { - return err - } else { - _field = v +func (p *ChangeImagePropertyResponse) String() string { + if p == nil { + return "" } - p.SType = _field - return nil + return fmt.Sprintf("ChangeImagePropertyResponse(%+v)", *p) + } -func (p *ChangeImagePropertyRequest) ReadField7(iprot thrift.TProtocol) error { - var _field int64 - if v, err := iprot.ReadI64(); err != nil { - return err - } else { - _field = v - } - p.Frequency = _field - return nil +type ChangeImageRequest struct { + PictureID int64 `thrift:"picture_id,1,required" form:"picture_id,required" json:"picture_id,required" query:"picture_id,required"` + Image []byte `thrift:"image,2" form:"image" json:"image" query:"image"` } -func (p *ChangeImagePropertyRequest) ReadField8(iprot thrift.TProtocol) error { - var _field int64 - if v, err := iprot.ReadI64(); err != nil { - return err - } else { - _field = v - } - p.StartTime = _field - return nil +func NewChangeImageRequest() *ChangeImageRequest { + return &ChangeImageRequest{} } -func (p *ChangeImagePropertyRequest) ReadField9(iprot thrift.TProtocol) error { - var _field int64 - if v, err := iprot.ReadI64(); err != nil { - return err - } else { - _field = v - } - p.EndTime = _field - return nil +func (p *ChangeImageRequest) InitDefault() { } -func (p *ChangeImagePropertyRequest) ReadField10(iprot thrift.TProtocol) error { - var _field string - if v, err := iprot.ReadString(); err != nil { - return err - } else { - _field = v +func (p *ChangeImageRequest) GetPictureID() (v int64) { + return p.PictureID +} + +func (p *ChangeImageRequest) GetImage() (v []byte) { + return p.Image +} + +var fieldIDToName_ChangeImageRequest = map[int16]string{ + 1: "picture_id", + 2: "image", +} + +func (p *ChangeImageRequest) Read(iprot thrift.TProtocol) (err error) { + + var fieldTypeId thrift.TType + var fieldId int16 + var issetPictureID bool = false + + 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.I64 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + issetPictureID = true + } 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 + } + + if !issetPictureID { + fieldId = 1 + goto RequiredFieldNotSetError } - p.Text = _field 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_ChangeImageRequest[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) +RequiredFieldNotSetError: + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_ChangeImageRequest[fieldId])) } -func (p *ChangeImagePropertyRequest) ReadField11(iprot thrift.TProtocol) error { + +func (p *ChangeImageRequest) ReadField1(iprot thrift.TProtocol) error { var _field int64 if v, err := iprot.ReadI64(); err != nil { @@ -3002,21 +3259,21 @@ func (p *ChangeImagePropertyRequest) ReadField11(iprot thrift.TProtocol) error { p.PictureID = _field return nil } -func (p *ChangeImagePropertyRequest) ReadField12(iprot thrift.TProtocol) error { +func (p *ChangeImageRequest) ReadField2(iprot thrift.TProtocol) error { - var _field string - if v, err := iprot.ReadString(); err != nil { + var _field []byte + if v, err := iprot.ReadBinary(); err != nil { return err } else { - _field = v + _field = []byte(v) } - p.Regex = _field + p.Image = _field return nil } -func (p *ChangeImagePropertyRequest) Write(oprot thrift.TProtocol) (err error) { +func (p *ChangeImageRequest) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("ChangeImagePropertyRequest"); err != nil { + if err = oprot.WriteStructBegin("ChangeImageRequest"); err != nil { goto WriteStructBeginError } if p != nil { @@ -3028,46 +3285,6 @@ func (p *ChangeImagePropertyRequest) Write(oprot thrift.TProtocol) (err error) { 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 = p.writeField5(oprot); err != nil { - fieldId = 5 - goto WriteFieldError - } - if err = p.writeField6(oprot); err != nil { - fieldId = 6 - goto WriteFieldError - } - if err = p.writeField7(oprot); err != nil { - fieldId = 7 - goto WriteFieldError - } - if err = p.writeField8(oprot); err != nil { - fieldId = 8 - goto WriteFieldError - } - if err = p.writeField9(oprot); err != nil { - fieldId = 9 - goto WriteFieldError - } - if err = p.writeField10(oprot); err != nil { - fieldId = 10 - goto WriteFieldError - } - if err = p.writeField11(oprot); err != nil { - fieldId = 11 - goto WriteFieldError - } - if err = p.writeField12(oprot); err != nil { - fieldId = 12 - goto WriteFieldError - } } if err = oprot.WriteFieldStop(); err != nil { goto WriteFieldStopError @@ -3086,11 +3303,11 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *ChangeImagePropertyRequest) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("type", thrift.I64, 1); err != nil { +func (p *ChangeImageRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("picture_id", thrift.I64, 1); err != nil { goto WriteFieldBeginError } - if err := oprot.WriteI64(p.Type); err != nil { + if err := oprot.WriteI64(p.PictureID); err != nil { return err } if err = oprot.WriteFieldEnd(); err != nil { @@ -3103,49 +3320,11 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *ChangeImagePropertyRequest) writeField2(oprot thrift.TProtocol) (err error) { - if p.IsSetDuration() { - if err = oprot.WriteFieldBegin("duration", thrift.I64, 2); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(*p.Duration); 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 *ChangeImagePropertyRequest) writeField3(oprot thrift.TProtocol) (err error) { - if p.IsSetHref() { - if err = oprot.WriteFieldBegin("href", thrift.STRING, 3); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteString(*p.Href); 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 *ChangeImagePropertyRequest) writeField4(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("start_at", thrift.I64, 4); err != nil { +func (p *ChangeImageRequest) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("image", thrift.STRING, 2); err != nil { goto WriteFieldBeginError } - if err := oprot.WriteI64(p.StartAt); err != nil { + if err := oprot.WriteBinary([]byte(p.Image)); err != nil { return err } if err = oprot.WriteFieldEnd(); err != nil { @@ -3153,199 +3332,63 @@ func (p *ChangeImagePropertyRequest) writeField4(oprot thrift.TProtocol) (err er } return nil WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 4 begin error: ", p), err) + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 4 end error: ", p), err) + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) } -func (p *ChangeImagePropertyRequest) writeField5(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("end_at", thrift.I64, 5); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(p.EndAt); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError +func (p *ChangeImageRequest) String() string { + if p == nil { + return "" } - return nil -WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 5 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 5 end error: ", p), err) -} - -func (p *ChangeImagePropertyRequest) writeField6(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("s_type", thrift.I64, 6); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(p.SType); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } - return nil -WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 6 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 6 end error: ", p), err) -} - -func (p *ChangeImagePropertyRequest) writeField7(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("frequency", thrift.I64, 7); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(p.Frequency); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } - return nil -WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 7 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 7 end error: ", p), err) -} - -func (p *ChangeImagePropertyRequest) writeField8(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("start_time", thrift.I64, 8); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(p.StartTime); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } - return nil -WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 8 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 8 end error: ", p), err) -} - -func (p *ChangeImagePropertyRequest) writeField9(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("end_time", thrift.I64, 9); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(p.EndTime); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } - return nil -WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 9 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 9 end error: ", p), err) -} - -func (p *ChangeImagePropertyRequest) writeField10(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("text", thrift.STRING, 10); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteString(p.Text); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } - return nil -WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 10 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 10 end error: ", p), err) -} - -func (p *ChangeImagePropertyRequest) writeField11(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("picture_id", thrift.I64, 11); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(p.PictureID); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } - return nil -WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 11 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 11 end error: ", p), err) -} - -func (p *ChangeImagePropertyRequest) writeField12(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("regex", thrift.STRING, 12); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteString(p.Regex); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } - return nil -WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 12 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 12 end error: ", p), err) -} - -func (p *ChangeImagePropertyRequest) String() string { - if p == nil { - return "" - } - return fmt.Sprintf("ChangeImagePropertyRequest(%+v)", *p) + return fmt.Sprintf("ChangeImageRequest(%+v)", *p) } -type ChangeImagePropertyResponse struct { +type ChangeImageResponse struct { Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` Picture *model.Picture `thrift:"picture,2,optional" form:"picture" json:"picture,omitempty" query:"picture"` } -func NewChangeImagePropertyResponse() *ChangeImagePropertyResponse { - return &ChangeImagePropertyResponse{} +func NewChangeImageResponse() *ChangeImageResponse { + return &ChangeImageResponse{} } -func (p *ChangeImagePropertyResponse) InitDefault() { +func (p *ChangeImageResponse) InitDefault() { } -var ChangeImagePropertyResponse_Base_DEFAULT *model.BaseResp +var ChangeImageResponse_Base_DEFAULT *model.BaseResp -func (p *ChangeImagePropertyResponse) GetBase() (v *model.BaseResp) { +func (p *ChangeImageResponse) GetBase() (v *model.BaseResp) { if !p.IsSetBase() { - return ChangeImagePropertyResponse_Base_DEFAULT + return ChangeImageResponse_Base_DEFAULT } return p.Base } -var ChangeImagePropertyResponse_Picture_DEFAULT *model.Picture +var ChangeImageResponse_Picture_DEFAULT *model.Picture -func (p *ChangeImagePropertyResponse) GetPicture() (v *model.Picture) { +func (p *ChangeImageResponse) GetPicture() (v *model.Picture) { if !p.IsSetPicture() { - return ChangeImagePropertyResponse_Picture_DEFAULT + return ChangeImageResponse_Picture_DEFAULT } return p.Picture } -var fieldIDToName_ChangeImagePropertyResponse = map[int16]string{ +var fieldIDToName_ChangeImageResponse = map[int16]string{ 1: "base", 2: "picture", } -func (p *ChangeImagePropertyResponse) IsSetBase() bool { +func (p *ChangeImageResponse) IsSetBase() bool { return p.Base != nil } -func (p *ChangeImagePropertyResponse) IsSetPicture() bool { +func (p *ChangeImageResponse) IsSetPicture() bool { return p.Picture != nil } -func (p *ChangeImagePropertyResponse) Read(iprot thrift.TProtocol) (err error) { +func (p *ChangeImageResponse) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -3399,7 +3442,7 @@ ReadStructBeginError: 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_ChangeImagePropertyResponse[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_ChangeImageResponse[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -3409,7 +3452,7 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *ChangeImagePropertyResponse) ReadField1(iprot thrift.TProtocol) error { +func (p *ChangeImageResponse) ReadField1(iprot thrift.TProtocol) error { _field := model.NewBaseResp() if err := _field.Read(iprot); err != nil { return err @@ -3417,7 +3460,7 @@ func (p *ChangeImagePropertyResponse) ReadField1(iprot thrift.TProtocol) error { p.Base = _field return nil } -func (p *ChangeImagePropertyResponse) ReadField2(iprot thrift.TProtocol) error { +func (p *ChangeImageResponse) ReadField2(iprot thrift.TProtocol) error { _field := model.NewPicture() if err := _field.Read(iprot); err != nil { return err @@ -3426,9 +3469,9 @@ func (p *ChangeImagePropertyResponse) ReadField2(iprot thrift.TProtocol) error { return nil } -func (p *ChangeImagePropertyResponse) Write(oprot thrift.TProtocol) (err error) { +func (p *ChangeImageResponse) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("ChangeImagePropertyResponse"); err != nil { + if err = oprot.WriteStructBegin("ChangeImageResponse"); err != nil { goto WriteStructBeginError } if p != nil { @@ -3458,7 +3501,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *ChangeImagePropertyResponse) writeField1(oprot thrift.TProtocol) (err error) { +func (p *ChangeImageResponse) writeField1(oprot thrift.TProtocol) (err error) { if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { goto WriteFieldBeginError } @@ -3475,7 +3518,7 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *ChangeImagePropertyResponse) writeField2(oprot thrift.TProtocol) (err error) { +func (p *ChangeImageResponse) writeField2(oprot thrift.TProtocol) (err error) { if p.IsSetPicture() { if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { goto WriteFieldBeginError @@ -3494,40 +3537,34 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) } -func (p *ChangeImagePropertyResponse) String() string { +func (p *ChangeImageResponse) String() string { if p == nil { return "" } - return fmt.Sprintf("ChangeImagePropertyResponse(%+v)", *p) + return fmt.Sprintf("ChangeImageResponse(%+v)", *p) } -type ChangeImageRequest struct { - PictureID int64 `thrift:"picture_id,1,required" form:"picture_id,required" json:"picture_id,required" query:"picture_id,required"` - Image []byte `thrift:"image,2" form:"image" json:"image" query:"image"` +type DeleteImageRequest struct { + PictureID int64 `thrift:"picture_id,1,required" form:"picture_id,required" json:"picture_id,required" query:"picture_id,required"` } -func NewChangeImageRequest() *ChangeImageRequest { - return &ChangeImageRequest{} +func NewDeleteImageRequest() *DeleteImageRequest { + return &DeleteImageRequest{} } -func (p *ChangeImageRequest) InitDefault() { +func (p *DeleteImageRequest) InitDefault() { } -func (p *ChangeImageRequest) GetPictureID() (v int64) { +func (p *DeleteImageRequest) GetPictureID() (v int64) { return p.PictureID } -func (p *ChangeImageRequest) GetImage() (v []byte) { - return p.Image -} - -var fieldIDToName_ChangeImageRequest = map[int16]string{ +var fieldIDToName_DeleteImageRequest = map[int16]string{ 1: "picture_id", - 2: "image", } -func (p *ChangeImageRequest) Read(iprot thrift.TProtocol) (err error) { +func (p *DeleteImageRequest) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -3556,14 +3593,6 @@ func (p *ChangeImageRequest) Read(iprot thrift.TProtocol) (err error) { } 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 @@ -3587,7 +3616,7 @@ ReadStructBeginError: 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_ChangeImageRequest[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_DeleteImageRequest[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -3596,10 +3625,10 @@ ReadFieldEndError: ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) RequiredFieldNotSetError: - return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_ChangeImageRequest[fieldId])) + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_DeleteImageRequest[fieldId])) } -func (p *ChangeImageRequest) ReadField1(iprot thrift.TProtocol) error { +func (p *DeleteImageRequest) ReadField1(iprot thrift.TProtocol) error { var _field int64 if v, err := iprot.ReadI64(); err != nil { @@ -3610,21 +3639,10 @@ func (p *ChangeImageRequest) ReadField1(iprot thrift.TProtocol) error { p.PictureID = _field return nil } -func (p *ChangeImageRequest) ReadField2(iprot thrift.TProtocol) error { - - var _field []byte - if v, err := iprot.ReadBinary(); err != nil { - return err - } else { - _field = []byte(v) - } - p.Image = _field - return nil -} -func (p *ChangeImageRequest) Write(oprot thrift.TProtocol) (err error) { +func (p *DeleteImageRequest) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("ChangeImageRequest"); err != nil { + if err = oprot.WriteStructBegin("DeleteImageRequest"); err != nil { goto WriteStructBeginError } if p != nil { @@ -3632,10 +3650,6 @@ func (p *ChangeImageRequest) Write(oprot thrift.TProtocol) (err error) { fieldId = 1 goto WriteFieldError } - if err = p.writeField2(oprot); err != nil { - fieldId = 2 - goto WriteFieldError - } } if err = oprot.WriteFieldStop(); err != nil { goto WriteFieldStopError @@ -3654,7 +3668,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *ChangeImageRequest) writeField1(oprot thrift.TProtocol) (err error) { +func (p *DeleteImageRequest) writeField1(oprot thrift.TProtocol) (err error) { if err = oprot.WriteFieldBegin("picture_id", thrift.I64, 1); err != nil { goto WriteFieldBeginError } @@ -3671,75 +3685,58 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *ChangeImageRequest) writeField2(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("image", thrift.STRING, 2); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteBinary([]byte(p.Image)); 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 *ChangeImageRequest) String() string { +func (p *DeleteImageRequest) String() string { if p == nil { return "" } - return fmt.Sprintf("ChangeImageRequest(%+v)", *p) + return fmt.Sprintf("DeleteImageRequest(%+v)", *p) } -type ChangeImageResponse struct { +type DeleteImageResponse struct { Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` Picture *model.Picture `thrift:"picture,2,optional" form:"picture" json:"picture,omitempty" query:"picture"` } -func NewChangeImageResponse() *ChangeImageResponse { - return &ChangeImageResponse{} +func NewDeleteImageResponse() *DeleteImageResponse { + return &DeleteImageResponse{} } -func (p *ChangeImageResponse) InitDefault() { +func (p *DeleteImageResponse) InitDefault() { } -var ChangeImageResponse_Base_DEFAULT *model.BaseResp +var DeleteImageResponse_Base_DEFAULT *model.BaseResp -func (p *ChangeImageResponse) GetBase() (v *model.BaseResp) { +func (p *DeleteImageResponse) GetBase() (v *model.BaseResp) { if !p.IsSetBase() { - return ChangeImageResponse_Base_DEFAULT + return DeleteImageResponse_Base_DEFAULT } return p.Base } -var ChangeImageResponse_Picture_DEFAULT *model.Picture +var DeleteImageResponse_Picture_DEFAULT *model.Picture -func (p *ChangeImageResponse) GetPicture() (v *model.Picture) { +func (p *DeleteImageResponse) GetPicture() (v *model.Picture) { if !p.IsSetPicture() { - return ChangeImageResponse_Picture_DEFAULT + return DeleteImageResponse_Picture_DEFAULT } return p.Picture } -var fieldIDToName_ChangeImageResponse = map[int16]string{ +var fieldIDToName_DeleteImageResponse = map[int16]string{ 1: "base", 2: "picture", } -func (p *ChangeImageResponse) IsSetBase() bool { +func (p *DeleteImageResponse) IsSetBase() bool { return p.Base != nil } -func (p *ChangeImageResponse) IsSetPicture() bool { +func (p *DeleteImageResponse) IsSetPicture() bool { return p.Picture != nil } -func (p *ChangeImageResponse) Read(iprot thrift.TProtocol) (err error) { +func (p *DeleteImageResponse) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -3793,7 +3790,7 @@ ReadStructBeginError: 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_ChangeImageResponse[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_DeleteImageResponse[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -3803,7 +3800,7 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *ChangeImageResponse) ReadField1(iprot thrift.TProtocol) error { +func (p *DeleteImageResponse) ReadField1(iprot thrift.TProtocol) error { _field := model.NewBaseResp() if err := _field.Read(iprot); err != nil { return err @@ -3811,7 +3808,7 @@ func (p *ChangeImageResponse) ReadField1(iprot thrift.TProtocol) error { p.Base = _field return nil } -func (p *ChangeImageResponse) ReadField2(iprot thrift.TProtocol) error { +func (p *DeleteImageResponse) ReadField2(iprot thrift.TProtocol) error { _field := model.NewPicture() if err := _field.Read(iprot); err != nil { return err @@ -3820,9 +3817,9 @@ func (p *ChangeImageResponse) ReadField2(iprot thrift.TProtocol) error { return nil } -func (p *ChangeImageResponse) Write(oprot thrift.TProtocol) (err error) { +func (p *DeleteImageResponse) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("ChangeImageResponse"); err != nil { + if err = oprot.WriteStructBegin("DeleteImageResponse"); err != nil { goto WriteStructBeginError } if p != nil { @@ -3852,7 +3849,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *ChangeImageResponse) writeField1(oprot thrift.TProtocol) (err error) { +func (p *DeleteImageResponse) writeField1(oprot thrift.TProtocol) (err error) { if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { goto WriteFieldBeginError } @@ -3869,7 +3866,7 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *ChangeImageResponse) writeField2(oprot thrift.TProtocol) (err error) { +func (p *DeleteImageResponse) writeField2(oprot thrift.TProtocol) (err error) { if p.IsSetPicture() { if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { goto WriteFieldBeginError @@ -3888,38 +3885,67 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) } -func (p *ChangeImageResponse) String() string { +func (p *DeleteImageResponse) String() string { if p == nil { return "" } - return fmt.Sprintf("ChangeImageResponse(%+v)", *p) + return fmt.Sprintf("DeleteImageResponse(%+v)", *p) } -type DeleteImageRequest struct { - PictureID int64 `thrift:"picture_id,1,required" form:"picture_id,required" json:"picture_id,required" query:"picture_id,required"` +type MobileGetImageRequest struct { + Type int64 `thrift:"type,1,required" form:"type,required" json:"type,required" query:"type,required"` + StudentID int64 `thrift:"student_id,2,required" form:"student_id,required" json:"student_id,required" query:"student_id,required"` + College *string `thrift:"college,3,optional" form:"college" json:"college,omitempty" query:"college"` + Device string `thrift:"device,4,required" form:"device,required" json:"device,required" query:"device,required"` } -func NewDeleteImageRequest() *DeleteImageRequest { - return &DeleteImageRequest{} +func NewMobileGetImageRequest() *MobileGetImageRequest { + return &MobileGetImageRequest{} } -func (p *DeleteImageRequest) InitDefault() { +func (p *MobileGetImageRequest) InitDefault() { } -func (p *DeleteImageRequest) GetPictureID() (v int64) { - return p.PictureID +func (p *MobileGetImageRequest) GetType() (v int64) { + return p.Type } -var fieldIDToName_DeleteImageRequest = map[int16]string{ - 1: "picture_id", +func (p *MobileGetImageRequest) GetStudentID() (v int64) { + return p.StudentID } -func (p *DeleteImageRequest) Read(iprot thrift.TProtocol) (err error) { +var MobileGetImageRequest_College_DEFAULT string + +func (p *MobileGetImageRequest) GetCollege() (v string) { + if !p.IsSetCollege() { + return MobileGetImageRequest_College_DEFAULT + } + return *p.College +} + +func (p *MobileGetImageRequest) GetDevice() (v string) { + return p.Device +} + +var fieldIDToName_MobileGetImageRequest = map[int16]string{ + 1: "type", + 2: "student_id", + 3: "college", + 4: "device", +} + +func (p *MobileGetImageRequest) IsSetCollege() bool { + return p.College != nil +} + +func (p *MobileGetImageRequest) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 - var issetPictureID bool = false + var issetType bool = false + var issetStudentID bool = false + var issetDevice bool = false if _, err = iprot.ReadStructBegin(); err != nil { goto ReadStructBeginError @@ -3940,7 +3966,33 @@ func (p *DeleteImageRequest) Read(iprot thrift.TProtocol) (err error) { if err = p.ReadField1(iprot); err != nil { goto ReadFieldError } - issetPictureID = true + issetType = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.I64 { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + issetStudentID = true + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.STRING { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 4: + if fieldTypeId == thrift.STRING { + if err = p.ReadField4(iprot); err != nil { + goto ReadFieldError + } + issetDevice = true } else if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } @@ -3957,17 +4009,27 @@ func (p *DeleteImageRequest) Read(iprot thrift.TProtocol) (err error) { goto ReadStructEndError } - if !issetPictureID { + if !issetType { fieldId = 1 goto RequiredFieldNotSetError } + + if !issetStudentID { + fieldId = 2 + goto RequiredFieldNotSetError + } + + if !issetDevice { + fieldId = 4 + goto RequiredFieldNotSetError + } 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_DeleteImageRequest[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MobileGetImageRequest[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -3976,10 +4038,10 @@ ReadFieldEndError: ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) RequiredFieldNotSetError: - return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_DeleteImageRequest[fieldId])) + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_MobileGetImageRequest[fieldId])) } -func (p *DeleteImageRequest) ReadField1(iprot thrift.TProtocol) error { +func (p *MobileGetImageRequest) ReadField1(iprot thrift.TProtocol) error { var _field int64 if v, err := iprot.ReadI64(); err != nil { @@ -3987,13 +4049,46 @@ func (p *DeleteImageRequest) ReadField1(iprot thrift.TProtocol) error { } else { _field = v } - p.PictureID = _field + p.Type = _field + return nil +} +func (p *MobileGetImageRequest) ReadField2(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.StudentID = _field return nil } +func (p *MobileGetImageRequest) ReadField3(iprot thrift.TProtocol) error { -func (p *DeleteImageRequest) Write(oprot thrift.TProtocol) (err error) { + var _field *string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = &v + } + p.College = _field + return nil +} +func (p *MobileGetImageRequest) ReadField4(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Device = _field + return nil +} + +func (p *MobileGetImageRequest) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("DeleteImageRequest"); err != nil { + if err = oprot.WriteStructBegin("MobileGetImageRequest"); err != nil { goto WriteStructBeginError } if p != nil { @@ -4001,6 +4096,18 @@ func (p *DeleteImageRequest) Write(oprot thrift.TProtocol) (err error) { 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 @@ -4019,11 +4126,11 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *DeleteImageRequest) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("picture_id", thrift.I64, 1); err != nil { +func (p *MobileGetImageRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("type", thrift.I64, 1); err != nil { goto WriteFieldBeginError } - if err := oprot.WriteI64(p.PictureID); err != nil { + if err := oprot.WriteI64(p.Type); err != nil { return err } if err = oprot.WriteFieldEnd(); err != nil { @@ -4036,58 +4143,126 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *DeleteImageRequest) String() string { - if p == nil { - return "" +func (p *MobileGetImageRequest) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("student_id", thrift.I64, 2); err != nil { + goto WriteFieldBeginError } - return fmt.Sprintf("DeleteImageRequest(%+v)", *p) - + if err := oprot.WriteI64(p.StudentID); 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) } -type DeleteImageResponse struct { - Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` - Picture *model.Picture `thrift:"picture,2,optional" form:"picture" json:"picture,omitempty" query:"picture"` +func (p *MobileGetImageRequest) writeField3(oprot thrift.TProtocol) (err error) { + if p.IsSetCollege() { + if err = oprot.WriteFieldBegin("college", thrift.STRING, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(*p.College); 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 NewDeleteImageResponse() *DeleteImageResponse { - return &DeleteImageResponse{} +func (p *MobileGetImageRequest) writeField4(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("device", thrift.STRING, 4); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Device); 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 *DeleteImageResponse) InitDefault() { -} +func (p *MobileGetImageRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MobileGetImageRequest(%+v)", *p) -var DeleteImageResponse_Base_DEFAULT *model.BaseResp +} -func (p *DeleteImageResponse) GetBase() (v *model.BaseResp) { +type MobileGetImageResponse struct { + Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` + Count *int64 `thrift:"count,2,optional" form:"count" json:"count,omitempty" query:"count"` + PictureList []*model.Picture `thrift:"picture_list,3,optional" form:"picture_list" json:"picture_list,omitempty" query:"picture_list"` +} + +func NewMobileGetImageResponse() *MobileGetImageResponse { + return &MobileGetImageResponse{} +} + +func (p *MobileGetImageResponse) InitDefault() { +} + +var MobileGetImageResponse_Base_DEFAULT *model.BaseResp + +func (p *MobileGetImageResponse) GetBase() (v *model.BaseResp) { if !p.IsSetBase() { - return DeleteImageResponse_Base_DEFAULT + return MobileGetImageResponse_Base_DEFAULT } return p.Base } -var DeleteImageResponse_Picture_DEFAULT *model.Picture +var MobileGetImageResponse_Count_DEFAULT int64 -func (p *DeleteImageResponse) GetPicture() (v *model.Picture) { - if !p.IsSetPicture() { - return DeleteImageResponse_Picture_DEFAULT +func (p *MobileGetImageResponse) GetCount() (v int64) { + if !p.IsSetCount() { + return MobileGetImageResponse_Count_DEFAULT } - return p.Picture + return *p.Count } -var fieldIDToName_DeleteImageResponse = map[int16]string{ +var MobileGetImageResponse_PictureList_DEFAULT []*model.Picture + +func (p *MobileGetImageResponse) GetPictureList() (v []*model.Picture) { + if !p.IsSetPictureList() { + return MobileGetImageResponse_PictureList_DEFAULT + } + return p.PictureList +} + +var fieldIDToName_MobileGetImageResponse = map[int16]string{ 1: "base", - 2: "picture", + 2: "count", + 3: "picture_list", } -func (p *DeleteImageResponse) IsSetBase() bool { +func (p *MobileGetImageResponse) IsSetBase() bool { return p.Base != nil } -func (p *DeleteImageResponse) IsSetPicture() bool { - return p.Picture != nil +func (p *MobileGetImageResponse) IsSetCount() bool { + return p.Count != nil } -func (p *DeleteImageResponse) Read(iprot thrift.TProtocol) (err error) { +func (p *MobileGetImageResponse) IsSetPictureList() bool { + return p.PictureList != nil +} + +func (p *MobileGetImageResponse) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -4115,13 +4290,21 @@ func (p *DeleteImageResponse) Read(iprot thrift.TProtocol) (err error) { goto SkipFieldError } case 2: - if fieldTypeId == thrift.STRUCT { + if fieldTypeId == thrift.I64 { 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 @@ -4141,7 +4324,7 @@ ReadStructBeginError: 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_DeleteImageResponse[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_MobileGetImageResponse[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -4151,7 +4334,7 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *DeleteImageResponse) ReadField1(iprot thrift.TProtocol) error { +func (p *MobileGetImageResponse) ReadField1(iprot thrift.TProtocol) error { _field := model.NewBaseResp() if err := _field.Read(iprot); err != nil { return err @@ -4159,18 +4342,44 @@ func (p *DeleteImageResponse) ReadField1(iprot thrift.TProtocol) error { p.Base = _field return nil } -func (p *DeleteImageResponse) ReadField2(iprot thrift.TProtocol) error { - _field := model.NewPicture() - if err := _field.Read(iprot); err != nil { +func (p *MobileGetImageResponse) ReadField2(iprot thrift.TProtocol) error { + + var _field *int64 + if v, err := iprot.ReadI64(); err != nil { return err + } else { + _field = &v } - p.Picture = _field + p.Count = _field + return nil +} +func (p *MobileGetImageResponse) ReadField3(iprot thrift.TProtocol) error { + _, size, err := iprot.ReadListBegin() + if err != nil { + return err + } + _field := make([]*model.Picture, 0, size) + values := make([]model.Picture, 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.PictureList = _field return nil } -func (p *DeleteImageResponse) Write(oprot thrift.TProtocol) (err error) { +func (p *MobileGetImageResponse) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("DeleteImageResponse"); err != nil { + if err = oprot.WriteStructBegin("MobileGetImageResponse"); err != nil { goto WriteStructBeginError } if p != nil { @@ -4182,6 +4391,10 @@ func (p *DeleteImageResponse) Write(oprot thrift.TProtocol) (err error) { fieldId = 2 goto WriteFieldError } + if err = p.writeField3(oprot); err != nil { + fieldId = 3 + goto WriteFieldError + } } if err = oprot.WriteFieldStop(); err != nil { goto WriteFieldStopError @@ -4200,7 +4413,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *DeleteImageResponse) writeField1(oprot thrift.TProtocol) (err error) { +func (p *MobileGetImageResponse) writeField1(oprot thrift.TProtocol) (err error) { if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { goto WriteFieldBeginError } @@ -4217,12 +4430,12 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *DeleteImageResponse) writeField2(oprot thrift.TProtocol) (err error) { - if p.IsSetPicture() { - if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { +func (p *MobileGetImageResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetCount() { + if err = oprot.WriteFieldBegin("count", thrift.I64, 2); err != nil { goto WriteFieldBeginError } - if err := p.Picture.Write(oprot); err != nil { + if err := oprot.WriteI64(*p.Count); err != nil { return err } if err = oprot.WriteFieldEnd(); err != nil { @@ -4236,67 +4449,65 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) } -func (p *DeleteImageResponse) String() string { - if p == nil { - return "" +func (p *MobileGetImageResponse) writeField3(oprot thrift.TProtocol) (err error) { + if p.IsSetPictureList() { + if err = oprot.WriteFieldBegin("picture_list", thrift.LIST, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteListBegin(thrift.STRUCT, len(p.PictureList)); err != nil { + return err + } + for _, v := range p.PictureList { + 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 fmt.Sprintf("DeleteImageResponse(%+v)", *p) - -} - -type MobileGetImageRequest struct { - Type int64 `thrift:"type,1,required" form:"type,required" json:"type,required" query:"type,required"` - StudentID int64 `thrift:"student_id,2,required" form:"student_id,required" json:"student_id,required" query:"student_id,required"` - College *string `thrift:"college,3,optional" form:"college" json:"college,omitempty" query:"college"` - Device string `thrift:"device,4,required" form:"device,required" json:"device,required" query:"device,required"` -} - -func NewMobileGetImageRequest() *MobileGetImageRequest { - return &MobileGetImageRequest{} + 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 *MobileGetImageRequest) InitDefault() { -} +func (p *MobileGetImageResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("MobileGetImageResponse(%+v)", *p) -func (p *MobileGetImageRequest) GetType() (v int64) { - return p.Type } -func (p *MobileGetImageRequest) GetStudentID() (v int64) { - return p.StudentID +type AddImagePointTimeRequest struct { + PictureID int64 `thrift:"picture_id,1,required" form:"picture_id,required" json:"picture_id,required" query:"picture_id,required"` } -var MobileGetImageRequest_College_DEFAULT string - -func (p *MobileGetImageRequest) GetCollege() (v string) { - if !p.IsSetCollege() { - return MobileGetImageRequest_College_DEFAULT - } - return *p.College +func NewAddImagePointTimeRequest() *AddImagePointTimeRequest { + return &AddImagePointTimeRequest{} } -func (p *MobileGetImageRequest) GetDevice() (v string) { - return p.Device +func (p *AddImagePointTimeRequest) InitDefault() { } -var fieldIDToName_MobileGetImageRequest = map[int16]string{ - 1: "type", - 2: "student_id", - 3: "college", - 4: "device", +func (p *AddImagePointTimeRequest) GetPictureID() (v int64) { + return p.PictureID } -func (p *MobileGetImageRequest) IsSetCollege() bool { - return p.College != nil +var fieldIDToName_AddImagePointTimeRequest = map[int16]string{ + 1: "picture_id", } -func (p *MobileGetImageRequest) Read(iprot thrift.TProtocol) (err error) { +func (p *AddImagePointTimeRequest) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 - var issetType bool = false - var issetStudentID bool = false - var issetDevice bool = false + var issetPictureID bool = false if _, err = iprot.ReadStructBegin(); err != nil { goto ReadStructBeginError @@ -4317,33 +4528,7 @@ func (p *MobileGetImageRequest) Read(iprot thrift.TProtocol) (err error) { if err = p.ReadField1(iprot); err != nil { goto ReadFieldError } - issetType = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 2: - if fieldTypeId == thrift.I64 { - if err = p.ReadField2(iprot); err != nil { - goto ReadFieldError - } - issetStudentID = true - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 3: - if fieldTypeId == thrift.STRING { - if err = p.ReadField3(iprot); err != nil { - goto ReadFieldError - } - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 4: - if fieldTypeId == thrift.STRING { - if err = p.ReadField4(iprot); err != nil { - goto ReadFieldError - } - issetDevice = true + issetPictureID = true } else if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } @@ -4360,27 +4545,17 @@ func (p *MobileGetImageRequest) Read(iprot thrift.TProtocol) (err error) { goto ReadStructEndError } - if !issetType { + if !issetPictureID { fieldId = 1 goto RequiredFieldNotSetError } - - if !issetStudentID { - fieldId = 2 - goto RequiredFieldNotSetError - } - - if !issetDevice { - fieldId = 4 - goto RequiredFieldNotSetError - } 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_MobileGetImageRequest[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_AddImagePointTimeRequest[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -4389,1115 +4564,118 @@ ReadFieldEndError: ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) RequiredFieldNotSetError: - return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_MobileGetImageRequest[fieldId])) -} - -func (p *MobileGetImageRequest) ReadField1(iprot thrift.TProtocol) error { - - var _field int64 - if v, err := iprot.ReadI64(); err != nil { - return err - } else { - _field = v - } - p.Type = _field - return nil -} -func (p *MobileGetImageRequest) ReadField2(iprot thrift.TProtocol) error { - - var _field int64 - if v, err := iprot.ReadI64(); err != nil { - return err - } else { - _field = v - } - p.StudentID = _field - return nil -} -func (p *MobileGetImageRequest) ReadField3(iprot thrift.TProtocol) error { - - var _field *string - if v, err := iprot.ReadString(); err != nil { - return err - } else { - _field = &v - } - p.College = _field - return nil -} -func (p *MobileGetImageRequest) ReadField4(iprot thrift.TProtocol) error { - - var _field string - if v, err := iprot.ReadString(); err != nil { - return err - } else { - _field = v - } - p.Device = _field - return nil -} - -func (p *MobileGetImageRequest) Write(oprot thrift.TProtocol) (err error) { - var fieldId int16 - if err = oprot.WriteStructBegin("MobileGetImageRequest"); 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 *MobileGetImageRequest) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("type", thrift.I64, 1); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(p.Type); 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 *MobileGetImageRequest) writeField2(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("student_id", thrift.I64, 2); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(p.StudentID); 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 *MobileGetImageRequest) writeField3(oprot thrift.TProtocol) (err error) { - if p.IsSetCollege() { - if err = oprot.WriteFieldBegin("college", thrift.STRING, 3); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteString(*p.College); 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 *MobileGetImageRequest) writeField4(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("device", thrift.STRING, 4); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteString(p.Device); 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 *MobileGetImageRequest) String() string { - if p == nil { - return "" - } - return fmt.Sprintf("MobileGetImageRequest(%+v)", *p) - -} - -type MobileGetImageResponse struct { - Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` - Count *int64 `thrift:"count,2,optional" form:"count" json:"count,omitempty" query:"count"` - PictureList []*model.Picture `thrift:"picture_list,3,optional" form:"picture_list" json:"picture_list,omitempty" query:"picture_list"` -} - -func NewMobileGetImageResponse() *MobileGetImageResponse { - return &MobileGetImageResponse{} -} - -func (p *MobileGetImageResponse) InitDefault() { -} - -var MobileGetImageResponse_Base_DEFAULT *model.BaseResp - -func (p *MobileGetImageResponse) GetBase() (v *model.BaseResp) { - if !p.IsSetBase() { - return MobileGetImageResponse_Base_DEFAULT - } - return p.Base -} - -var MobileGetImageResponse_Count_DEFAULT int64 - -func (p *MobileGetImageResponse) GetCount() (v int64) { - if !p.IsSetCount() { - return MobileGetImageResponse_Count_DEFAULT - } - return *p.Count -} - -var MobileGetImageResponse_PictureList_DEFAULT []*model.Picture - -func (p *MobileGetImageResponse) GetPictureList() (v []*model.Picture) { - if !p.IsSetPictureList() { - return MobileGetImageResponse_PictureList_DEFAULT - } - return p.PictureList -} - -var fieldIDToName_MobileGetImageResponse = map[int16]string{ - 1: "base", - 2: "count", - 3: "picture_list", -} - -func (p *MobileGetImageResponse) IsSetBase() bool { - return p.Base != nil -} - -func (p *MobileGetImageResponse) IsSetCount() bool { - return p.Count != nil -} - -func (p *MobileGetImageResponse) IsSetPictureList() bool { - return p.PictureList != nil -} - -func (p *MobileGetImageResponse) 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 - } - case 2: - if fieldTypeId == thrift.I64 { - 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_MobileGetImageResponse[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 *MobileGetImageResponse) ReadField1(iprot thrift.TProtocol) error { - _field := model.NewBaseResp() - if err := _field.Read(iprot); err != nil { - return err - } - p.Base = _field - return nil -} -func (p *MobileGetImageResponse) ReadField2(iprot thrift.TProtocol) error { - - var _field *int64 - if v, err := iprot.ReadI64(); err != nil { - return err - } else { - _field = &v - } - p.Count = _field - return nil -} -func (p *MobileGetImageResponse) ReadField3(iprot thrift.TProtocol) error { - _, size, err := iprot.ReadListBegin() - if err != nil { - return err - } - _field := make([]*model.Picture, 0, size) - values := make([]model.Picture, 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.PictureList = _field - return nil -} - -func (p *MobileGetImageResponse) Write(oprot thrift.TProtocol) (err error) { - var fieldId int16 - if err = oprot.WriteStructBegin("MobileGetImageResponse"); 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 *MobileGetImageResponse) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { - goto WriteFieldBeginError - } - if err := p.Base.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 *MobileGetImageResponse) writeField2(oprot thrift.TProtocol) (err error) { - if p.IsSetCount() { - if err = oprot.WriteFieldBegin("count", thrift.I64, 2); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(*p.Count); 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 *MobileGetImageResponse) writeField3(oprot thrift.TProtocol) (err error) { - if p.IsSetPictureList() { - if err = oprot.WriteFieldBegin("picture_list", thrift.LIST, 3); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteListBegin(thrift.STRUCT, len(p.PictureList)); err != nil { - return err - } - for _, v := range p.PictureList { - 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 *MobileGetImageResponse) String() string { - if p == nil { - return "" - } - return fmt.Sprintf("MobileGetImageResponse(%+v)", *p) - -} - -type AddImagePointTimeRequest struct { - PictureID int64 `thrift:"picture_id,1,required" form:"picture_id,required" json:"picture_id,required" query:"picture_id,required"` -} - -func NewAddImagePointTimeRequest() *AddImagePointTimeRequest { - return &AddImagePointTimeRequest{} -} - -func (p *AddImagePointTimeRequest) InitDefault() { -} - -func (p *AddImagePointTimeRequest) GetPictureID() (v int64) { - return p.PictureID -} - -var fieldIDToName_AddImagePointTimeRequest = map[int16]string{ - 1: "picture_id", -} - -func (p *AddImagePointTimeRequest) Read(iprot thrift.TProtocol) (err error) { - - var fieldTypeId thrift.TType - var fieldId int16 - var issetPictureID bool = false - - 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.I64 { - if err = p.ReadField1(iprot); err != nil { - goto ReadFieldError - } - issetPictureID = true - } 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 - } - - if !issetPictureID { - fieldId = 1 - goto RequiredFieldNotSetError - } - 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_AddImagePointTimeRequest[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) -RequiredFieldNotSetError: - return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_AddImagePointTimeRequest[fieldId])) -} - -func (p *AddImagePointTimeRequest) ReadField1(iprot thrift.TProtocol) error { - - var _field int64 - if v, err := iprot.ReadI64(); err != nil { - return err - } else { - _field = v - } - p.PictureID = _field - return nil -} - -func (p *AddImagePointTimeRequest) Write(oprot thrift.TProtocol) (err error) { - var fieldId int16 - if err = oprot.WriteStructBegin("AddImagePointTimeRequest"); 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 *AddImagePointTimeRequest) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("picture_id", thrift.I64, 1); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(p.PictureID); 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 *AddImagePointTimeRequest) String() string { - if p == nil { - return "" - } - return fmt.Sprintf("AddImagePointTimeRequest(%+v)", *p) - -} - -type AddImagePointTimeResponse struct { - Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` - Picture *model.Picture `thrift:"picture,2,optional" form:"picture" json:"picture,omitempty" query:"picture"` -} - -func NewAddImagePointTimeResponse() *AddImagePointTimeResponse { - return &AddImagePointTimeResponse{} -} - -func (p *AddImagePointTimeResponse) InitDefault() { -} - -var AddImagePointTimeResponse_Base_DEFAULT *model.BaseResp - -func (p *AddImagePointTimeResponse) GetBase() (v *model.BaseResp) { - if !p.IsSetBase() { - return AddImagePointTimeResponse_Base_DEFAULT - } - return p.Base -} - -var AddImagePointTimeResponse_Picture_DEFAULT *model.Picture - -func (p *AddImagePointTimeResponse) GetPicture() (v *model.Picture) { - if !p.IsSetPicture() { - return AddImagePointTimeResponse_Picture_DEFAULT - } - return p.Picture -} - -var fieldIDToName_AddImagePointTimeResponse = map[int16]string{ - 1: "base", - 2: "picture", -} - -func (p *AddImagePointTimeResponse) IsSetBase() bool { - return p.Base != nil -} - -func (p *AddImagePointTimeResponse) IsSetPicture() bool { - return p.Picture != nil -} - -func (p *AddImagePointTimeResponse) 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 - } - case 2: - if fieldTypeId == thrift.STRUCT { - 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_AddImagePointTimeResponse[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 *AddImagePointTimeResponse) ReadField1(iprot thrift.TProtocol) error { - _field := model.NewBaseResp() - if err := _field.Read(iprot); err != nil { - return err - } - p.Base = _field - return nil -} -func (p *AddImagePointTimeResponse) ReadField2(iprot thrift.TProtocol) error { - _field := model.NewPicture() - if err := _field.Read(iprot); err != nil { - return err - } - p.Picture = _field - return nil -} - -func (p *AddImagePointTimeResponse) Write(oprot thrift.TProtocol) (err error) { - var fieldId int16 - if err = oprot.WriteStructBegin("AddImagePointTimeResponse"); 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 *AddImagePointTimeResponse) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { - goto WriteFieldBeginError - } - if err := p.Base.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 *AddImagePointTimeResponse) writeField2(oprot thrift.TProtocol) (err error) { - if p.IsSetPicture() { - if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { - goto WriteFieldBeginError - } - if err := p.Picture.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 2 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) -} - -func (p *AddImagePointTimeResponse) String() string { - if p == nil { - return "" - } - return fmt.Sprintf("AddImagePointTimeResponse(%+v)", *p) - -} - -type ClassRoomService interface { - GetEmptyClassrooms(ctx context.Context, request *EmptyClassroomRequest) (r *EmptyClassroomResponse, err error) -} - -type ClassRoomServiceClient struct { - c thrift.TClient -} - -func NewClassRoomServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *ClassRoomServiceClient { - return &ClassRoomServiceClient{ - c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), - } -} - -func NewClassRoomServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *ClassRoomServiceClient { - return &ClassRoomServiceClient{ - c: thrift.NewTStandardClient(iprot, oprot), - } -} - -func NewClassRoomServiceClient(c thrift.TClient) *ClassRoomServiceClient { - return &ClassRoomServiceClient{ - c: c, - } -} - -func (p *ClassRoomServiceClient) Client_() thrift.TClient { - return p.c -} - -func (p *ClassRoomServiceClient) GetEmptyClassrooms(ctx context.Context, request *EmptyClassroomRequest) (r *EmptyClassroomResponse, err error) { - var _args ClassRoomServiceGetEmptyClassroomsArgs - _args.Request = request - var _result ClassRoomServiceGetEmptyClassroomsResult - if err = p.Client_().Call(ctx, "GetEmptyClassrooms", &_args, &_result); err != nil { - return - } - return _result.GetSuccess(), nil -} - -type UserService interface { - GetLoginData(ctx context.Context, request *GetLoginDataRequest) (r *GetLoginDataResponse, err error) - - GetValidateCode(ctx context.Context, request *GetValidateCodeRequest) (r *GetValidateCodeResponse, err error) -} - -type UserServiceClient struct { - c thrift.TClient -} - -func NewUserServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *UserServiceClient { - return &UserServiceClient{ - c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), - } -} - -func NewUserServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *UserServiceClient { - return &UserServiceClient{ - c: thrift.NewTStandardClient(iprot, oprot), - } -} - -func NewUserServiceClient(c thrift.TClient) *UserServiceClient { - return &UserServiceClient{ - c: c, - } -} - -func (p *UserServiceClient) Client_() thrift.TClient { - return p.c -} - -func (p *UserServiceClient) GetLoginData(ctx context.Context, request *GetLoginDataRequest) (r *GetLoginDataResponse, err error) { - var _args UserServiceGetLoginDataArgs - _args.Request = request - var _result UserServiceGetLoginDataResult - if err = p.Client_().Call(ctx, "GetLoginData", &_args, &_result); err != nil { - return - } - return _result.GetSuccess(), nil -} -func (p *UserServiceClient) GetValidateCode(ctx context.Context, request *GetValidateCodeRequest) (r *GetValidateCodeResponse, err error) { - var _args UserServiceGetValidateCodeArgs - _args.Request = request - var _result UserServiceGetValidateCodeResult - if err = p.Client_().Call(ctx, "GetValidateCode", &_args, &_result); err != nil { - return - } - return _result.GetSuccess(), nil -} - -type LaunchScreenService interface { - CreateImage(ctx context.Context, req *CreateImageRequest) (r *CreateImageResponse, err error) - - GetImage(ctx context.Context, req *GetImageRequest) (r *GetImageResponse, err error) - - ChangeImageProperty(ctx context.Context, req *ChangeImagePropertyRequest) (r *ChangeImagePropertyResponse, err error) - - ChangeImage(ctx context.Context, req *ChangeImageRequest) (r *ChangeImageResponse, err error) - - DeleteImage(ctx context.Context, req *DeleteImageRequest) (r *DeleteImageResponse, err error) - - MobileGetImage(ctx context.Context, req *MobileGetImageRequest) (r *MobileGetImageResponse, err error) - - AddImagePointTime(ctx context.Context, req *AddImagePointTimeRequest) (r *AddImagePointTimeResponse, err error) -} - -type LaunchScreenServiceClient struct { - c thrift.TClient -} - -func NewLaunchScreenServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *LaunchScreenServiceClient { - return &LaunchScreenServiceClient{ - c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), - } -} - -func NewLaunchScreenServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *LaunchScreenServiceClient { - return &LaunchScreenServiceClient{ - c: thrift.NewTStandardClient(iprot, oprot), - } -} - -func NewLaunchScreenServiceClient(c thrift.TClient) *LaunchScreenServiceClient { - return &LaunchScreenServiceClient{ - c: c, - } -} - -func (p *LaunchScreenServiceClient) Client_() thrift.TClient { - return p.c -} - -func (p *LaunchScreenServiceClient) CreateImage(ctx context.Context, req *CreateImageRequest) (r *CreateImageResponse, err error) { - var _args LaunchScreenServiceCreateImageArgs - _args.Req = req - var _result LaunchScreenServiceCreateImageResult - if err = p.Client_().Call(ctx, "CreateImage", &_args, &_result); err != nil { - return - } - return _result.GetSuccess(), nil -} -func (p *LaunchScreenServiceClient) GetImage(ctx context.Context, req *GetImageRequest) (r *GetImageResponse, err error) { - var _args LaunchScreenServiceGetImageArgs - _args.Req = req - var _result LaunchScreenServiceGetImageResult - if err = p.Client_().Call(ctx, "GetImage", &_args, &_result); err != nil { - return - } - return _result.GetSuccess(), nil -} -func (p *LaunchScreenServiceClient) ChangeImageProperty(ctx context.Context, req *ChangeImagePropertyRequest) (r *ChangeImagePropertyResponse, err error) { - var _args LaunchScreenServiceChangeImagePropertyArgs - _args.Req = req - var _result LaunchScreenServiceChangeImagePropertyResult - if err = p.Client_().Call(ctx, "ChangeImageProperty", &_args, &_result); err != nil { - return - } - return _result.GetSuccess(), nil -} -func (p *LaunchScreenServiceClient) ChangeImage(ctx context.Context, req *ChangeImageRequest) (r *ChangeImageResponse, err error) { - var _args LaunchScreenServiceChangeImageArgs - _args.Req = req - var _result LaunchScreenServiceChangeImageResult - if err = p.Client_().Call(ctx, "ChangeImage", &_args, &_result); err != nil { - return - } - return _result.GetSuccess(), nil -} -func (p *LaunchScreenServiceClient) DeleteImage(ctx context.Context, req *DeleteImageRequest) (r *DeleteImageResponse, err error) { - var _args LaunchScreenServiceDeleteImageArgs - _args.Req = req - var _result LaunchScreenServiceDeleteImageResult - if err = p.Client_().Call(ctx, "DeleteImage", &_args, &_result); err != nil { - return - } - return _result.GetSuccess(), nil -} -func (p *LaunchScreenServiceClient) MobileGetImage(ctx context.Context, req *MobileGetImageRequest) (r *MobileGetImageResponse, err error) { - var _args LaunchScreenServiceMobileGetImageArgs - _args.Req = req - var _result LaunchScreenServiceMobileGetImageResult - if err = p.Client_().Call(ctx, "MobileGetImage", &_args, &_result); err != nil { - return - } - return _result.GetSuccess(), nil -} -func (p *LaunchScreenServiceClient) AddImagePointTime(ctx context.Context, req *AddImagePointTimeRequest) (r *AddImagePointTimeResponse, err error) { - var _args LaunchScreenServiceAddImagePointTimeArgs - _args.Req = req - var _result LaunchScreenServiceAddImagePointTimeResult - if err = p.Client_().Call(ctx, "AddImagePointTime", &_args, &_result); err != nil { - return - } - return _result.GetSuccess(), nil -} - -type ClassRoomServiceProcessor struct { - processorMap map[string]thrift.TProcessorFunction - handler ClassRoomService -} - -func (p *ClassRoomServiceProcessor) AddToProcessorMap(key string, processor thrift.TProcessorFunction) { - p.processorMap[key] = processor -} - -func (p *ClassRoomServiceProcessor) GetProcessorFunction(key string) (processor thrift.TProcessorFunction, ok bool) { - processor, ok = p.processorMap[key] - return processor, ok -} - -func (p *ClassRoomServiceProcessor) ProcessorMap() map[string]thrift.TProcessorFunction { - return p.processorMap -} - -func NewClassRoomServiceProcessor(handler ClassRoomService) *ClassRoomServiceProcessor { - self := &ClassRoomServiceProcessor{handler: handler, processorMap: make(map[string]thrift.TProcessorFunction)} - self.AddToProcessorMap("GetEmptyClassrooms", &classRoomServiceProcessorGetEmptyClassrooms{handler: handler}) - return self -} -func (p *ClassRoomServiceProcessor) Process(ctx context.Context, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { - name, _, seqId, err := iprot.ReadMessageBegin() - if err != nil { - return false, err - } - if processor, ok := p.GetProcessorFunction(name); ok { - return processor.Process(ctx, seqId, iprot, oprot) - } - iprot.Skip(thrift.STRUCT) - iprot.ReadMessageEnd() - x := thrift.NewTApplicationException(thrift.UNKNOWN_METHOD, "Unknown function "+name) - oprot.WriteMessageBegin(name, thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return false, x + return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_AddImagePointTimeRequest[fieldId])) } -type classRoomServiceProcessorGetEmptyClassrooms struct { - handler ClassRoomService -} +func (p *AddImagePointTimeRequest) ReadField1(iprot thrift.TProtocol) error { -func (p *classRoomServiceProcessorGetEmptyClassrooms) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { - args := ClassRoomServiceGetEmptyClassroomsArgs{} - if err = args.Read(iprot); err != nil { - iprot.ReadMessageEnd() - x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) - oprot.WriteMessageBegin("GetEmptyClassrooms", thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return false, err + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v } + p.PictureID = _field + return nil +} - iprot.ReadMessageEnd() - var err2 error - result := ClassRoomServiceGetEmptyClassroomsResult{} - var retval *EmptyClassroomResponse - if retval, err2 = p.handler.GetEmptyClassrooms(ctx, args.Request); err2 != nil { - x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetEmptyClassrooms: "+err2.Error()) - oprot.WriteMessageBegin("GetEmptyClassrooms", thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return true, err2 - } else { - result.Success = retval +func (p *AddImagePointTimeRequest) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("AddImagePointTimeRequest"); err != nil { + goto WriteStructBeginError } - if err2 = oprot.WriteMessageBegin("GetEmptyClassrooms", thrift.REPLY, seqId); err2 != nil { - err = err2 + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } } - if err2 = result.Write(oprot); err == nil && err2 != nil { - err = err2 + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError } - if err2 = oprot.WriteMessageEnd(); err == nil && err2 != nil { - err = err2 + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError } - if err2 = oprot.Flush(ctx); err == nil && err2 != nil { - err = err2 + 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 *AddImagePointTimeRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("picture_id", thrift.I64, 1); err != nil { + goto WriteFieldBeginError } - if err != nil { - return + if err := oprot.WriteI64(p.PictureID); err != nil { + return err } - return true, 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) } -type ClassRoomServiceGetEmptyClassroomsArgs struct { - Request *EmptyClassroomRequest `thrift:"request,1"` +func (p *AddImagePointTimeRequest) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("AddImagePointTimeRequest(%+v)", *p) + } -func NewClassRoomServiceGetEmptyClassroomsArgs() *ClassRoomServiceGetEmptyClassroomsArgs { - return &ClassRoomServiceGetEmptyClassroomsArgs{} +type AddImagePointTimeResponse struct { + Base *model.BaseResp `thrift:"base,1" form:"base" json:"base" query:"base"` + Picture *model.Picture `thrift:"picture,2,optional" form:"picture" json:"picture,omitempty" query:"picture"` } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) InitDefault() { +func NewAddImagePointTimeResponse() *AddImagePointTimeResponse { + return &AddImagePointTimeResponse{} } -var ClassRoomServiceGetEmptyClassroomsArgs_Request_DEFAULT *EmptyClassroomRequest +func (p *AddImagePointTimeResponse) InitDefault() { +} -func (p *ClassRoomServiceGetEmptyClassroomsArgs) GetRequest() (v *EmptyClassroomRequest) { - if !p.IsSetRequest() { - return ClassRoomServiceGetEmptyClassroomsArgs_Request_DEFAULT +var AddImagePointTimeResponse_Base_DEFAULT *model.BaseResp + +func (p *AddImagePointTimeResponse) GetBase() (v *model.BaseResp) { + if !p.IsSetBase() { + return AddImagePointTimeResponse_Base_DEFAULT } - return p.Request + return p.Base } -var fieldIDToName_ClassRoomServiceGetEmptyClassroomsArgs = map[int16]string{ - 1: "request", +var AddImagePointTimeResponse_Picture_DEFAULT *model.Picture + +func (p *AddImagePointTimeResponse) GetPicture() (v *model.Picture) { + if !p.IsSetPicture() { + return AddImagePointTimeResponse_Picture_DEFAULT + } + return p.Picture } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) IsSetRequest() bool { - return p.Request != nil +var fieldIDToName_AddImagePointTimeResponse = map[int16]string{ + 1: "base", + 2: "picture", } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) Read(iprot thrift.TProtocol) (err error) { +func (p *AddImagePointTimeResponse) IsSetBase() bool { + return p.Base != nil +} + +func (p *AddImagePointTimeResponse) IsSetPicture() bool { + return p.Picture != nil +} + +func (p *AddImagePointTimeResponse) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -5524,6 +4702,14 @@ func (p *ClassRoomServiceGetEmptyClassroomsArgs) Read(iprot thrift.TProtocol) (e } else if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } + case 2: + if fieldTypeId == thrift.STRUCT { + 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 @@ -5543,7 +4729,7 @@ ReadStructBeginError: 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_ClassRoomServiceGetEmptyClassroomsArgs[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_AddImagePointTimeResponse[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -5553,18 +4739,26 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) ReadField1(iprot thrift.TProtocol) error { - _field := NewEmptyClassroomRequest() +func (p *AddImagePointTimeResponse) ReadField1(iprot thrift.TProtocol) error { + _field := model.NewBaseResp() if err := _field.Read(iprot); err != nil { return err } - p.Request = _field + p.Base = _field + return nil +} +func (p *AddImagePointTimeResponse) ReadField2(iprot thrift.TProtocol) error { + _field := model.NewPicture() + if err := _field.Read(iprot); err != nil { + return err + } + p.Picture = _field return nil } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) Write(oprot thrift.TProtocol) (err error) { +func (p *AddImagePointTimeResponse) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetEmptyClassrooms_args"); err != nil { + if err = oprot.WriteStructBegin("AddImagePointTimeResponse"); err != nil { goto WriteStructBeginError } if p != nil { @@ -5572,6 +4766,10 @@ func (p *ClassRoomServiceGetEmptyClassroomsArgs) Write(oprot thrift.TProtocol) ( fieldId = 1 goto WriteFieldError } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } } if err = oprot.WriteFieldStop(); err != nil { goto WriteFieldStopError @@ -5590,11 +4788,11 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("request", thrift.STRUCT, 1); err != nil { +func (p *AddImagePointTimeResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { goto WriteFieldBeginError } - if err := p.Request.Write(oprot); err != nil { + if err := p.Base.Write(oprot); err != nil { return err } if err = oprot.WriteFieldEnd(); err != nil { @@ -5607,262 +4805,270 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *ClassRoomServiceGetEmptyClassroomsArgs) String() string { +func (p *AddImagePointTimeResponse) writeField2(oprot thrift.TProtocol) (err error) { + if p.IsSetPicture() { + if err = oprot.WriteFieldBegin("picture", thrift.STRUCT, 2); err != nil { + goto WriteFieldBeginError + } + if err := p.Picture.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 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *AddImagePointTimeResponse) String() string { if p == nil { return "" } - return fmt.Sprintf("ClassRoomServiceGetEmptyClassroomsArgs(%+v)", *p) + return fmt.Sprintf("AddImagePointTimeResponse(%+v)", *p) } -type ClassRoomServiceGetEmptyClassroomsResult struct { - Success *EmptyClassroomResponse `thrift:"success,0,optional"` +type ClassRoomService interface { + GetEmptyClassrooms(ctx context.Context, request *EmptyClassroomRequest) (r *EmptyClassroomResponse, err error) +} + +type ClassRoomServiceClient struct { + c thrift.TClient +} + +func NewClassRoomServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *ClassRoomServiceClient { + return &ClassRoomServiceClient{ + c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), + } +} + +func NewClassRoomServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *ClassRoomServiceClient { + return &ClassRoomServiceClient{ + c: thrift.NewTStandardClient(iprot, oprot), + } +} + +func NewClassRoomServiceClient(c thrift.TClient) *ClassRoomServiceClient { + return &ClassRoomServiceClient{ + c: c, + } +} + +func (p *ClassRoomServiceClient) Client_() thrift.TClient { + return p.c +} + +func (p *ClassRoomServiceClient) GetEmptyClassrooms(ctx context.Context, request *EmptyClassroomRequest) (r *EmptyClassroomResponse, err error) { + var _args ClassRoomServiceGetEmptyClassroomsArgs + _args.Request = request + var _result ClassRoomServiceGetEmptyClassroomsResult + if err = p.Client_().Call(ctx, "GetEmptyClassrooms", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} + +type UserService interface { + GetLoginData(ctx context.Context, request *GetLoginDataRequest) (r *GetLoginDataResponse, err error) +} + +type UserServiceClient struct { + c thrift.TClient +} + +func NewUserServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *UserServiceClient { + return &UserServiceClient{ + c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), + } +} + +func NewUserServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *UserServiceClient { + return &UserServiceClient{ + c: thrift.NewTStandardClient(iprot, oprot), + } } -func NewClassRoomServiceGetEmptyClassroomsResult() *ClassRoomServiceGetEmptyClassroomsResult { - return &ClassRoomServiceGetEmptyClassroomsResult{} +func NewUserServiceClient(c thrift.TClient) *UserServiceClient { + return &UserServiceClient{ + c: c, + } } -func (p *ClassRoomServiceGetEmptyClassroomsResult) InitDefault() { +func (p *UserServiceClient) Client_() thrift.TClient { + return p.c } -var ClassRoomServiceGetEmptyClassroomsResult_Success_DEFAULT *EmptyClassroomResponse - -func (p *ClassRoomServiceGetEmptyClassroomsResult) GetSuccess() (v *EmptyClassroomResponse) { - if !p.IsSetSuccess() { - return ClassRoomServiceGetEmptyClassroomsResult_Success_DEFAULT +func (p *UserServiceClient) GetLoginData(ctx context.Context, request *GetLoginDataRequest) (r *GetLoginDataResponse, err error) { + var _args UserServiceGetLoginDataArgs + _args.Request = request + var _result UserServiceGetLoginDataResult + if err = p.Client_().Call(ctx, "GetLoginData", &_args, &_result); err != nil { + return } - return p.Success + return _result.GetSuccess(), nil } -var fieldIDToName_ClassRoomServiceGetEmptyClassroomsResult = map[int16]string{ - 0: "success", -} +type LaunchScreenService interface { + CreateImage(ctx context.Context, req *CreateImageRequest) (r *CreateImageResponse, err error) -func (p *ClassRoomServiceGetEmptyClassroomsResult) IsSetSuccess() bool { - return p.Success != nil -} + GetImage(ctx context.Context, req *GetImageRequest) (r *GetImageResponse, err error) -func (p *ClassRoomServiceGetEmptyClassroomsResult) Read(iprot thrift.TProtocol) (err error) { + ChangeImageProperty(ctx context.Context, req *ChangeImagePropertyRequest) (r *ChangeImagePropertyResponse, err error) - var fieldTypeId thrift.TType - var fieldId int16 + ChangeImage(ctx context.Context, req *ChangeImageRequest) (r *ChangeImageResponse, err error) - if _, err = iprot.ReadStructBegin(); err != nil { - goto ReadStructBeginError - } + DeleteImage(ctx context.Context, req *DeleteImageRequest) (r *DeleteImageResponse, err error) - for { - _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() - if err != nil { - goto ReadFieldBeginError - } - if fieldTypeId == thrift.STOP { - break - } + MobileGetImage(ctx context.Context, req *MobileGetImageRequest) (r *MobileGetImageResponse, err error) - 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 - } + AddImagePointTime(ctx context.Context, req *AddImagePointTimeRequest) (r *AddImagePointTimeResponse, err error) +} + +type LaunchScreenServiceClient struct { + c thrift.TClient +} + +func NewLaunchScreenServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *LaunchScreenServiceClient { + return &LaunchScreenServiceClient{ + c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), } - if err = iprot.ReadStructEnd(); err != nil { - goto ReadStructEndError +} + +func NewLaunchScreenServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *LaunchScreenServiceClient { + return &LaunchScreenServiceClient{ + c: thrift.NewTStandardClient(iprot, oprot), } +} - 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_ClassRoomServiceGetEmptyClassroomsResult[fieldId]), err) -SkipFieldError: - return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +func NewLaunchScreenServiceClient(c thrift.TClient) *LaunchScreenServiceClient { + return &LaunchScreenServiceClient{ + c: c, + } +} -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 *LaunchScreenServiceClient) Client_() thrift.TClient { + return p.c } -func (p *ClassRoomServiceGetEmptyClassroomsResult) ReadField0(iprot thrift.TProtocol) error { - _field := NewEmptyClassroomResponse() - if err := _field.Read(iprot); err != nil { - return err +func (p *LaunchScreenServiceClient) CreateImage(ctx context.Context, req *CreateImageRequest) (r *CreateImageResponse, err error) { + var _args LaunchScreenServiceCreateImageArgs + _args.Req = req + var _result LaunchScreenServiceCreateImageResult + if err = p.Client_().Call(ctx, "CreateImage", &_args, &_result); err != nil { + return } - p.Success = _field - return nil + return _result.GetSuccess(), nil } - -func (p *ClassRoomServiceGetEmptyClassroomsResult) Write(oprot thrift.TProtocol) (err error) { - var fieldId int16 - if err = oprot.WriteStructBegin("GetEmptyClassrooms_result"); err != nil { - goto WriteStructBeginError +func (p *LaunchScreenServiceClient) GetImage(ctx context.Context, req *GetImageRequest) (r *GetImageResponse, err error) { + var _args LaunchScreenServiceGetImageArgs + _args.Req = req + var _result LaunchScreenServiceGetImageResult + if err = p.Client_().Call(ctx, "GetImage", &_args, &_result); err != nil { + return } - if p != nil { - if err = p.writeField0(oprot); err != nil { - fieldId = 0 - goto WriteFieldError - } + return _result.GetSuccess(), nil +} +func (p *LaunchScreenServiceClient) ChangeImageProperty(ctx context.Context, req *ChangeImagePropertyRequest) (r *ChangeImagePropertyResponse, err error) { + var _args LaunchScreenServiceChangeImagePropertyArgs + _args.Req = req + var _result LaunchScreenServiceChangeImagePropertyResult + if err = p.Client_().Call(ctx, "ChangeImageProperty", &_args, &_result); err != nil { + return } - if err = oprot.WriteFieldStop(); err != nil { - goto WriteFieldStopError + return _result.GetSuccess(), nil +} +func (p *LaunchScreenServiceClient) ChangeImage(ctx context.Context, req *ChangeImageRequest) (r *ChangeImageResponse, err error) { + var _args LaunchScreenServiceChangeImageArgs + _args.Req = req + var _result LaunchScreenServiceChangeImageResult + if err = p.Client_().Call(ctx, "ChangeImage", &_args, &_result); err != nil { + return } - if err = oprot.WriteStructEnd(); err != nil { - goto WriteStructEndError + return _result.GetSuccess(), nil +} +func (p *LaunchScreenServiceClient) DeleteImage(ctx context.Context, req *DeleteImageRequest) (r *DeleteImageResponse, err error) { + var _args LaunchScreenServiceDeleteImageArgs + _args.Req = req + var _result LaunchScreenServiceDeleteImageResult + if err = p.Client_().Call(ctx, "DeleteImage", &_args, &_result); err != nil { + return } - 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) + return _result.GetSuccess(), nil } - -func (p *ClassRoomServiceGetEmptyClassroomsResult) 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 - } +func (p *LaunchScreenServiceClient) MobileGetImage(ctx context.Context, req *MobileGetImageRequest) (r *MobileGetImageResponse, err error) { + var _args LaunchScreenServiceMobileGetImageArgs + _args.Req = req + var _result LaunchScreenServiceMobileGetImageResult + if err = p.Client_().Call(ctx, "MobileGetImage", &_args, &_result); err != nil { + return } - 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) + return _result.GetSuccess(), nil } - -func (p *ClassRoomServiceGetEmptyClassroomsResult) String() string { - if p == nil { - return "" +func (p *LaunchScreenServiceClient) AddImagePointTime(ctx context.Context, req *AddImagePointTimeRequest) (r *AddImagePointTimeResponse, err error) { + var _args LaunchScreenServiceAddImagePointTimeArgs + _args.Req = req + var _result LaunchScreenServiceAddImagePointTimeResult + if err = p.Client_().Call(ctx, "AddImagePointTime", &_args, &_result); err != nil { + return } - return fmt.Sprintf("ClassRoomServiceGetEmptyClassroomsResult(%+v)", *p) - + return _result.GetSuccess(), nil } -type UserServiceProcessor struct { +type ClassRoomServiceProcessor struct { processorMap map[string]thrift.TProcessorFunction - handler UserService + handler ClassRoomService } -func (p *UserServiceProcessor) AddToProcessorMap(key string, processor thrift.TProcessorFunction) { +func (p *ClassRoomServiceProcessor) AddToProcessorMap(key string, processor thrift.TProcessorFunction) { p.processorMap[key] = processor } -func (p *UserServiceProcessor) GetProcessorFunction(key string) (processor thrift.TProcessorFunction, ok bool) { +func (p *ClassRoomServiceProcessor) GetProcessorFunction(key string) (processor thrift.TProcessorFunction, ok bool) { processor, ok = p.processorMap[key] return processor, ok } -func (p *UserServiceProcessor) ProcessorMap() map[string]thrift.TProcessorFunction { +func (p *ClassRoomServiceProcessor) ProcessorMap() map[string]thrift.TProcessorFunction { return p.processorMap } -func NewUserServiceProcessor(handler UserService) *UserServiceProcessor { - self := &UserServiceProcessor{handler: handler, processorMap: make(map[string]thrift.TProcessorFunction)} - self.AddToProcessorMap("GetLoginData", &userServiceProcessorGetLoginData{handler: handler}) - self.AddToProcessorMap("GetValidateCode", &userServiceProcessorGetValidateCode{handler: handler}) +func NewClassRoomServiceProcessor(handler ClassRoomService) *ClassRoomServiceProcessor { + self := &ClassRoomServiceProcessor{handler: handler, processorMap: make(map[string]thrift.TProcessorFunction)} + self.AddToProcessorMap("GetEmptyClassrooms", &classRoomServiceProcessorGetEmptyClassrooms{handler: handler}) return self } -func (p *UserServiceProcessor) Process(ctx context.Context, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { +func (p *ClassRoomServiceProcessor) Process(ctx context.Context, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { name, _, seqId, err := iprot.ReadMessageBegin() - if err != nil { - return false, err - } - if processor, ok := p.GetProcessorFunction(name); ok { - return processor.Process(ctx, seqId, iprot, oprot) - } - iprot.Skip(thrift.STRUCT) - iprot.ReadMessageEnd() - x := thrift.NewTApplicationException(thrift.UNKNOWN_METHOD, "Unknown function "+name) - oprot.WriteMessageBegin(name, thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return false, x -} - -type userServiceProcessorGetLoginData struct { - handler UserService -} - -func (p *userServiceProcessorGetLoginData) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { - args := UserServiceGetLoginDataArgs{} - if err = args.Read(iprot); err != nil { - iprot.ReadMessageEnd() - x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) - oprot.WriteMessageBegin("GetLoginData", thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) + if err != nil { return false, err } - - iprot.ReadMessageEnd() - var err2 error - result := UserServiceGetLoginDataResult{} - var retval *GetLoginDataResponse - if retval, err2 = p.handler.GetLoginData(ctx, args.Request); err2 != nil { - x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetLoginData: "+err2.Error()) - oprot.WriteMessageBegin("GetLoginData", thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return true, err2 - } else { - result.Success = retval - } - if err2 = oprot.WriteMessageBegin("GetLoginData", 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 + if processor, ok := p.GetProcessorFunction(name); ok { + return processor.Process(ctx, seqId, iprot, oprot) } - return true, err + iprot.Skip(thrift.STRUCT) + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.UNKNOWN_METHOD, "Unknown function "+name) + oprot.WriteMessageBegin(name, thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, x } -type userServiceProcessorGetValidateCode struct { - handler UserService +type classRoomServiceProcessorGetEmptyClassrooms struct { + handler ClassRoomService } -func (p *userServiceProcessorGetValidateCode) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { - args := UserServiceGetValidateCodeArgs{} +func (p *classRoomServiceProcessorGetEmptyClassrooms) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := ClassRoomServiceGetEmptyClassroomsArgs{} if err = args.Read(iprot); err != nil { iprot.ReadMessageEnd() x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) - oprot.WriteMessageBegin("GetValidateCode", thrift.EXCEPTION, seqId) + oprot.WriteMessageBegin("GetEmptyClassrooms", thrift.EXCEPTION, seqId) x.Write(oprot) oprot.WriteMessageEnd() oprot.Flush(ctx) @@ -5871,11 +5077,11 @@ func (p *userServiceProcessorGetValidateCode) Process(ctx context.Context, seqId iprot.ReadMessageEnd() var err2 error - result := UserServiceGetValidateCodeResult{} - var retval *GetValidateCodeResponse - if retval, err2 = p.handler.GetValidateCode(ctx, args.Request); err2 != nil { - x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetValidateCode: "+err2.Error()) - oprot.WriteMessageBegin("GetValidateCode", thrift.EXCEPTION, seqId) + result := ClassRoomServiceGetEmptyClassroomsResult{} + var retval *EmptyClassroomResponse + if retval, err2 = p.handler.GetEmptyClassrooms(ctx, args.Request); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetEmptyClassrooms: "+err2.Error()) + oprot.WriteMessageBegin("GetEmptyClassrooms", thrift.EXCEPTION, seqId) x.Write(oprot) oprot.WriteMessageEnd() oprot.Flush(ctx) @@ -5883,7 +5089,7 @@ func (p *userServiceProcessorGetValidateCode) Process(ctx context.Context, seqId } else { result.Success = retval } - if err2 = oprot.WriteMessageBegin("GetValidateCode", thrift.REPLY, seqId); err2 != nil { + if err2 = oprot.WriteMessageBegin("GetEmptyClassrooms", thrift.REPLY, seqId); err2 != nil { err = err2 } if err2 = result.Write(oprot); err == nil && err2 != nil { @@ -5901,35 +5107,35 @@ func (p *userServiceProcessorGetValidateCode) Process(ctx context.Context, seqId return true, err } -type UserServiceGetLoginDataArgs struct { - Request *GetLoginDataRequest `thrift:"request,1"` +type ClassRoomServiceGetEmptyClassroomsArgs struct { + Request *EmptyClassroomRequest `thrift:"request,1"` } -func NewUserServiceGetLoginDataArgs() *UserServiceGetLoginDataArgs { - return &UserServiceGetLoginDataArgs{} +func NewClassRoomServiceGetEmptyClassroomsArgs() *ClassRoomServiceGetEmptyClassroomsArgs { + return &ClassRoomServiceGetEmptyClassroomsArgs{} } -func (p *UserServiceGetLoginDataArgs) InitDefault() { +func (p *ClassRoomServiceGetEmptyClassroomsArgs) InitDefault() { } -var UserServiceGetLoginDataArgs_Request_DEFAULT *GetLoginDataRequest +var ClassRoomServiceGetEmptyClassroomsArgs_Request_DEFAULT *EmptyClassroomRequest -func (p *UserServiceGetLoginDataArgs) GetRequest() (v *GetLoginDataRequest) { +func (p *ClassRoomServiceGetEmptyClassroomsArgs) GetRequest() (v *EmptyClassroomRequest) { if !p.IsSetRequest() { - return UserServiceGetLoginDataArgs_Request_DEFAULT + return ClassRoomServiceGetEmptyClassroomsArgs_Request_DEFAULT } return p.Request } -var fieldIDToName_UserServiceGetLoginDataArgs = map[int16]string{ +var fieldIDToName_ClassRoomServiceGetEmptyClassroomsArgs = map[int16]string{ 1: "request", } -func (p *UserServiceGetLoginDataArgs) IsSetRequest() bool { +func (p *ClassRoomServiceGetEmptyClassroomsArgs) IsSetRequest() bool { return p.Request != nil } -func (p *UserServiceGetLoginDataArgs) Read(iprot thrift.TProtocol) (err error) { +func (p *ClassRoomServiceGetEmptyClassroomsArgs) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -5975,7 +5181,7 @@ ReadStructBeginError: 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_UserServiceGetLoginDataArgs[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_ClassRoomServiceGetEmptyClassroomsArgs[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -5985,8 +5191,8 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *UserServiceGetLoginDataArgs) ReadField1(iprot thrift.TProtocol) error { - _field := NewGetLoginDataRequest() +func (p *ClassRoomServiceGetEmptyClassroomsArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewEmptyClassroomRequest() if err := _field.Read(iprot); err != nil { return err } @@ -5994,9 +5200,9 @@ func (p *UserServiceGetLoginDataArgs) ReadField1(iprot thrift.TProtocol) error { return nil } -func (p *UserServiceGetLoginDataArgs) Write(oprot thrift.TProtocol) (err error) { +func (p *ClassRoomServiceGetEmptyClassroomsArgs) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetLoginData_args"); err != nil { + if err = oprot.WriteStructBegin("GetEmptyClassrooms_args"); err != nil { goto WriteStructBeginError } if p != nil { @@ -6022,7 +5228,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *UserServiceGetLoginDataArgs) writeField1(oprot thrift.TProtocol) (err error) { +func (p *ClassRoomServiceGetEmptyClassroomsArgs) writeField1(oprot thrift.TProtocol) (err error) { if err = oprot.WriteFieldBegin("request", thrift.STRUCT, 1); err != nil { goto WriteFieldBeginError } @@ -6039,43 +5245,43 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *UserServiceGetLoginDataArgs) String() string { +func (p *ClassRoomServiceGetEmptyClassroomsArgs) String() string { if p == nil { return "" } - return fmt.Sprintf("UserServiceGetLoginDataArgs(%+v)", *p) + return fmt.Sprintf("ClassRoomServiceGetEmptyClassroomsArgs(%+v)", *p) } -type UserServiceGetLoginDataResult struct { - Success *GetLoginDataResponse `thrift:"success,0,optional"` +type ClassRoomServiceGetEmptyClassroomsResult struct { + Success *EmptyClassroomResponse `thrift:"success,0,optional"` } -func NewUserServiceGetLoginDataResult() *UserServiceGetLoginDataResult { - return &UserServiceGetLoginDataResult{} +func NewClassRoomServiceGetEmptyClassroomsResult() *ClassRoomServiceGetEmptyClassroomsResult { + return &ClassRoomServiceGetEmptyClassroomsResult{} } -func (p *UserServiceGetLoginDataResult) InitDefault() { +func (p *ClassRoomServiceGetEmptyClassroomsResult) InitDefault() { } -var UserServiceGetLoginDataResult_Success_DEFAULT *GetLoginDataResponse +var ClassRoomServiceGetEmptyClassroomsResult_Success_DEFAULT *EmptyClassroomResponse -func (p *UserServiceGetLoginDataResult) GetSuccess() (v *GetLoginDataResponse) { +func (p *ClassRoomServiceGetEmptyClassroomsResult) GetSuccess() (v *EmptyClassroomResponse) { if !p.IsSetSuccess() { - return UserServiceGetLoginDataResult_Success_DEFAULT + return ClassRoomServiceGetEmptyClassroomsResult_Success_DEFAULT } return p.Success } -var fieldIDToName_UserServiceGetLoginDataResult = map[int16]string{ +var fieldIDToName_ClassRoomServiceGetEmptyClassroomsResult = map[int16]string{ 0: "success", } -func (p *UserServiceGetLoginDataResult) IsSetSuccess() bool { +func (p *ClassRoomServiceGetEmptyClassroomsResult) IsSetSuccess() bool { return p.Success != nil } -func (p *UserServiceGetLoginDataResult) Read(iprot thrift.TProtocol) (err error) { +func (p *ClassRoomServiceGetEmptyClassroomsResult) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -6121,7 +5327,7 @@ ReadStructBeginError: 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_UserServiceGetLoginDataResult[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_ClassRoomServiceGetEmptyClassroomsResult[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -6131,8 +5337,8 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *UserServiceGetLoginDataResult) ReadField0(iprot thrift.TProtocol) error { - _field := NewGetLoginDataResponse() +func (p *ClassRoomServiceGetEmptyClassroomsResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewEmptyClassroomResponse() if err := _field.Read(iprot); err != nil { return err } @@ -6140,9 +5346,9 @@ func (p *UserServiceGetLoginDataResult) ReadField0(iprot thrift.TProtocol) error return nil } -func (p *UserServiceGetLoginDataResult) Write(oprot thrift.TProtocol) (err error) { +func (p *ClassRoomServiceGetEmptyClassroomsResult) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetLoginData_result"); err != nil { + if err = oprot.WriteStructBegin("GetEmptyClassrooms_result"); err != nil { goto WriteStructBeginError } if p != nil { @@ -6168,7 +5374,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *UserServiceGetLoginDataResult) writeField0(oprot thrift.TProtocol) (err error) { +func (p *ClassRoomServiceGetEmptyClassroomsResult) writeField0(oprot thrift.TProtocol) (err error) { if p.IsSetSuccess() { if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { goto WriteFieldBeginError @@ -6187,43 +5393,132 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) } -func (p *UserServiceGetLoginDataResult) String() string { +func (p *ClassRoomServiceGetEmptyClassroomsResult) String() string { if p == nil { return "" } - return fmt.Sprintf("UserServiceGetLoginDataResult(%+v)", *p) + return fmt.Sprintf("ClassRoomServiceGetEmptyClassroomsResult(%+v)", *p) + +} + +type UserServiceProcessor struct { + processorMap map[string]thrift.TProcessorFunction + handler UserService +} + +func (p *UserServiceProcessor) AddToProcessorMap(key string, processor thrift.TProcessorFunction) { + p.processorMap[key] = processor +} + +func (p *UserServiceProcessor) GetProcessorFunction(key string) (processor thrift.TProcessorFunction, ok bool) { + processor, ok = p.processorMap[key] + return processor, ok +} + +func (p *UserServiceProcessor) ProcessorMap() map[string]thrift.TProcessorFunction { + return p.processorMap +} + +func NewUserServiceProcessor(handler UserService) *UserServiceProcessor { + self := &UserServiceProcessor{handler: handler, processorMap: make(map[string]thrift.TProcessorFunction)} + self.AddToProcessorMap("GetLoginData", &userServiceProcessorGetLoginData{handler: handler}) + return self +} +func (p *UserServiceProcessor) Process(ctx context.Context, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + name, _, seqId, err := iprot.ReadMessageBegin() + if err != nil { + return false, err + } + if processor, ok := p.GetProcessorFunction(name); ok { + return processor.Process(ctx, seqId, iprot, oprot) + } + iprot.Skip(thrift.STRUCT) + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.UNKNOWN_METHOD, "Unknown function "+name) + oprot.WriteMessageBegin(name, thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, x +} + +type userServiceProcessorGetLoginData struct { + handler UserService +} +func (p *userServiceProcessorGetLoginData) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := UserServiceGetLoginDataArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("GetLoginData", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := UserServiceGetLoginDataResult{} + var retval *GetLoginDataResponse + if retval, err2 = p.handler.GetLoginData(ctx, args.Request); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetLoginData: "+err2.Error()) + oprot.WriteMessageBegin("GetLoginData", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("GetLoginData", 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 UserServiceGetValidateCodeArgs struct { - Request *GetValidateCodeRequest `thrift:"request,1"` +type UserServiceGetLoginDataArgs struct { + Request *GetLoginDataRequest `thrift:"request,1"` } -func NewUserServiceGetValidateCodeArgs() *UserServiceGetValidateCodeArgs { - return &UserServiceGetValidateCodeArgs{} +func NewUserServiceGetLoginDataArgs() *UserServiceGetLoginDataArgs { + return &UserServiceGetLoginDataArgs{} } -func (p *UserServiceGetValidateCodeArgs) InitDefault() { +func (p *UserServiceGetLoginDataArgs) InitDefault() { } -var UserServiceGetValidateCodeArgs_Request_DEFAULT *GetValidateCodeRequest +var UserServiceGetLoginDataArgs_Request_DEFAULT *GetLoginDataRequest -func (p *UserServiceGetValidateCodeArgs) GetRequest() (v *GetValidateCodeRequest) { +func (p *UserServiceGetLoginDataArgs) GetRequest() (v *GetLoginDataRequest) { if !p.IsSetRequest() { - return UserServiceGetValidateCodeArgs_Request_DEFAULT + return UserServiceGetLoginDataArgs_Request_DEFAULT } return p.Request } -var fieldIDToName_UserServiceGetValidateCodeArgs = map[int16]string{ +var fieldIDToName_UserServiceGetLoginDataArgs = map[int16]string{ 1: "request", } -func (p *UserServiceGetValidateCodeArgs) IsSetRequest() bool { +func (p *UserServiceGetLoginDataArgs) IsSetRequest() bool { return p.Request != nil } -func (p *UserServiceGetValidateCodeArgs) Read(iprot thrift.TProtocol) (err error) { +func (p *UserServiceGetLoginDataArgs) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -6269,7 +5564,7 @@ ReadStructBeginError: 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_UserServiceGetValidateCodeArgs[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceGetLoginDataArgs[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -6279,8 +5574,8 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *UserServiceGetValidateCodeArgs) ReadField1(iprot thrift.TProtocol) error { - _field := NewGetValidateCodeRequest() +func (p *UserServiceGetLoginDataArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewGetLoginDataRequest() if err := _field.Read(iprot); err != nil { return err } @@ -6288,9 +5583,9 @@ func (p *UserServiceGetValidateCodeArgs) ReadField1(iprot thrift.TProtocol) erro return nil } -func (p *UserServiceGetValidateCodeArgs) Write(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetLoginDataArgs) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetValidateCode_args"); err != nil { + if err = oprot.WriteStructBegin("GetLoginData_args"); err != nil { goto WriteStructBeginError } if p != nil { @@ -6316,7 +5611,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *UserServiceGetValidateCodeArgs) writeField1(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetLoginDataArgs) writeField1(oprot thrift.TProtocol) (err error) { if err = oprot.WriteFieldBegin("request", thrift.STRUCT, 1); err != nil { goto WriteFieldBeginError } @@ -6333,43 +5628,43 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *UserServiceGetValidateCodeArgs) String() string { +func (p *UserServiceGetLoginDataArgs) String() string { if p == nil { return "" } - return fmt.Sprintf("UserServiceGetValidateCodeArgs(%+v)", *p) + return fmt.Sprintf("UserServiceGetLoginDataArgs(%+v)", *p) } -type UserServiceGetValidateCodeResult struct { - Success *GetValidateCodeResponse `thrift:"success,0,optional"` +type UserServiceGetLoginDataResult struct { + Success *GetLoginDataResponse `thrift:"success,0,optional"` } -func NewUserServiceGetValidateCodeResult() *UserServiceGetValidateCodeResult { - return &UserServiceGetValidateCodeResult{} +func NewUserServiceGetLoginDataResult() *UserServiceGetLoginDataResult { + return &UserServiceGetLoginDataResult{} } -func (p *UserServiceGetValidateCodeResult) InitDefault() { +func (p *UserServiceGetLoginDataResult) InitDefault() { } -var UserServiceGetValidateCodeResult_Success_DEFAULT *GetValidateCodeResponse +var UserServiceGetLoginDataResult_Success_DEFAULT *GetLoginDataResponse -func (p *UserServiceGetValidateCodeResult) GetSuccess() (v *GetValidateCodeResponse) { +func (p *UserServiceGetLoginDataResult) GetSuccess() (v *GetLoginDataResponse) { if !p.IsSetSuccess() { - return UserServiceGetValidateCodeResult_Success_DEFAULT + return UserServiceGetLoginDataResult_Success_DEFAULT } return p.Success } -var fieldIDToName_UserServiceGetValidateCodeResult = map[int16]string{ +var fieldIDToName_UserServiceGetLoginDataResult = map[int16]string{ 0: "success", } -func (p *UserServiceGetValidateCodeResult) IsSetSuccess() bool { +func (p *UserServiceGetLoginDataResult) IsSetSuccess() bool { return p.Success != nil } -func (p *UserServiceGetValidateCodeResult) Read(iprot thrift.TProtocol) (err error) { +func (p *UserServiceGetLoginDataResult) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -6415,7 +5710,7 @@ ReadStructBeginError: 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_UserServiceGetValidateCodeResult[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceGetLoginDataResult[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -6425,8 +5720,8 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *UserServiceGetValidateCodeResult) ReadField0(iprot thrift.TProtocol) error { - _field := NewGetValidateCodeResponse() +func (p *UserServiceGetLoginDataResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewGetLoginDataResponse() if err := _field.Read(iprot); err != nil { return err } @@ -6434,9 +5729,9 @@ func (p *UserServiceGetValidateCodeResult) ReadField0(iprot thrift.TProtocol) er return nil } -func (p *UserServiceGetValidateCodeResult) Write(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetLoginDataResult) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetValidateCode_result"); err != nil { + if err = oprot.WriteStructBegin("GetLoginData_result"); err != nil { goto WriteStructBeginError } if p != nil { @@ -6462,7 +5757,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *UserServiceGetValidateCodeResult) writeField0(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetLoginDataResult) writeField0(oprot thrift.TProtocol) (err error) { if p.IsSetSuccess() { if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { goto WriteFieldBeginError @@ -6481,11 +5776,11 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) } -func (p *UserServiceGetValidateCodeResult) String() string { +func (p *UserServiceGetLoginDataResult) String() string { if p == nil { return "" } - return fmt.Sprintf("UserServiceGetValidateCodeResult(%+v)", *p) + return fmt.Sprintf("UserServiceGetLoginDataResult(%+v)", *p) } diff --git a/cmd/api/biz/router/api/api.go b/cmd/api/biz/router/api/api.go index e4519a3..e4b71e8 100644 --- a/cmd/api/biz/router/api/api.go +++ b/cmd/api/biz/router/api/api.go @@ -50,7 +50,6 @@ func Register(r *server.Hertz) { { _user := _jwch.Group("/user", _userMw()...) _user.GET("/login", append(_getlogindataMw(), api.GetLoginData)...) - _user.POST("/validateCode", append(_getvalidatecodeMw(), api.GetValidateCode)...) } } } diff --git a/cmd/api/biz/rpc/user.go b/cmd/api/biz/rpc/user.go index 29ef3b4..5977c8f 100644 --- a/cmd/api/biz/rpc/user.go +++ b/cmd/api/biz/rpc/user.go @@ -45,15 +45,3 @@ func GetLoginDataRPC(ctx context.Context, req *user.GetLoginDataRequest) (string } return resp.Id, resp.Cookies, nil } - -func GetInvalidateCodeRPC(ctx context.Context, req *user.GetValidateCodeRequest) (string, error) { - resp, err := userClient.GetValidateCode(ctx, req) - if err != nil { - logger.Errorf("GetInvalidateCodeRPC: RPC called failed: %v", err.Error()) - return "", errno.InternalServiceError.WithError(err) - } - if !utils.IsSuccess(resp.Base) { - return "", errno.BizError - } - return *resp.Code, nil -} diff --git a/cmd/user/handler.go b/cmd/user/handler.go index bfdde61..a510c37 100644 --- a/cmd/user/handler.go +++ b/cmd/user/handler.go @@ -19,8 +19,6 @@ package main import ( "context" - "github.com/west2-online/fzuhelper-server/pkg/logger" - "github.com/west2-online/fzuhelper-server/cmd/user/pack" "github.com/west2-online/fzuhelper-server/cmd/user/service" user "github.com/west2-online/fzuhelper-server/kitex_gen/user" @@ -43,17 +41,3 @@ func (s *UserServiceImpl) GetLoginData(ctx context.Context, req *user.GetLoginDa resp.Cookies = cookies return } - -// GetValidateCode implements the UserServiceImpl interface. -func (s *UserServiceImpl) GetValidateCode(ctx context.Context, req *user.GetValidateCodeRequest) (resp *user.GetValidateCodeResponse, err error) { - resp = new(user.GetValidateCodeResponse) - code, err := service.NewUserService(ctx, "", nil).GetValidateCode(req) - if err != nil { - resp.Base = pack.BuildBaseResp(err) - logger.Infof("User.GetValidateCode: %v", err) - return resp, nil - } - resp.Base = pack.BuildBaseResp(nil) - resp.Code = &code - return resp, nil -} diff --git a/cmd/user/service/get_validate_code.go b/cmd/user/service/get_validate_code.go deleted file mode 100644 index 9929bdc..0000000 --- a/cmd/user/service/get_validate_code.go +++ /dev/null @@ -1,26 +0,0 @@ -/* -Copyright 2024 The west2-online Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package service - -import ( - "github.com/west2-online/fzuhelper-server/kitex_gen/user" - "github.com/west2-online/jwch" -) - -func (s *UserService) GetValidateCode(req *user.GetValidateCodeRequest) (string, error) { - return jwch.GetValidateCode(req.Image) -} diff --git a/idl/api.thrift b/idl/api.thrift index 63cf304..7725be2 100644 --- a/idl/api.thrift +++ b/idl/api.thrift @@ -28,19 +28,8 @@ struct GetLoginDataResponse { 2: required list cookies } -struct GetValidateCodeRequest{ - 1:required string image, -} - -struct GetValidateCodeResponse{ - 1:model.BaseResp base, - 2:optional string code, -} - service UserService { GetLoginDataResponse GetLoginData(1: GetLoginDataRequest request)(api.get="/api/v1/jwch/user/login"), - GetValidateCodeResponse GetValidateCode(1: GetValidateCodeRequest request)(api.post="/api/v1/jwch/user/validateCode"), - } diff --git a/idl/user.thrift b/idl/user.thrift index 6fc5c31..ee3d9c5 100644 --- a/idl/user.thrift +++ b/idl/user.thrift @@ -13,17 +13,6 @@ struct GetLoginDataResponse { 3: required list cookies } -struct GetValidateCodeRequest{ - 1:required string image, -} - -struct GetValidateCodeResponse{ - 1:model.BaseResp base, - 2:optional string code, -} - - service UserService { GetLoginDataResponse GetLoginData(1: GetLoginDataRequest req), - GetValidateCodeResponse GetValidateCode(1: GetValidateCodeRequest req), } diff --git a/kitex_gen/user/k-user.go b/kitex_gen/user/k-user.go index 5433be0..c023c49 100644 --- a/kitex_gen/user/k-user.go +++ b/kitex_gen/user/k-user.go @@ -508,322 +508,6 @@ func (p *GetLoginDataResponse) field3Length() int { return l } -func (p *GetValidateCodeRequest) FastRead(buf []byte) (int, error) { - var err error - var offset int - var l int - var fieldTypeId thrift.TType - var fieldId int16 - var issetImage bool = false - _, l, err = bthrift.Binary.ReadStructBegin(buf) - offset += l - if err != nil { - goto ReadStructBeginError - } - - for { - _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) - offset += l - if err != nil { - goto ReadFieldBeginError - } - if fieldTypeId == thrift.STOP { - break - } - switch fieldId { - case 1: - if fieldTypeId == thrift.STRING { - l, err = p.FastReadField1(buf[offset:]) - offset += l - if err != nil { - goto ReadFieldError - } - issetImage = true - } else { - l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) - offset += l - if err != nil { - goto SkipFieldError - } - } - default: - l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) - offset += l - if err != nil { - goto SkipFieldError - } - } - - l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) - offset += l - if err != nil { - goto ReadFieldEndError - } - } - l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) - offset += l - if err != nil { - goto ReadStructEndError - } - - if !issetImage { - fieldId = 1 - goto RequiredFieldNotSetError - } - return offset, nil -ReadStructBeginError: - return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) -ReadFieldBeginError: - return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) -ReadFieldError: - return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_GetValidateCodeRequest[fieldId]), err) -SkipFieldError: - return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) -ReadFieldEndError: - return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) -ReadStructEndError: - return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) -RequiredFieldNotSetError: - return offset, thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_GetValidateCodeRequest[fieldId])) -} - -func (p *GetValidateCodeRequest) FastReadField1(buf []byte) (int, error) { - offset := 0 - - if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { - return offset, err - } else { - offset += l - - p.Image = v - - } - return offset, nil -} - -// for compatibility -func (p *GetValidateCodeRequest) FastWrite(buf []byte) int { - return 0 -} - -func (p *GetValidateCodeRequest) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { - offset := 0 - offset += bthrift.Binary.WriteStructBegin(buf[offset:], "GetValidateCodeRequest") - if p != nil { - offset += p.fastWriteField1(buf[offset:], binaryWriter) - } - offset += bthrift.Binary.WriteFieldStop(buf[offset:]) - offset += bthrift.Binary.WriteStructEnd(buf[offset:]) - return offset -} - -func (p *GetValidateCodeRequest) BLength() int { - l := 0 - l += bthrift.Binary.StructBeginLength("GetValidateCodeRequest") - if p != nil { - l += p.field1Length() - } - l += bthrift.Binary.FieldStopLength() - l += bthrift.Binary.StructEndLength() - return l -} - -func (p *GetValidateCodeRequest) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { - offset := 0 - offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "image", thrift.STRING, 1) - offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, p.Image) - - offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) - return offset -} - -func (p *GetValidateCodeRequest) field1Length() int { - l := 0 - l += bthrift.Binary.FieldBeginLength("image", thrift.STRING, 1) - l += bthrift.Binary.StringLengthNocopy(p.Image) - - l += bthrift.Binary.FieldEndLength() - return l -} - -func (p *GetValidateCodeResponse) FastRead(buf []byte) (int, error) { - var err error - var offset int - var l int - var fieldTypeId thrift.TType - var fieldId int16 - _, l, err = bthrift.Binary.ReadStructBegin(buf) - offset += l - if err != nil { - goto ReadStructBeginError - } - - for { - _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) - offset += l - if err != nil { - goto ReadFieldBeginError - } - if fieldTypeId == thrift.STOP { - break - } - switch fieldId { - case 1: - if fieldTypeId == thrift.STRUCT { - l, err = p.FastReadField1(buf[offset:]) - offset += l - if err != nil { - goto ReadFieldError - } - } else { - l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) - offset += l - if err != nil { - goto SkipFieldError - } - } - case 2: - if fieldTypeId == thrift.STRING { - l, err = p.FastReadField2(buf[offset:]) - offset += l - if err != nil { - goto ReadFieldError - } - } else { - l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) - offset += l - if err != nil { - goto SkipFieldError - } - } - default: - l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) - offset += l - if err != nil { - goto SkipFieldError - } - } - - l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) - offset += l - if err != nil { - goto ReadFieldEndError - } - } - l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) - offset += l - if err != nil { - goto ReadStructEndError - } - - return offset, nil -ReadStructBeginError: - return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) -ReadFieldBeginError: - return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) -ReadFieldError: - return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_GetValidateCodeResponse[fieldId]), err) -SkipFieldError: - return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) -ReadFieldEndError: - return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) -ReadStructEndError: - return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) -} - -func (p *GetValidateCodeResponse) FastReadField1(buf []byte) (int, error) { - offset := 0 - - tmp := model.NewBaseResp() - if l, err := tmp.FastRead(buf[offset:]); err != nil { - return offset, err - } else { - offset += l - } - p.Base = tmp - return offset, nil -} - -func (p *GetValidateCodeResponse) FastReadField2(buf []byte) (int, error) { - offset := 0 - - if v, l, err := bthrift.Binary.ReadString(buf[offset:]); err != nil { - return offset, err - } else { - offset += l - p.Code = &v - - } - return offset, nil -} - -// for compatibility -func (p *GetValidateCodeResponse) FastWrite(buf []byte) int { - return 0 -} - -func (p *GetValidateCodeResponse) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { - offset := 0 - offset += bthrift.Binary.WriteStructBegin(buf[offset:], "GetValidateCodeResponse") - if p != nil { - offset += p.fastWriteField1(buf[offset:], binaryWriter) - offset += p.fastWriteField2(buf[offset:], binaryWriter) - } - offset += bthrift.Binary.WriteFieldStop(buf[offset:]) - offset += bthrift.Binary.WriteStructEnd(buf[offset:]) - return offset -} - -func (p *GetValidateCodeResponse) BLength() int { - l := 0 - l += bthrift.Binary.StructBeginLength("GetValidateCodeResponse") - if p != nil { - l += p.field1Length() - l += p.field2Length() - } - l += bthrift.Binary.FieldStopLength() - l += bthrift.Binary.StructEndLength() - return l -} - -func (p *GetValidateCodeResponse) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { - offset := 0 - offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "base", thrift.STRUCT, 1) - offset += p.Base.FastWriteNocopy(buf[offset:], binaryWriter) - offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) - return offset -} - -func (p *GetValidateCodeResponse) fastWriteField2(buf []byte, binaryWriter bthrift.BinaryWriter) int { - offset := 0 - if p.IsSetCode() { - offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "code", thrift.STRING, 2) - offset += bthrift.Binary.WriteStringNocopy(buf[offset:], binaryWriter, *p.Code) - - offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) - } - return offset -} - -func (p *GetValidateCodeResponse) field1Length() int { - l := 0 - l += bthrift.Binary.FieldBeginLength("base", thrift.STRUCT, 1) - l += p.Base.BLength() - l += bthrift.Binary.FieldEndLength() - return l -} - -func (p *GetValidateCodeResponse) field2Length() int { - l := 0 - if p.IsSetCode() { - l += bthrift.Binary.FieldBeginLength("code", thrift.STRING, 2) - l += bthrift.Binary.StringLengthNocopy(*p.Code) - - l += bthrift.Binary.FieldEndLength() - } - return l -} - func (p *UserServiceGetLoginDataArgs) FastRead(buf []byte) (int, error) { var err error var offset int @@ -1082,264 +766,6 @@ func (p *UserServiceGetLoginDataResult) field0Length() int { return l } -func (p *UserServiceGetValidateCodeArgs) FastRead(buf []byte) (int, error) { - var err error - var offset int - var l int - var fieldTypeId thrift.TType - var fieldId int16 - _, l, err = bthrift.Binary.ReadStructBegin(buf) - offset += l - if err != nil { - goto ReadStructBeginError - } - - for { - _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) - offset += l - if err != nil { - goto ReadFieldBeginError - } - if fieldTypeId == thrift.STOP { - break - } - switch fieldId { - case 1: - if fieldTypeId == thrift.STRUCT { - l, err = p.FastReadField1(buf[offset:]) - offset += l - if err != nil { - goto ReadFieldError - } - } else { - l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) - offset += l - if err != nil { - goto SkipFieldError - } - } - default: - l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) - offset += l - if err != nil { - goto SkipFieldError - } - } - - l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) - offset += l - if err != nil { - goto ReadFieldEndError - } - } - l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) - offset += l - if err != nil { - goto ReadStructEndError - } - - return offset, nil -ReadStructBeginError: - return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) -ReadFieldBeginError: - return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) -ReadFieldError: - return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceGetValidateCodeArgs[fieldId]), err) -SkipFieldError: - return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) -ReadFieldEndError: - return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) -ReadStructEndError: - return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) -} - -func (p *UserServiceGetValidateCodeArgs) FastReadField1(buf []byte) (int, error) { - offset := 0 - - tmp := NewGetValidateCodeRequest() - if l, err := tmp.FastRead(buf[offset:]); err != nil { - return offset, err - } else { - offset += l - } - p.Req = tmp - return offset, nil -} - -// for compatibility -func (p *UserServiceGetValidateCodeArgs) FastWrite(buf []byte) int { - return 0 -} - -func (p *UserServiceGetValidateCodeArgs) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { - offset := 0 - offset += bthrift.Binary.WriteStructBegin(buf[offset:], "GetValidateCode_args") - if p != nil { - offset += p.fastWriteField1(buf[offset:], binaryWriter) - } - offset += bthrift.Binary.WriteFieldStop(buf[offset:]) - offset += bthrift.Binary.WriteStructEnd(buf[offset:]) - return offset -} - -func (p *UserServiceGetValidateCodeArgs) BLength() int { - l := 0 - l += bthrift.Binary.StructBeginLength("GetValidateCode_args") - if p != nil { - l += p.field1Length() - } - l += bthrift.Binary.FieldStopLength() - l += bthrift.Binary.StructEndLength() - return l -} - -func (p *UserServiceGetValidateCodeArgs) fastWriteField1(buf []byte, binaryWriter bthrift.BinaryWriter) int { - offset := 0 - offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "req", thrift.STRUCT, 1) - offset += p.Req.FastWriteNocopy(buf[offset:], binaryWriter) - offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) - return offset -} - -func (p *UserServiceGetValidateCodeArgs) field1Length() int { - l := 0 - l += bthrift.Binary.FieldBeginLength("req", thrift.STRUCT, 1) - l += p.Req.BLength() - l += bthrift.Binary.FieldEndLength() - return l -} - -func (p *UserServiceGetValidateCodeResult) FastRead(buf []byte) (int, error) { - var err error - var offset int - var l int - var fieldTypeId thrift.TType - var fieldId int16 - _, l, err = bthrift.Binary.ReadStructBegin(buf) - offset += l - if err != nil { - goto ReadStructBeginError - } - - for { - _, fieldTypeId, fieldId, l, err = bthrift.Binary.ReadFieldBegin(buf[offset:]) - offset += l - if err != nil { - goto ReadFieldBeginError - } - if fieldTypeId == thrift.STOP { - break - } - switch fieldId { - case 0: - if fieldTypeId == thrift.STRUCT { - l, err = p.FastReadField0(buf[offset:]) - offset += l - if err != nil { - goto ReadFieldError - } - } else { - l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) - offset += l - if err != nil { - goto SkipFieldError - } - } - default: - l, err = bthrift.Binary.Skip(buf[offset:], fieldTypeId) - offset += l - if err != nil { - goto SkipFieldError - } - } - - l, err = bthrift.Binary.ReadFieldEnd(buf[offset:]) - offset += l - if err != nil { - goto ReadFieldEndError - } - } - l, err = bthrift.Binary.ReadStructEnd(buf[offset:]) - offset += l - if err != nil { - goto ReadStructEndError - } - - return offset, nil -ReadStructBeginError: - return offset, thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) -ReadFieldBeginError: - return offset, thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) -ReadFieldError: - return offset, thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceGetValidateCodeResult[fieldId]), err) -SkipFieldError: - return offset, thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) -ReadFieldEndError: - return offset, thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) -ReadStructEndError: - return offset, thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) -} - -func (p *UserServiceGetValidateCodeResult) FastReadField0(buf []byte) (int, error) { - offset := 0 - - tmp := NewGetValidateCodeResponse() - if l, err := tmp.FastRead(buf[offset:]); err != nil { - return offset, err - } else { - offset += l - } - p.Success = tmp - return offset, nil -} - -// for compatibility -func (p *UserServiceGetValidateCodeResult) FastWrite(buf []byte) int { - return 0 -} - -func (p *UserServiceGetValidateCodeResult) FastWriteNocopy(buf []byte, binaryWriter bthrift.BinaryWriter) int { - offset := 0 - offset += bthrift.Binary.WriteStructBegin(buf[offset:], "GetValidateCode_result") - if p != nil { - offset += p.fastWriteField0(buf[offset:], binaryWriter) - } - offset += bthrift.Binary.WriteFieldStop(buf[offset:]) - offset += bthrift.Binary.WriteStructEnd(buf[offset:]) - return offset -} - -func (p *UserServiceGetValidateCodeResult) BLength() int { - l := 0 - l += bthrift.Binary.StructBeginLength("GetValidateCode_result") - if p != nil { - l += p.field0Length() - } - l += bthrift.Binary.FieldStopLength() - l += bthrift.Binary.StructEndLength() - return l -} - -func (p *UserServiceGetValidateCodeResult) fastWriteField0(buf []byte, binaryWriter bthrift.BinaryWriter) int { - offset := 0 - if p.IsSetSuccess() { - offset += bthrift.Binary.WriteFieldBegin(buf[offset:], "success", thrift.STRUCT, 0) - offset += p.Success.FastWriteNocopy(buf[offset:], binaryWriter) - offset += bthrift.Binary.WriteFieldEnd(buf[offset:]) - } - return offset -} - -func (p *UserServiceGetValidateCodeResult) field0Length() int { - l := 0 - if p.IsSetSuccess() { - l += bthrift.Binary.FieldBeginLength("success", thrift.STRUCT, 0) - l += p.Success.BLength() - l += bthrift.Binary.FieldEndLength() - } - return l -} - func (p *UserServiceGetLoginDataArgs) GetFirstArgument() interface{} { return p.Req } @@ -1347,11 +773,3 @@ func (p *UserServiceGetLoginDataArgs) GetFirstArgument() interface{} { func (p *UserServiceGetLoginDataResult) GetResult() interface{} { return p.Success } - -func (p *UserServiceGetValidateCodeArgs) GetFirstArgument() interface{} { - return p.Req -} - -func (p *UserServiceGetValidateCodeResult) GetResult() interface{} { - return p.Success -} diff --git a/kitex_gen/user/user.go b/kitex_gen/user/user.go index 569c1a8..715a271 100644 --- a/kitex_gen/user/user.go +++ b/kitex_gen/user/user.go @@ -600,982 +600,167 @@ func (p *GetLoginDataResponse) Field3DeepEqual(src []string) bool { return true } -type GetValidateCodeRequest struct { - Image string `thrift:"image,1,required" frugal:"1,required,string" json:"image"` -} - -func NewGetValidateCodeRequest() *GetValidateCodeRequest { - return &GetValidateCodeRequest{} -} - -func (p *GetValidateCodeRequest) InitDefault() { -} - -func (p *GetValidateCodeRequest) GetImage() (v string) { - return p.Image -} -func (p *GetValidateCodeRequest) SetImage(val string) { - p.Image = val -} - -var fieldIDToName_GetValidateCodeRequest = map[int16]string{ - 1: "image", -} - -func (p *GetValidateCodeRequest) Read(iprot thrift.TProtocol) (err error) { - - var fieldTypeId thrift.TType - var fieldId int16 - var issetImage bool = false - - 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 - } - issetImage = true - } 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 - } - - if !issetImage { - fieldId = 1 - goto RequiredFieldNotSetError - } - 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_GetValidateCodeRequest[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) -RequiredFieldNotSetError: - return thrift.NewTProtocolExceptionWithType(thrift.INVALID_DATA, fmt.Errorf("required field %s is not set", fieldIDToName_GetValidateCodeRequest[fieldId])) -} - -func (p *GetValidateCodeRequest) ReadField1(iprot thrift.TProtocol) error { - - var _field string - if v, err := iprot.ReadString(); err != nil { - return err - } else { - _field = v - } - p.Image = _field - return nil -} - -func (p *GetValidateCodeRequest) Write(oprot thrift.TProtocol) (err error) { - var fieldId int16 - if err = oprot.WriteStructBegin("GetValidateCodeRequest"); 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 *GetValidateCodeRequest) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("image", thrift.STRING, 1); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteString(p.Image); 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 *GetValidateCodeRequest) String() string { - if p == nil { - return "" - } - return fmt.Sprintf("GetValidateCodeRequest(%+v)", *p) - -} - -func (p *GetValidateCodeRequest) DeepEqual(ano *GetValidateCodeRequest) bool { - if p == ano { - return true - } else if p == nil || ano == nil { - return false - } - if !p.Field1DeepEqual(ano.Image) { - return false - } - return true -} - -func (p *GetValidateCodeRequest) Field1DeepEqual(src string) bool { - - if strings.Compare(p.Image, src) != 0 { - return false - } - return true -} - -type GetValidateCodeResponse struct { - Base *model.BaseResp `thrift:"base,1" frugal:"1,default,model.BaseResp" json:"base"` - Code *string `thrift:"code,2,optional" frugal:"2,optional,string" json:"code,omitempty"` -} - -func NewGetValidateCodeResponse() *GetValidateCodeResponse { - return &GetValidateCodeResponse{} -} - -func (p *GetValidateCodeResponse) InitDefault() { -} - -var GetValidateCodeResponse_Base_DEFAULT *model.BaseResp - -func (p *GetValidateCodeResponse) GetBase() (v *model.BaseResp) { - if !p.IsSetBase() { - return GetValidateCodeResponse_Base_DEFAULT - } - return p.Base -} - -var GetValidateCodeResponse_Code_DEFAULT string - -func (p *GetValidateCodeResponse) GetCode() (v string) { - if !p.IsSetCode() { - return GetValidateCodeResponse_Code_DEFAULT - } - return *p.Code -} -func (p *GetValidateCodeResponse) SetBase(val *model.BaseResp) { - p.Base = val -} -func (p *GetValidateCodeResponse) SetCode(val *string) { - p.Code = val -} - -var fieldIDToName_GetValidateCodeResponse = map[int16]string{ - 1: "base", - 2: "code", -} - -func (p *GetValidateCodeResponse) IsSetBase() bool { - return p.Base != nil -} - -func (p *GetValidateCodeResponse) IsSetCode() bool { - return p.Code != nil -} - -func (p *GetValidateCodeResponse) 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 - } - 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_GetValidateCodeResponse[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 *GetValidateCodeResponse) ReadField1(iprot thrift.TProtocol) error { - _field := model.NewBaseResp() - if err := _field.Read(iprot); err != nil { - return err - } - p.Base = _field - return nil -} -func (p *GetValidateCodeResponse) ReadField2(iprot thrift.TProtocol) error { - - var _field *string - if v, err := iprot.ReadString(); err != nil { - return err - } else { - _field = &v - } - p.Code = _field - return nil -} - -func (p *GetValidateCodeResponse) Write(oprot thrift.TProtocol) (err error) { - var fieldId int16 - if err = oprot.WriteStructBegin("GetValidateCodeResponse"); 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 *GetValidateCodeResponse) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("base", thrift.STRUCT, 1); err != nil { - goto WriteFieldBeginError - } - if err := p.Base.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 *GetValidateCodeResponse) writeField2(oprot thrift.TProtocol) (err error) { - if p.IsSetCode() { - if err = oprot.WriteFieldBegin("code", thrift.STRING, 2); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteString(*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 2 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) -} - -func (p *GetValidateCodeResponse) String() string { - if p == nil { - return "" - } - return fmt.Sprintf("GetValidateCodeResponse(%+v)", *p) - -} - -func (p *GetValidateCodeResponse) DeepEqual(ano *GetValidateCodeResponse) bool { - if p == ano { - return true - } else if p == nil || ano == nil { - return false - } - if !p.Field1DeepEqual(ano.Base) { - return false - } - if !p.Field2DeepEqual(ano.Code) { - return false - } - return true -} - -func (p *GetValidateCodeResponse) Field1DeepEqual(src *model.BaseResp) bool { - - if !p.Base.DeepEqual(src) { - return false - } - return true -} -func (p *GetValidateCodeResponse) Field2DeepEqual(src *string) bool { - - if p.Code == src { - return true - } else if p.Code == nil || src == nil { - return false - } - if strings.Compare(*p.Code, *src) != 0 { - return false - } - return true -} - -type UserService interface { - GetLoginData(ctx context.Context, req *GetLoginDataRequest) (r *GetLoginDataResponse, err error) - - GetValidateCode(ctx context.Context, req *GetValidateCodeRequest) (r *GetValidateCodeResponse, err error) -} - -type UserServiceClient struct { - c thrift.TClient -} - -func NewUserServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *UserServiceClient { - return &UserServiceClient{ - c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), - } -} - -func NewUserServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *UserServiceClient { - return &UserServiceClient{ - c: thrift.NewTStandardClient(iprot, oprot), - } -} - -func NewUserServiceClient(c thrift.TClient) *UserServiceClient { - return &UserServiceClient{ - c: c, - } -} - -func (p *UserServiceClient) Client_() thrift.TClient { - return p.c -} - -func (p *UserServiceClient) GetLoginData(ctx context.Context, req *GetLoginDataRequest) (r *GetLoginDataResponse, err error) { - var _args UserServiceGetLoginDataArgs - _args.Req = req - var _result UserServiceGetLoginDataResult - if err = p.Client_().Call(ctx, "GetLoginData", &_args, &_result); err != nil { - return - } - return _result.GetSuccess(), nil -} -func (p *UserServiceClient) GetValidateCode(ctx context.Context, req *GetValidateCodeRequest) (r *GetValidateCodeResponse, err error) { - var _args UserServiceGetValidateCodeArgs - _args.Req = req - var _result UserServiceGetValidateCodeResult - if err = p.Client_().Call(ctx, "GetValidateCode", &_args, &_result); err != nil { - return - } - return _result.GetSuccess(), nil -} - -type UserServiceProcessor struct { - processorMap map[string]thrift.TProcessorFunction - handler UserService -} - -func (p *UserServiceProcessor) AddToProcessorMap(key string, processor thrift.TProcessorFunction) { - p.processorMap[key] = processor -} - -func (p *UserServiceProcessor) GetProcessorFunction(key string) (processor thrift.TProcessorFunction, ok bool) { - processor, ok = p.processorMap[key] - return processor, ok -} - -func (p *UserServiceProcessor) ProcessorMap() map[string]thrift.TProcessorFunction { - return p.processorMap -} - -func NewUserServiceProcessor(handler UserService) *UserServiceProcessor { - self := &UserServiceProcessor{handler: handler, processorMap: make(map[string]thrift.TProcessorFunction)} - self.AddToProcessorMap("GetLoginData", &userServiceProcessorGetLoginData{handler: handler}) - self.AddToProcessorMap("GetValidateCode", &userServiceProcessorGetValidateCode{handler: handler}) - return self -} -func (p *UserServiceProcessor) Process(ctx context.Context, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { - name, _, seqId, err := iprot.ReadMessageBegin() - if err != nil { - return false, err - } - if processor, ok := p.GetProcessorFunction(name); ok { - return processor.Process(ctx, seqId, iprot, oprot) - } - iprot.Skip(thrift.STRUCT) - iprot.ReadMessageEnd() - x := thrift.NewTApplicationException(thrift.UNKNOWN_METHOD, "Unknown function "+name) - oprot.WriteMessageBegin(name, thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return false, x -} - -type userServiceProcessorGetLoginData struct { - handler UserService -} - -func (p *userServiceProcessorGetLoginData) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { - args := UserServiceGetLoginDataArgs{} - if err = args.Read(iprot); err != nil { - iprot.ReadMessageEnd() - x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) - oprot.WriteMessageBegin("GetLoginData", thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return false, err - } - - iprot.ReadMessageEnd() - var err2 error - result := UserServiceGetLoginDataResult{} - var retval *GetLoginDataResponse - if retval, err2 = p.handler.GetLoginData(ctx, args.Req); err2 != nil { - x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetLoginData: "+err2.Error()) - oprot.WriteMessageBegin("GetLoginData", thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return true, err2 - } else { - result.Success = retval - } - if err2 = oprot.WriteMessageBegin("GetLoginData", 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 userServiceProcessorGetValidateCode struct { - handler UserService -} - -func (p *userServiceProcessorGetValidateCode) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { - args := UserServiceGetValidateCodeArgs{} - if err = args.Read(iprot); err != nil { - iprot.ReadMessageEnd() - x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) - oprot.WriteMessageBegin("GetValidateCode", thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return false, err - } - - iprot.ReadMessageEnd() - var err2 error - result := UserServiceGetValidateCodeResult{} - var retval *GetValidateCodeResponse - if retval, err2 = p.handler.GetValidateCode(ctx, args.Req); err2 != nil { - x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetValidateCode: "+err2.Error()) - oprot.WriteMessageBegin("GetValidateCode", thrift.EXCEPTION, seqId) - x.Write(oprot) - oprot.WriteMessageEnd() - oprot.Flush(ctx) - return true, err2 - } else { - result.Success = retval - } - if err2 = oprot.WriteMessageBegin("GetValidateCode", 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 UserServiceGetLoginDataArgs struct { - Req *GetLoginDataRequest `thrift:"req,1" frugal:"1,default,GetLoginDataRequest" json:"req"` -} - -func NewUserServiceGetLoginDataArgs() *UserServiceGetLoginDataArgs { - return &UserServiceGetLoginDataArgs{} -} - -func (p *UserServiceGetLoginDataArgs) InitDefault() { -} - -var UserServiceGetLoginDataArgs_Req_DEFAULT *GetLoginDataRequest - -func (p *UserServiceGetLoginDataArgs) GetReq() (v *GetLoginDataRequest) { - if !p.IsSetReq() { - return UserServiceGetLoginDataArgs_Req_DEFAULT - } - return p.Req -} -func (p *UserServiceGetLoginDataArgs) SetReq(val *GetLoginDataRequest) { - p.Req = val -} - -var fieldIDToName_UserServiceGetLoginDataArgs = map[int16]string{ - 1: "req", -} - -func (p *UserServiceGetLoginDataArgs) IsSetReq() bool { - return p.Req != nil -} - -func (p *UserServiceGetLoginDataArgs) 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_UserServiceGetLoginDataArgs[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 *UserServiceGetLoginDataArgs) ReadField1(iprot thrift.TProtocol) error { - _field := NewGetLoginDataRequest() - if err := _field.Read(iprot); err != nil { - return err - } - p.Req = _field - return nil -} - -func (p *UserServiceGetLoginDataArgs) Write(oprot thrift.TProtocol) (err error) { - var fieldId int16 - if err = oprot.WriteStructBegin("GetLoginData_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 *UserServiceGetLoginDataArgs) 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 *UserServiceGetLoginDataArgs) String() string { - if p == nil { - return "" - } - return fmt.Sprintf("UserServiceGetLoginDataArgs(%+v)", *p) - -} - -func (p *UserServiceGetLoginDataArgs) DeepEqual(ano *UserServiceGetLoginDataArgs) bool { - if p == ano { - return true - } else if p == nil || ano == nil { - return false - } - if !p.Field1DeepEqual(ano.Req) { - return false - } - return true -} - -func (p *UserServiceGetLoginDataArgs) Field1DeepEqual(src *GetLoginDataRequest) bool { - - if !p.Req.DeepEqual(src) { - return false - } - return true -} - -type UserServiceGetLoginDataResult struct { - Success *GetLoginDataResponse `thrift:"success,0,optional" frugal:"0,optional,GetLoginDataResponse" json:"success,omitempty"` -} - -func NewUserServiceGetLoginDataResult() *UserServiceGetLoginDataResult { - return &UserServiceGetLoginDataResult{} +type UserService interface { + GetLoginData(ctx context.Context, req *GetLoginDataRequest) (r *GetLoginDataResponse, err error) } -func (p *UserServiceGetLoginDataResult) InitDefault() { +type UserServiceClient struct { + c thrift.TClient } -var UserServiceGetLoginDataResult_Success_DEFAULT *GetLoginDataResponse - -func (p *UserServiceGetLoginDataResult) GetSuccess() (v *GetLoginDataResponse) { - if !p.IsSetSuccess() { - return UserServiceGetLoginDataResult_Success_DEFAULT +func NewUserServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *UserServiceClient { + return &UserServiceClient{ + c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), } - return p.Success -} -func (p *UserServiceGetLoginDataResult) SetSuccess(x interface{}) { - p.Success = x.(*GetLoginDataResponse) } -var fieldIDToName_UserServiceGetLoginDataResult = map[int16]string{ - 0: "success", +func NewUserServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *UserServiceClient { + return &UserServiceClient{ + c: thrift.NewTStandardClient(iprot, oprot), + } } -func (p *UserServiceGetLoginDataResult) IsSetSuccess() bool { - return p.Success != nil +func NewUserServiceClient(c thrift.TClient) *UserServiceClient { + return &UserServiceClient{ + c: c, + } } -func (p *UserServiceGetLoginDataResult) Read(iprot thrift.TProtocol) (err error) { - - var fieldTypeId thrift.TType - var fieldId int16 +func (p *UserServiceClient) Client_() thrift.TClient { + return p.c +} - if _, err = iprot.ReadStructBegin(); err != nil { - goto ReadStructBeginError +func (p *UserServiceClient) GetLoginData(ctx context.Context, req *GetLoginDataRequest) (r *GetLoginDataResponse, err error) { + var _args UserServiceGetLoginDataArgs + _args.Req = req + var _result UserServiceGetLoginDataResult + if err = p.Client_().Call(ctx, "GetLoginData", &_args, &_result); err != nil { + return } + return _result.GetSuccess(), nil +} - 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 - } +type UserServiceProcessor struct { + processorMap map[string]thrift.TProcessorFunction + handler UserService +} - 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_UserServiceGetLoginDataResult[fieldId]), err) -SkipFieldError: - return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) +func (p *UserServiceProcessor) AddToProcessorMap(key string, processor thrift.TProcessorFunction) { + p.processorMap[key] = processor +} -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 *UserServiceProcessor) GetProcessorFunction(key string) (processor thrift.TProcessorFunction, ok bool) { + processor, ok = p.processorMap[key] + return processor, ok } -func (p *UserServiceGetLoginDataResult) ReadField0(iprot thrift.TProtocol) error { - _field := NewGetLoginDataResponse() - if err := _field.Read(iprot); err != nil { - return err - } - p.Success = _field - return nil +func (p *UserServiceProcessor) ProcessorMap() map[string]thrift.TProcessorFunction { + return p.processorMap } -func (p *UserServiceGetLoginDataResult) Write(oprot thrift.TProtocol) (err error) { - var fieldId int16 - if err = oprot.WriteStructBegin("GetLoginData_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 +func NewUserServiceProcessor(handler UserService) *UserServiceProcessor { + self := &UserServiceProcessor{handler: handler, processorMap: make(map[string]thrift.TProcessorFunction)} + self.AddToProcessorMap("GetLoginData", &userServiceProcessorGetLoginData{handler: handler}) + return self +} +func (p *UserServiceProcessor) Process(ctx context.Context, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + name, _, seqId, err := iprot.ReadMessageBegin() + if err != nil { + return false, err } - if err = oprot.WriteStructEnd(); err != nil { - goto WriteStructEndError + if processor, ok := p.GetProcessorFunction(name); ok { + return processor.Process(ctx, seqId, iprot, oprot) } - 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) + iprot.Skip(thrift.STRUCT) + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.UNKNOWN_METHOD, "Unknown function "+name) + oprot.WriteMessageBegin(name, thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, x } -func (p *UserServiceGetLoginDataResult) 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) +type userServiceProcessorGetLoginData struct { + handler UserService } -func (p *UserServiceGetLoginDataResult) String() string { - if p == nil { - return "" +func (p *userServiceProcessorGetLoginData) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := UserServiceGetLoginDataArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("GetLoginData", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err } - return fmt.Sprintf("UserServiceGetLoginDataResult(%+v)", *p) - -} -func (p *UserServiceGetLoginDataResult) DeepEqual(ano *UserServiceGetLoginDataResult) bool { - if p == ano { - return true - } else if p == nil || ano == nil { - return false + iprot.ReadMessageEnd() + var err2 error + result := UserServiceGetLoginDataResult{} + var retval *GetLoginDataResponse + if retval, err2 = p.handler.GetLoginData(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing GetLoginData: "+err2.Error()) + oprot.WriteMessageBegin("GetLoginData", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval } - if !p.Field0DeepEqual(ano.Success) { - return false + if err2 = oprot.WriteMessageBegin("GetLoginData", thrift.REPLY, seqId); err2 != nil { + err = err2 } - return true -} - -func (p *UserServiceGetLoginDataResult) Field0DeepEqual(src *GetLoginDataResponse) bool { - - if !p.Success.DeepEqual(src) { - return false + if err2 = result.Write(oprot); err == nil && err2 != nil { + err = err2 } - return true + 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 UserServiceGetValidateCodeArgs struct { - Req *GetValidateCodeRequest `thrift:"req,1" frugal:"1,default,GetValidateCodeRequest" json:"req"` +type UserServiceGetLoginDataArgs struct { + Req *GetLoginDataRequest `thrift:"req,1" frugal:"1,default,GetLoginDataRequest" json:"req"` } -func NewUserServiceGetValidateCodeArgs() *UserServiceGetValidateCodeArgs { - return &UserServiceGetValidateCodeArgs{} +func NewUserServiceGetLoginDataArgs() *UserServiceGetLoginDataArgs { + return &UserServiceGetLoginDataArgs{} } -func (p *UserServiceGetValidateCodeArgs) InitDefault() { +func (p *UserServiceGetLoginDataArgs) InitDefault() { } -var UserServiceGetValidateCodeArgs_Req_DEFAULT *GetValidateCodeRequest +var UserServiceGetLoginDataArgs_Req_DEFAULT *GetLoginDataRequest -func (p *UserServiceGetValidateCodeArgs) GetReq() (v *GetValidateCodeRequest) { +func (p *UserServiceGetLoginDataArgs) GetReq() (v *GetLoginDataRequest) { if !p.IsSetReq() { - return UserServiceGetValidateCodeArgs_Req_DEFAULT + return UserServiceGetLoginDataArgs_Req_DEFAULT } return p.Req } -func (p *UserServiceGetValidateCodeArgs) SetReq(val *GetValidateCodeRequest) { +func (p *UserServiceGetLoginDataArgs) SetReq(val *GetLoginDataRequest) { p.Req = val } -var fieldIDToName_UserServiceGetValidateCodeArgs = map[int16]string{ +var fieldIDToName_UserServiceGetLoginDataArgs = map[int16]string{ 1: "req", } -func (p *UserServiceGetValidateCodeArgs) IsSetReq() bool { +func (p *UserServiceGetLoginDataArgs) IsSetReq() bool { return p.Req != nil } -func (p *UserServiceGetValidateCodeArgs) Read(iprot thrift.TProtocol) (err error) { +func (p *UserServiceGetLoginDataArgs) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -1621,7 +806,7 @@ ReadStructBeginError: 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_UserServiceGetValidateCodeArgs[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceGetLoginDataArgs[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -1631,8 +816,8 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *UserServiceGetValidateCodeArgs) ReadField1(iprot thrift.TProtocol) error { - _field := NewGetValidateCodeRequest() +func (p *UserServiceGetLoginDataArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewGetLoginDataRequest() if err := _field.Read(iprot); err != nil { return err } @@ -1640,9 +825,9 @@ func (p *UserServiceGetValidateCodeArgs) ReadField1(iprot thrift.TProtocol) erro return nil } -func (p *UserServiceGetValidateCodeArgs) Write(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetLoginDataArgs) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetValidateCode_args"); err != nil { + if err = oprot.WriteStructBegin("GetLoginData_args"); err != nil { goto WriteStructBeginError } if p != nil { @@ -1668,7 +853,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *UserServiceGetValidateCodeArgs) writeField1(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetLoginDataArgs) writeField1(oprot thrift.TProtocol) (err error) { if err = oprot.WriteFieldBegin("req", thrift.STRUCT, 1); err != nil { goto WriteFieldBeginError } @@ -1685,15 +870,15 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *UserServiceGetValidateCodeArgs) String() string { +func (p *UserServiceGetLoginDataArgs) String() string { if p == nil { return "" } - return fmt.Sprintf("UserServiceGetValidateCodeArgs(%+v)", *p) + return fmt.Sprintf("UserServiceGetLoginDataArgs(%+v)", *p) } -func (p *UserServiceGetValidateCodeArgs) DeepEqual(ano *UserServiceGetValidateCodeArgs) bool { +func (p *UserServiceGetLoginDataArgs) DeepEqual(ano *UserServiceGetLoginDataArgs) bool { if p == ano { return true } else if p == nil || ano == nil { @@ -1705,7 +890,7 @@ func (p *UserServiceGetValidateCodeArgs) DeepEqual(ano *UserServiceGetValidateCo return true } -func (p *UserServiceGetValidateCodeArgs) Field1DeepEqual(src *GetValidateCodeRequest) bool { +func (p *UserServiceGetLoginDataArgs) Field1DeepEqual(src *GetLoginDataRequest) bool { if !p.Req.DeepEqual(src) { return false @@ -1713,38 +898,38 @@ func (p *UserServiceGetValidateCodeArgs) Field1DeepEqual(src *GetValidateCodeReq return true } -type UserServiceGetValidateCodeResult struct { - Success *GetValidateCodeResponse `thrift:"success,0,optional" frugal:"0,optional,GetValidateCodeResponse" json:"success,omitempty"` +type UserServiceGetLoginDataResult struct { + Success *GetLoginDataResponse `thrift:"success,0,optional" frugal:"0,optional,GetLoginDataResponse" json:"success,omitempty"` } -func NewUserServiceGetValidateCodeResult() *UserServiceGetValidateCodeResult { - return &UserServiceGetValidateCodeResult{} +func NewUserServiceGetLoginDataResult() *UserServiceGetLoginDataResult { + return &UserServiceGetLoginDataResult{} } -func (p *UserServiceGetValidateCodeResult) InitDefault() { +func (p *UserServiceGetLoginDataResult) InitDefault() { } -var UserServiceGetValidateCodeResult_Success_DEFAULT *GetValidateCodeResponse +var UserServiceGetLoginDataResult_Success_DEFAULT *GetLoginDataResponse -func (p *UserServiceGetValidateCodeResult) GetSuccess() (v *GetValidateCodeResponse) { +func (p *UserServiceGetLoginDataResult) GetSuccess() (v *GetLoginDataResponse) { if !p.IsSetSuccess() { - return UserServiceGetValidateCodeResult_Success_DEFAULT + return UserServiceGetLoginDataResult_Success_DEFAULT } return p.Success } -func (p *UserServiceGetValidateCodeResult) SetSuccess(x interface{}) { - p.Success = x.(*GetValidateCodeResponse) +func (p *UserServiceGetLoginDataResult) SetSuccess(x interface{}) { + p.Success = x.(*GetLoginDataResponse) } -var fieldIDToName_UserServiceGetValidateCodeResult = map[int16]string{ +var fieldIDToName_UserServiceGetLoginDataResult = map[int16]string{ 0: "success", } -func (p *UserServiceGetValidateCodeResult) IsSetSuccess() bool { +func (p *UserServiceGetLoginDataResult) IsSetSuccess() bool { return p.Success != nil } -func (p *UserServiceGetValidateCodeResult) Read(iprot thrift.TProtocol) (err error) { +func (p *UserServiceGetLoginDataResult) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -1790,7 +975,7 @@ ReadStructBeginError: 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_UserServiceGetValidateCodeResult[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceGetLoginDataResult[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -1800,8 +985,8 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *UserServiceGetValidateCodeResult) ReadField0(iprot thrift.TProtocol) error { - _field := NewGetValidateCodeResponse() +func (p *UserServiceGetLoginDataResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewGetLoginDataResponse() if err := _field.Read(iprot); err != nil { return err } @@ -1809,9 +994,9 @@ func (p *UserServiceGetValidateCodeResult) ReadField0(iprot thrift.TProtocol) er return nil } -func (p *UserServiceGetValidateCodeResult) Write(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetLoginDataResult) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("GetValidateCode_result"); err != nil { + if err = oprot.WriteStructBegin("GetLoginData_result"); err != nil { goto WriteStructBeginError } if p != nil { @@ -1837,7 +1022,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *UserServiceGetValidateCodeResult) writeField0(oprot thrift.TProtocol) (err error) { +func (p *UserServiceGetLoginDataResult) writeField0(oprot thrift.TProtocol) (err error) { if p.IsSetSuccess() { if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { goto WriteFieldBeginError @@ -1856,15 +1041,15 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) } -func (p *UserServiceGetValidateCodeResult) String() string { +func (p *UserServiceGetLoginDataResult) String() string { if p == nil { return "" } - return fmt.Sprintf("UserServiceGetValidateCodeResult(%+v)", *p) + return fmt.Sprintf("UserServiceGetLoginDataResult(%+v)", *p) } -func (p *UserServiceGetValidateCodeResult) DeepEqual(ano *UserServiceGetValidateCodeResult) bool { +func (p *UserServiceGetLoginDataResult) DeepEqual(ano *UserServiceGetLoginDataResult) bool { if p == ano { return true } else if p == nil || ano == nil { @@ -1876,7 +1061,7 @@ func (p *UserServiceGetValidateCodeResult) DeepEqual(ano *UserServiceGetValidate return true } -func (p *UserServiceGetValidateCodeResult) Field0DeepEqual(src *GetValidateCodeResponse) bool { +func (p *UserServiceGetLoginDataResult) Field0DeepEqual(src *GetLoginDataResponse) bool { if !p.Success.DeepEqual(src) { return false diff --git a/kitex_gen/user/userservice/client.go b/kitex_gen/user/userservice/client.go index 66f9beb..314cf51 100644 --- a/kitex_gen/user/userservice/client.go +++ b/kitex_gen/user/userservice/client.go @@ -30,7 +30,6 @@ import ( // Client is designed to provide IDL-compatible methods with call-option parameter for kitex framework. type Client interface { GetLoginData(ctx context.Context, req *user.GetLoginDataRequest, callOptions ...callopt.Option) (r *user.GetLoginDataResponse, err error) - GetValidateCode(ctx context.Context, req *user.GetValidateCodeRequest, callOptions ...callopt.Option) (r *user.GetValidateCodeResponse, err error) } // NewClient creates a client for the service defined in IDL. @@ -66,8 +65,3 @@ func (p *kUserServiceClient) GetLoginData(ctx context.Context, req *user.GetLogi ctx = client.NewCtxWithCallOptions(ctx, callOptions) return p.kClient.GetLoginData(ctx, req) } - -func (p *kUserServiceClient) GetValidateCode(ctx context.Context, req *user.GetValidateCodeRequest, callOptions ...callopt.Option) (r *user.GetValidateCodeResponse, err error) { - ctx = client.NewCtxWithCallOptions(ctx, callOptions) - return p.kClient.GetValidateCode(ctx, req) -} diff --git a/kitex_gen/user/userservice/userservice.go b/kitex_gen/user/userservice/userservice.go index a8dd970..bbd66b3 100644 --- a/kitex_gen/user/userservice/userservice.go +++ b/kitex_gen/user/userservice/userservice.go @@ -38,13 +38,6 @@ var serviceMethods = map[string]kitex.MethodInfo{ false, kitex.WithStreamingMode(kitex.StreamingNone), ), - "GetValidateCode": kitex.NewMethodInfo( - getValidateCodeHandler, - newUserServiceGetValidateCodeArgs, - newUserServiceGetValidateCodeResult, - false, - kitex.WithStreamingMode(kitex.StreamingNone), - ), } var ( @@ -129,24 +122,6 @@ func newUserServiceGetLoginDataResult() interface{} { return user.NewUserServiceGetLoginDataResult() } -func getValidateCodeHandler(ctx context.Context, handler interface{}, arg, result interface{}) error { - realArg := arg.(*user.UserServiceGetValidateCodeArgs) - realResult := result.(*user.UserServiceGetValidateCodeResult) - success, err := handler.(user.UserService).GetValidateCode(ctx, realArg.Req) - if err != nil { - return err - } - realResult.Success = success - return nil -} -func newUserServiceGetValidateCodeArgs() interface{} { - return user.NewUserServiceGetValidateCodeArgs() -} - -func newUserServiceGetValidateCodeResult() interface{} { - return user.NewUserServiceGetValidateCodeResult() -} - type kClient struct { c client.Client } @@ -166,13 +141,3 @@ func (p *kClient) GetLoginData(ctx context.Context, req *user.GetLoginDataReques } return _result.GetSuccess(), nil } - -func (p *kClient) GetValidateCode(ctx context.Context, req *user.GetValidateCodeRequest) (r *user.GetValidateCodeResponse, err error) { - var _args user.UserServiceGetValidateCodeArgs - _args.Req = req - var _result user.UserServiceGetValidateCodeResult - if err = p.c.Call(ctx, "GetValidateCode", &_args, &_result); err != nil { - return - } - return _result.GetSuccess(), nil -} From 9479a533e8aa6ea546397e18f08d11fe220283f2 Mon Sep 17 00:00:00 2001 From: FantasyRL <1845983502@qq.com> Date: Thu, 17 Oct 2024 21:12:44 +0800 Subject: [PATCH 10/19] revert:launch_screen service --- .../biz/handler/api/launch_screen_service.go | 2 +- cmd/api/biz/model/api/api.go | 20 +-- cmd/launch_screen/dal/cache/cache.go | 74 +++++++++ cmd/launch_screen/dal/cache/init.go | 36 +++++ cmd/launch_screen/dal/db/init.go | 40 +++++ cmd/launch_screen/dal/db/mysql.go | 148 +++++++++++++++++ cmd/launch_screen/dal/init.go | 27 ++++ cmd/launch_screen/handler.go | 141 +++++++++++++++-- cmd/launch_screen/main.go | 65 +++++++- cmd/launch_screen/pack/pack.go | 76 +++++++++ cmd/launch_screen/service/create.go | 70 ++++++++ cmd/launch_screen/service/delete.go | 25 +++ cmd/launch_screen/service/get.go | 29 ++++ cmd/launch_screen/service/mobile_get.go | 149 ++++++++++++++++++ cmd/launch_screen/service/point_time.go | 25 +++ cmd/launch_screen/service/service.go | 29 ++++ cmd/launch_screen/service/update.go | 78 +++++++++ config/config.example.yaml | 13 ++ config/sql/init.sql | 25 ++- go.mod | 4 +- idl/api.thrift | 2 +- 21 files changed, 1045 insertions(+), 33 deletions(-) create mode 100644 cmd/launch_screen/dal/cache/cache.go create mode 100644 cmd/launch_screen/dal/cache/init.go create mode 100644 cmd/launch_screen/dal/db/init.go create mode 100644 cmd/launch_screen/dal/db/mysql.go create mode 100644 cmd/launch_screen/dal/init.go create mode 100644 cmd/launch_screen/pack/pack.go create mode 100644 cmd/launch_screen/service/create.go create mode 100644 cmd/launch_screen/service/delete.go create mode 100644 cmd/launch_screen/service/get.go create mode 100644 cmd/launch_screen/service/mobile_get.go create mode 100644 cmd/launch_screen/service/point_time.go create mode 100644 cmd/launch_screen/service/service.go create mode 100644 cmd/launch_screen/service/update.go diff --git a/cmd/api/biz/handler/api/launch_screen_service.go b/cmd/api/biz/handler/api/launch_screen_service.go index d01cfdd..20fa280 100644 --- a/cmd/api/biz/handler/api/launch_screen_service.go +++ b/cmd/api/biz/handler/api/launch_screen_service.go @@ -163,7 +163,7 @@ func ChangeImageProperty(ctx context.Context, c *app.RequestContext) { respImage, err := rpc.ChangeImagePropertyRPC(ctx, &launch_screen.ChangeImagePropertyRequest{ PictureId: req.PictureID, - PicType: req.Type, + PicType: req.PicType, Duration: req.Duration, Href: req.Href, StartAt: req.StartAt, diff --git a/cmd/api/biz/model/api/api.go b/cmd/api/biz/model/api/api.go index 88b8b9d..b6131f1 100644 --- a/cmd/api/biz/model/api/api.go +++ b/cmd/api/biz/model/api/api.go @@ -2210,7 +2210,7 @@ func (p *GetImageResponse) String() string { type ChangeImagePropertyRequest struct { //1为空,2为页面跳转,3为app跳转 - Type int64 `thrift:"type,1,required" form:"type,required" json:"type,required" query:"type,required"` + PicType int64 `thrift:"pic_type,1,required" form:"pic_type,required" json:"pic_type,required" query:"pic_type,required"` Duration *int64 `thrift:"duration,2,optional" form:"duration" json:"duration,omitempty" query:"duration"` //连接 Href *string `thrift:"href,3,optional" form:"href" json:"href,omitempty" query:"href"` @@ -2234,8 +2234,8 @@ func NewChangeImagePropertyRequest() *ChangeImagePropertyRequest { func (p *ChangeImagePropertyRequest) InitDefault() { } -func (p *ChangeImagePropertyRequest) GetType() (v int64) { - return p.Type +func (p *ChangeImagePropertyRequest) GetPicType() (v int64) { + return p.PicType } var ChangeImagePropertyRequest_Duration_DEFAULT int64 @@ -2293,7 +2293,7 @@ func (p *ChangeImagePropertyRequest) GetRegex() (v string) { } var fieldIDToName_ChangeImagePropertyRequest = map[int16]string{ - 1: "type", + 1: "pic_type", 2: "duration", 3: "href", 4: "start_at", @@ -2319,7 +2319,7 @@ func (p *ChangeImagePropertyRequest) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 - var issetType bool = false + var issetPicType bool = false var issetStartAt bool = false var issetEndAt bool = false var issetSType bool = false @@ -2349,7 +2349,7 @@ func (p *ChangeImagePropertyRequest) Read(iprot thrift.TProtocol) (err error) { if err = p.ReadField1(iprot); err != nil { goto ReadFieldError } - issetType = true + issetPicType = true } else if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } @@ -2463,7 +2463,7 @@ func (p *ChangeImagePropertyRequest) Read(iprot thrift.TProtocol) (err error) { goto ReadStructEndError } - if !issetType { + if !issetPicType { fieldId = 1 goto RequiredFieldNotSetError } @@ -2538,7 +2538,7 @@ func (p *ChangeImagePropertyRequest) ReadField1(iprot thrift.TProtocol) error { } else { _field = v } - p.Type = _field + p.PicType = _field return nil } func (p *ChangeImagePropertyRequest) ReadField2(iprot thrift.TProtocol) error { @@ -2736,10 +2736,10 @@ WriteStructEndError: } func (p *ChangeImagePropertyRequest) writeField1(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("type", thrift.I64, 1); err != nil { + if err = oprot.WriteFieldBegin("pic_type", thrift.I64, 1); err != nil { goto WriteFieldBeginError } - if err := oprot.WriteI64(p.Type); err != nil { + if err := oprot.WriteI64(p.PicType); err != nil { return err } if err = oprot.WriteFieldEnd(); err != nil { diff --git a/cmd/launch_screen/dal/cache/cache.go b/cmd/launch_screen/dal/cache/cache.go new file mode 100644 index 0000000..ee17551 --- /dev/null +++ b/cmd/launch_screen/dal/cache/cache.go @@ -0,0 +1,74 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package cache + +import ( + "context" + "fmt" + + "github.com/bytedance/sonic" + + "github.com/west2-online/fzuhelper-server/pkg/constants" +) + +func IsLaunchScreenCacheExist(ctx context.Context, key string) bool { + return RedisClient.Exists(ctx, key).Val() == 1 +} + +func IsLastLaunchScreenIdCacheExist(ctx context.Context) bool { + return RedisClient.Exists(ctx, constants.LastLaunchScreenIdKey).Val() == 1 +} + +func SetLaunchScreenCache(ctx context.Context, key string, pictureIdList *[]int64) error { + pictureIdListJson, err := sonic.Marshal(pictureIdList) + if err != nil { + return fmt.Errorf("dal.SetLaunchScreenCache: Marshal pictureIdList failed: %w", err) + } + if err = RedisClient.Set(ctx, key, pictureIdListJson, constants.LaunchScreenKeyExpire).Err(); err != nil { + return fmt.Errorf("dal.SetLaunchScreenCache: Set pictureIdList cache failed: %w", err) + } + return nil +} + +func GetLaunchScreenCache(ctx context.Context, key string) (pictureIdList []int64, err error) { + data, err := RedisClient.Get(ctx, key).Result() + if err != nil { + return nil, fmt.Errorf("dal.GetLaunchScreenCache: Get pictureIdList cache failed: %w", err) + } + + if err = sonic.Unmarshal([]byte(data), &pictureIdList); err != nil { + return nil, fmt.Errorf("dal.GetLaunchScreenCache: Unmarshal pictureIdList failed: %w", err) + } + + return pictureIdList, nil +} + +func SetLastLaunchScreenIdCache(ctx context.Context, id int64) error { + if err := RedisClient.Set(ctx, constants.LastLaunchScreenIdKey, id, constants.LaunchScreenKeyExpire).Err(); err != nil { + return fmt.Errorf("dal.SetTotalLaunchScreenCountCache failed: %w", err) + } + return nil +} + +func GetLastLaunchScreenIdCache(ctx context.Context) (int64, error) { + id, err := RedisClient.Get(ctx, constants.LastLaunchScreenIdKey).Int64() + if err != nil { + return -1, fmt.Errorf("dal.GetLaunchScreenCache: Get pictureIdList cache failed: %w", err) + } + + return id, nil +} diff --git a/cmd/launch_screen/dal/cache/init.go b/cmd/launch_screen/dal/cache/init.go new file mode 100644 index 0000000..65ff90a --- /dev/null +++ b/cmd/launch_screen/dal/cache/init.go @@ -0,0 +1,36 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package cache + +import ( + "github.com/redis/go-redis/v9" + + "github.com/west2-online/fzuhelper-server/pkg/client" + "github.com/west2-online/fzuhelper-server/pkg/constants" + "github.com/west2-online/fzuhelper-server/pkg/logger" +) + +var RedisClient *redis.Client + +func InitRedis() { + redisClient, err := client.NewRedisClient(constants.RedisDBLaunchScreen) + if err != nil { + // 如果redis服务启动失败,直接exit + logger.Fatalf("cache.Init failed, err is %v", err) + } + RedisClient = redisClient +} diff --git a/cmd/launch_screen/dal/db/init.go b/cmd/launch_screen/dal/db/init.go new file mode 100644 index 0000000..90e7ce8 --- /dev/null +++ b/cmd/launch_screen/dal/db/init.go @@ -0,0 +1,40 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package db + +import ( + "github.com/west2-online/fzuhelper-server/pkg/client" + "github.com/west2-online/fzuhelper-server/pkg/logger" + "github.com/west2-online/fzuhelper-server/pkg/utils" + + "gorm.io/gorm" + + "github.com/west2-online/fzuhelper-server/pkg/constants" +) + +var ( + DB *gorm.DB + SF *utils.Snowflake + err error +) + +func InitMySQL() { + DB, SF, err = client.InitMySQL(constants.LaunchScreenTableName) + if err != nil { + logger.Fatal(err) + } +} diff --git a/cmd/launch_screen/dal/db/mysql.go b/cmd/launch_screen/dal/db/mysql.go new file mode 100644 index 0000000..98204d7 --- /dev/null +++ b/cmd/launch_screen/dal/db/mysql.go @@ -0,0 +1,148 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package db + +import ( + "context" + "fmt" + "time" + + "gorm.io/gorm" +) + +type Picture struct { + ID int64 + Url string + Href string + Text string + PicType int64 + ShowTimes int64 + PointTimes int64 + Duration int64 + StartAt time.Time // 开始时间 + EndAt time.Time // 结束时间 + StartTime int64 // 开始时段 0~24 + EndTime int64 // 结束时段 0~24 + SType int64 // 类型 + Frequency int64 // 一天展示次数 + Regex string + CreatedAt time.Time + UpdatedAt time.Time + DeletedAt gorm.DeletedAt `sql:"index"` +} + +func CreateImage(ctx context.Context, pictureModel *Picture) (*Picture, error) { + if err = DB.WithContext(ctx).Create(pictureModel).Error; err != nil { + return nil, fmt.Errorf("dal.CreateImage error: %v", err) + } + return pictureModel, nil +} + +func GetImageById(ctx context.Context, id int64) (*Picture, error) { + pictureModel := new(Picture) + if err = DB.WithContext(ctx).Where("id = ?", id).First(pictureModel).Error; err != nil { + return nil, fmt.Errorf("dal.GetImageById error: %v", err) + } + return pictureModel, nil +} + +func DeleteImage(ctx context.Context, id int64) (*Picture, error) { + pictureModel := &Picture{ + ID: id, + } + if err = DB.WithContext(ctx).Take(pictureModel).Error; err != nil { + return nil, fmt.Errorf("dal.DeleteImage error: %v", err) + } + + if err = DB.WithContext(ctx).Delete(pictureModel).Error; err != nil { + return nil, fmt.Errorf("dal.DeleteImage error: %v", err) + } + return pictureModel, nil +} + +func AddPointTime(ctx context.Context, id int64) error { + pictureModel := new(Picture) + if err = DB.WithContext(ctx).Where("id = ?", id).First(pictureModel).Error; err != nil { + return fmt.Errorf("dal.AddPointTime error: %v", err) + } + pictureModel.PointTimes++ + if err = DB.WithContext(ctx).Save(pictureModel).Error; err != nil { + return fmt.Errorf("dal.AddPointTime error: %v", err) + } + return nil +} + +func UpdateImage(ctx context.Context, pictureModel *Picture) (*Picture, error) { + if err = DB.WithContext(ctx).Save(pictureModel).Take(pictureModel).Error; err != nil { + return nil, fmt.Errorf("dal.UpdateImage error: %v", err) + } + return pictureModel, nil +} + +func GetImageBySType(ctx context.Context, sType int64) (*[]Picture, int64, error) { + pictures := new([]Picture) + var count int64 = 0 + now := time.Now().Add(time.Hour * 8) + hour := now.Hour() + 8 + if hour > 24 { + hour -= 24 + } + // 按创建时间降序 + if err = DB.WithContext(ctx). + Where("s_type = ? AND start_at < ? AND end_at > ? AND start_time <= ? AND end_time >= ?", + sType, now, now, hour, hour). + Count(&count).Order("created_at DESC"). + Find(pictures). + Error; err != nil { + return nil, -1, err + } + return pictures, count, nil +} + +func GetLastImageId(ctx context.Context) (int64, error) { + pictureModel := new(Picture) + if err = DB.WithContext(ctx).Last(pictureModel).Error; err != nil { + return -1, fmt.Errorf("dal.GetLastImageId error: %v", err) + } + return pictureModel.ID, nil +} + +func GetImageByIdList(ctx context.Context, imgIdList *[]int64) (*[]Picture, int64, error) { + pictures := new([]Picture) + var count int64 = 0 + now := time.Now().Add(time.Hour * 8) + hour := now.Hour() + 8 + if hour > 24 { + hour -= 24 + } + if err = DB.WithContext(ctx). + Where("id IN ? AND start_at < ? AND end_at > ? AND start_time <= ? AND end_time >= ?", + *imgIdList, now, now, hour, hour).Count(&count).Order("created_at DESC").Find(pictures).Error; err != nil { + return nil, -1, fmt.Errorf("dal.GetImageByIdList error: %v", err) + } + return pictures, count, nil +} + +func AddImageListShowTime(ctx context.Context, pictureList *[]Picture) error { + for i := range *pictureList { + (*pictureList)[i].ShowTimes++ + } + if err = DB.WithContext(ctx).Save(pictureList).Error; err != nil { + return fmt.Errorf("dal.AddImageListShowTime error: %v", err) + } + return nil +} diff --git a/cmd/launch_screen/dal/init.go b/cmd/launch_screen/dal/init.go new file mode 100644 index 0000000..d269416 --- /dev/null +++ b/cmd/launch_screen/dal/init.go @@ -0,0 +1,27 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package dal + +import ( + "github.com/west2-online/fzuhelper-server/cmd/launch_screen/dal/cache" + "github.com/west2-online/fzuhelper-server/cmd/launch_screen/dal/db" +) + +func Init() { + db.InitMySQL() + cache.InitRedis() +} diff --git a/cmd/launch_screen/handler.go b/cmd/launch_screen/handler.go index bdc98d6..85e5223 100644 --- a/cmd/launch_screen/handler.go +++ b/cmd/launch_screen/handler.go @@ -17,50 +17,163 @@ limitations under the License. package main import ( + "bytes" "context" + "github.com/west2-online/fzuhelper-server/cmd/launch_screen/pack" + "github.com/west2-online/fzuhelper-server/cmd/launch_screen/service" + "github.com/west2-online/fzuhelper-server/pkg/logger" + "github.com/west2-online/fzuhelper-server/pkg/upcloud" + launch_screen "github.com/west2-online/fzuhelper-server/kitex_gen/launch_screen" ) // LaunchScreenServiceImpl implements the last service interface defined in the IDL. type LaunchScreenServiceImpl struct{} +// CreateImage implements the LaunchScreenServiceImpl interface. func (s *LaunchScreenServiceImpl) CreateImage(stream launch_screen.LaunchScreenService_CreateImageServer) (err error) { - println("CreateImage called") - return + resp := new(launch_screen.CreateImageResponse) + // 首先取得除文件外的其他字段 + req, err := stream.Recv() + if err != nil { + logger.Infof("LaunchScreen.CreateImage recv request: %v", err) + resp.Base = pack.BuildBaseResp(err) + return stream.SendAndClose(resp) + } + + // 通过第一次获得的count来流式读取 + for i := 0; i < int(req.BufferCount); i++ { + fileReq, err := stream.Recv() + if err != nil { + logger.Infof("LaunchScreen.CreateImage recv file: %v", err) + resp.Base = pack.BuildBaseResp(err) + return stream.SendAndClose(resp) + } + req.Image = bytes.Join([][]byte{req.Image, fileReq.Image}, []byte("")) + } + + pic, err := service.NewLaunchScreenService(context.Background()).CreateImage(req) + if err != nil { + logger.Infof("LaunchScreen.CreateImage: %v", err) + resp.Base = pack.BuildBaseResp(err) + return stream.SendAndClose(resp) + } + resp.Base = pack.BuildBaseResp(nil) + resp.Picture = pack.BuildImageResp(pic) + return stream.SendAndClose(resp) } // GetImage implements the LaunchScreenServiceImpl interface. func (s *LaunchScreenServiceImpl) GetImage(ctx context.Context, req *launch_screen.GetImageRequest) (resp *launch_screen.GetImageResponse, err error) { - // TODO: Your code here... - return + resp = new(launch_screen.GetImageResponse) + + pic, err := service.NewLaunchScreenService(ctx).GetImageById(req.PictureId) + resp.Base = pack.BuildBaseResp(err) + if err != nil { + logger.Infof("LaunchScreen.GetImage: %v", err) + return resp, nil + } + resp.Picture = pack.BuildImageResp(pic) + return resp, nil } // ChangeImageProperty implements the LaunchScreenServiceImpl interface. func (s *LaunchScreenServiceImpl) ChangeImageProperty(ctx context.Context, req *launch_screen.ChangeImagePropertyRequest) (resp *launch_screen.ChangeImagePropertyResponse, err error) { - // TODO: Your code here... - return + resp = new(launch_screen.ChangeImagePropertyResponse) + + origin, err := service.NewLaunchScreenService(ctx).GetImageById(req.PictureId) + if err != nil { + resp.Base = pack.BuildBaseResp(err) + logger.Infof("LaunchScreen.ChangeImageProperty: %v", err) + return resp, nil + } + + pic, err := service.NewLaunchScreenService(ctx).UpdateImageProperty(req, origin) + resp.Base = pack.BuildBaseResp(err) + if err != nil { + logger.Infof("LaunchScreen.ChangeImageProperty: %v", err) + return resp, nil + } + resp.Picture = pack.BuildImageResp(pic) + return resp, nil } +// ChangeImage implements the LaunchScreenServiceImpl interface. func (s *LaunchScreenServiceImpl) ChangeImage(stream launch_screen.LaunchScreenService_ChangeImageServer) (err error) { - println("ChangeImage called") - return + resp := new(launch_screen.ChangeImageResponse) + // 首先取得除文件外的其他字段 + req, err := stream.Recv() + if err != nil { + logger.Infof("LaunchScreen.ChangeImage recv request: %v", err) + resp.Base = pack.BuildBaseResp(err) + return stream.SendAndClose(resp) + } + + // 通过第一次获得的count来流式读取 + for i := 0; i < int(req.BufferCount); i++ { + fileReq, err := stream.Recv() + if err != nil { + logger.Infof("LaunchScreen.ChangeImage recv file: %v", err) + resp.Base = pack.BuildBaseResp(err) + return stream.SendAndClose(resp) + } + req.Image = bytes.Join([][]byte{req.Image, fileReq.Image}, []byte("")) + } + pic, err := service.NewLaunchScreenService(context.Background()).UpdateImagePath(req) + if err != nil { + logger.Infof("LaunchScreen.ChangeImage: %v", err) + resp.Base = pack.BuildBaseResp(err) + return stream.SendAndClose(resp) + } + resp.Base = pack.BuildBaseResp(nil) + resp.Picture = pack.BuildImageResp(pic) + return stream.SendAndClose(resp) } // DeleteImage implements the LaunchScreenServiceImpl interface. func (s *LaunchScreenServiceImpl) DeleteImage(ctx context.Context, req *launch_screen.DeleteImageRequest) (resp *launch_screen.DeleteImageResponse, err error) { - // TODO: Your code here... - return + resp = new(launch_screen.DeleteImageResponse) + + pic, err := service.NewLaunchScreenService(ctx).DeleteImage(req.PictureId) + if err != nil { + resp.Base = pack.BuildBaseResp(err) + logger.Infof("LaunchScreen.DeleteImage: %v", err) + return resp, nil + } + if err = upcloud.DeleteImg(pic.Url); err != nil { + resp.Base = pack.BuildBaseResp(err) + logger.Infof("LaunchScreen.DeleteImage: %v", err) + return resp, nil + } + resp.Base = pack.BuildBaseResp(nil) + resp.Picture = pack.BuildImageResp(pic) + return resp, nil } // MobileGetImage implements the LaunchScreenServiceImpl interface. func (s *LaunchScreenServiceImpl) MobileGetImage(ctx context.Context, req *launch_screen.MobileGetImageRequest) (resp *launch_screen.MobileGetImageResponse, err error) { - // TODO: Your code here... - return + resp = new(launch_screen.MobileGetImageResponse) + pictureList, cnt, err := service.NewLaunchScreenService(ctx).MobileGetImage(req) + if err != nil { + resp.Base = pack.BuildBaseResp(err) + logger.Infof("LaunchScreen.MobileGetImage: %v", err) + return resp, nil + } + + resp.Base = pack.BuildBaseResp(nil) + resp.Count = &cnt + resp.PictureList = pack.BuildImagesResp(pictureList) + return resp, nil } // AddImagePointTime implements the LaunchScreenServiceImpl interface. func (s *LaunchScreenServiceImpl) AddImagePointTime(ctx context.Context, req *launch_screen.AddImagePointTimeRequest) (resp *launch_screen.AddImagePointTimeResponse, err error) { - // TODO: Your code here... - return + resp = new(launch_screen.AddImagePointTimeResponse) + err = service.NewLaunchScreenService(ctx).AddPointTime(req.PictureId) + resp.Base = pack.BuildBaseResp(err) + if err != nil { + logger.Infof("LaunchScreen.AddImagePointTime: %v", err) + } + return resp, nil } diff --git a/cmd/launch_screen/main.go b/cmd/launch_screen/main.go index 71e55be..e826d30 100644 --- a/cmd/launch_screen/main.go +++ b/cmd/launch_screen/main.go @@ -17,16 +17,73 @@ limitations under the License. package main import ( - "log" + "flag" + "github.com/cloudwego/kitex/pkg/limit" + "github.com/cloudwego/kitex/pkg/rpcinfo" + "github.com/cloudwego/kitex/server" + "github.com/cloudwego/netpoll" + elastic "github.com/elastic/go-elasticsearch" + etcd "github.com/kitex-contrib/registry-etcd" + kopentracing "github.com/kitex-contrib/tracer-opentracing" + + "github.com/west2-online/fzuhelper-server/cmd/launch_screen/dal" + "github.com/west2-online/fzuhelper-server/config" launch_screen "github.com/west2-online/fzuhelper-server/kitex_gen/launch_screen/launchscreenservice" + "github.com/west2-online/fzuhelper-server/pkg/constants" + "github.com/west2-online/fzuhelper-server/pkg/logger" + "github.com/west2-online/fzuhelper-server/pkg/tracer" + "github.com/west2-online/fzuhelper-server/pkg/utils" +) + +var ( + path *string + EsClient *elastic.Client ) +func Init() { + path = flag.String("config", "./config", "config path") + flag.Parse() + config.Init(*path, constants.LaunchScreenServiceName) + dal.Init() + tracer.InitJaeger(constants.LaunchScreenServiceName) +} + func main() { - svr := launch_screen.NewServer(new(LaunchScreenServiceImpl)) + Init() + r, err := etcd.NewEtcdRegistry([]string{config.Etcd.Addr}) + if err != nil { + logger.Fatalf("launchScreen: etcd registry failed, error: %v", err) + } + + listenAddr, err := utils.GetAvailablePort() + if err != nil { + logger.Fatalf("launchScreen: get available port failed: %v", err) + } + + serviceAddr, err := netpoll.ResolveTCPAddr("tcp", listenAddr) + if err != nil { + logger.Fatalf("launchScreen: listen addr failed %v", err) + } + + svr := launch_screen.NewServer(new(LaunchScreenServiceImpl), // 指定 Registry 与服务基本信息 + server.WithServerBasicInfo( + &rpcinfo.EndpointBasicInfo{ + ServiceName: constants.LaunchScreenServiceName, + }), + server.WithSuite(kopentracing.NewDefaultServerSuite()), // jaeger + server.WithRegistry(r), + server.WithServiceAddr(serviceAddr), + server.WithLimit( + &limit.Option{ + MaxConnections: constants.MaxConnections, + MaxQPS: constants.MaxQPS, + }, + ), + ) - err := svr.Run() + err = svr.Run() if err != nil { - log.Println(err.Error()) + logger.Fatalf("launchScreen: server run failed: %v", err) } } diff --git a/cmd/launch_screen/pack/pack.go b/cmd/launch_screen/pack/pack.go new file mode 100644 index 0000000..f3dd126 --- /dev/null +++ b/cmd/launch_screen/pack/pack.go @@ -0,0 +1,76 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package pack + +import ( + "errors" + + "github.com/west2-online/fzuhelper-server/cmd/launch_screen/dal/db" + + "github.com/west2-online/fzuhelper-server/kitex_gen/model" + + "github.com/west2-online/jwch/errno" +) + +func BuildBaseResp(err error) *model.BaseResp { + if err == nil { + return ErrToResp(errno.Success) + } + + e := errno.ErrNo{} + if errors.As(err, &e) { + return ErrToResp(e) + } + + e = errno.ServiceError.WithMessage(err.Error()) // 未知错误 + return ErrToResp(e) +} + +func ErrToResp(err errno.ErrNo) *model.BaseResp { + return &model.BaseResp{ + Code: err.ErrorCode, + Msg: err.ErrorMsg, + } +} + +func BuildImageResp(dbP *db.Picture) *model.Picture { + return &model.Picture{ + Id: dbP.ID, + Url: dbP.Url, + Href: dbP.Href, + Text: dbP.Text, + Type: dbP.PicType, + ShowTimes: &dbP.ShowTimes, + PointTimes: &dbP.PointTimes, + Duration: dbP.Duration, + SType: &dbP.SType, + Frequency: dbP.Frequency, + StartAt: dbP.StartAt.Unix(), + EndAt: dbP.EndAt.Unix(), + StartTime: dbP.StartTime, + EndTime: dbP.EndTime, + Regex: dbP.Regex, + } +} + +func BuildImagesResp(dbPictures *[]db.Picture) []*model.Picture { + var pictureList []*model.Picture + for _, msg := range *dbPictures { + pictureList = append(pictureList, BuildImageResp(&msg)) + } + return pictureList +} diff --git a/cmd/launch_screen/service/create.go b/cmd/launch_screen/service/create.go new file mode 100644 index 0000000..a557312 --- /dev/null +++ b/cmd/launch_screen/service/create.go @@ -0,0 +1,70 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package service + +import ( + "fmt" + "time" + + "golang.org/x/sync/errgroup" + + "github.com/west2-online/fzuhelper-server/kitex_gen/launch_screen" + "github.com/west2-online/fzuhelper-server/pkg/upcloud" + + "github.com/west2-online/fzuhelper-server/pkg/utils" + + "github.com/west2-online/fzuhelper-server/cmd/launch_screen/dal/db" +) + +func (s *LaunchScreenService) CreateImage(req *launch_screen.CreateImageRequest) (pic *db.Picture, err error) { + Loc := utils.LoadCNLocation() + id, err := db.SF.NextVal() + if err != nil { + return nil, fmt.Errorf("LaunchScreen.CreateImage SFCreateIDError:%v", err.Error()) + } + imgUrl := upcloud.GenerateImgName(req.StuId) + + var eg errgroup.Group + eg.Go(func() error { + pictureModel := &db.Picture{ + ID: id, + Url: imgUrl, + Href: *req.Href, + Text: req.Text, + PicType: req.PicType, + ShowTimes: 0, + PointTimes: 0, + Duration: *req.Duration, + SType: req.SType, + Frequency: req.Frequency, + StartTime: req.StartTime, + EndTime: req.EndTime, + Regex: req.Regex, + StartAt: time.Unix(req.StartAt, 0).In(Loc), + EndAt: time.Unix(req.EndAt, 0).In(Loc), + } + pic, err = db.CreateImage(s.ctx, pictureModel) + return err + }) + eg.Go(func() error { + return upcloud.UploadImg(req.Image, imgUrl) + }) + if err = eg.Wait(); err != nil { + return nil, err + } + return pic, nil +} diff --git a/cmd/launch_screen/service/delete.go b/cmd/launch_screen/service/delete.go new file mode 100644 index 0000000..273f49b --- /dev/null +++ b/cmd/launch_screen/service/delete.go @@ -0,0 +1,25 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package service + +import ( + "github.com/west2-online/fzuhelper-server/cmd/launch_screen/dal/db" +) + +func (s *LaunchScreenService) DeleteImage(id int64) (*db.Picture, error) { + return db.DeleteImage(s.ctx, id) +} diff --git a/cmd/launch_screen/service/get.go b/cmd/launch_screen/service/get.go new file mode 100644 index 0000000..13b25e1 --- /dev/null +++ b/cmd/launch_screen/service/get.go @@ -0,0 +1,29 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package service + +import ( + "github.com/west2-online/fzuhelper-server/cmd/launch_screen/dal/db" +) + +func (s *LaunchScreenService) GetImageById(id int64) (*db.Picture, error) { + img, err := db.GetImageById(s.ctx, id) + if err != nil { + return nil, err + } + return img, nil +} diff --git a/cmd/launch_screen/service/mobile_get.go b/cmd/launch_screen/service/mobile_get.go new file mode 100644 index 0000000..de60e49 --- /dev/null +++ b/cmd/launch_screen/service/mobile_get.go @@ -0,0 +1,149 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package service + +import ( + "regexp" + "strconv" + + "github.com/bytedance/sonic" + "golang.org/x/sync/errgroup" + + "github.com/west2-online/fzuhelper-server/cmd/launch_screen/dal/cache" + "github.com/west2-online/fzuhelper-server/cmd/launch_screen/dal/db" + "github.com/west2-online/fzuhelper-server/kitex_gen/launch_screen" + "github.com/west2-online/fzuhelper-server/pkg/errno" + "github.com/west2-online/fzuhelper-server/pkg/utils" +) + +func (s *LaunchScreenService) MobileGetImage(req *launch_screen.MobileGetImageRequest) (respList *[]db.Picture, cntResp int64, err error) { + getFromMysql := false + if !cache.IsLaunchScreenCacheExist(s.ctx, utils.GenerateRedisKeyByStuId(req.StudentId, req.SType)) { + // no cache exist + getFromMysql = true + } + + if !getFromMysql { + if cache.IsLastLaunchScreenIdCacheExist(s.ctx) { + id, err := db.GetLastImageId(s.ctx) + if err != nil { + return nil, -1, err + } + cacheId, err := cache.GetLastLaunchScreenIdCache(s.ctx) + if err != nil { + return nil, -1, err + } + // 当最新存入图片id与缓存中的不一致时,需要重新获取 + if cacheId != id { + getFromMysql = true + } + } + } + + if getFromMysql { + // 获取符合当前时间的imgList + imgList, cnt, err := db.GetImageBySType(s.ctx, req.SType) + if err != nil { + return nil, -1, err + } + // 没有符合条件的图片 + if cnt == 0 { + return nil, 0, errno.NoRunningPictureError + } + + // 从中筛选出JSON含当前学号的图片(regex) + cntResp = 0 + currentImgList := make([]db.Picture, 0) + for _, picture := range *imgList { + // 处理JSON + m := make(map[string]string) + if err = sonic.Unmarshal([]byte(picture.Regex), &m); err != nil { + return nil, -1, err + } + + match := false + for k, v := range m { + if k == "picture_id" || k == "device" { + continue + } + // 此时key是student_id,value是学号JSON + match, err = regexp.MatchString(strconv.Itoa(int(req.StudentId)), v) + if err != nil { + continue + } + if !match { + continue + } + } + if match { + cntResp++ + currentImgList = append(currentImgList, picture) + } + } + + if cntResp != 0 { + var eg errgroup.Group + eg.Go(func() error { + // addShowTime + return db.AddImageListShowTime(s.ctx, imgList) + }) + eg.Go(func() error { + // setIdCache + imgIdList := make([]int64, len(*imgList)) + + for i, img := range *imgList { + imgIdList[i] = img.ID + } + return cache.SetLaunchScreenCache(s.ctx, utils.GenerateRedisKeyByStuId(req.StudentId, req.SType), &imgIdList) + }) + eg.Go(func() error { + // setExpireCheckCache + id, err := db.GetLastImageId(s.ctx) + if err != nil { + return err + } + if err = cache.SetLastLaunchScreenIdCache(s.ctx, id); err != nil { + return err + } + return nil + }) + if err = eg.Wait(); err != nil { + return nil, -1, err + } + } else { + return nil, 0, errno.NoRunningPictureError + } + + return ¤tImgList, cntResp, nil + } + + // 直接从缓存中获取id + imgIdList, err := cache.GetLaunchScreenCache(s.ctx, utils.GenerateRedisKeyByStuId(req.StudentId, req.SType)) + if err != nil { + return nil, -1, err + } + respList, cntResp, err = db.GetImageByIdList(s.ctx, &imgIdList) + if err != nil { + return nil, -1, err + } + // addShowtime + if err = db.AddImageListShowTime(s.ctx, respList); err != nil { + return nil, -1, err + } + + return respList, cntResp, nil +} diff --git a/cmd/launch_screen/service/point_time.go b/cmd/launch_screen/service/point_time.go new file mode 100644 index 0000000..137d332 --- /dev/null +++ b/cmd/launch_screen/service/point_time.go @@ -0,0 +1,25 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package service + +import ( + "github.com/west2-online/fzuhelper-server/cmd/launch_screen/dal/db" +) + +func (s *LaunchScreenService) AddPointTime(id int64) error { + return db.AddPointTime(s.ctx, id) +} diff --git a/cmd/launch_screen/service/service.go b/cmd/launch_screen/service/service.go new file mode 100644 index 0000000..7f3350f --- /dev/null +++ b/cmd/launch_screen/service/service.go @@ -0,0 +1,29 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package service + +import ( + "context" +) + +type LaunchScreenService struct { + ctx context.Context +} + +func NewLaunchScreenService(ctx context.Context) *LaunchScreenService { + return &LaunchScreenService{ctx: ctx} +} diff --git a/cmd/launch_screen/service/update.go b/cmd/launch_screen/service/update.go new file mode 100644 index 0000000..50c4bb6 --- /dev/null +++ b/cmd/launch_screen/service/update.go @@ -0,0 +1,78 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package service + +import ( + "time" + + "golang.org/x/sync/errgroup" + + "github.com/west2-online/fzuhelper-server/pkg/upcloud" + + "github.com/west2-online/fzuhelper-server/pkg/utils" + + "github.com/west2-online/fzuhelper-server/cmd/launch_screen/dal/db" + "github.com/west2-online/fzuhelper-server/kitex_gen/launch_screen" +) + +func (s *LaunchScreenService) UpdateImageProperty(req *launch_screen.ChangeImagePropertyRequest, origin *db.Picture) (*db.Picture, error) { + Loc := utils.LoadCNLocation() + origin.PicType = req.PicType + origin.SType = req.SType + origin.Duration = *req.Duration + origin.Href = *req.Href + origin.Frequency = req.Frequency + origin.Text = req.Text + origin.StartAt = time.Unix(req.StartAt, 0).In(Loc) + origin.EndAt = time.Unix(req.EndAt, 0).In(Loc) + origin.StartTime = req.StartTime + origin.EndTime = req.EndTime + origin.Regex = req.Regex + return db.UpdateImage(s.ctx, origin) +} + +func (s *LaunchScreenService) UpdateImagePath(req *launch_screen.ChangeImageRequest) (pic *db.Picture, err error) { + origin, err := db.GetImageById(s.ctx, req.PictureId) + if err != nil { + return nil, err + } + + delUrl := origin.Url + imgUrl := upcloud.GenerateImgName(req.PictureId) + + var eg errgroup.Group + eg.Go(func() error { + err = upcloud.DeleteImg(delUrl) + if err != nil { + return err + } + err = upcloud.UploadImg(req.Image, imgUrl) + if err != nil { + return err + } + return nil + }) + eg.Go(func() error { + origin.Url = imgUrl + pic, err = db.UpdateImage(s.ctx, origin) + return err + }) + if err = eg.Wait(); err != nil { + return nil, err + } + return pic, nil +} diff --git a/config/config.example.yaml b/config/config.example.yaml index 002cb0a..8e13e5b 100644 --- a/config/config.example.yaml +++ b/config/config.example.yaml @@ -28,6 +28,13 @@ oss: bucketname: "" main-directory: fzuhelper +upcloud: + Service: "" + User: "" + Pass: "" + DomainName: "" + Path: "/pictures/" + elasticsearch: addr: 127.0.0.1:9200 host: 127.0.0.1 @@ -68,3 +75,9 @@ services: load-balance: false addr: - 0.0.0.0:20003 + + launch_screen: + name: launch_screen + load-balance: false + addr: + - 0.0.0.0:20004 diff --git a/config/sql/init.sql b/config/sql/init.sql index 46e7fc3..02c006b 100644 --- a/config/sql/init.sql +++ b/config/sql/init.sql @@ -96,4 +96,27 @@ create table `fzu-helper`.`mark` foreign key (`stu_id`) references `fzu-helper`.`student` (`id`) on delete cascade -)engine=InnoDB default charset=utf8mb4; \ No newline at end of file +)engine=InnoDB default charset=utf8mb4; + +create table `fzu-helper`.`launch_screen`( + `id` bigint NOT NULL COMMENT 'ID', + `url` varchar(512) NULL COMMENT '图片url', + `href` varchar(255) NULL COMMENT '示例:"Toapp:abab"', + `text` varchar(255) NULL COMMENT '图片描述', + `pic_type` bigint NOT NULL DEFAULT 1 COMMENT '1为空,2为页面跳转,3为app跳转', + `show_times` bigint NOT NULL DEFAULT 0 COMMENT '展示次数(GetMobileImage)', + `point_times` bigint NOT NULL DEFAULT 0 COMMENT '点击次数(AddPointTime)', + `duration` bigint NOT NULL DEFAULT 3 COMMENT '展示时间,直接从客户端传入的值', + `start_at` timestamp NULL COMMENT '开始时间', + `end_at` timestamp NULL COMMENT '结束时间', + `start_time` bigint NOT NULL DEFAULT 0 COMMENT '开始时段 0-24', + `end_time` bigint NOT NULL DEFAULT 24 COMMENT '结束时段 0-24', + `s_type` bigint NULL COMMENT '类型', + `frequency` bigint NULL COMMENT '一天展示频率', + `regex` mediumtext NOT NULL COMMENT '存储所有投放学生学号的json', + `created_at` timestamp NOT NULL DEFAULT current_timestamp , + `updated_at` timestamp NOT NULL DEFAULT current_timestamp ON UPDATE current_timestamp, + `deleted_at` timestamp NULL DEFAULT NULL, + constraint `id` + primary key (`id`) +)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; diff --git a/go.mod b/go.mod index 423068b..397f0aa 100644 --- a/go.mod +++ b/go.mod @@ -78,14 +78,14 @@ require ( cloud.google.com/go/longrunning v0.6.1 // indirect github.com/armon/go-metrics v0.4.1 // indirect github.com/bytedance/gopkg v0.1.1 // indirect - github.com/bytedance/sonic v1.12.3 // indirect + github.com/bytedance/sonic v1.12.3 github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/cloudwego/configmanager v0.2.2 // indirect github.com/cloudwego/dynamicgo v0.4.2 // indirect github.com/cloudwego/fastpb v0.0.5 // indirect github.com/cloudwego/frugal v0.2.0 // indirect github.com/cloudwego/localsession v0.1.0 // indirect - github.com/cloudwego/netpoll v0.6.4 // indirect + github.com/cloudwego/netpoll v0.6.4 github.com/cloudwego/thriftgo v0.3.17 // indirect github.com/coreos/go-semver v0.3.1 // indirect github.com/coreos/go-systemd/v22 v22.5.0 // indirect diff --git a/idl/api.thrift b/idl/api.thrift index 7725be2..ceeb215 100644 --- a/idl/api.thrift +++ b/idl/api.thrift @@ -66,7 +66,7 @@ struct GetImageResponse{ struct ChangeImagePropertyRequest { - 1: required i64 type,//1为空,2为页面跳转,3为app跳转 + 1: required i64 pic_type,//1为空,2为页面跳转,3为app跳转 2: optional i64 duration, 3: optional string href,//连接 4: required i64 start_at, From 22ad23014f4ab56b44473996c651502f2cc1d645 Mon Sep 17 00:00:00 2001 From: mutezebra Date: Fri, 18 Oct 2024 11:12:22 +0800 Subject: [PATCH 11/19] fix: update license --- cmd/template/main.go | 6 +++--- pkg/client/es.go | 16 ++++++++++++++++ 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/cmd/template/main.go b/cmd/template/main.go index a8e39cb..5e37dba 100644 --- a/cmd/template/main.go +++ b/cmd/template/main.go @@ -48,6 +48,9 @@ func Init() { flag.Parse() config.Init(*path, serviceName) + // log + utils.InitLoggerWithHook(serviceName) + // dal dal.Init() @@ -56,9 +59,6 @@ func Init() { // rpc rpc.Init() - - // log - utils.InitLoggerWithHook(serviceName) } func main() { diff --git a/pkg/client/es.go b/pkg/client/es.go index 42de1a4..20d28b2 100644 --- a/pkg/client/es.go +++ b/pkg/client/es.go @@ -1,3 +1,19 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + package client import ( From 507f1565263caf23400003487f34d2d9f67886e7 Mon Sep 17 00:00:00 2001 From: mutezebra Date: Fri, 18 Oct 2024 14:31:43 +0800 Subject: [PATCH 12/19] style: transfer the configuration of the hook from eshook to logger package --- pkg/{eshook => logger}/eshook.go | 2 +- pkg/utils/utils.go | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) rename pkg/{eshook => logger}/eshook.go (99%) diff --git a/pkg/eshook/eshook.go b/pkg/logger/eshook.go similarity index 99% rename from pkg/eshook/eshook.go rename to pkg/logger/eshook.go index 60f736d..edae3d0 100644 --- a/pkg/eshook/eshook.go +++ b/pkg/logger/eshook.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -package eshook +package logger import ( "bytes" diff --git a/pkg/utils/utils.go b/pkg/utils/utils.go index c7ca67b..cf9ce4a 100644 --- a/pkg/utils/utils.go +++ b/pkg/utils/utils.go @@ -29,7 +29,6 @@ import ( "go.uber.org/zap" "github.com/west2-online/fzuhelper-server/pkg/client" - "github.com/west2-online/fzuhelper-server/pkg/eshook" "github.com/west2-online/fzuhelper-server/pkg/logger" "github.com/west2-online/fzuhelper-server/pkg/constants" @@ -70,13 +69,15 @@ func GetEsHost() (string, error) { return config.Elasticsearch.Host, nil } +// InitLoggerWithHook 初始化带有EsHook的logger +// index: 索引的名字 func InitLoggerWithHook(index string) { c, err := client.NewEsClient() if err != nil { panic(err) } - hook := eshook.NewElasticHook(c, config.Elasticsearch.Host, index) + hook := logger.NewElasticHook(c, config.Elasticsearch.Host, index) v := logger.DefaultLogger(zap.Hooks(hook.Fire)) klog.SetLogger(v) } From e703752d573180fb6ff9b646acaf518d69ec3b8c Mon Sep 17 00:00:00 2001 From: FantasyRL <1845983502@qq.com> Date: Fri, 18 Oct 2024 15:01:27 +0800 Subject: [PATCH 13/19] fix:some reviews --- .../dal/db/{mysql.go => image.go} | 0 cmd/launch_screen/handler.go | 4 +- .../service/{create.go => create_image.go} | 2 +- .../service/{delete.go => delete_image.go} | 8 +++- .../service/{get.go => get_image.go} | 4 +- cmd/launch_screen/service/mobile_get.go | 17 +++---- cmd/launch_screen/service/point_time.go | 8 +++- .../service/{update.go => update_image.go} | 24 ++-------- .../service/update_image_property.go | 46 +++++++++++++++++++ pkg/client/rpc.go | 6 +-- 10 files changed, 81 insertions(+), 38 deletions(-) rename cmd/launch_screen/dal/db/{mysql.go => image.go} (100%) rename cmd/launch_screen/service/{create.go => create_image.go} (95%) rename cmd/launch_screen/service/{delete.go => delete_image.go} (81%) rename cmd/launch_screen/service/{get.go => get_image.go} (90%) rename cmd/launch_screen/service/{update.go => update_image.go} (68%) create mode 100644 cmd/launch_screen/service/update_image_property.go diff --git a/cmd/launch_screen/dal/db/mysql.go b/cmd/launch_screen/dal/db/image.go similarity index 100% rename from cmd/launch_screen/dal/db/mysql.go rename to cmd/launch_screen/dal/db/image.go diff --git a/cmd/launch_screen/handler.go b/cmd/launch_screen/handler.go index 85e5223..6a602a9 100644 --- a/cmd/launch_screen/handler.go +++ b/cmd/launch_screen/handler.go @@ -53,7 +53,7 @@ func (s *LaunchScreenServiceImpl) CreateImage(stream launch_screen.LaunchScreenS req.Image = bytes.Join([][]byte{req.Image, fileReq.Image}, []byte("")) } - pic, err := service.NewLaunchScreenService(context.Background()).CreateImage(req) + pic, err := service.NewLaunchScreenService(stream.Context()).CreateImage(req) if err != nil { logger.Infof("LaunchScreen.CreateImage: %v", err) resp.Base = pack.BuildBaseResp(err) @@ -120,7 +120,7 @@ func (s *LaunchScreenServiceImpl) ChangeImage(stream launch_screen.LaunchScreenS } req.Image = bytes.Join([][]byte{req.Image, fileReq.Image}, []byte("")) } - pic, err := service.NewLaunchScreenService(context.Background()).UpdateImagePath(req) + pic, err := service.NewLaunchScreenService(stream.Context()).UpdateImagePath(req) if err != nil { logger.Infof("LaunchScreen.ChangeImage: %v", err) resp.Base = pack.BuildBaseResp(err) diff --git a/cmd/launch_screen/service/create.go b/cmd/launch_screen/service/create_image.go similarity index 95% rename from cmd/launch_screen/service/create.go rename to cmd/launch_screen/service/create_image.go index a557312..6c3f502 100644 --- a/cmd/launch_screen/service/create.go +++ b/cmd/launch_screen/service/create_image.go @@ -64,7 +64,7 @@ func (s *LaunchScreenService) CreateImage(req *launch_screen.CreateImageRequest) return upcloud.UploadImg(req.Image, imgUrl) }) if err = eg.Wait(); err != nil { - return nil, err + return nil, fmt.Errorf("LaunchScreenService.CreateImage error:%v", err.Error()) } return pic, nil } diff --git a/cmd/launch_screen/service/delete.go b/cmd/launch_screen/service/delete_image.go similarity index 81% rename from cmd/launch_screen/service/delete.go rename to cmd/launch_screen/service/delete_image.go index 273f49b..8ba738e 100644 --- a/cmd/launch_screen/service/delete.go +++ b/cmd/launch_screen/service/delete_image.go @@ -17,9 +17,15 @@ limitations under the License. package service import ( + "fmt" + "github.com/west2-online/fzuhelper-server/cmd/launch_screen/dal/db" ) func (s *LaunchScreenService) DeleteImage(id int64) (*db.Picture, error) { - return db.DeleteImage(s.ctx, id) + pic, err := db.DeleteImage(s.ctx, id) + if err != nil { + return nil, fmt.Errorf("LaunchScreenService.DeleteImage error:%v", err.Error()) + } + return pic, nil } diff --git a/cmd/launch_screen/service/get.go b/cmd/launch_screen/service/get_image.go similarity index 90% rename from cmd/launch_screen/service/get.go rename to cmd/launch_screen/service/get_image.go index 13b25e1..23d47a3 100644 --- a/cmd/launch_screen/service/get.go +++ b/cmd/launch_screen/service/get_image.go @@ -17,13 +17,15 @@ limitations under the License. package service import ( + "fmt" + "github.com/west2-online/fzuhelper-server/cmd/launch_screen/dal/db" ) func (s *LaunchScreenService) GetImageById(id int64) (*db.Picture, error) { img, err := db.GetImageById(s.ctx, id) if err != nil { - return nil, err + return nil, fmt.Errorf("LaunchScreenService.GetImageById error:%v", err.Error()) } return img, nil } diff --git a/cmd/launch_screen/service/mobile_get.go b/cmd/launch_screen/service/mobile_get.go index de60e49..edbdaa0 100644 --- a/cmd/launch_screen/service/mobile_get.go +++ b/cmd/launch_screen/service/mobile_get.go @@ -17,6 +17,7 @@ limitations under the License. package service import ( + "fmt" "regexp" "strconv" @@ -41,11 +42,11 @@ func (s *LaunchScreenService) MobileGetImage(req *launch_screen.MobileGetImageRe if cache.IsLastLaunchScreenIdCacheExist(s.ctx) { id, err := db.GetLastImageId(s.ctx) if err != nil { - return nil, -1, err + return nil, -1, fmt.Errorf("LaunchScreenService.MobileGetImage db.GetLastImageId error:%v", err.Error()) } cacheId, err := cache.GetLastLaunchScreenIdCache(s.ctx) if err != nil { - return nil, -1, err + return nil, -1, fmt.Errorf("LaunchScreenService.MobileGetImage cache.GetLastLaunchScreenIdCache error:%v", err.Error()) } // 当最新存入图片id与缓存中的不一致时,需要重新获取 if cacheId != id { @@ -58,7 +59,7 @@ func (s *LaunchScreenService) MobileGetImage(req *launch_screen.MobileGetImageRe // 获取符合当前时间的imgList imgList, cnt, err := db.GetImageBySType(s.ctx, req.SType) if err != nil { - return nil, -1, err + return nil, -1, fmt.Errorf("LaunchScreenService.MobileGetImage db.GetImageBySType error:%v", err.Error()) } // 没有符合条件的图片 if cnt == 0 { @@ -72,7 +73,7 @@ func (s *LaunchScreenService) MobileGetImage(req *launch_screen.MobileGetImageRe // 处理JSON m := make(map[string]string) if err = sonic.Unmarshal([]byte(picture.Regex), &m); err != nil { - return nil, -1, err + return nil, -1, fmt.Errorf("LaunchScreenService.MobileGetImage unmarshal JSON error:%v", err.Error()) } match := false @@ -122,7 +123,7 @@ func (s *LaunchScreenService) MobileGetImage(req *launch_screen.MobileGetImageRe return nil }) if err = eg.Wait(); err != nil { - return nil, -1, err + return nil, -1, fmt.Errorf("LaunchScreenService.MobileGetImage set cache error:%v", err.Error()) } } else { return nil, 0, errno.NoRunningPictureError @@ -134,15 +135,15 @@ func (s *LaunchScreenService) MobileGetImage(req *launch_screen.MobileGetImageRe // 直接从缓存中获取id imgIdList, err := cache.GetLaunchScreenCache(s.ctx, utils.GenerateRedisKeyByStuId(req.StudentId, req.SType)) if err != nil { - return nil, -1, err + return nil, -1, fmt.Errorf("LaunchScreenService.MobileGetImage cache.GetLaunchScreenCache error:%v", err.Error()) } respList, cntResp, err = db.GetImageByIdList(s.ctx, &imgIdList) if err != nil { - return nil, -1, err + return nil, -1, fmt.Errorf("LaunchScreenService.MobileGetImage db.GetImageByIdList error:%v", err.Error()) } // addShowtime if err = db.AddImageListShowTime(s.ctx, respList); err != nil { - return nil, -1, err + return nil, -1, fmt.Errorf("LaunchScreenService.MobileGetImage db.AddImageListShowTime error:%v", err.Error()) } return respList, cntResp, nil diff --git a/cmd/launch_screen/service/point_time.go b/cmd/launch_screen/service/point_time.go index 137d332..6f4072f 100644 --- a/cmd/launch_screen/service/point_time.go +++ b/cmd/launch_screen/service/point_time.go @@ -17,9 +17,15 @@ limitations under the License. package service import ( + "fmt" + "github.com/west2-online/fzuhelper-server/cmd/launch_screen/dal/db" ) func (s *LaunchScreenService) AddPointTime(id int64) error { - return db.AddPointTime(s.ctx, id) + err := db.AddPointTime(s.ctx, id) + if err != nil { + return fmt.Errorf("LaunchScreenService.AddPointTime err: %v", err) + } + return nil } diff --git a/cmd/launch_screen/service/update.go b/cmd/launch_screen/service/update_image.go similarity index 68% rename from cmd/launch_screen/service/update.go rename to cmd/launch_screen/service/update_image.go index 50c4bb6..7576f04 100644 --- a/cmd/launch_screen/service/update.go +++ b/cmd/launch_screen/service/update_image.go @@ -17,38 +17,20 @@ limitations under the License. package service import ( - "time" + "fmt" "golang.org/x/sync/errgroup" "github.com/west2-online/fzuhelper-server/pkg/upcloud" - "github.com/west2-online/fzuhelper-server/pkg/utils" - "github.com/west2-online/fzuhelper-server/cmd/launch_screen/dal/db" "github.com/west2-online/fzuhelper-server/kitex_gen/launch_screen" ) -func (s *LaunchScreenService) UpdateImageProperty(req *launch_screen.ChangeImagePropertyRequest, origin *db.Picture) (*db.Picture, error) { - Loc := utils.LoadCNLocation() - origin.PicType = req.PicType - origin.SType = req.SType - origin.Duration = *req.Duration - origin.Href = *req.Href - origin.Frequency = req.Frequency - origin.Text = req.Text - origin.StartAt = time.Unix(req.StartAt, 0).In(Loc) - origin.EndAt = time.Unix(req.EndAt, 0).In(Loc) - origin.StartTime = req.StartTime - origin.EndTime = req.EndTime - origin.Regex = req.Regex - return db.UpdateImage(s.ctx, origin) -} - func (s *LaunchScreenService) UpdateImagePath(req *launch_screen.ChangeImageRequest) (pic *db.Picture, err error) { origin, err := db.GetImageById(s.ctx, req.PictureId) if err != nil { - return nil, err + return nil, fmt.Errorf("LaunchScreenService.UpdateImagePath db.GetImageById error: %v", err) } delUrl := origin.Url @@ -72,7 +54,7 @@ func (s *LaunchScreenService) UpdateImagePath(req *launch_screen.ChangeImageRequ return err }) if err = eg.Wait(); err != nil { - return nil, err + return nil, fmt.Errorf("LaunchScreenService.UpdateImagePath error: %v", err) } return pic, nil } diff --git a/cmd/launch_screen/service/update_image_property.go b/cmd/launch_screen/service/update_image_property.go new file mode 100644 index 0000000..6827046 --- /dev/null +++ b/cmd/launch_screen/service/update_image_property.go @@ -0,0 +1,46 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package service + +import ( + "fmt" + "time" + + "github.com/west2-online/fzuhelper-server/cmd/launch_screen/dal/db" + "github.com/west2-online/fzuhelper-server/kitex_gen/launch_screen" + "github.com/west2-online/fzuhelper-server/pkg/utils" +) + +func (s *LaunchScreenService) UpdateImageProperty(req *launch_screen.ChangeImagePropertyRequest, origin *db.Picture) (*db.Picture, error) { + Loc := utils.LoadCNLocation() + origin.PicType = req.PicType + origin.SType = req.SType + origin.Duration = *req.Duration + origin.Href = *req.Href + origin.Frequency = req.Frequency + origin.Text = req.Text + origin.StartAt = time.Unix(req.StartAt, 0).In(Loc) + origin.EndAt = time.Unix(req.EndAt, 0).In(Loc) + origin.StartTime = req.StartTime + origin.EndTime = req.EndTime + origin.Regex = req.Regex + pic, err := db.UpdateImage(s.ctx, origin) + if err != nil { + return nil, fmt.Errorf("LaunchScreenService.UpdateImageProperty error: %v", err) + } + return pic, nil +} diff --git a/pkg/client/rpc.go b/pkg/client/rpc.go index 8045ad7..898aad3 100644 --- a/pkg/client/rpc.go +++ b/pkg/client/rpc.go @@ -71,11 +71,11 @@ func InitLaunchScreenRPC() (*launchscreenservice.Client, error) { } r, err := etcd.NewEtcdResolver([]string{config.Etcd.Addr}) if err != nil { - return nil, fmt.Errorf("InitClassroomRPC etcd.NewEtcdResolver failed: %w", err) + return nil, fmt.Errorf("InitLaunchScreenRPC etcd.NewEtcdResolver failed: %w", err) } client, err := launchscreenservice.NewClient(constants.LaunchScreenServiceName, client.WithResolver(r), client.WithMuxConnection(constants.MuxConnection)) if err != nil { - return nil, fmt.Errorf("InitClassroomRPC NewClient failed: %w", err) + return nil, fmt.Errorf("InitLaunchScreenRPC NewClient failed: %w", err) } return &client, nil } @@ -86,7 +86,7 @@ func InitLaunchScreenStreamRPC() (*launchscreenservice.StreamClient, error) { } r, err := etcd.NewEtcdResolver([]string{config.Etcd.Addr}) if err != nil { - return nil, fmt.Errorf("InitClassroomRPC etcd.NewEtcdResolver failed: %w", err) + return nil, fmt.Errorf("InitLaunchScreenStreamRPC etcd.NewEtcdResolver failed: %w", err) } streamClient := launchscreenservice.MustNewStreamClient(constants.LaunchScreenServiceName, streamclient.WithResolver(r)) From 26b14baf9fc0a84832e7eb923d3abd35347c3a43 Mon Sep 17 00:00:00 2001 From: mutezebra Date: Fri, 18 Oct 2024 15:03:54 +0800 Subject: [PATCH 14/19] style: update logger config for all service --- cmd/api/main.go | 4 ++++ cmd/classroom/main.go | 3 +++ cmd/user/main.go | 3 +++ 3 files changed, 10 insertions(+) diff --git a/cmd/api/main.go b/cmd/api/main.go index bad58f9..e7da4fb 100644 --- a/cmd/api/main.go +++ b/cmd/api/main.go @@ -40,6 +40,10 @@ func Init() { path = flag.String("config", "./config", "config path") flag.Parse() config.Init(*path, serviceName) + + // log + utils.InitLoggerWithHook(serviceName) + // rpc rpc.Init() } diff --git a/cmd/classroom/main.go b/cmd/classroom/main.go index 59ff5b4..3690d0e 100644 --- a/cmd/classroom/main.go +++ b/cmd/classroom/main.go @@ -44,6 +44,9 @@ func Init() { flag.Parse() config.Init(*path, serviceName) + // log + utils.InitLoggerWithHook(serviceName) + dal.Init() InitWorkerQueue() } diff --git a/cmd/user/main.go b/cmd/user/main.go index 4efcc50..ac508a4 100644 --- a/cmd/user/main.go +++ b/cmd/user/main.go @@ -42,6 +42,9 @@ func Init() { path = flag.String("config", "./config", "config path") flag.Parse() config.Init(*path, serviceName) + + // log + utils.InitLoggerWithHook(serviceName) } func main() { From 3ee7ab49f993af7d2e95a546929f51b31bcc8116 Mon Sep 17 00:00:00 2001 From: FantasyRL <1845983502@qq.com> Date: Fri, 18 Oct 2024 19:38:14 +0800 Subject: [PATCH 15/19] fix:open muxConnection and cancel jaeger on server --- cmd/launch_screen/main.go | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/cmd/launch_screen/main.go b/cmd/launch_screen/main.go index e826d30..0830bac 100644 --- a/cmd/launch_screen/main.go +++ b/cmd/launch_screen/main.go @@ -25,14 +25,12 @@ import ( "github.com/cloudwego/netpoll" elastic "github.com/elastic/go-elasticsearch" etcd "github.com/kitex-contrib/registry-etcd" - kopentracing "github.com/kitex-contrib/tracer-opentracing" "github.com/west2-online/fzuhelper-server/cmd/launch_screen/dal" "github.com/west2-online/fzuhelper-server/config" launch_screen "github.com/west2-online/fzuhelper-server/kitex_gen/launch_screen/launchscreenservice" "github.com/west2-online/fzuhelper-server/pkg/constants" "github.com/west2-online/fzuhelper-server/pkg/logger" - "github.com/west2-online/fzuhelper-server/pkg/tracer" "github.com/west2-online/fzuhelper-server/pkg/utils" ) @@ -46,7 +44,7 @@ func Init() { flag.Parse() config.Init(*path, constants.LaunchScreenServiceName) dal.Init() - tracer.InitJaeger(constants.LaunchScreenServiceName) + // tracer.InitJaeger(constants.LaunchScreenServiceName) } func main() { @@ -71,7 +69,8 @@ func main() { &rpcinfo.EndpointBasicInfo{ ServiceName: constants.LaunchScreenServiceName, }), - server.WithSuite(kopentracing.NewDefaultServerSuite()), // jaeger + // server.WithSuite(kopentracing.NewDefaultServerSuite()), // jaeger + server.WithMuxTransport(), server.WithRegistry(r), server.WithServiceAddr(serviceAddr), server.WithLimit( From ee58e120d4cd40b98872a7b74e5a8839c80e2b54 Mon Sep 17 00:00:00 2001 From: FantasyRL <1845983502@qq.com> Date: Fri, 18 Oct 2024 19:44:02 +0800 Subject: [PATCH 16/19] fix:open muxConnection and cancel jaeger on server --- pkg/utils/utils.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pkg/utils/utils.go b/pkg/utils/utils.go index 557aba2..d1e1075 100644 --- a/pkg/utils/utils.go +++ b/pkg/utils/utils.go @@ -20,6 +20,7 @@ import ( "bytes" "errors" "fmt" + "github.com/west2-online/fzuhelper-server/pkg/errno" "image" "image/jpeg" "image/png" @@ -32,7 +33,11 @@ import ( "strings" "time" - "github.com/west2-online/fzuhelper-server/pkg/errno" + "github.com/cloudwego/kitex/pkg/klog" + "go.uber.org/zap" + + "github.com/west2-online/fzuhelper-server/pkg/client" + "github.com/west2-online/fzuhelper-server/pkg/logger" "github.com/west2-online/fzuhelper-server/pkg/constants" "github.com/west2-online/jwch" From 6084173fe69655f2fc8aca8ad1834789e61f266f Mon Sep 17 00:00:00 2001 From: FantasyRL <1845983502@qq.com> Date: Fri, 18 Oct 2024 20:29:41 +0800 Subject: [PATCH 17/19] fix:conflict in pkg --- cmd/api/biz/rpc/classroom.go | 3 +- cmd/api/biz/rpc/launch_screen.go | 3 +- cmd/api/biz/rpc/user.go | 3 +- cmd/api/main.go | 4 +- cmd/classroom/main.go | 4 +- cmd/launch_screen/main.go | 4 ++ cmd/template/main.go | 4 +- cmd/user/main.go | 4 +- pkg/eshook/eshook.go | 101 +++++++++++++++++++++++++++++++ pkg/eshook/logger.go | 39 ++++++++++++ pkg/utils/utils.go | 20 +----- 11 files changed, 163 insertions(+), 26 deletions(-) create mode 100644 pkg/eshook/eshook.go create mode 100644 pkg/eshook/logger.go diff --git a/cmd/api/biz/rpc/classroom.go b/cmd/api/biz/rpc/classroom.go index 82e2d58..7f05cd1 100644 --- a/cmd/api/biz/rpc/classroom.go +++ b/cmd/api/biz/rpc/classroom.go @@ -19,12 +19,13 @@ package rpc import ( "context" + "github.com/west2-online/fzuhelper-server/pkg/utils" + "github.com/west2-online/fzuhelper-server/kitex_gen/classroom" "github.com/west2-online/fzuhelper-server/kitex_gen/model" "github.com/west2-online/fzuhelper-server/pkg/client" "github.com/west2-online/fzuhelper-server/pkg/errno" "github.com/west2-online/fzuhelper-server/pkg/logger" - "github.com/west2-online/fzuhelper-server/pkg/utils" ) func InitClassroomRPC() { diff --git a/cmd/api/biz/rpc/launch_screen.go b/cmd/api/biz/rpc/launch_screen.go index b00505f..86fd981 100644 --- a/cmd/api/biz/rpc/launch_screen.go +++ b/cmd/api/biz/rpc/launch_screen.go @@ -19,12 +19,13 @@ package rpc import ( "context" + "github.com/west2-online/fzuhelper-server/pkg/utils" + "github.com/west2-online/fzuhelper-server/kitex_gen/launch_screen" "github.com/west2-online/fzuhelper-server/kitex_gen/model" "github.com/west2-online/fzuhelper-server/pkg/client" "github.com/west2-online/fzuhelper-server/pkg/errno" "github.com/west2-online/fzuhelper-server/pkg/logger" - "github.com/west2-online/fzuhelper-server/pkg/utils" ) func InitLaunchScreenRPC() { diff --git a/cmd/api/biz/rpc/user.go b/cmd/api/biz/rpc/user.go index 5977c8f..6a8d4ca 100644 --- a/cmd/api/biz/rpc/user.go +++ b/cmd/api/biz/rpc/user.go @@ -19,11 +19,12 @@ package rpc import ( "context" + "github.com/west2-online/fzuhelper-server/pkg/utils" + "github.com/west2-online/fzuhelper-server/kitex_gen/user" "github.com/west2-online/fzuhelper-server/pkg/client" "github.com/west2-online/fzuhelper-server/pkg/errno" "github.com/west2-online/fzuhelper-server/pkg/logger" - "github.com/west2-online/fzuhelper-server/pkg/utils" ) func InitUserRPC() { diff --git a/cmd/api/main.go b/cmd/api/main.go index e7da4fb..4ed8c6b 100644 --- a/cmd/api/main.go +++ b/cmd/api/main.go @@ -21,6 +21,8 @@ package main import ( "flag" + "github.com/west2-online/fzuhelper-server/pkg/eshook" + "github.com/cloudwego/hertz/pkg/app/server" "github.com/west2-online/fzuhelper-server/cmd/api/biz/rpc" @@ -42,7 +44,7 @@ func Init() { config.Init(*path, serviceName) // log - utils.InitLoggerWithHook(serviceName) + eshook.InitLoggerWithHook(serviceName) // rpc rpc.Init() diff --git a/cmd/classroom/main.go b/cmd/classroom/main.go index 3690d0e..aba6dd7 100644 --- a/cmd/classroom/main.go +++ b/cmd/classroom/main.go @@ -20,6 +20,8 @@ import ( "flag" "net" + "github.com/west2-online/fzuhelper-server/pkg/eshook" + "github.com/cloudwego/kitex/pkg/limit" "github.com/cloudwego/kitex/pkg/rpcinfo" "github.com/cloudwego/kitex/server" @@ -45,7 +47,7 @@ func Init() { config.Init(*path, serviceName) // log - utils.InitLoggerWithHook(serviceName) + eshook.InitLoggerWithHook(serviceName) dal.Init() InitWorkerQueue() diff --git a/cmd/launch_screen/main.go b/cmd/launch_screen/main.go index 0830bac..2de0dae 100644 --- a/cmd/launch_screen/main.go +++ b/cmd/launch_screen/main.go @@ -19,6 +19,8 @@ package main import ( "flag" + "github.com/west2-online/fzuhelper-server/pkg/eshook" + "github.com/cloudwego/kitex/pkg/limit" "github.com/cloudwego/kitex/pkg/rpcinfo" "github.com/cloudwego/kitex/server" @@ -45,6 +47,8 @@ func Init() { config.Init(*path, constants.LaunchScreenServiceName) dal.Init() // tracer.InitJaeger(constants.LaunchScreenServiceName) + // log + eshook.InitLoggerWithHook(constants.LaunchScreenServiceName) } func main() { diff --git a/cmd/template/main.go b/cmd/template/main.go index 5e37dba..3d4edfa 100644 --- a/cmd/template/main.go +++ b/cmd/template/main.go @@ -20,6 +20,8 @@ import ( "flag" "net" + "github.com/west2-online/fzuhelper-server/pkg/eshook" + "github.com/cloudwego/kitex/pkg/klog" "github.com/cloudwego/kitex/pkg/limit" "github.com/cloudwego/kitex/pkg/rpcinfo" @@ -49,7 +51,7 @@ func Init() { config.Init(*path, serviceName) // log - utils.InitLoggerWithHook(serviceName) + eshook.InitLoggerWithHook(serviceName) // dal dal.Init() diff --git a/cmd/user/main.go b/cmd/user/main.go index ac508a4..a3b4973 100644 --- a/cmd/user/main.go +++ b/cmd/user/main.go @@ -20,6 +20,8 @@ import ( "flag" "net" + "github.com/west2-online/fzuhelper-server/pkg/eshook" + "github.com/cloudwego/kitex/pkg/limit" "github.com/cloudwego/kitex/pkg/rpcinfo" "github.com/cloudwego/kitex/server" @@ -44,7 +46,7 @@ func Init() { config.Init(*path, serviceName) // log - utils.InitLoggerWithHook(serviceName) + eshook.InitLoggerWithHook(serviceName) } func main() { diff --git a/pkg/eshook/eshook.go b/pkg/eshook/eshook.go new file mode 100644 index 0000000..60f736d --- /dev/null +++ b/pkg/eshook/eshook.go @@ -0,0 +1,101 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package eshook + +import ( + "bytes" + "context" + "encoding/json" + "log" + "strings" + "time" + + elastic "github.com/elastic/go-elasticsearch" + "github.com/elastic/go-elasticsearch/esapi" + "go.uber.org/zap/zapcore" +) + +// ElasticHook is a zap hook for ElasticSearch +type ElasticHook struct { + client *elastic.Client // es 的客户端 + host string // es 的 host + index string // 获取索引的名字 + ctx context.Context + cancel func() +} + +func NewElasticHook(client *elastic.Client, host string, index string) *ElasticHook { + hook := defaultHookConfig() + + hook.client = client + hook.host = host + hook.index = index + + return hook +} + +func defaultHookConfig() *ElasticHook { + ctx, cancel := context.WithCancel(context.Background()) + return &ElasticHook{ + ctx: ctx, + cancel: cancel, + } +} + +// 发送到 es 的信息结构 +type message struct { + Host string + Timestamp string `json:"@timestamp"` + Message string + Level string +} + +func createMessage(entry *zapcore.Entry, hook *ElasticHook) *message { + return &message{ + Host: hook.host, + Timestamp: entry.Time.UTC().Format(time.RFC3339), + Message: entry.Message, + Level: strings.ToUpper(entry.Level.String()), + } +} + +func (hook *ElasticHook) Fire(entry zapcore.Entry) error { + data, err := json.Marshal(createMessage(&entry, hook)) + if err != nil { + return err + } + + req := esapi.IndexRequest{ + Index: hook.index, + Body: bytes.NewReader(data), + Refresh: "true", + } + + res, err := req.Do(hook.ctx, hook.client) + if err != nil { + log.Fatalf("Error getting response: %s", err) + } + + var r map[string]interface{} + if err = json.NewDecoder(res.Body).Decode(&r); err != nil { + log.Printf("Error parsing the response body: %s", err) + } else { + // Print the response status and indexed document version. + log.Printf("[%s] %s; version=%d", res.Status(), r["result"], int(r["_version"].(float64))) + } + return err +} diff --git a/pkg/eshook/logger.go b/pkg/eshook/logger.go new file mode 100644 index 0000000..8f00e0e --- /dev/null +++ b/pkg/eshook/logger.go @@ -0,0 +1,39 @@ +/* +Copyright 2024 The west2-online Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package eshook + +import ( + "github.com/cloudwego/kitex/pkg/klog" + "go.uber.org/zap" + + "github.com/west2-online/fzuhelper-server/config" + "github.com/west2-online/fzuhelper-server/pkg/client" + "github.com/west2-online/fzuhelper-server/pkg/logger" +) + +// InitLoggerWithHook 初始化带有EsHook的logger +// index: 索引的名字 +func InitLoggerWithHook(index string) { + c, err := client.NewEsClient() + if err != nil { + panic(err) + } + + hook := NewElasticHook(c, config.Elasticsearch.Host, index) + v := logger.DefaultLogger(zap.Hooks(hook.Fire)) + klog.SetLogger(v) +} diff --git a/pkg/utils/utils.go b/pkg/utils/utils.go index d1e1075..8600770 100644 --- a/pkg/utils/utils.go +++ b/pkg/utils/utils.go @@ -20,7 +20,6 @@ import ( "bytes" "errors" "fmt" - "github.com/west2-online/fzuhelper-server/pkg/errno" "image" "image/jpeg" "image/png" @@ -33,11 +32,7 @@ import ( "strings" "time" - "github.com/cloudwego/kitex/pkg/klog" - "go.uber.org/zap" - - "github.com/west2-online/fzuhelper-server/pkg/client" - "github.com/west2-online/fzuhelper-server/pkg/logger" + "github.com/west2-online/fzuhelper-server/pkg/errno" "github.com/west2-online/fzuhelper-server/pkg/constants" "github.com/west2-online/jwch" @@ -77,19 +72,6 @@ func GetEsHost() (string, error) { return config.Elasticsearch.Host, nil } -// InitLoggerWithHook 初始化带有EsHook的logger -// index: 索引的名字 -func InitLoggerWithHook(index string) { - c, err := client.NewEsClient() - if err != nil { - panic(err) - } - - hook := logger.NewElasticHook(c, config.Elasticsearch.Host, index) - v := logger.DefaultLogger(zap.Hooks(hook.Fire)) - klog.SetLogger(v) -} - func AddrCheck(addr string) bool { l, err := net.Listen("tcp", addr) if err != nil { From 1012b0c436d4de36cdd1eadeb8edfff7ad07634d Mon Sep 17 00:00:00 2001 From: FantasyRL <1845983502@qq.com> Date: Fri, 18 Oct 2024 20:31:33 +0800 Subject: [PATCH 18/19] fix:delete eshook in pkg/logger --- pkg/logger/eshook.go | 101 ------------------------------------------- 1 file changed, 101 deletions(-) delete mode 100644 pkg/logger/eshook.go diff --git a/pkg/logger/eshook.go b/pkg/logger/eshook.go deleted file mode 100644 index edae3d0..0000000 --- a/pkg/logger/eshook.go +++ /dev/null @@ -1,101 +0,0 @@ -/* -Copyright 2024 The west2-online Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package logger - -import ( - "bytes" - "context" - "encoding/json" - "log" - "strings" - "time" - - elastic "github.com/elastic/go-elasticsearch" - "github.com/elastic/go-elasticsearch/esapi" - "go.uber.org/zap/zapcore" -) - -// ElasticHook is a zap hook for ElasticSearch -type ElasticHook struct { - client *elastic.Client // es 的客户端 - host string // es 的 host - index string // 获取索引的名字 - ctx context.Context - cancel func() -} - -func NewElasticHook(client *elastic.Client, host string, index string) *ElasticHook { - hook := defaultHookConfig() - - hook.client = client - hook.host = host - hook.index = index - - return hook -} - -func defaultHookConfig() *ElasticHook { - ctx, cancel := context.WithCancel(context.Background()) - return &ElasticHook{ - ctx: ctx, - cancel: cancel, - } -} - -// 发送到 es 的信息结构 -type message struct { - Host string - Timestamp string `json:"@timestamp"` - Message string - Level string -} - -func createMessage(entry *zapcore.Entry, hook *ElasticHook) *message { - return &message{ - Host: hook.host, - Timestamp: entry.Time.UTC().Format(time.RFC3339), - Message: entry.Message, - Level: strings.ToUpper(entry.Level.String()), - } -} - -func (hook *ElasticHook) Fire(entry zapcore.Entry) error { - data, err := json.Marshal(createMessage(&entry, hook)) - if err != nil { - return err - } - - req := esapi.IndexRequest{ - Index: hook.index, - Body: bytes.NewReader(data), - Refresh: "true", - } - - res, err := req.Do(hook.ctx, hook.client) - if err != nil { - log.Fatalf("Error getting response: %s", err) - } - - var r map[string]interface{} - if err = json.NewDecoder(res.Body).Decode(&r); err != nil { - log.Printf("Error parsing the response body: %s", err) - } else { - // Print the response status and indexed document version. - log.Printf("[%s] %s; version=%d", res.Status(), r["result"], int(r["_version"].(float64))) - } - return err -} From 6a89223961d665f12f2a5a1bbf8012ea6f33bffe Mon Sep 17 00:00:00 2001 From: FantasyRL <1845983502@qq.com> Date: Sat, 19 Oct 2024 20:28:05 +0800 Subject: [PATCH 19/19] feat:cache logic optimize --- cmd/launch_screen/dal/db/image.go | 7 +++--- cmd/launch_screen/service/mobile_get.go | 30 ++++++++++++++++--------- 2 files changed, 24 insertions(+), 13 deletions(-) diff --git a/cmd/launch_screen/dal/db/image.go b/cmd/launch_screen/dal/db/image.go index 98204d7..3e2cac6 100644 --- a/cmd/launch_screen/dal/db/image.go +++ b/cmd/launch_screen/dal/db/image.go @@ -129,10 +129,11 @@ func GetImageByIdList(ctx context.Context, imgIdList *[]int64) (*[]Picture, int6 if hour > 24 { hour -= 24 } - if err = DB.WithContext(ctx). + err = DB.WithContext(ctx). Where("id IN ? AND start_at < ? AND end_at > ? AND start_time <= ? AND end_time >= ?", - *imgIdList, now, now, hour, hour).Count(&count).Order("created_at DESC").Find(pictures).Error; err != nil { - return nil, -1, fmt.Errorf("dal.GetImageByIdList error: %v", err) + *imgIdList, now, now, hour, hour).Count(&count).Order("created_at DESC").Find(pictures).Error + if err != nil { + return nil, -1, fmt.Errorf("dal.GetImageByIdList error: %w", err) } return pictures, count, nil } diff --git a/cmd/launch_screen/service/mobile_get.go b/cmd/launch_screen/service/mobile_get.go index edbdaa0..9bcaace 100644 --- a/cmd/launch_screen/service/mobile_get.go +++ b/cmd/launch_screen/service/mobile_get.go @@ -17,10 +17,13 @@ limitations under the License. package service import ( + "errors" "fmt" "regexp" "strconv" + "gorm.io/gorm" + "github.com/bytedance/sonic" "golang.org/x/sync/errgroup" @@ -55,6 +58,22 @@ func (s *LaunchScreenService) MobileGetImage(req *launch_screen.MobileGetImageRe } } + if !getFromMysql { + // 直接从缓存中获取id + imgIdList, err := cache.GetLaunchScreenCache(s.ctx, utils.GenerateRedisKeyByStuId(req.StudentId, req.SType)) + if err != nil { + return nil, -1, fmt.Errorf("LaunchScreenService.MobileGetImage cache.GetLaunchScreenCache error:%v", err.Error()) + } + respList, cntResp, err = db.GetImageByIdList(s.ctx, &imgIdList) + if err != nil { + if errors.Is(err, gorm.ErrRecordNotFound) { + getFromMysql = true + } else { + return nil, -1, fmt.Errorf("LaunchScreenService.MobileGetImage db.GetImageByIdList error:%v", err.Error()) + } + } + } + if getFromMysql { // 获取符合当前时间的imgList imgList, cnt, err := db.GetImageBySType(s.ctx, req.SType) @@ -132,16 +151,7 @@ func (s *LaunchScreenService) MobileGetImage(req *launch_screen.MobileGetImageRe return ¤tImgList, cntResp, nil } - // 直接从缓存中获取id - imgIdList, err := cache.GetLaunchScreenCache(s.ctx, utils.GenerateRedisKeyByStuId(req.StudentId, req.SType)) - if err != nil { - return nil, -1, fmt.Errorf("LaunchScreenService.MobileGetImage cache.GetLaunchScreenCache error:%v", err.Error()) - } - respList, cntResp, err = db.GetImageByIdList(s.ctx, &imgIdList) - if err != nil { - return nil, -1, fmt.Errorf("LaunchScreenService.MobileGetImage db.GetImageByIdList error:%v", err.Error()) - } - // addShowtime + // addShowtime for cache if err = db.AddImageListShowTime(s.ctx, respList); err != nil { return nil, -1, fmt.Errorf("LaunchScreenService.MobileGetImage db.AddImageListShowTime error:%v", err.Error()) }