Merge pull request #2972 from nspcc-dev/dynamic-services

core: improve documentation of SetOracle/SetNotary
This commit is contained in:
Roman Khimov 2023-04-13 20:59:52 +03:00 committed by GitHub
commit b9f95a820c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -328,8 +328,8 @@ func NewBlockchain(s storage.Store, cfg config.Blockchain, log *zap.Logger) (*Bl
return bc, nil return bc, nil
} }
// SetOracle sets oracle module. It doesn't protected by mutex and // SetOracle sets oracle module. It can safely be called on the running blockchain.
// must be called before `bc.Run()` to avoid data race. // To unregister Oracle service use SetOracle(nil).
func (bc *Blockchain) SetOracle(mod native.OracleService) { func (bc *Blockchain) SetOracle(mod native.OracleService) {
orc := bc.contracts.Oracle orc := bc.contracts.Oracle
if mod != nil { if mod != nil {
@ -356,8 +356,8 @@ func (bc *Blockchain) SetOracle(mod native.OracleService) {
bc.contracts.Designate.OracleService.Store(&mod) bc.contracts.Designate.OracleService.Store(&mod)
} }
// SetNotary sets notary module. It doesn't protected by mutex and // SetNotary sets notary module. It may safely be called on the running blockchain.
// must be called before `bc.Run()` to avoid data race. // To unregister Notary service use SetNotary(nil).
func (bc *Blockchain) SetNotary(mod native.NotaryService) { func (bc *Blockchain) SetNotary(mod native.NotaryService) {
if mod != nil { if mod != nil {
keys, _, err := bc.contracts.Designate.GetDesignatedByRole(bc.dao, noderoles.P2PNotary, bc.BlockHeight()) keys, _, err := bc.contracts.Designate.GetDesignatedByRole(bc.dao, noderoles.P2PNotary, bc.BlockHeight())