-
Notifications
You must be signed in to change notification settings - Fork 204
/
service.go
47 lines (44 loc) · 2.24 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
/**********************************************************\
| |
| hprose |
| |
| Official WebSite: http://www.hprose.com/ |
| http://www.hprose.org/ |
| |
\**********************************************************/
/**********************************************************\
* *
* rpc/service.go *
* *
* hprose service for Go. *
* *
* LastModified: Oct 27, 2016 *
* Author: Ma Bingyao <andot@hprose.com> *
* *
\**********************************************************/
package rpc
import "time"
// Service interface
type Service interface {
AddFunction(name string, function interface{}, option ...Options) Service
AddFunctions(names []string, functions []interface{}, option ...Options) Service
AddMethod(name string, obj interface{}, alias string, option ...Options) Service
AddMethods(names []string, obj interface{}, aliases []string, option ...Options) Service
AddInstanceMethods(obj interface{}, option ...Options) Service
AddAllMethods(obj interface{}, option ...Options) Service
AddMissingMethod(method MissingMethod, option ...Options) Service
AddNetRPCMethods(rcvr interface{}, option ...Options) Service
Remove(name string) Service
Filter() Filter
FilterByIndex(index int) Filter
SetFilter(filter ...Filter) Service
AddFilter(filter ...Filter) Service
RemoveFilterByIndex(index int) Service
RemoveFilter(filter ...Filter) Service
AddInvokeHandler(handler ...InvokeHandler) Service
AddBeforeFilterHandler(handler ...FilterHandler) Service
AddAfterFilterHandler(handler ...FilterHandler) Service
SetUserData(userdata map[string]interface{}) Service
Publish(topic string, timeout time.Duration, heartbeat time.Duration) Service
Clients
}