ContainerType is the string which the inproc container type is registered with the container.VMController
const ContainerType = "SYSTEM"
InprocVM is a vm. It is identified by a executable name
type InprocVM struct {
// contains filtered or unexported fields
}
func NewInprocVM(r *Registry) *InprocVM
NewInprocVM creates a new InprocVM
func (vm *InprocVM) GetVMName(ccid ccintf.CCID) string
GetVMName ignores the peer and network name as it just needs to be unique in process. It accepts a format function parameter to allow different formatting based on the desired use of the name.
func (vm *InprocVM) HealthCheck(ctx context.Context) error
HealthCheck is provided in order to implement the VMProvider interface. It always returns nil..
func (vm *InprocVM) Start(ccid ccintf.CCID, args []string, env []string, filesToUpload map[string][]byte, builder container.Builder) error
Start starts a previously registered system codechain
func (vm *InprocVM) Stop(ccid ccintf.CCID, timeout uint, dontkill bool, dontremove bool) error
Stop stops a system codechain
func (vm *InprocVM) Wait(ccid ccintf.CCID) (int, error)
Wait will block until the chaincode is stopped.
Registry stores registered system chaincodes. It implements container.VMProvider and scc.Registrar
type Registry struct { ChaincodeSupport ccintf.CCSupport // contains filtered or unexported fields }
func NewRegistry() *Registry
NewRegistry creates an initialized registry, ready to register system chaincodes. The returned *Registry is _not_ ready to use as is. You must set the ChaincodeSupport as soon as one is available, before any chaincode invocations occur. This is because the chaincode support used to be a latent dependency, snuck in on the context, but now it is being made an explicit part of the startup.
func (r *Registry) NewVM() container.VM
NewVM creates an inproc VM instance
func (r *Registry) Register(ccid *ccintf.CCID, cc shim.Chaincode) error
Register registers system chaincode with given path. The deploy should be called to initialize
SendPanicFailure
type SendPanicFailure string
func (e SendPanicFailure) Error() string
SysCCRegisteredErr registered error
type SysCCRegisteredErr string
func (s SysCCRegisteredErr) Error() string