lscc

package
v0.0.0-...-6bf75d6 Latest Latest
Warning

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

Go to latest
Published: Sep 30, 2020 License: Apache-2.0 Imports: 26 Imported by: 0

Documentation

Index

Constants

View Source
const (

	// INSTALL install command
	INSTALL = "install"

	// DEPLOY deploy command
	DEPLOY = "deploy"

	// UPGRADE upgrade chaincode
	UPGRADE = "upgrade"

	// CCEXISTS get chaincode
	CCEXISTS = "getid"

	// CHAINCODEEXISTS get chaincode alias
	CHAINCODEEXISTS = "ChaincodeExists"

	// GETDEPSPEC get ChaincodeDeploymentSpec
	GETDEPSPEC = "getdepspec"

	// GETDEPLOYMENTSPEC get ChaincodeDeploymentSpec alias
	GETDEPLOYMENTSPEC = "GetDeploymentSpec"

	// GETCCDATA get ChaincodeData
	GETCCDATA = "getccdata"

	// GETCHAINCODEDATA get ChaincodeData alias
	GETCHAINCODEDATA = "GetChaincodeData"

	// GETCHAINCODES gets the instantiated chaincodes on a channel
	GETCHAINCODES = "getchaincodes"

	// GETCHAINCODESALIAS gets the instantiated chaincodes on a channel
	GETCHAINCODESALIAS = "GetChaincodes"

	// GETINSTALLEDCHAINCODES gets the installed chaincodes on a peer
	GETINSTALLEDCHAINCODES = "getinstalledchaincodes"

	// GETINSTALLEDCHAINCODESALIAS gets the installed chaincodes on a peer
	GETINSTALLEDCHAINCODESALIAS = "GetInstalledChaincodes"

	// GETCOLLECTIONSCONFIG gets the collections config for a chaincode
	GETCOLLECTIONSCONFIG = "GetCollectionsConfig"

	// GETCOLLECTIONSCONFIGALIAS gets the collections config for a chaincode
	GETCOLLECTIONSCONFIGALIAS = "getcollectionsconfig"
)

Variables

View Source
var (
	ChaincodeNameRegExp    = regexp.MustCompile("^[a-zA-Z0-9]+([-_][a-zA-Z0-9]+)*$")
	ChaincodeVersionRegExp = regexp.MustCompile("^[A-Za-z0-9_.+-]+$")
)

Functions

This section is empty.

Types

type ChaincodeMismatchErr

type ChaincodeMismatchErr string

ChaincodeMismatchErr chaincode name from two places don't match

func (ChaincodeMismatchErr) Error

func (f ChaincodeMismatchErr) Error() string

type CollectionsConfigUpgradesNotAllowed

type CollectionsConfigUpgradesNotAllowed string

CollectionsConfigUpgradesNotAllowed when V1_2 capability is not enabled

func (CollectionsConfigUpgradesNotAllowed) Error

type DeployedCCInfoProvider

type DeployedCCInfoProvider struct {
}

DeployedCCInfoProvider implements ineterface ledger.DeployedChaincodeInfoProvider

func (*DeployedCCInfoProvider) ChaincodeInfo

ChaincodeInfo implements function in interface ledger.DeployedChaincodeInfoProvider

func (*DeployedCCInfoProvider) CollectionInfo

func (p *DeployedCCInfoProvider) CollectionInfo(chaincodeName, collectionName string, qe ledger.SimpleQueryExecutor) (*common.StaticCollectionConfig, error)

CollectionInfo implements function in interface ledger.DeployedChaincodeInfoProvider

func (*DeployedCCInfoProvider) Namespaces

func (p *DeployedCCInfoProvider) Namespaces() []string

Namespaces implements function in interface ledger.DeployedChaincodeInfoProvider

func (*DeployedCCInfoProvider) UpdatedChaincodes

func (p *DeployedCCInfoProvider) UpdatedChaincodes(stateUpdates map[string][]*kvrwset.KVWrite) ([]*ledger.ChaincodeLifecycleInfo, error)

UpdatedChaincodes implements function in interface ledger.DeployedChaincodeInfoProvider

type ExistsErr

type ExistsErr string

ExistsErr chaincode exists error

func (ExistsErr) Error

func (t ExistsErr) Error() string

type FilesystemSupport

type FilesystemSupport interface {
	// PutChaincodeToLocalStorage stores the supplied chaincode
	// package to local storage (i.e. the file system)
	PutChaincodeToLocalStorage(ccprovider.CCPackage) error

	// GetChaincodeFromLocalStorage retrieves the chaincode package
	// for the requested chaincode, specified by name and version
	GetChaincodeFromLocalStorage(ccname string, ccversion string) (ccprovider.CCPackage, error)

	// GetChaincodesFromLocalStorage returns an array of all chaincode
	// data that have previously been persisted to local storage
	GetChaincodesFromLocalStorage() (*pb.ChaincodeQueryResponse, error)

	// GetInstantiationPolicy returns the instantiation policy for the
	// supplied chaincode (or the channel's default if none was specified)
	GetInstantiationPolicy(channel string, ccpack ccprovider.CCPackage) ([]byte, error)

	// CheckInstantiationPolicy checks whether the supplied signed proposal
	// complies with the supplied instantiation policy
	CheckInstantiationPolicy(signedProposal *pb.SignedProposal, chainName string, instantiationPolicy []byte) error
}

FilesystemSupport contains functions that LSCC requires to execute its tasks

type IdenticalVersionErr

type IdenticalVersionErr string

IdenticalVersionErr trying to upgrade to same version of Chaincode

func (IdenticalVersionErr) Error

func (f IdenticalVersionErr) Error() string

type InstantiationPolicyMissing

type InstantiationPolicyMissing string

InstantiationPolicyMissing when no existing instantiation policy is found when upgrading CC

func (InstantiationPolicyMissing) Error

type InvalidArgsLenErr

type InvalidArgsLenErr int

InvalidArgsLenErr invalid arguments length error

func (InvalidArgsLenErr) Error

func (i InvalidArgsLenErr) Error() string

type InvalidCCOnFSError

type InvalidCCOnFSError string

InvalidCCOnFSError error due to mismatch between fingerprint on lscc and installed CC

func (InvalidCCOnFSError) Error

func (f InvalidCCOnFSError) Error() string

type InvalidChaincodeNameErr

type InvalidChaincodeNameErr string

InvalidChaincodeNameErr invalid chaincode name error

func (InvalidChaincodeNameErr) Error

func (f InvalidChaincodeNameErr) Error() string

type InvalidChannelNameErr

type InvalidChannelNameErr string

InvalidChannelNameErr invalid channel name error

func (InvalidChannelNameErr) Error

func (f InvalidChannelNameErr) Error() string

type InvalidDeploymentSpecErr

type InvalidDeploymentSpecErr string

InvalidDeploymentSpecErr invalid chaincode deployment spec error

func (InvalidDeploymentSpecErr) Error

func (f InvalidDeploymentSpecErr) Error() string

type InvalidFunctionErr

type InvalidFunctionErr string

InvalidFunctionErr invalid function error

func (InvalidFunctionErr) Error

func (f InvalidFunctionErr) Error() string

type InvalidStatedbArtifactsErr

type InvalidStatedbArtifactsErr string

InvalidStatedbArtifactsErr invalid state database artifacts error

func (InvalidStatedbArtifactsErr) Error

type InvalidVersionErr

type InvalidVersionErr string

InvalidVersionErr invalid version error

func (InvalidVersionErr) Error

func (f InvalidVersionErr) Error() string

type LifeCycleSysCC

type LifeCycleSysCC struct {
	// aclProvider is responsible for access control evaluation
	ACLProvider aclmgmt.ACLProvider

	// SCCProvider is the interface which is passed into system chaincodes
	// to access other parts of the system
	SCCProvider sysccprovider.SystemChaincodeProvider

	// PolicyChecker is the interface used to perform
	// access control
	PolicyChecker policy.PolicyChecker

	// Support provides the implementation of several
	// static functions
	Support FilesystemSupport

	PlatformRegistry *platforms.Registry
}

LifeCycleSysCC implements chaincode lifecycle and policies around it

func New

New creates a new instance of the LSCC Typically there is only one of these per peer

func (*LifeCycleSysCC) Chaincode

func (lscc *LifeCycleSysCC) Chaincode() shim.Chaincode

func (*LifeCycleSysCC) ChaincodeContainerInfo

func (lscc *LifeCycleSysCC) ChaincodeContainerInfo(chaincodeName string, qe ledger.QueryExecutor) (*ccprovider.ChaincodeContainerInfo, error)

func (*LifeCycleSysCC) ChaincodeDefinition

func (lscc *LifeCycleSysCC) ChaincodeDefinition(chaincodeName string, qe ledger.QueryExecutor) (ccprovider.ChaincodeDefinition, error)

func (*LifeCycleSysCC) Enabled

func (lscc *LifeCycleSysCC) Enabled() bool

func (*LifeCycleSysCC) Init

Init is mostly useless for SCC

func (*LifeCycleSysCC) InitArgs

func (lscc *LifeCycleSysCC) InitArgs() [][]byte

func (*LifeCycleSysCC) InvokableCC2CC

func (lscc *LifeCycleSysCC) InvokableCC2CC() bool

func (*LifeCycleSysCC) InvokableExternal

func (lscc *LifeCycleSysCC) InvokableExternal() bool

func (*LifeCycleSysCC) Invoke

Invoke implements lifecycle functions "deploy", "start", "stop", "upgrade". Deploy's arguments - {[]byte("deploy"), []byte(<chainname>), <unmarshalled pb.ChaincodeDeploymentSpec>}

Invoke also implements some query-like functions Get chaincode arguments - {[]byte("getid"), []byte(<chainname>), []byte(<chaincodename>)}

func (*LifeCycleSysCC) Name

func (lscc *LifeCycleSysCC) Name() string

func (*LifeCycleSysCC) Path

func (lscc *LifeCycleSysCC) Path() string

type MarshallErr

type MarshallErr string

MarshallErr error marshaling/unmarshalling

func (MarshallErr) Error

func (m MarshallErr) Error() string

type NotFoundErr

type NotFoundErr string

NotFoundErr chaincode not registered with LSCC error

func (NotFoundErr) Error

func (t NotFoundErr) Error() string

type PrivateChannelDataNotAvailable

type PrivateChannelDataNotAvailable string

PrivateChannelDataNotAvailable when V1_2 or later capability is not enabled

func (PrivateChannelDataNotAvailable) Error

type TXNotFoundErr

type TXNotFoundErr string

TXNotFoundErr transaction not found error

func (TXNotFoundErr) Error

func (t TXNotFoundErr) Error() string

Directories

Path Synopsis
Code generated by counterfeiter.
Code generated by counterfeiter.

Jump to

Keyboard shortcuts

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