/
service.go
60 lines (54 loc) · 1.38 KB
/
service.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
package types
import (
"github.com/tendermint/tendermint/crypto"
sdk "github.com/cosmos/cosmos-sdk/types"
"github.com/furynet/furymod/modules/oracle/types"
servicetypes "github.com/furynet/furymod/modules/service/types"
)
const (
ServiceName = "random"
ServiceDesc = "system service definition of random module"
ServiceValueJSONPath = "seed"
AuthorDescription = "random module account"
ServiceSchemas = `
{
"input": {
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "random-seed-input-body",
"description": "GRID Hub Random Seed Input Body Schema",
"type": "object",
"additionalProperties": false
},
"output": {
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "random-seed-output-body",
"description": "GRID Hub Random Seed Output Body Schema",
"type": "object",
"properties": {
"seed": {
"description": "random seed",
"type": "string",
"pattern": "^[0-9a-fA-F]{64}$"
}
},
"additionalProperties": false,
"required": [
"seed"
]
}
}`
)
var (
ServiceTags = []string{types.ModuleName}
Author = sdk.AccAddress(crypto.AddressHash([]byte(types.ModuleName)))
)
func GetSvcDefinition() servicetypes.ServiceDefinition {
return servicetypes.NewServiceDefinition(
ServiceName,
ServiceDesc,
ServiceTags,
Author,
AuthorDescription,
ServiceSchemas,
)
}