appchain_mgr

package
v1.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 26, 2021 License: Apache-2.0 Imports: 6 Imported by: 9

Documentation

Index

Constants

View Source
const (
	PREFIX = "appchain-"

	RelaychainType = "relaychain"
	AppchainType   = "appchain"
	FabricType     = "fabric"
)

Variables

This section is empty.

Functions

func SetFSM

func SetFSM(chain *Appchain)

Types

type Appchain

type Appchain struct {
	ID            string             `json:"id"`
	Name          string             `json:"name"`
	Validators    string             `json:"validators"`
	ConsensusType string             `json:"consensus_type"`
	Status        g.GovernanceStatus `json:"status"`
	ChainType     string             `json:"chain_type"`
	Desc          string             `json:"desc"`
	Version       string             `json:"version"`
	PublicKey     string             `json:"public_key"`
	OwnerDID      string             `json:"owner_did"`
	DidDocAddr    string             `json:"did_doc_addr"`
	DidDocHash    string             `json:"did_doc_hash"`
	FSM           *fsm.FSM           `json:"fsm"`
}

type AppchainManager

type AppchainManager struct {
	Persister
}

func (*AppchainManager) Appchain

func (am *AppchainManager) Appchain() (bool, []byte)

func (*AppchainManager) Appchains

func (am *AppchainManager) Appchains() (bool, []byte)

Appchains returns all appchains

func (*AppchainManager) Audit

func (am *AppchainManager) Audit(proposer string, isApproved int32, desc string) (bool, []byte)

Audit bitxhub manager audit appchain register info

func (*AppchainManager) ChangeStatus

func (am *AppchainManager) ChangeStatus(id, trigger string) (bool, []byte)

func (*AppchainManager) CountAppchains

func (am *AppchainManager) CountAppchains() (bool, []byte)

CountAppchains counts all appchains including approved, rejected or registered

func (*AppchainManager) CountAvailableAppchains

func (am *AppchainManager) CountAvailableAppchains() (bool, []byte)

CountAvailableAppchains counts all available appchains

func (*AppchainManager) DeleteAppchain

func (am *AppchainManager) DeleteAppchain(id string) (bool, []byte)

func (*AppchainManager) FetchAuditRecords

func (am *AppchainManager) FetchAuditRecords(id string) (bool, []byte)

func (*AppchainManager) GetAppchain

func (am *AppchainManager) GetAppchain(id string) (bool, []byte)

func (*AppchainManager) GetPubKeyByChainID

func (am *AppchainManager) GetPubKeyByChainID(id string) (bool, []byte)

GetPubKeyByChainID can get aim chain's public key using aim chain ID

func (*AppchainManager) Register

func (am *AppchainManager) Register(id, appchainOwner, docAddr, docHash, validators string,
	consensusType, chainType, name, desc, version, pubkey string) (bool, []byte)

Register appchain manager registers appchain info caller is the appchain manager address return appchain id and error

func (*AppchainManager) UpdateAppchain

func (am *AppchainManager) UpdateAppchain(id, appchainOwner, docAddr, docHash, validators string, consensusType,
	chainType, name, desc, version, pubkey string) (bool, []byte)

type AppchainMgr

type AppchainMgr interface {
	// Register appchain managers registers appchain info caller is the appchain
	// manager address return appchain id and error
	Register(id, appchainOwner, docAddr, docHash, validators string, consensusType, chainType, name, desc, version, pubkey string) (bool, []byte)

	// Audit bitxhub manager audit appchain register info
	// caller is the bitxhub manager address
	// proposer is the appchain manager address
	Audit(proposer string, isApproved int32, desc string) (bool, []byte)

	//FetchAuditRecords fetches audit records by appchain id
	FetchAuditRecords(id string) (bool, []byte)

	// UpdateAppchain updates approved appchain
	UpdateAppchain(id, appchainOwner, docAddr, docHash, validators string, consensusType, chainType, name, desc, version, pubkey string) (bool, []byte)

	// ChangeStatus changes state of appchain
	ChangeStatus(id, trigger string) (bool, []byte)

	// CountAvailableAppchains counts all available appchains
	CountAvailableAppchains() (bool, []byte)

	// CountAppchains counts all appchains including approved, rejected or registered
	CountAppchains() (bool, []byte)

	// Appchains returns all appchains
	Appchains() (bool, []byte)

	// DeleteAppchain deletes appchain
	DeleteAppchain(id string) (bool, []byte)

	// Appchain returns appchain info
	Appchain() (bool, []byte)

	// GetAppchain returns appchain info by id
	GetAppchain(id string) (bool, []byte)

	// GetPubKeyByChainID can get aim chain's public key using aim chain ID
	GetPubKeyByChainID(id string) (bool, []byte)
}

func New

func New(persister Persister) AppchainMgr

type AppchainStatus

type AppchainStatus string

type Persister

type Persister interface {
	// Caller
	Caller() string
	// Logger
	Logger() logrus.FieldLogger
	// Has judges key
	Has(key string) bool
	// Get gets value from datastore by key
	Get(key string) (bool, []byte)
	// GetObject
	GetObject(key string, ret interface{}) bool
	// Set sets k-v
	Set(key string, value []byte)
	// SetObject sets k with object v, v will be marshaled using json
	SetObject(key string, value interface{})
	// Delete deletes k-v
	Delete(key string)
	// QueryByPrefix queries object by prefix
	Query(prefix string) (bool, [][]byte)
}

Directories

Path Synopsis
Package mock_appchainMgr is a generated GoMock package.
Package mock_appchainMgr is a generated GoMock package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL