forked from TrueCloudLab/neoneo-go
23 lines
738 B
Go
23 lines
738 B
Go
package services
|
|
|
|
import (
|
|
"github.com/nspcc-dev/neo-go/pkg/core/state"
|
|
"github.com/nspcc-dev/neo-go/pkg/crypto/keys"
|
|
"github.com/nspcc-dev/neo-go/pkg/util"
|
|
)
|
|
|
|
// Oracle specifies oracle service interface.
|
|
type Oracle interface {
|
|
// AddRequests processes new requests.
|
|
AddRequests(map[uint64]*state.OracleRequest)
|
|
// RemoveRequests removes already processed requests.
|
|
RemoveRequests([]uint64)
|
|
// UpdateOracleNodes updates oracle nodes.
|
|
UpdateOracleNodes(keys.PublicKeys)
|
|
// UpdateNativeContract updates oracle contract native script and hash.
|
|
UpdateNativeContract([]byte, []byte, util.Uint160, int)
|
|
// Run runs oracle module. Must be invoked in a separate goroutine.
|
|
Run()
|
|
// Shutdown shutdowns oracle module.
|
|
Shutdown()
|
|
}
|