Documentation

Index

Constants

View Source
const (
	ChaincodePackageMetadataFile = "Chaincode-Package-Metadata.json"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ChaincodeMetadata

type ChaincodeMetadata struct {
	Name    string `json:"Name"`
	Version string `json:"Version"`
}

    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

      type ChaincodePackageMetadata struct {
      	Type string `json:"Type"`
      	Path string `json:"Path"`
      }

        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

            type CodePackageNotFoundErr struct {
            	Name    string
            	Version string
            }

              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

                      func (*FilesystemIO) Stat

                      func (f *FilesystemIO) Stat(name string) (os.FileInfo, error)

                        Stat checks for existence of the file on the filesystem

                        func (*FilesystemIO) WriteFile

                        func (f *FilesystemIO) WriteFile(filename string, data []byte, perm os.FileMode) error

                          WriteFile writes a file to the filesystem

                          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

                                        func (s *Store) GetChaincodeInstallPath() string

                                          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

                                            func (s *Store) Load(hash []byte) (ccInstallPkg []byte, name, version string, err error)

                                              Load loads a persisted chaincode install package bytes with the given hash and also returns the name and version

                                              func (*Store) LoadMetadata

                                              func (s *Store) LoadMetadata(path string) (name, version string, err error)

                                                LoadMetadata loads the chaincode metadata stored at the specified path

                                                func (*Store) RetrieveHash

                                                func (s *Store) RetrieveHash(name string, version string) ([]byte, error)

                                                  RetrieveHash retrieves the hash of a chaincode install package given the name and version of the chaincode

                                                  func (*Store) Save

                                                  func (s *Store) Save(name, version string, ccInstallPkg []byte) ([]byte, error)

                                                    Save persists chaincode install package bytes with the given name and version

                                                    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

                                                      Directories

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