Documentation ¶
Index ¶
- Constants
- type ChaincodeMetadata
- type ChaincodePackage
- type ChaincodePackageMetadata
- type ChaincodePackageParser
- type CodePackageNotFoundErr
- type FilesystemIO
- func (f *FilesystemIO) ReadDir(dirname string) ([]os.FileInfo, error)
- func (f *FilesystemIO) ReadFile(filename string) ([]byte, error)
- func (f *FilesystemIO) Remove(name string) error
- func (f *FilesystemIO) Stat(name string) (os.FileInfo, error)
- func (f *FilesystemIO) WriteFile(filename string, data []byte, perm os.FileMode) error
- type IOReadWriter
- type LegacyPackageProvider
- type PackageParser
- type PackageProvider
- type Store
- func (s *Store) GetChaincodeInstallPath() string
- func (s *Store) ListInstalledChaincodes() ([]chaincode.InstalledChaincode, error)
- func (s *Store) Load(hash []byte) (ccInstallPkg []byte, name, version string, err error)
- func (s *Store) LoadMetadata(path string) (name, version string, err error)
- func (s *Store) RetrieveHash(name string, version string) ([]byte, error)
- func (s *Store) Save(name, version string, ccInstallPkg []byte) ([]byte, error)
- type StorePackageProvider
Constants ¶
const (
ChaincodePackageMetadataFile = "Chaincode-Package-Metadata.json"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ChaincodeMetadata ¶
ChaincodeMetadata holds the name and version of a chaincode
type ChaincodePackage ¶
type ChaincodePackage struct { Metadata *ChaincodePackageMetadata CodePackage []byte }
ChaincodePackage represents the un-tar-ed format of the chaincode package.
type ChaincodePackageMetadata ¶
ChaincodePackageMetadata contains the information necessary to understand the embedded code package.
type ChaincodePackageParser ¶
type ChaincodePackageParser struct{}
ChaincodePackageParser provides the ability to parse chaincode packages
func (ChaincodePackageParser) Parse ¶
func (ccpp ChaincodePackageParser) Parse(source []byte) (*ChaincodePackage, error)
Parse parses a set of bytes as a chaincode package and returns the parsed package as a struct
type CodePackageNotFoundErr ¶
CodePackageNotFoundErr is the error returned when a code package cannot be found in the persistence store
func (*CodePackageNotFoundErr) Error ¶
func (e *CodePackageNotFoundErr) Error() string
type FilesystemIO ¶
type FilesystemIO struct { }
FilesystemIO is the production implementation of the IOWriter interface
func (*FilesystemIO) ReadDir ¶
func (f *FilesystemIO) ReadDir(dirname string) ([]os.FileInfo, error)
ReadDir reads a directory from the filesystem
func (*FilesystemIO) ReadFile ¶
func (f *FilesystemIO) ReadFile(filename string) ([]byte, error)
ReadFile reads a file from the filesystem
func (*FilesystemIO) Remove ¶
func (f *FilesystemIO) Remove(name string) error
Remove removes a file from the filesystem - used for rolling back an in-flight Save operation upon a failure
type IOReadWriter ¶
type IOReadWriter interface { ReadDir(string) ([]os.FileInfo, error) ReadFile(string) ([]byte, error) Remove(name string) error Stat(string) (os.FileInfo, error) WriteFile(string, []byte, os.FileMode) error }
IOReadWriter defines the interface needed for reading, writing, removing, and checking for existence of a specified file
type LegacyPackageProvider ¶
type LegacyPackageProvider interface { GetChaincodeCodePackage(name, version string) (codePackage []byte, err error) ListInstalledChaincodes(dir string, de ccprovider.DirEnumerator, ce ccprovider.ChaincodeExtractor) ([]chaincode.InstalledChaincode, error) }
LegacyPackageProvider is the interface needed to retrieve the code package from a ChaincodeDeploymentSpec
type PackageParser ¶
type PackageParser interface {
Parse(data []byte) (*ChaincodePackage, error)
}
PackageParser provides an implementation of chaincode package parsing
type PackageProvider ¶
type PackageProvider struct { Store StorePackageProvider Parser PackageParser LegacyPP LegacyPackageProvider }
PackageProvider holds the necessary dependencies to obtain the code package bytes for a chaincode
func (*PackageProvider) GetChaincodeCodePackage ¶
func (p *PackageProvider) GetChaincodeCodePackage(name, version string) ([]byte, error)
GetChaincodeCodePackage gets the code package bytes for a chaincode given the name and version. It first searches through the persisted ChaincodeInstallPackages and then falls back to searching for ChaincodeDeploymentSpecs
func (*PackageProvider) ListInstalledChaincodes ¶
func (p *PackageProvider) ListInstalledChaincodes() ([]chaincode.InstalledChaincode, error)
ListInstalledChaincodes returns metadata (name, version, and ID) for each chaincode installed on a peer
type Store ¶
type Store struct { Path string ReadWriter IOReadWriter }
Store holds the information needed for persisting a chaincode install package
func (*Store) GetChaincodeInstallPath ¶
GetChaincodeInstallPath returns the path where chaincodes are installed
func (*Store) ListInstalledChaincodes ¶
func (s *Store) ListInstalledChaincodes() ([]chaincode.InstalledChaincode, error)
ListInstalledChaincodes returns an array with information about the chaincodes installed in the persistence store
func (*Store) Load ¶
Load loads a persisted chaincode install package bytes with the given hash and also returns the name and version
func (*Store) LoadMetadata ¶
LoadMetadata loads the chaincode metadata stored at the specified path
func (*Store) RetrieveHash ¶
RetrieveHash retrieves the hash of a chaincode install package given the name and version of the chaincode
type StorePackageProvider ¶
type StorePackageProvider interface { GetChaincodeInstallPath() string ListInstalledChaincodes() ([]chaincode.InstalledChaincode, error) Load(hash []byte) (codePackage []byte, name, version string, err error) RetrieveHash(name, version string) (hash []byte, err error) }
StorePackageProvider is the interface needed to retrieve the code package from a ChaincodeInstallPackage