Loading CHANGELOG.md +1 −0 Original line number Diff line number Diff line Loading @@ -10,6 +10,7 @@ The format is based on [keep a changelog](http://keepachangelog.com) and this pr ### Fixed - Fix log level in Lua runtime log calls which use logger fields. - Correctly register purchase validation before/after hooks in JavaScript/Lua runtimes. ## [3.5.0] - 2021-08-10 ### Added Loading server/runtime.go +18 −18 Original line number Diff line number Diff line Loading @@ -877,13 +877,13 @@ func NewRuntime(ctx context.Context, logger, startupLogger *zap.Logger, db *sql. startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "getusers")) } if allBeforeReqFunctions.beforeValidatePurchaseAppleFunction != nil { startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "receiptvalidateapple")) startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "validatepurchaseapple")) } if allBeforeReqFunctions.beforeValidatePurchaseGoogleFunction != nil { startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "receiptvalidategoogle")) startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "validatepurchasegoogle")) } if allBeforeReqFunctions.beforeValidatePurchaseHuaweiFunction != nil { startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "receiptvalidatehuawei")) startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "validatepurchasehuawei")) } if allBeforeReqFunctions.beforeEventFunction != nil { startupLogger.Info("Registered JavaScript runtime Before custom events function invocation") Loading Loading @@ -1160,15 +1160,15 @@ func NewRuntime(ctx context.Context, logger, startupLogger *zap.Logger, db *sql. } if luaBeforeReqFunctions.beforeValidatePurchaseAppleFunction != nil { allBeforeReqFunctions.beforeValidatePurchaseAppleFunction = luaBeforeReqFunctions.beforeValidatePurchaseAppleFunction startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "receiptvalidateapple")) startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "validatepurchaseapple")) } if luaBeforeReqFunctions.beforeValidatePurchaseGoogleFunction != nil { allBeforeReqFunctions.beforeValidatePurchaseGoogleFunction = luaBeforeReqFunctions.beforeValidatePurchaseGoogleFunction startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "receiptvalidategoogle")) startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "validatepurchasegoogle")) } if luaBeforeReqFunctions.beforeValidatePurchaseHuaweiFunction != nil { allBeforeReqFunctions.beforeValidatePurchaseHuaweiFunction = luaBeforeReqFunctions.beforeValidatePurchaseHuaweiFunction startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "receiptvalidatehuawei")) startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "validatepurchasehuawei")) } if luaBeforeReqFunctions.beforeEventFunction != nil { allBeforeReqFunctions.beforeEventFunction = luaBeforeReqFunctions.beforeEventFunction Loading Loading @@ -1450,15 +1450,15 @@ func NewRuntime(ctx context.Context, logger, startupLogger *zap.Logger, db *sql. } if goBeforeReqFunctions.beforeValidatePurchaseAppleFunction != nil { allBeforeReqFunctions.beforeValidatePurchaseAppleFunction = goBeforeReqFunctions.beforeValidatePurchaseAppleFunction startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "receiptvalidateapple")) startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "validateapple")) } if goBeforeReqFunctions.beforeValidatePurchaseGoogleFunction != nil { allBeforeReqFunctions.beforeValidatePurchaseGoogleFunction = goBeforeReqFunctions.beforeValidatePurchaseGoogleFunction startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "receiptvalidategoogle")) startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "validatepurchasegoogle")) } if goBeforeReqFunctions.beforeValidatePurchaseHuaweiFunction != nil { allBeforeReqFunctions.beforeValidatePurchaseHuaweiFunction = goBeforeReqFunctions.beforeValidatePurchaseHuaweiFunction startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "receiptvalidatehuawei")) startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "validatepurchasehuawei")) } if goBeforeReqFunctions.beforeEventFunction != nil { allBeforeReqFunctions.beforeEventFunction = goBeforeReqFunctions.beforeEventFunction Loading Loading @@ -1672,13 +1672,13 @@ func NewRuntime(ctx context.Context, logger, startupLogger *zap.Logger, db *sql. startupLogger.Info("Registered JavaScript runtime After function invocation", zap.String("id", "getusers")) } if allAfterReqFunctions.afterValidatePurchaseAppleFunction != nil { startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "receiptvalidateapple")) startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "validatepurchaseapple")) } if allAfterReqFunctions.afterValidatePurchaseGoogleFunction != nil { startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "receiptvalidategoogle")) startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "validatepurchasegoogle")) } if allAfterReqFunctions.afterValidatePurchaseHuaweiFunction != nil { startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "receiptvalidatehuawei")) startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "validatepurchasehuawei")) } if allAfterReqFunctions.afterEventFunction != nil { startupLogger.Info("Registered JavaScript runtime After custom events function invocation") Loading Loading @@ -1955,15 +1955,15 @@ func NewRuntime(ctx context.Context, logger, startupLogger *zap.Logger, db *sql. } if luaAfterReqFunctions.afterValidatePurchaseAppleFunction != nil { allAfterReqFunctions.afterValidatePurchaseAppleFunction = luaAfterReqFunctions.afterValidatePurchaseAppleFunction startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "receiptvalidateapple")) startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "validatepurchaseapple")) } if luaAfterReqFunctions.afterValidatePurchaseGoogleFunction != nil { allAfterReqFunctions.afterValidatePurchaseGoogleFunction = luaAfterReqFunctions.afterValidatePurchaseGoogleFunction startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "receiptvalidategoogle")) startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "validatepurchasegoogle")) } if luaAfterReqFunctions.afterValidatePurchaseHuaweiFunction != nil { allAfterReqFunctions.afterValidatePurchaseHuaweiFunction = luaAfterReqFunctions.afterValidatePurchaseHuaweiFunction startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "receiptvalidatehuawei")) startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "validatepurchasehuawei")) } if luaAfterReqFunctions.afterEventFunction != nil { allAfterReqFunctions.afterEventFunction = luaAfterReqFunctions.afterEventFunction Loading Loading @@ -2245,15 +2245,15 @@ func NewRuntime(ctx context.Context, logger, startupLogger *zap.Logger, db *sql. } if goAfterReqFunctions.afterValidatePurchaseAppleFunction != nil { allAfterReqFunctions.afterValidatePurchaseAppleFunction = goAfterReqFunctions.afterValidatePurchaseAppleFunction startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "receiptvalidateapple")) startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "validatepurchaseapple")) } if goAfterReqFunctions.afterValidatePurchaseGoogleFunction != nil { allAfterReqFunctions.afterValidatePurchaseGoogleFunction = goAfterReqFunctions.afterValidatePurchaseGoogleFunction startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "receiptvalidategoogle")) startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "validatepurchasegoogle")) } if goAfterReqFunctions.afterValidatePurchaseHuaweiFunction != nil { allAfterReqFunctions.afterValidatePurchaseHuaweiFunction = goAfterReqFunctions.afterValidatePurchaseHuaweiFunction startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "receiptvalidatehuawei")) startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "validatepurchasehuawei")) } if goAfterReqFunctions.afterEventFunction != nil { allAfterReqFunctions.afterEventFunction = goAfterReqFunctions.afterEventFunction Loading server/runtime_javascript.go +36 −0 Original line number Diff line number Diff line Loading @@ -1170,6 +1170,30 @@ func NewRuntimeProviderJS(logger, startupLogger *zap.Logger, db *sql.DB, protojs } return result.(*api.GetUsersRequest), nil, 0 } case "validatepurchaseapple": beforeReqFunctions.beforeValidatePurchaseAppleFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.ValidatePurchaseAppleRequest) (*api.ValidatePurchaseAppleRequest, error, codes.Code) { result, err, code := runtimeProviderJS.BeforeReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, in) if result == nil || err != nil { return nil, err, code } return result.(*api.ValidatePurchaseAppleRequest), nil, 0 } case "validatepurchasegoogle": beforeReqFunctions.beforeValidatePurchaseGoogleFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.ValidatePurchaseGoogleRequest) (*api.ValidatePurchaseGoogleRequest, error, codes.Code) { result, err, code := runtimeProviderJS.BeforeReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, in) if result == nil || err != nil { return nil, err, code } return result.(*api.ValidatePurchaseGoogleRequest), nil, 0 } case "validatepurchasehuawei": beforeReqFunctions.beforeValidatePurchaseHuaweiFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.ValidatePurchaseHuaweiRequest) (*api.ValidatePurchaseHuaweiRequest, error, codes.Code) { result, err, code := runtimeProviderJS.BeforeReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, in) if result == nil || err != nil { return nil, err, code } return result.(*api.ValidatePurchaseHuaweiRequest), nil, 0 } case "event": beforeReqFunctions.beforeEventFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.Event) (*api.Event, error, codes.Code) { result, err, code := runtimeProviderJS.BeforeReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, in) Loading Loading @@ -1456,6 +1480,18 @@ func NewRuntimeProviderJS(logger, startupLogger *zap.Logger, db *sql.DB, protojs afterReqFunctions.afterGetUsersFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, out *api.Users, in *api.GetUsersRequest) error { return runtimeProviderJS.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, out, in) } case "validatepurchaseapple": afterReqFunctions.afterValidatePurchaseAppleFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, out *api.ValidatePurchaseResponse, in *api.ValidatePurchaseAppleRequest) error { return runtimeProviderJS.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, out, in) } case "validatepurchasegoogle": afterReqFunctions.afterValidatePurchaseGoogleFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, out *api.ValidatePurchaseResponse, in *api.ValidatePurchaseGoogleRequest) error { return runtimeProviderJS.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, out, in) } case "validatepurchasehuawei": afterReqFunctions.afterValidatePurchaseHuaweiFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, out *api.ValidatePurchaseResponse, in *api.ValidatePurchaseHuaweiRequest) error { return runtimeProviderJS.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, out, in) } case "event": afterReqFunctions.afterEventFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.Event) error { return runtimeProviderJS.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, nil, in) Loading server/runtime_lua.go +36 −0 Original line number Diff line number Diff line Loading @@ -713,6 +713,30 @@ func NewRuntimeProviderLua(logger, startupLogger *zap.Logger, db *sql.DB, protoj } return result.(*api.GetUsersRequest), nil, 0 } case "validatepurchaseapple": beforeReqFunctions.beforeValidatePurchaseAppleFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.ValidatePurchaseAppleRequest) (*api.ValidatePurchaseAppleRequest, error, codes.Code) { result, err, code := runtimeProviderLua.BeforeReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, in) if result == nil || err != nil { return nil, err, code } return result.(*api.ValidatePurchaseAppleRequest), nil, 0 } case "validatepurchasegoogle": beforeReqFunctions.beforeValidatePurchaseGoogleFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.ValidatePurchaseGoogleRequest) (*api.ValidatePurchaseGoogleRequest, error, codes.Code) { result, err, code := runtimeProviderLua.BeforeReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, in) if result == nil || err != nil { return nil, err, code } return result.(*api.ValidatePurchaseGoogleRequest), nil, 0 } case "validatepurchasehuawei": beforeReqFunctions.beforeValidatePurchaseHuaweiFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.ValidatePurchaseHuaweiRequest) (*api.ValidatePurchaseHuaweiRequest, error, codes.Code) { result, err, code := runtimeProviderLua.BeforeReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, in) if result == nil || err != nil { return nil, err, code } return result.(*api.ValidatePurchaseHuaweiRequest), nil, 0 } case "event": beforeReqFunctions.beforeEventFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.Event) (*api.Event, error, codes.Code) { result, err, code := runtimeProviderLua.BeforeReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, in) Loading Loading @@ -999,6 +1023,18 @@ func NewRuntimeProviderLua(logger, startupLogger *zap.Logger, db *sql.DB, protoj afterReqFunctions.afterGetUsersFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, out *api.Users, in *api.GetUsersRequest) error { return runtimeProviderLua.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, out, in) } case "validatepurchaseapple": afterReqFunctions.afterValidatePurchaseAppleFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, out *api.ValidatePurchaseResponse, in *api.ValidatePurchaseAppleRequest) error { return runtimeProviderLua.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, out, in) } case "validatepurchasegoogle": afterReqFunctions.afterValidatePurchaseGoogleFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, out *api.ValidatePurchaseResponse, in *api.ValidatePurchaseGoogleRequest) error { return runtimeProviderLua.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, out, in) } case "validatepurchasehuawei": afterReqFunctions.afterValidatePurchaseHuaweiFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, out *api.ValidatePurchaseResponse, in *api.ValidatePurchaseHuaweiRequest) error { return runtimeProviderLua.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, out, in) } case "event": afterReqFunctions.afterEventFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.Event) error { return runtimeProviderLua.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, nil, in) Loading Loading
CHANGELOG.md +1 −0 Original line number Diff line number Diff line Loading @@ -10,6 +10,7 @@ The format is based on [keep a changelog](http://keepachangelog.com) and this pr ### Fixed - Fix log level in Lua runtime log calls which use logger fields. - Correctly register purchase validation before/after hooks in JavaScript/Lua runtimes. ## [3.5.0] - 2021-08-10 ### Added Loading
server/runtime.go +18 −18 Original line number Diff line number Diff line Loading @@ -877,13 +877,13 @@ func NewRuntime(ctx context.Context, logger, startupLogger *zap.Logger, db *sql. startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "getusers")) } if allBeforeReqFunctions.beforeValidatePurchaseAppleFunction != nil { startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "receiptvalidateapple")) startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "validatepurchaseapple")) } if allBeforeReqFunctions.beforeValidatePurchaseGoogleFunction != nil { startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "receiptvalidategoogle")) startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "validatepurchasegoogle")) } if allBeforeReqFunctions.beforeValidatePurchaseHuaweiFunction != nil { startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "receiptvalidatehuawei")) startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "validatepurchasehuawei")) } if allBeforeReqFunctions.beforeEventFunction != nil { startupLogger.Info("Registered JavaScript runtime Before custom events function invocation") Loading Loading @@ -1160,15 +1160,15 @@ func NewRuntime(ctx context.Context, logger, startupLogger *zap.Logger, db *sql. } if luaBeforeReqFunctions.beforeValidatePurchaseAppleFunction != nil { allBeforeReqFunctions.beforeValidatePurchaseAppleFunction = luaBeforeReqFunctions.beforeValidatePurchaseAppleFunction startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "receiptvalidateapple")) startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "validatepurchaseapple")) } if luaBeforeReqFunctions.beforeValidatePurchaseGoogleFunction != nil { allBeforeReqFunctions.beforeValidatePurchaseGoogleFunction = luaBeforeReqFunctions.beforeValidatePurchaseGoogleFunction startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "receiptvalidategoogle")) startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "validatepurchasegoogle")) } if luaBeforeReqFunctions.beforeValidatePurchaseHuaweiFunction != nil { allBeforeReqFunctions.beforeValidatePurchaseHuaweiFunction = luaBeforeReqFunctions.beforeValidatePurchaseHuaweiFunction startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "receiptvalidatehuawei")) startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "validatepurchasehuawei")) } if luaBeforeReqFunctions.beforeEventFunction != nil { allBeforeReqFunctions.beforeEventFunction = luaBeforeReqFunctions.beforeEventFunction Loading Loading @@ -1450,15 +1450,15 @@ func NewRuntime(ctx context.Context, logger, startupLogger *zap.Logger, db *sql. } if goBeforeReqFunctions.beforeValidatePurchaseAppleFunction != nil { allBeforeReqFunctions.beforeValidatePurchaseAppleFunction = goBeforeReqFunctions.beforeValidatePurchaseAppleFunction startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "receiptvalidateapple")) startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "validateapple")) } if goBeforeReqFunctions.beforeValidatePurchaseGoogleFunction != nil { allBeforeReqFunctions.beforeValidatePurchaseGoogleFunction = goBeforeReqFunctions.beforeValidatePurchaseGoogleFunction startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "receiptvalidategoogle")) startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "validatepurchasegoogle")) } if goBeforeReqFunctions.beforeValidatePurchaseHuaweiFunction != nil { allBeforeReqFunctions.beforeValidatePurchaseHuaweiFunction = goBeforeReqFunctions.beforeValidatePurchaseHuaweiFunction startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "receiptvalidatehuawei")) startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "validatepurchasehuawei")) } if goBeforeReqFunctions.beforeEventFunction != nil { allBeforeReqFunctions.beforeEventFunction = goBeforeReqFunctions.beforeEventFunction Loading Loading @@ -1672,13 +1672,13 @@ func NewRuntime(ctx context.Context, logger, startupLogger *zap.Logger, db *sql. startupLogger.Info("Registered JavaScript runtime After function invocation", zap.String("id", "getusers")) } if allAfterReqFunctions.afterValidatePurchaseAppleFunction != nil { startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "receiptvalidateapple")) startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "validatepurchaseapple")) } if allAfterReqFunctions.afterValidatePurchaseGoogleFunction != nil { startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "receiptvalidategoogle")) startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "validatepurchasegoogle")) } if allAfterReqFunctions.afterValidatePurchaseHuaweiFunction != nil { startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "receiptvalidatehuawei")) startupLogger.Info("Registered JavaScript runtime Before function invocation", zap.String("id", "validatepurchasehuawei")) } if allAfterReqFunctions.afterEventFunction != nil { startupLogger.Info("Registered JavaScript runtime After custom events function invocation") Loading Loading @@ -1955,15 +1955,15 @@ func NewRuntime(ctx context.Context, logger, startupLogger *zap.Logger, db *sql. } if luaAfterReqFunctions.afterValidatePurchaseAppleFunction != nil { allAfterReqFunctions.afterValidatePurchaseAppleFunction = luaAfterReqFunctions.afterValidatePurchaseAppleFunction startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "receiptvalidateapple")) startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "validatepurchaseapple")) } if luaAfterReqFunctions.afterValidatePurchaseGoogleFunction != nil { allAfterReqFunctions.afterValidatePurchaseGoogleFunction = luaAfterReqFunctions.afterValidatePurchaseGoogleFunction startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "receiptvalidategoogle")) startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "validatepurchasegoogle")) } if luaAfterReqFunctions.afterValidatePurchaseHuaweiFunction != nil { allAfterReqFunctions.afterValidatePurchaseHuaweiFunction = luaAfterReqFunctions.afterValidatePurchaseHuaweiFunction startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "receiptvalidatehuawei")) startupLogger.Info("Registered Lua runtime Before function invocation", zap.String("id", "validatepurchasehuawei")) } if luaAfterReqFunctions.afterEventFunction != nil { allAfterReqFunctions.afterEventFunction = luaAfterReqFunctions.afterEventFunction Loading Loading @@ -2245,15 +2245,15 @@ func NewRuntime(ctx context.Context, logger, startupLogger *zap.Logger, db *sql. } if goAfterReqFunctions.afterValidatePurchaseAppleFunction != nil { allAfterReqFunctions.afterValidatePurchaseAppleFunction = goAfterReqFunctions.afterValidatePurchaseAppleFunction startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "receiptvalidateapple")) startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "validatepurchaseapple")) } if goAfterReqFunctions.afterValidatePurchaseGoogleFunction != nil { allAfterReqFunctions.afterValidatePurchaseGoogleFunction = goAfterReqFunctions.afterValidatePurchaseGoogleFunction startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "receiptvalidategoogle")) startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "validatepurchasegoogle")) } if goAfterReqFunctions.afterValidatePurchaseHuaweiFunction != nil { allAfterReqFunctions.afterValidatePurchaseHuaweiFunction = goAfterReqFunctions.afterValidatePurchaseHuaweiFunction startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "receiptvalidatehuawei")) startupLogger.Info("Registered Go runtime Before function invocation", zap.String("id", "validatepurchasehuawei")) } if goAfterReqFunctions.afterEventFunction != nil { allAfterReqFunctions.afterEventFunction = goAfterReqFunctions.afterEventFunction Loading
server/runtime_javascript.go +36 −0 Original line number Diff line number Diff line Loading @@ -1170,6 +1170,30 @@ func NewRuntimeProviderJS(logger, startupLogger *zap.Logger, db *sql.DB, protojs } return result.(*api.GetUsersRequest), nil, 0 } case "validatepurchaseapple": beforeReqFunctions.beforeValidatePurchaseAppleFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.ValidatePurchaseAppleRequest) (*api.ValidatePurchaseAppleRequest, error, codes.Code) { result, err, code := runtimeProviderJS.BeforeReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, in) if result == nil || err != nil { return nil, err, code } return result.(*api.ValidatePurchaseAppleRequest), nil, 0 } case "validatepurchasegoogle": beforeReqFunctions.beforeValidatePurchaseGoogleFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.ValidatePurchaseGoogleRequest) (*api.ValidatePurchaseGoogleRequest, error, codes.Code) { result, err, code := runtimeProviderJS.BeforeReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, in) if result == nil || err != nil { return nil, err, code } return result.(*api.ValidatePurchaseGoogleRequest), nil, 0 } case "validatepurchasehuawei": beforeReqFunctions.beforeValidatePurchaseHuaweiFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.ValidatePurchaseHuaweiRequest) (*api.ValidatePurchaseHuaweiRequest, error, codes.Code) { result, err, code := runtimeProviderJS.BeforeReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, in) if result == nil || err != nil { return nil, err, code } return result.(*api.ValidatePurchaseHuaweiRequest), nil, 0 } case "event": beforeReqFunctions.beforeEventFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.Event) (*api.Event, error, codes.Code) { result, err, code := runtimeProviderJS.BeforeReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, in) Loading Loading @@ -1456,6 +1480,18 @@ func NewRuntimeProviderJS(logger, startupLogger *zap.Logger, db *sql.DB, protojs afterReqFunctions.afterGetUsersFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, out *api.Users, in *api.GetUsersRequest) error { return runtimeProviderJS.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, out, in) } case "validatepurchaseapple": afterReqFunctions.afterValidatePurchaseAppleFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, out *api.ValidatePurchaseResponse, in *api.ValidatePurchaseAppleRequest) error { return runtimeProviderJS.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, out, in) } case "validatepurchasegoogle": afterReqFunctions.afterValidatePurchaseGoogleFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, out *api.ValidatePurchaseResponse, in *api.ValidatePurchaseGoogleRequest) error { return runtimeProviderJS.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, out, in) } case "validatepurchasehuawei": afterReqFunctions.afterValidatePurchaseHuaweiFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, out *api.ValidatePurchaseResponse, in *api.ValidatePurchaseHuaweiRequest) error { return runtimeProviderJS.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, out, in) } case "event": afterReqFunctions.afterEventFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.Event) error { return runtimeProviderJS.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, nil, in) Loading
server/runtime_lua.go +36 −0 Original line number Diff line number Diff line Loading @@ -713,6 +713,30 @@ func NewRuntimeProviderLua(logger, startupLogger *zap.Logger, db *sql.DB, protoj } return result.(*api.GetUsersRequest), nil, 0 } case "validatepurchaseapple": beforeReqFunctions.beforeValidatePurchaseAppleFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.ValidatePurchaseAppleRequest) (*api.ValidatePurchaseAppleRequest, error, codes.Code) { result, err, code := runtimeProviderLua.BeforeReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, in) if result == nil || err != nil { return nil, err, code } return result.(*api.ValidatePurchaseAppleRequest), nil, 0 } case "validatepurchasegoogle": beforeReqFunctions.beforeValidatePurchaseGoogleFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.ValidatePurchaseGoogleRequest) (*api.ValidatePurchaseGoogleRequest, error, codes.Code) { result, err, code := runtimeProviderLua.BeforeReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, in) if result == nil || err != nil { return nil, err, code } return result.(*api.ValidatePurchaseGoogleRequest), nil, 0 } case "validatepurchasehuawei": beforeReqFunctions.beforeValidatePurchaseHuaweiFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.ValidatePurchaseHuaweiRequest) (*api.ValidatePurchaseHuaweiRequest, error, codes.Code) { result, err, code := runtimeProviderLua.BeforeReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, in) if result == nil || err != nil { return nil, err, code } return result.(*api.ValidatePurchaseHuaweiRequest), nil, 0 } case "event": beforeReqFunctions.beforeEventFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.Event) (*api.Event, error, codes.Code) { result, err, code := runtimeProviderLua.BeforeReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, in) Loading Loading @@ -999,6 +1023,18 @@ func NewRuntimeProviderLua(logger, startupLogger *zap.Logger, db *sql.DB, protoj afterReqFunctions.afterGetUsersFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, out *api.Users, in *api.GetUsersRequest) error { return runtimeProviderLua.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, out, in) } case "validatepurchaseapple": afterReqFunctions.afterValidatePurchaseAppleFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, out *api.ValidatePurchaseResponse, in *api.ValidatePurchaseAppleRequest) error { return runtimeProviderLua.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, out, in) } case "validatepurchasegoogle": afterReqFunctions.afterValidatePurchaseGoogleFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, out *api.ValidatePurchaseResponse, in *api.ValidatePurchaseGoogleRequest) error { return runtimeProviderLua.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, out, in) } case "validatepurchasehuawei": afterReqFunctions.afterValidatePurchaseHuaweiFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, out *api.ValidatePurchaseResponse, in *api.ValidatePurchaseHuaweiRequest) error { return runtimeProviderLua.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, out, in) } case "event": afterReqFunctions.afterEventFunction = func(ctx context.Context, logger *zap.Logger, userID, username string, vars map[string]string, expiry int64, clientIP, clientPort string, in *api.Event) error { return runtimeProviderLua.AfterReq(ctx, id, logger, userID, username, vars, expiry, clientIP, clientPort, nil, in) Loading