Create & Init Project...

This commit is contained in:
2019-04-22 18:49:16 +08:00
commit fc4fa37393
25440 changed files with 4054998 additions and 0 deletions

View File

@@ -0,0 +1,32 @@
package(default_visibility = ["//visibility:public"])
load(
"@io_bazel_rules_go//go:def.bzl",
"go_library",
)
go_library(
name = "go_default_library",
srcs = [
"module.go",
"player.go",
"web_player.go",
],
importpath = "go-common/app/interface/main/kvo/model/module",
tags = ["automanaged"],
visibility = ["//visibility:public"],
)
filegroup(
name = "package-srcs",
srcs = glob(["**"]),
tags = ["automanaged"],
visibility = ["//visibility:private"],
)
filegroup(
name = "all-srcs",
srcs = [":package-srcs"],
tags = ["automanaged"],
visibility = ["//visibility:public"],
)

View File

@@ -0,0 +1,88 @@
package module
import (
"encoding/json"
"fmt"
"hash/crc32"
)
// Setting ModuleConf
type Setting struct {
Timestamp int64 `json:"timestamp"`
CheckSum int64 `json:"check_sum"`
Data json.RawMessage `json:"data"`
}
const (
_playerID = 1
_playerKey = "player"
_webPlayerID = 2
_webPlayerKey = "web_player"
)
var _moduleMap = map[string]int{
_playerKey: _playerID,
_webPlayerKey: _webPlayerID,
}
// VerifyModuleKey verify key
func VerifyModuleKey(key string) int {
return _moduleMap[key]
}
// Result get module message
func Result(moduleKeyID int, data string) (rm json.RawMessage, checkSum int64, err error) {
var (
bs []byte
)
switch moduleKeyID {
case _playerID:
player := &Player{}
playerSha1 := &PlayerSha1{}
err = json.Unmarshal([]byte(data), player)
if err != nil {
return
}
bs, err = json.Marshal(player)
if err != nil {
return
}
rm = json.RawMessage(bs)
// check_sum
err = json.Unmarshal([]byte(data), playerSha1)
if err != nil {
return
}
bs, err = json.Marshal(playerSha1)
if err != nil {
return
}
checkSum = int64(crc32.ChecksumIEEE(bs))
return
case _webPlayerID:
player := &WebPlayer{}
playerSha1 := &WebPlayerSha1{}
err = json.Unmarshal([]byte(data), player)
if err != nil {
return
}
bs, err = json.Marshal(player)
if err != nil {
return
}
rm = json.RawMessage(bs)
// check_sum
err = json.Unmarshal([]byte(data), playerSha1)
if err != nil {
return
}
bs, err = json.Marshal(playerSha1)
if err != nil {
return
}
checkSum = int64(crc32.ChecksumIEEE(bs))
return
}
err = fmt.Errorf("module_key_id not found: %v", moduleKeyID)
return
}

View File

@@ -0,0 +1,61 @@
package module
// PlayerSha1 one module for sha1
type PlayerSha1 struct {
// special fields
PlayerWebDanmakuAutoscaling bool `json:"player_web_danmaku_autoscaling,omitempty"`
PlayerWebHTML5DanmakuRenderingtype string `json:"player_web_html5_danmaku_renderingtype,omitempty"`
PlayerAppPlaybackMode int `json:"player_app_playback_mode,omitempty"`
PlayerAppPlaybackBackground bool `json:"player_app_playback_background,omitempty"`
PlayerAppDanmakuStrokewidth float64 `json:"player_app_danmaku_strokewidth,omitempty"`
// common fileds
PlayerDanmakuOpacity float64 `json:"player_danmaku_opacity,omitempty"`
PlayerDanmakuSpeed float64 `json:"player_danmaku_speed,omitempty"`
PlayerDanmakuDensity int `json:"player_danmaku_density,omitempty"`
PlayerDanmakuScalingfactor float64 `json:"player_danmaku_scalingfactor,omitempty"`
PlayerDanmakuStrokestyle int `json:"player_danmaku_strokestyle,omitempty"`
PlayerDanmakuFontname string `json:"player_danmaku_fontname,omitempty"`
PlayerDanmakuFontbold bool `json:"player_danmaku_fontbold,omitempty"`
PlayerDanmakuDefensivebottom bool `json:"player_danmaku_defensivebottom,omitempty"`
PlayerDanmakuEnableblocklist bool `json:"player_danmaku_enableblocklist,omitempty"`
PlayerDanmakuBlockrepeat bool `json:"player_danmaku_blockrepeat,omitempty"`
PlayerDanmakuBlocktop bool `json:"player_danmaku_blocktop,omitempty"`
PlayerDanmakuBlockscroll bool `json:"player_danmaku_blockscroll,omitempty"`
PlayerDanmakuBlockbottom bool `json:"player_danmaku_blockbottom,omitempty"`
PlayerDanmakuBlockcolorful bool `json:"player_danmaku_blockcolorful,omitempty"`
PlayerDanmakuBlockcommon bool `json:"player_danmaku_blockcommon,omitempty"`
PlayerDanmakuBlocksubtitle bool `json:"player_danmaku_blocksubtitle,omitempty"`
PlayerDanmakuBlockspecial bool `json:"player_danmaku_blockspecial,omitempty"`
PlayerDanmakuDomain float64 `json:"player_danmaku_domain,omitempty"`
PlayerSubtitleSwitch int `json:"player_subtitle_switch,omitempty"`
}
// Player one module return json
type Player struct {
// special fields
PlayerWebDanmakuAutoscaling bool `json:"player_web_danmaku_autoscaling"`
PlayerWebHTML5DanmakuRenderingtype string `json:"player_web_html5_danmaku_renderingtype"`
PlayerAppPlaybackMode int `json:"player_app_playback_mode"`
PlayerAppPlaybackBackground bool `json:"player_app_playback_background"`
PlayerAppDanmakuStrokewidth float64 `json:"player_app_danmaku_strokewidth"`
// common fileds
PlayerDanmakuOpacity float64 `json:"player_danmaku_opacity"`
PlayerDanmakuSpeed float64 `json:"player_danmaku_speed"`
PlayerDanmakuDensity int `json:"player_danmaku_density"`
PlayerDanmakuScalingfactor float64 `json:"player_danmaku_scalingfactor"`
PlayerDanmakuStrokestyle int `json:"player_danmaku_strokestyle"`
PlayerDanmakuFontname string `json:"player_danmaku_fontname"`
PlayerDanmakuFontbold bool `json:"player_danmaku_fontbold"`
PlayerDanmakuDefensivebottom bool `json:"player_danmaku_defensivebottom"`
PlayerDanmakuEnableblocklist bool `json:"player_danmaku_enableblocklist"`
PlayerDanmakuBlockrepeat bool `json:"player_danmaku_blockrepeat"`
PlayerDanmakuBlocktop bool `json:"player_danmaku_blocktop"`
PlayerDanmakuBlockscroll bool `json:"player_danmaku_blockscroll"`
PlayerDanmakuBlockbottom bool `json:"player_danmaku_blockbottom"`
PlayerDanmakuBlockcolorful bool `json:"player_danmaku_blockcolorful"`
PlayerDanmakuBlockcommon bool `json:"player_danmaku_blockcommon"`
PlayerDanmakuBlocksubtitle bool `json:"player_danmaku_blocksubtitle"`
PlayerDanmakuBlockspecial bool `json:"player_danmaku_blockspecial"`
PlayerDanmakuDomain float64 `json:"player_danmaku_domain"`
PlayerSubtitleSwitch int `json:"player_subtitle_switch"`
}

View File

@@ -0,0 +1,57 @@
package module
// WebPlayerSha1 one module for sha1
type WebPlayerSha1 struct {
// special fields
PlayerWebDanmakuAutoscaling bool `json:"player_web_danmaku_autoscaling,omitempty"`
PlayerWebHTML5DanmakuRenderingtype string `json:"player_web_html5_danmaku_renderingtype,omitempty"`
PlayerAppPlaybackMode int `json:"player_app_playback_mode,omitempty"`
PlayerAppPlaybackBackground bool `json:"player_app_playback_background,omitempty"`
PlayerAppDanmakuStrokewidth float64 `json:"player_app_danmaku_strokewidth,omitempty"`
// common fileds
PlayerDanmakuOpacity float64 `json:"player_danmaku_opacity,omitempty"`
PlayerDanmakuSpeed float64 `json:"player_danmaku_speed,omitempty"`
PlayerDanmakuDensity int `json:"player_danmaku_density,omitempty"`
PlayerDanmakuScalingfactor float64 `json:"player_danmaku_scalingfactor,omitempty"`
PlayerDanmakuStrokestyle int `json:"player_danmaku_strokestyle,omitempty"`
PlayerDanmakuFontname string `json:"player_danmaku_fontname,omitempty"`
PlayerDanmakuFontbold bool `json:"player_danmaku_fontbold,omitempty"`
PlayerDanmakuDefensivebottom bool `json:"player_danmaku_defensivebottom,omitempty"`
PlayerDanmakuEnableblocklist bool `json:"player_danmaku_enableblocklist,omitempty"`
PlayerDanmakuBlockrepeat bool `json:"player_danmaku_blockrepeat,omitempty"`
PlayerDanmakuBlocktop bool `json:"player_danmaku_blocktop,omitempty"`
PlayerDanmakuBlockscroll bool `json:"player_danmaku_blockscroll,omitempty"`
PlayerDanmakuBlockbottom bool `json:"player_danmaku_blockbottom,omitempty"`
PlayerDanmakuBlockcolorful bool `json:"player_danmaku_blockcolorful,omitempty"`
PlayerDanmakuBlockcommon bool `json:"player_danmaku_blockcommon,omitempty"`
PlayerDanmakuBlocksubtitle bool `json:"player_danmaku_blocksubtitle,omitempty"`
PlayerDanmakuBlockspecial bool `json:"player_danmaku_blockspecial,omitempty"`
}
// WebPlayer one module return json
type WebPlayer struct {
// special fields
PlayerWebDanmakuAutoscaling bool `json:"player_web_danmaku_autoscaling"`
PlayerWebHTML5DanmakuRenderingtype string `json:"player_web_html5_danmaku_renderingtype"`
PlayerAppPlaybackMode int `json:"player_app_playback_mode"`
PlayerAppPlaybackBackground bool `json:"player_app_playback_background"`
PlayerAppDanmakuStrokewidth float64 `json:"player_app_danmaku_strokewidth"`
// common fileds
PlayerDanmakuOpacity float64 `json:"player_danmaku_opacity"`
PlayerDanmakuSpeed float64 `json:"player_danmaku_speed"`
PlayerDanmakuDensity int `json:"player_danmaku_density"`
PlayerDanmakuScalingfactor float64 `json:"player_danmaku_scalingfactor"`
PlayerDanmakuStrokestyle int `json:"player_danmaku_strokestyle"`
PlayerDanmakuFontname string `json:"player_danmaku_fontname"`
PlayerDanmakuFontbold bool `json:"player_danmaku_fontbold"`
PlayerDanmakuDefensivebottom bool `json:"player_danmaku_defensivebottom"`
PlayerDanmakuEnableblocklist bool `json:"player_danmaku_enableblocklist"`
PlayerDanmakuBlockrepeat bool `json:"player_danmaku_blockrepeat"`
PlayerDanmakuBlocktop bool `json:"player_danmaku_blocktop"`
PlayerDanmakuBlockscroll bool `json:"player_danmaku_blockscroll"`
PlayerDanmakuBlockbottom bool `json:"player_danmaku_blockbottom"`
PlayerDanmakuBlockcolorful bool `json:"player_danmaku_blockcolorful"`
PlayerDanmakuBlockcommon bool `json:"player_danmaku_blockcommon"`
PlayerDanmakuBlocksubtitle bool `json:"player_danmaku_blocksubtitle"`
PlayerDanmakuBlockspecial bool `json:"player_danmaku_blockspecial"`
}