peer

package
v1.1.0-rc1 Latest Latest
Warning

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

Go to latest
Published: Mar 1, 2018 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation ¶

Overview ¶

Package peer is a generated protocol buffer package.

It is generated from these files:

peer/admin.proto
peer/chaincode.proto
peer/chaincode_event.proto
peer/chaincode_shim.proto
peer/configuration.proto
peer/events.proto
peer/peer.proto
peer/proposal.proto
peer/proposal_response.proto
peer/query.proto
peer/resources.proto
peer/signed_cc_dep_spec.proto
peer/transaction.proto

It has these top-level messages:

ServerStatus
LogLevelRequest
LogLevelResponse
ChaincodeID
ChaincodeInput
ChaincodeSpec
ChaincodeDeploymentSpec
ChaincodeInvocationSpec
ChaincodeEvent
ChaincodeMessage
GetState
PutState
DelState
GetStateByRange
GetQueryResult
GetHistoryForKey
QueryStateNext
QueryStateClose
QueryResultBytes
QueryResponse
AnchorPeers
AnchorPeer
ChaincodeReg
Interest
Register
Rejection
Unregister
FilteredBlock
FilteredTransaction
FilteredTransactionActions
FilteredChaincodeAction
SignedEvent
Event
DeliverResponse
PeerID
PeerEndpoint
SignedProposal
Proposal
ChaincodeHeaderExtension
ChaincodeProposalPayload
ChaincodeAction
ProposalResponse
Response
ProposalResponsePayload
Endorsement
ChaincodeQueryResponse
ChaincodeInfo
ChannelQueryResponse
ChannelInfo
APIResource
ChaincodeIdentifier
ChaincodeValidation
VSCCArgs
ChaincodeEndorsement
ConfigTree
SignedChaincodeDeploymentSpec
SignedTransaction
ProcessedTransaction
Transaction
TransactionAction
ChaincodeActionPayload
ChaincodeEndorsedAction

Index ¶

Constants ¶

View Source
const ResourceConfigSeedDataKey = "resource_config_seed_data"

Variables ¶

View Source
var ChaincodeDeploymentSpec_ExecutionEnvironment_name = map[int32]string{
	0: "DOCKER",
	1: "SYSTEM",
}
View Source
var ChaincodeDeploymentSpec_ExecutionEnvironment_value = map[string]int32{
	"DOCKER": 0,
	"SYSTEM": 1,
}
View Source
var ChaincodeMessage_Type_name = map[int32]string{
	0:  "UNDEFINED",
	1:  "REGISTER",
	2:  "REGISTERED",
	3:  "INIT",
	4:  "READY",
	5:  "TRANSACTION",
	6:  "COMPLETED",
	7:  "ERROR",
	8:  "GET_STATE",
	9:  "PUT_STATE",
	10: "DEL_STATE",
	11: "INVOKE_CHAINCODE",
	13: "RESPONSE",
	14: "GET_STATE_BY_RANGE",
	15: "GET_QUERY_RESULT",
	16: "QUERY_STATE_NEXT",
	17: "QUERY_STATE_CLOSE",
	18: "KEEPALIVE",
	19: "GET_HISTORY_FOR_KEY",
}
View Source
var ChaincodeMessage_Type_value = map[string]int32{
	"UNDEFINED":           0,
	"REGISTER":            1,
	"REGISTERED":          2,
	"INIT":                3,
	"READY":               4,
	"TRANSACTION":         5,
	"COMPLETED":           6,
	"ERROR":               7,
	"GET_STATE":           8,
	"PUT_STATE":           9,
	"DEL_STATE":           10,
	"INVOKE_CHAINCODE":    11,
	"RESPONSE":            13,
	"GET_STATE_BY_RANGE":  14,
	"GET_QUERY_RESULT":    15,
	"QUERY_STATE_NEXT":    16,
	"QUERY_STATE_CLOSE":   17,
	"KEEPALIVE":           18,
	"GET_HISTORY_FOR_KEY": 19,
}
View Source
var ChaincodeSpec_Type_name = map[int32]string{
	0: "UNDEFINED",
	1: "GOLANG",
	2: "NODE",
	3: "CAR",
	4: "JAVA",
}
View Source
var ChaincodeSpec_Type_value = map[string]int32{
	"UNDEFINED": 0,
	"GOLANG":    1,
	"NODE":      2,
	"CAR":       3,
	"JAVA":      4,
}
View Source
var ConfidentialityLevel_name = map[int32]string{
	0: "PUBLIC",
	1: "CONFIDENTIAL",
}
View Source
var ConfidentialityLevel_value = map[string]int32{
	"PUBLIC":       0,
	"CONFIDENTIAL": 1,
}
View Source
var EventType_name = map[int32]string{
	0: "REGISTER",
	1: "BLOCK",
	2: "CHAINCODE",
	3: "REJECTION",
	4: "FILTEREDBLOCK",
}
View Source
var EventType_value = map[string]int32{
	"REGISTER":      0,
	"BLOCK":         1,
	"CHAINCODE":     2,
	"REJECTION":     3,
	"FILTEREDBLOCK": 4,
}
View Source
var ServerStatus_StatusCode_name = map[int32]string{
	0: "UNDEFINED",
	1: "STARTED",
	2: "STOPPED",
	3: "PAUSED",
	4: "ERROR",
	5: "UNKNOWN",
}
View Source
var ServerStatus_StatusCode_value = map[string]int32{
	"UNDEFINED": 0,
	"STARTED":   1,
	"STOPPED":   2,
	"PAUSED":    3,
	"ERROR":     4,
	"UNKNOWN":   5,
}
View Source
var TxValidationCode_name = map[int32]string{
	0:   "VALID",
	1:   "NIL_ENVELOPE",
	2:   "BAD_PAYLOAD",
	3:   "BAD_COMMON_HEADER",
	4:   "BAD_CREATOR_SIGNATURE",
	5:   "INVALID_ENDORSER_TRANSACTION",
	6:   "INVALID_CONFIG_TRANSACTION",
	7:   "UNSUPPORTED_TX_PAYLOAD",
	8:   "BAD_PROPOSAL_TXID",
	9:   "DUPLICATE_TXID",
	10:  "ENDORSEMENT_POLICY_FAILURE",
	11:  "MVCC_READ_CONFLICT",
	12:  "PHANTOM_READ_CONFLICT",
	13:  "UNKNOWN_TX_TYPE",
	14:  "TARGET_CHAIN_NOT_FOUND",
	15:  "MARSHAL_TX_ERROR",
	16:  "NIL_TXACTION",
	17:  "EXPIRED_CHAINCODE",
	18:  "CHAINCODE_VERSION_CONFLICT",
	19:  "BAD_HEADER_EXTENSION",
	20:  "BAD_CHANNEL_HEADER",
	21:  "BAD_RESPONSE_PAYLOAD",
	22:  "BAD_RWSET",
	23:  "ILLEGAL_WRITESET",
	255: "INVALID_OTHER_REASON",
}
View Source
var TxValidationCode_value = map[string]int32{
	"VALID":                        0,
	"NIL_ENVELOPE":                 1,
	"BAD_PAYLOAD":                  2,
	"BAD_COMMON_HEADER":            3,
	"BAD_CREATOR_SIGNATURE":        4,
	"INVALID_ENDORSER_TRANSACTION": 5,
	"INVALID_CONFIG_TRANSACTION":   6,
	"UNSUPPORTED_TX_PAYLOAD":       7,
	"BAD_PROPOSAL_TXID":            8,
	"DUPLICATE_TXID":               9,
	"ENDORSEMENT_POLICY_FAILURE":   10,
	"MVCC_READ_CONFLICT":           11,
	"PHANTOM_READ_CONFLICT":        12,
	"UNKNOWN_TX_TYPE":              13,
	"TARGET_CHAIN_NOT_FOUND":       14,
	"MARSHAL_TX_ERROR":             15,
	"NIL_TXACTION":                 16,
	"EXPIRED_CHAINCODE":            17,
	"CHAINCODE_VERSION_CONFLICT":   18,
	"BAD_HEADER_EXTENSION":         19,
	"BAD_CHANNEL_HEADER":           20,
	"BAD_RESPONSE_PAYLOAD":         21,
	"BAD_RWSET":                    22,
	"ILLEGAL_WRITESET":             23,
	"INVALID_OTHER_REASON":         255,
}

Functions ¶

func RegisterAdminServer ¶

func RegisterAdminServer(s *grpc.Server, srv AdminServer)

func RegisterChaincodeSupportServer ¶

func RegisterChaincodeSupportServer(s *grpc.Server, srv ChaincodeSupportServer)

func RegisterDeliverServer ¶ added in v1.1.0

func RegisterDeliverServer(s *grpc.Server, srv DeliverServer)

func RegisterEndorserServer ¶

func RegisterEndorserServer(s *grpc.Server, srv EndorserServer)

func RegisterEventsServer ¶

func RegisterEventsServer(s *grpc.Server, srv EventsServer)

Types ¶

type APIResource ¶ added in v1.1.0

type APIResource struct {
	PolicyRef string `protobuf:"bytes,1,opt,name=policy_ref,json=policyRef" json:"policy_ref,omitempty"`
}

APIResource represents an API resource in the peer whose ACL is determined by the policy_ref field

func (*APIResource) Descriptor ¶ added in v1.1.0

func (*APIResource) Descriptor() ([]byte, []int)

func (*APIResource) GetPolicyRef ¶ added in v1.1.0

func (m *APIResource) GetPolicyRef() string

func (*APIResource) ProtoMessage ¶ added in v1.1.0

func (*APIResource) ProtoMessage()

func (*APIResource) Reset ¶ added in v1.1.0

func (m *APIResource) Reset()

func (*APIResource) String ¶ added in v1.1.0

func (m *APIResource) String() string

type AdminClient ¶

type AdminClient interface {
	// Return the serve status.
	GetStatus(ctx context.Context, in *google_protobuf.Empty, opts ...grpc.CallOption) (*ServerStatus, error)
	StartServer(ctx context.Context, in *google_protobuf.Empty, opts ...grpc.CallOption) (*ServerStatus, error)
	GetModuleLogLevel(ctx context.Context, in *LogLevelRequest, opts ...grpc.CallOption) (*LogLevelResponse, error)
	SetModuleLogLevel(ctx context.Context, in *LogLevelRequest, opts ...grpc.CallOption) (*LogLevelResponse, error)
	RevertLogLevels(ctx context.Context, in *google_protobuf.Empty, opts ...grpc.CallOption) (*google_protobuf.Empty, error)
}

func NewAdminClient ¶

func NewAdminClient(cc *grpc.ClientConn) AdminClient

type AdminServer ¶

type AdminServer interface {
	// Return the serve status.
	GetStatus(context.Context, *google_protobuf.Empty) (*ServerStatus, error)
	StartServer(context.Context, *google_protobuf.Empty) (*ServerStatus, error)
	GetModuleLogLevel(context.Context, *LogLevelRequest) (*LogLevelResponse, error)
	SetModuleLogLevel(context.Context, *LogLevelRequest) (*LogLevelResponse, error)
	RevertLogLevels(context.Context, *google_protobuf.Empty) (*google_protobuf.Empty, error)
}

type AnchorPeer ¶

type AnchorPeer struct {
	// DNS host name of the anchor peer
	Host string `protobuf:"bytes,1,opt,name=host" json:"host,omitempty"`
	// The port number
	Port int32 `protobuf:"varint,2,opt,name=port" json:"port,omitempty"`
}

AnchorPeer message structure which provides information about anchor peer, it includes host name, port number and peer certificate.

func (*AnchorPeer) Descriptor ¶

func (*AnchorPeer) Descriptor() ([]byte, []int)

func (*AnchorPeer) GetHost ¶

func (m *AnchorPeer) GetHost() string

func (*AnchorPeer) GetPort ¶

func (m *AnchorPeer) GetPort() int32

func (*AnchorPeer) ProtoMessage ¶

func (*AnchorPeer) ProtoMessage()

func (*AnchorPeer) Reset ¶

func (m *AnchorPeer) Reset()

func (*AnchorPeer) String ¶

func (m *AnchorPeer) String() string

type AnchorPeers ¶

type AnchorPeers struct {
	AnchorPeers []*AnchorPeer `protobuf:"bytes,1,rep,name=anchor_peers,json=anchorPeers" json:"anchor_peers,omitempty"`
}

AnchorPeers simply represents list of anchor peers which is used in ConfigurationItem

func (*AnchorPeers) Descriptor ¶

func (*AnchorPeers) Descriptor() ([]byte, []int)

func (*AnchorPeers) GetAnchorPeers ¶

func (m *AnchorPeers) GetAnchorPeers() []*AnchorPeer

func (*AnchorPeers) ProtoMessage ¶

func (*AnchorPeers) ProtoMessage()

func (*AnchorPeers) Reset ¶

func (m *AnchorPeers) Reset()

func (*AnchorPeers) String ¶

func (m *AnchorPeers) String() string

type ChaincodeAction ¶

type ChaincodeAction struct {
	// This field contains the read set and the write set produced by the
	// chaincode executing this invocation.
	Results []byte `protobuf:"bytes,1,opt,name=results,proto3" json:"results,omitempty"`
	// This field contains the events generated by the chaincode executing this
	// invocation.
	Events []byte `protobuf:"bytes,2,opt,name=events,proto3" json:"events,omitempty"`
	// This field contains the result of executing this invocation.
	Response *Response `protobuf:"bytes,3,opt,name=response" json:"response,omitempty"`
	// This field contains the ChaincodeID of executing this invocation. Endorser
	// will set it with the ChaincodeID called by endorser while simulating proposal.
	// Committer will validate the version matching with latest chaincode version.
	// Adding ChaincodeID to keep version opens up the possibility of multiple
	// ChaincodeAction per transaction.
	ChaincodeId *ChaincodeID `protobuf:"bytes,4,opt,name=chaincode_id,json=chaincodeId" json:"chaincode_id,omitempty"`
}

ChaincodeAction contains the actions the events generated by the execution of the chaincode.

func (*ChaincodeAction) Descriptor ¶

func (*ChaincodeAction) Descriptor() ([]byte, []int)

func (*ChaincodeAction) GetChaincodeId ¶

func (m *ChaincodeAction) GetChaincodeId() *ChaincodeID

func (*ChaincodeAction) GetEvents ¶

func (m *ChaincodeAction) GetEvents() []byte

func (*ChaincodeAction) GetResponse ¶

func (m *ChaincodeAction) GetResponse() *Response

func (*ChaincodeAction) GetResults ¶

func (m *ChaincodeAction) GetResults() []byte

func (*ChaincodeAction) ProtoMessage ¶

func (*ChaincodeAction) ProtoMessage()

func (*ChaincodeAction) Reset ¶

func (m *ChaincodeAction) Reset()

func (*ChaincodeAction) String ¶

func (m *ChaincodeAction) String() string

type ChaincodeActionPayload ¶

type ChaincodeActionPayload struct {
	// This field contains the bytes of the ChaincodeProposalPayload message from
	// the original invocation (essentially the arguments) after the application
	// of the visibility function. The main visibility modes are "full" (the
	// entire ChaincodeProposalPayload message is included here), "hash" (only
	// the hash of the ChaincodeProposalPayload message is included) or
	// "nothing".  This field will be used to check the consistency of
	// ProposalResponsePayload.proposalHash.  For the CHAINCODE type,
	// ProposalResponsePayload.proposalHash is supposed to be H(ProposalHeader ||
	// f(ChaincodeProposalPayload)) where f is the visibility function.
	ChaincodeProposalPayload []byte `` /* 135-byte string literal not displayed */
	// The list of actions to apply to the ledger
	Action *ChaincodeEndorsedAction `protobuf:"bytes,2,opt,name=action" json:"action,omitempty"`
}

ChaincodeActionPayload is the message to be used for the TransactionAction's payload when the Header's type is set to CHAINCODE. It carries the chaincodeProposalPayload and an endorsed action to apply to the ledger.

func (*ChaincodeActionPayload) Descriptor ¶

func (*ChaincodeActionPayload) Descriptor() ([]byte, []int)

func (*ChaincodeActionPayload) GetAction ¶

func (*ChaincodeActionPayload) GetChaincodeProposalPayload ¶

func (m *ChaincodeActionPayload) GetChaincodeProposalPayload() []byte

func (*ChaincodeActionPayload) ProtoMessage ¶

func (*ChaincodeActionPayload) ProtoMessage()

func (*ChaincodeActionPayload) Reset ¶

func (m *ChaincodeActionPayload) Reset()

func (*ChaincodeActionPayload) StaticallyOpaqueFieldProto ¶ added in v1.1.0

func (cap *ChaincodeActionPayload) StaticallyOpaqueFieldProto(name string) (proto.Message, error)

func (*ChaincodeActionPayload) StaticallyOpaqueFields ¶ added in v1.1.0

func (cap *ChaincodeActionPayload) StaticallyOpaqueFields() []string

func (*ChaincodeActionPayload) String ¶

func (m *ChaincodeActionPayload) String() string

type ChaincodeDeploymentSpec ¶

type ChaincodeDeploymentSpec struct {
	ChaincodeSpec *ChaincodeSpec `protobuf:"bytes,1,opt,name=chaincode_spec,json=chaincodeSpec" json:"chaincode_spec,omitempty"`
	// Controls when the chaincode becomes executable.
	EffectiveDate *google_protobuf1.Timestamp                  `protobuf:"bytes,2,opt,name=effective_date,json=effectiveDate" json:"effective_date,omitempty"`
	CodePackage   []byte                                       `protobuf:"bytes,3,opt,name=code_package,json=codePackage,proto3" json:"code_package,omitempty"`
	ExecEnv       ChaincodeDeploymentSpec_ExecutionEnvironment `` /* 133-byte string literal not displayed */
}

Specify the deployment of a chaincode. TODO: Define `codePackage`.

func (*ChaincodeDeploymentSpec) Descriptor ¶

func (*ChaincodeDeploymentSpec) Descriptor() ([]byte, []int)

func (*ChaincodeDeploymentSpec) GetChaincodeSpec ¶

func (m *ChaincodeDeploymentSpec) GetChaincodeSpec() *ChaincodeSpec

func (*ChaincodeDeploymentSpec) GetCodePackage ¶

func (m *ChaincodeDeploymentSpec) GetCodePackage() []byte

func (*ChaincodeDeploymentSpec) GetEffectiveDate ¶

func (m *ChaincodeDeploymentSpec) GetEffectiveDate() *google_protobuf1.Timestamp

func (*ChaincodeDeploymentSpec) GetExecEnv ¶

func (*ChaincodeDeploymentSpec) ProtoMessage ¶

func (*ChaincodeDeploymentSpec) ProtoMessage()

func (*ChaincodeDeploymentSpec) Reset ¶

func (m *ChaincodeDeploymentSpec) Reset()

func (*ChaincodeDeploymentSpec) String ¶

func (m *ChaincodeDeploymentSpec) String() string

type ChaincodeDeploymentSpec_ExecutionEnvironment ¶

type ChaincodeDeploymentSpec_ExecutionEnvironment int32
const (
	ChaincodeDeploymentSpec_DOCKER ChaincodeDeploymentSpec_ExecutionEnvironment = 0
	ChaincodeDeploymentSpec_SYSTEM ChaincodeDeploymentSpec_ExecutionEnvironment = 1
)

func (ChaincodeDeploymentSpec_ExecutionEnvironment) EnumDescriptor ¶

func (ChaincodeDeploymentSpec_ExecutionEnvironment) EnumDescriptor() ([]byte, []int)

func (ChaincodeDeploymentSpec_ExecutionEnvironment) String ¶

type ChaincodeEndorsedAction ¶

type ChaincodeEndorsedAction struct {
	// This is the bytes of the ProposalResponsePayload message signed by the
	// endorsers.  Recall that for the CHAINCODE type, the
	// ProposalResponsePayload's extenstion field carries a ChaincodeAction
	ProposalResponsePayload []byte `` /* 132-byte string literal not displayed */
	// The endorsement of the proposal, basically the endorser's signature over
	// proposalResponsePayload
	Endorsements []*Endorsement `protobuf:"bytes,2,rep,name=endorsements" json:"endorsements,omitempty"`
}

ChaincodeEndorsedAction carries information about the endorsement of a specific proposal

func (*ChaincodeEndorsedAction) Descriptor ¶

func (*ChaincodeEndorsedAction) Descriptor() ([]byte, []int)

func (*ChaincodeEndorsedAction) GetEndorsements ¶

func (m *ChaincodeEndorsedAction) GetEndorsements() []*Endorsement

func (*ChaincodeEndorsedAction) GetProposalResponsePayload ¶

func (m *ChaincodeEndorsedAction) GetProposalResponsePayload() []byte

func (*ChaincodeEndorsedAction) ProtoMessage ¶

func (*ChaincodeEndorsedAction) ProtoMessage()

func (*ChaincodeEndorsedAction) Reset ¶

func (m *ChaincodeEndorsedAction) Reset()

func (*ChaincodeEndorsedAction) StaticallyOpaqueFieldProto ¶ added in v1.1.0

func (cae *ChaincodeEndorsedAction) StaticallyOpaqueFieldProto(name string) (proto.Message, error)

func (*ChaincodeEndorsedAction) StaticallyOpaqueFields ¶ added in v1.1.0

func (cae *ChaincodeEndorsedAction) StaticallyOpaqueFields() []string

func (*ChaincodeEndorsedAction) String ¶

func (m *ChaincodeEndorsedAction) String() string

type ChaincodeEndorsement ¶ added in v1.1.0

type ChaincodeEndorsement struct {
	Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
}

ChaincodeEndorsement instructs the peer how transactions should be endorsed. The only endorsement mechanism which ships with the fabric today is the standard 'escc' mechanism. This code simply simulates the proposal to generate a RW set, then signs the result using the peer's local signing identity.

func (*ChaincodeEndorsement) Descriptor ¶ added in v1.1.0

func (*ChaincodeEndorsement) Descriptor() ([]byte, []int)

func (*ChaincodeEndorsement) GetName ¶ added in v1.1.0

func (m *ChaincodeEndorsement) GetName() string

func (*ChaincodeEndorsement) ProtoMessage ¶ added in v1.1.0

func (*ChaincodeEndorsement) ProtoMessage()

func (*ChaincodeEndorsement) Reset ¶ added in v1.1.0

func (m *ChaincodeEndorsement) Reset()

func (*ChaincodeEndorsement) String ¶ added in v1.1.0

func (m *ChaincodeEndorsement) String() string

type ChaincodeEvent ¶

type ChaincodeEvent struct {
	ChaincodeId string `protobuf:"bytes,1,opt,name=chaincode_id,json=chaincodeId" json:"chaincode_id,omitempty"`
	TxId        string `protobuf:"bytes,2,opt,name=tx_id,json=txId" json:"tx_id,omitempty"`
	EventName   string `protobuf:"bytes,3,opt,name=event_name,json=eventName" json:"event_name,omitempty"`
	Payload     []byte `protobuf:"bytes,4,opt,name=payload,proto3" json:"payload,omitempty"`
}

ChaincodeEvent is used for events and registrations that are specific to chaincode string type - "chaincode"

func (*ChaincodeEvent) Descriptor ¶

func (*ChaincodeEvent) Descriptor() ([]byte, []int)

func (*ChaincodeEvent) GetChaincodeId ¶

func (m *ChaincodeEvent) GetChaincodeId() string

func (*ChaincodeEvent) GetEventName ¶

func (m *ChaincodeEvent) GetEventName() string

func (*ChaincodeEvent) GetPayload ¶

func (m *ChaincodeEvent) GetPayload() []byte

func (*ChaincodeEvent) GetTxId ¶

func (m *ChaincodeEvent) GetTxId() string

func (*ChaincodeEvent) ProtoMessage ¶

func (*ChaincodeEvent) ProtoMessage()

func (*ChaincodeEvent) Reset ¶

func (m *ChaincodeEvent) Reset()

func (*ChaincodeEvent) String ¶

func (m *ChaincodeEvent) String() string

type ChaincodeHeaderExtension ¶

type ChaincodeHeaderExtension struct {
	// The PayloadVisibility field controls to what extent the Proposal's payload
	// (recall that for the type CHAINCODE, it is ChaincodeProposalPayload
	// message) field will be visible in the final transaction and in the ledger.
	// Ideally, it would be configurable, supporting at least 3 main visibility
	// modes:
	// 1. all bytes of the payload are visible;
	// 2. only a hash of the payload is visible;
	// 3. nothing is visible.
	// Notice that the visibility function may be potentially part of the ESCC.
	// In that case it overrides PayloadVisibility field.  Finally notice that
	// this field impacts the content of ProposalResponsePayload.proposalHash.
	PayloadVisibility []byte `protobuf:"bytes,1,opt,name=payload_visibility,json=payloadVisibility,proto3" json:"payload_visibility,omitempty"`
	// The ID of the chaincode to target.
	ChaincodeId *ChaincodeID `protobuf:"bytes,2,opt,name=chaincode_id,json=chaincodeId" json:"chaincode_id,omitempty"`
}

ChaincodeHeaderExtension is the Header's extentions message to be used when the Header's type is CHAINCODE. This extensions is used to specify which chaincode to invoke and what should appear on the ledger.

func (*ChaincodeHeaderExtension) Descriptor ¶

func (*ChaincodeHeaderExtension) Descriptor() ([]byte, []int)

func (*ChaincodeHeaderExtension) GetChaincodeId ¶

func (m *ChaincodeHeaderExtension) GetChaincodeId() *ChaincodeID

func (*ChaincodeHeaderExtension) GetPayloadVisibility ¶

func (m *ChaincodeHeaderExtension) GetPayloadVisibility() []byte

func (*ChaincodeHeaderExtension) ProtoMessage ¶

func (*ChaincodeHeaderExtension) ProtoMessage()

func (*ChaincodeHeaderExtension) Reset ¶

func (m *ChaincodeHeaderExtension) Reset()

func (*ChaincodeHeaderExtension) String ¶

func (m *ChaincodeHeaderExtension) String() string

type ChaincodeID ¶

type ChaincodeID struct {
	// deploy transaction will use the path
	Path string `protobuf:"bytes,1,opt,name=path" json:"path,omitempty"`
	// all other requests will use the name (really a hashcode) generated by
	// the deploy transaction
	Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"`
	// user friendly version name for the chaincode
	Version string `protobuf:"bytes,3,opt,name=version" json:"version,omitempty"`
}

ChaincodeID contains the path as specified by the deploy transaction that created it as well as the hashCode that is generated by the system for the path. From the user level (ie, CLI, REST API and so on) deploy transaction is expected to provide the path and other requests are expected to provide the hashCode. The other value will be ignored. Internally, the structure could contain both values. For instance, the hashCode will be set when first generated using the path

func (*ChaincodeID) Descriptor ¶

func (*ChaincodeID) Descriptor() ([]byte, []int)

func (*ChaincodeID) GetName ¶

func (m *ChaincodeID) GetName() string

func (*ChaincodeID) GetPath ¶

func (m *ChaincodeID) GetPath() string

func (*ChaincodeID) GetVersion ¶

func (m *ChaincodeID) GetVersion() string

func (*ChaincodeID) ProtoMessage ¶

func (*ChaincodeID) ProtoMessage()

func (*ChaincodeID) Reset ¶

func (m *ChaincodeID) Reset()

func (*ChaincodeID) String ¶

func (m *ChaincodeID) String() string

type ChaincodeIdentifier ¶ added in v1.1.0

type ChaincodeIdentifier struct {
	Hash    []byte `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
	Version string `protobuf:"bytes,2,opt,name=version" json:"version,omitempty"`
}

ChaincodeIdentifier identifies a piece of chaincode. For a peer to accept invocations of this chaincode, the hash of the installed code must match, as must the version string included with the install command.

func (*ChaincodeIdentifier) Descriptor ¶ added in v1.1.0

func (*ChaincodeIdentifier) Descriptor() ([]byte, []int)

func (*ChaincodeIdentifier) GetHash ¶ added in v1.1.0

func (m *ChaincodeIdentifier) GetHash() []byte

func (*ChaincodeIdentifier) GetVersion ¶ added in v1.1.0

func (m *ChaincodeIdentifier) GetVersion() string

func (*ChaincodeIdentifier) ProtoMessage ¶ added in v1.1.0

func (*ChaincodeIdentifier) ProtoMessage()

func (*ChaincodeIdentifier) Reset ¶ added in v1.1.0

func (m *ChaincodeIdentifier) Reset()

func (*ChaincodeIdentifier) String ¶ added in v1.1.0

func (m *ChaincodeIdentifier) String() string

type ChaincodeInfo ¶

type ChaincodeInfo struct {
	Name    string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	Version string `protobuf:"bytes,2,opt,name=version" json:"version,omitempty"`
	// the path as specified by the install/instantiate transaction
	Path string `protobuf:"bytes,3,opt,name=path" json:"path,omitempty"`
	// the chaincode function upon instantiation and its arguments. This will be
	// blank if the query is returning information about installed chaincodes.
	Input string `protobuf:"bytes,4,opt,name=input" json:"input,omitempty"`
	// the name of the ESCC for this chaincode. This will be
	// blank if the query is returning information about installed chaincodes.
	Escc string `protobuf:"bytes,5,opt,name=escc" json:"escc,omitempty"`
	// the name of the VSCC for this chaincode. This will be
	// blank if the query is returning information about installed chaincodes.
	Vscc string `protobuf:"bytes,6,opt,name=vscc" json:"vscc,omitempty"`
	// the chaincode unique id.
	// computed as: H(
	//                H(name || version) ||
	//                H(CodePackage)
	//              )
	Id []byte `protobuf:"bytes,7,opt,name=id,proto3" json:"id,omitempty"`
}

ChaincodeInfo contains general information about an installed/instantiated chaincode

func (*ChaincodeInfo) Descriptor ¶

func (*ChaincodeInfo) Descriptor() ([]byte, []int)

func (*ChaincodeInfo) GetEscc ¶

func (m *ChaincodeInfo) GetEscc() string

func (*ChaincodeInfo) GetId ¶ added in v1.1.0

func (m *ChaincodeInfo) GetId() []byte

func (*ChaincodeInfo) GetInput ¶

func (m *ChaincodeInfo) GetInput() string

func (*ChaincodeInfo) GetName ¶

func (m *ChaincodeInfo) GetName() string

func (*ChaincodeInfo) GetPath ¶

func (m *ChaincodeInfo) GetPath() string

func (*ChaincodeInfo) GetVersion ¶

func (m *ChaincodeInfo) GetVersion() string

func (*ChaincodeInfo) GetVscc ¶

func (m *ChaincodeInfo) GetVscc() string

func (*ChaincodeInfo) ProtoMessage ¶

func (*ChaincodeInfo) ProtoMessage()

func (*ChaincodeInfo) Reset ¶

func (m *ChaincodeInfo) Reset()

func (*ChaincodeInfo) String ¶

func (m *ChaincodeInfo) String() string

type ChaincodeInput ¶

type ChaincodeInput struct {
	Args        [][]byte          `protobuf:"bytes,1,rep,name=args,proto3" json:"args,omitempty"`
	Decorations map[string][]byte `` /* 149-byte string literal not displayed */
}

Carries the chaincode function and its arguments. UnmarshalJSON in transaction.go converts the string-based REST/JSON input to the []byte-based current ChaincodeInput structure.

func (*ChaincodeInput) Descriptor ¶

func (*ChaincodeInput) Descriptor() ([]byte, []int)

func (*ChaincodeInput) GetArgs ¶

func (m *ChaincodeInput) GetArgs() [][]byte

func (*ChaincodeInput) GetDecorations ¶ added in v1.1.0

func (m *ChaincodeInput) GetDecorations() map[string][]byte

func (*ChaincodeInput) ProtoMessage ¶

func (*ChaincodeInput) ProtoMessage()

func (*ChaincodeInput) Reset ¶

func (m *ChaincodeInput) Reset()

func (*ChaincodeInput) String ¶

func (m *ChaincodeInput) String() string

func (*ChaincodeInput) UnmarshalJSON ¶

func (c *ChaincodeInput) UnmarshalJSON(b []byte) error

UnmarshalJSON converts the string-based REST/JSON input to the []byte-based current ChaincodeInput structure.

type ChaincodeInvocationSpec ¶

type ChaincodeInvocationSpec struct {
	ChaincodeSpec *ChaincodeSpec `protobuf:"bytes,1,opt,name=chaincode_spec,json=chaincodeSpec" json:"chaincode_spec,omitempty"`
	// This field can contain a user-specified ID generation algorithm
	// If supplied, this will be used to generate a ID
	// If not supplied (left empty), sha256base64 will be used
	// The algorithm consists of two parts:
	//  1, a hash function
	//  2, a decoding used to decode user (string) input to bytes
	// Currently, SHA256 with BASE64 is supported (e.g. idGenerationAlg='sha256base64')
	IdGenerationAlg string `protobuf:"bytes,2,opt,name=id_generation_alg,json=idGenerationAlg" json:"id_generation_alg,omitempty"`
}

Carries the chaincode function and its arguments.

func (*ChaincodeInvocationSpec) Descriptor ¶

func (*ChaincodeInvocationSpec) Descriptor() ([]byte, []int)

func (*ChaincodeInvocationSpec) GetChaincodeSpec ¶

func (m *ChaincodeInvocationSpec) GetChaincodeSpec() *ChaincodeSpec

func (*ChaincodeInvocationSpec) GetIdGenerationAlg ¶

func (m *ChaincodeInvocationSpec) GetIdGenerationAlg() string

func (*ChaincodeInvocationSpec) ProtoMessage ¶

func (*ChaincodeInvocationSpec) ProtoMessage()

func (*ChaincodeInvocationSpec) Reset ¶

func (m *ChaincodeInvocationSpec) Reset()

func (*ChaincodeInvocationSpec) String ¶

func (m *ChaincodeInvocationSpec) String() string

type ChaincodeMessage ¶

type ChaincodeMessage struct {
	Type      ChaincodeMessage_Type       `protobuf:"varint,1,opt,name=type,enum=protos.ChaincodeMessage_Type" json:"type,omitempty"`
	Timestamp *google_protobuf1.Timestamp `protobuf:"bytes,2,opt,name=timestamp" json:"timestamp,omitempty"`
	Payload   []byte                      `protobuf:"bytes,3,opt,name=payload,proto3" json:"payload,omitempty"`
	Txid      string                      `protobuf:"bytes,4,opt,name=txid" json:"txid,omitempty"`
	Proposal  *SignedProposal             `protobuf:"bytes,5,opt,name=proposal" json:"proposal,omitempty"`
	// event emitted by chaincode. Used only with Init or Invoke.
	// This event is then stored (currently)
	// with Block.NonHashData.TransactionResult
	ChaincodeEvent *ChaincodeEvent `protobuf:"bytes,6,opt,name=chaincode_event,json=chaincodeEvent" json:"chaincode_event,omitempty"`
	// channel id
	ChannelId string `protobuf:"bytes,7,opt,name=channel_id,json=channelId" json:"channel_id,omitempty"`
}

func (*ChaincodeMessage) Descriptor ¶

func (*ChaincodeMessage) Descriptor() ([]byte, []int)

func (*ChaincodeMessage) GetChaincodeEvent ¶

func (m *ChaincodeMessage) GetChaincodeEvent() *ChaincodeEvent

func (*ChaincodeMessage) GetChannelId ¶ added in v1.1.0

func (m *ChaincodeMessage) GetChannelId() string

func (*ChaincodeMessage) GetPayload ¶

func (m *ChaincodeMessage) GetPayload() []byte

func (*ChaincodeMessage) GetProposal ¶

func (m *ChaincodeMessage) GetProposal() *SignedProposal

func (*ChaincodeMessage) GetTimestamp ¶

func (m *ChaincodeMessage) GetTimestamp() *google_protobuf1.Timestamp

func (*ChaincodeMessage) GetTxid ¶

func (m *ChaincodeMessage) GetTxid() string

func (*ChaincodeMessage) GetType ¶

func (*ChaincodeMessage) ProtoMessage ¶

func (*ChaincodeMessage) ProtoMessage()

func (*ChaincodeMessage) Reset ¶

func (m *ChaincodeMessage) Reset()

func (*ChaincodeMessage) String ¶

func (m *ChaincodeMessage) String() string

type ChaincodeMessage_Type ¶

type ChaincodeMessage_Type int32
const (
	ChaincodeMessage_UNDEFINED           ChaincodeMessage_Type = 0
	ChaincodeMessage_REGISTER            ChaincodeMessage_Type = 1
	ChaincodeMessage_REGISTERED          ChaincodeMessage_Type = 2
	ChaincodeMessage_INIT                ChaincodeMessage_Type = 3
	ChaincodeMessage_READY               ChaincodeMessage_Type = 4
	ChaincodeMessage_TRANSACTION         ChaincodeMessage_Type = 5
	ChaincodeMessage_COMPLETED           ChaincodeMessage_Type = 6
	ChaincodeMessage_ERROR               ChaincodeMessage_Type = 7
	ChaincodeMessage_GET_STATE           ChaincodeMessage_Type = 8
	ChaincodeMessage_PUT_STATE           ChaincodeMessage_Type = 9
	ChaincodeMessage_DEL_STATE           ChaincodeMessage_Type = 10
	ChaincodeMessage_INVOKE_CHAINCODE    ChaincodeMessage_Type = 11
	ChaincodeMessage_RESPONSE            ChaincodeMessage_Type = 13
	ChaincodeMessage_GET_STATE_BY_RANGE  ChaincodeMessage_Type = 14
	ChaincodeMessage_GET_QUERY_RESULT    ChaincodeMessage_Type = 15
	ChaincodeMessage_QUERY_STATE_NEXT    ChaincodeMessage_Type = 16
	ChaincodeMessage_QUERY_STATE_CLOSE   ChaincodeMessage_Type = 17
	ChaincodeMessage_KEEPALIVE           ChaincodeMessage_Type = 18
	ChaincodeMessage_GET_HISTORY_FOR_KEY ChaincodeMessage_Type = 19
)

func (ChaincodeMessage_Type) EnumDescriptor ¶

func (ChaincodeMessage_Type) EnumDescriptor() ([]byte, []int)

func (ChaincodeMessage_Type) String ¶

func (x ChaincodeMessage_Type) String() string

type ChaincodeProposalPayload ¶

type ChaincodeProposalPayload struct {
	// Input contains the arguments for this invocation. If this invocation
	// deploys a new chaincode, ESCC/VSCC are part of this field.
	// This is usually a marshaled ChaincodeInvocationSpec
	Input []byte `protobuf:"bytes,1,opt,name=input,proto3" json:"input,omitempty"`
	// TransientMap contains data (e.g. cryptographic material) that might be used
	// to implement some form of application-level confidentiality. The contents
	// of this field are supposed to always be omitted from the transaction and
	// excluded from the ledger.
	TransientMap map[string][]byte `` /* 151-byte string literal not displayed */
}

ChaincodeProposalPayload is the Proposal's payload message to be used when the Header's type is CHAINCODE. It contains the arguments for this invocation.

func (*ChaincodeProposalPayload) Descriptor ¶

func (*ChaincodeProposalPayload) Descriptor() ([]byte, []int)

func (*ChaincodeProposalPayload) GetInput ¶

func (m *ChaincodeProposalPayload) GetInput() []byte

func (*ChaincodeProposalPayload) GetTransientMap ¶

func (m *ChaincodeProposalPayload) GetTransientMap() map[string][]byte

func (*ChaincodeProposalPayload) ProtoMessage ¶

func (*ChaincodeProposalPayload) ProtoMessage()

func (*ChaincodeProposalPayload) Reset ¶

func (m *ChaincodeProposalPayload) Reset()

func (*ChaincodeProposalPayload) StaticallyOpaqueFieldProto ¶ added in v1.1.0

func (cpp *ChaincodeProposalPayload) StaticallyOpaqueFieldProto(name string) (proto.Message, error)

func (*ChaincodeProposalPayload) StaticallyOpaqueFields ¶ added in v1.1.0

func (cpp *ChaincodeProposalPayload) StaticallyOpaqueFields() []string

func (*ChaincodeProposalPayload) String ¶

func (m *ChaincodeProposalPayload) String() string

type ChaincodeQueryResponse ¶

type ChaincodeQueryResponse struct {
	Chaincodes []*ChaincodeInfo `protobuf:"bytes,1,rep,name=chaincodes" json:"chaincodes,omitempty"`
}

ChaincodeQueryResponse returns information about each chaincode that pertains to a query in lscc.go, such as GetChaincodes (returns all chaincodes instantiated on a channel), and GetInstalledChaincodes (returns all chaincodes installed on a peer)

func (*ChaincodeQueryResponse) Descriptor ¶

func (*ChaincodeQueryResponse) Descriptor() ([]byte, []int)

func (*ChaincodeQueryResponse) GetChaincodes ¶

func (m *ChaincodeQueryResponse) GetChaincodes() []*ChaincodeInfo

func (*ChaincodeQueryResponse) ProtoMessage ¶

func (*ChaincodeQueryResponse) ProtoMessage()

func (*ChaincodeQueryResponse) Reset ¶

func (m *ChaincodeQueryResponse) Reset()

func (*ChaincodeQueryResponse) String ¶

func (m *ChaincodeQueryResponse) String() string

type ChaincodeReg ¶

type ChaincodeReg struct {
	ChaincodeId string `protobuf:"bytes,1,opt,name=chaincode_id,json=chaincodeId" json:"chaincode_id,omitempty"`
	EventName   string `protobuf:"bytes,2,opt,name=event_name,json=eventName" json:"event_name,omitempty"`
}

ChaincodeReg is used for registering chaincode Interests when EventType is CHAINCODE

func (*ChaincodeReg) Descriptor ¶

func (*ChaincodeReg) Descriptor() ([]byte, []int)

func (*ChaincodeReg) GetChaincodeId ¶

func (m *ChaincodeReg) GetChaincodeId() string

func (*ChaincodeReg) GetEventName ¶

func (m *ChaincodeReg) GetEventName() string

func (*ChaincodeReg) ProtoMessage ¶

func (*ChaincodeReg) ProtoMessage()

func (*ChaincodeReg) Reset ¶

func (m *ChaincodeReg) Reset()

func (*ChaincodeReg) String ¶

func (m *ChaincodeReg) String() string

type ChaincodeSpec ¶

type ChaincodeSpec struct {
	Type        ChaincodeSpec_Type `protobuf:"varint,1,opt,name=type,enum=protos.ChaincodeSpec_Type" json:"type,omitempty"`
	ChaincodeId *ChaincodeID       `protobuf:"bytes,2,opt,name=chaincode_id,json=chaincodeId" json:"chaincode_id,omitempty"`
	Input       *ChaincodeInput    `protobuf:"bytes,3,opt,name=input" json:"input,omitempty"`
	Timeout     int32              `protobuf:"varint,4,opt,name=timeout" json:"timeout,omitempty"`
}

Carries the chaincode specification. This is the actual metadata required for defining a chaincode.

func (*ChaincodeSpec) Descriptor ¶

func (*ChaincodeSpec) Descriptor() ([]byte, []int)

func (*ChaincodeSpec) GetChaincodeId ¶

func (m *ChaincodeSpec) GetChaincodeId() *ChaincodeID

func (*ChaincodeSpec) GetInput ¶

func (m *ChaincodeSpec) GetInput() *ChaincodeInput

func (*ChaincodeSpec) GetTimeout ¶

func (m *ChaincodeSpec) GetTimeout() int32

func (*ChaincodeSpec) GetType ¶

func (m *ChaincodeSpec) GetType() ChaincodeSpec_Type

func (*ChaincodeSpec) ProtoMessage ¶

func (*ChaincodeSpec) ProtoMessage()

func (*ChaincodeSpec) Reset ¶

func (m *ChaincodeSpec) Reset()

func (*ChaincodeSpec) String ¶

func (m *ChaincodeSpec) String() string

type ChaincodeSpec_Type ¶

type ChaincodeSpec_Type int32
const (
	ChaincodeSpec_UNDEFINED ChaincodeSpec_Type = 0
	ChaincodeSpec_GOLANG    ChaincodeSpec_Type = 1
	ChaincodeSpec_NODE      ChaincodeSpec_Type = 2
	ChaincodeSpec_CAR       ChaincodeSpec_Type = 3
	ChaincodeSpec_JAVA      ChaincodeSpec_Type = 4
)

func (ChaincodeSpec_Type) EnumDescriptor ¶

func (ChaincodeSpec_Type) EnumDescriptor() ([]byte, []int)

func (ChaincodeSpec_Type) String ¶

func (x ChaincodeSpec_Type) String() string

type ChaincodeSupportClient ¶

type ChaincodeSupportClient interface {
	Register(ctx context.Context, opts ...grpc.CallOption) (ChaincodeSupport_RegisterClient, error)
}

func NewChaincodeSupportClient ¶

func NewChaincodeSupportClient(cc *grpc.ClientConn) ChaincodeSupportClient

type ChaincodeSupportServer ¶

type ChaincodeSupportServer interface {
	Register(ChaincodeSupport_RegisterServer) error
}

type ChaincodeSupport_RegisterClient ¶

type ChaincodeSupport_RegisterClient interface {
	Send(*ChaincodeMessage) error
	Recv() (*ChaincodeMessage, error)
	grpc.ClientStream
}

type ChaincodeSupport_RegisterServer ¶

type ChaincodeSupport_RegisterServer interface {
	Send(*ChaincodeMessage) error
	Recv() (*ChaincodeMessage, error)
	grpc.ServerStream
}

type ChaincodeValidation ¶ added in v1.1.0

type ChaincodeValidation struct {
	Name     string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	Argument []byte `protobuf:"bytes,2,opt,name=argument,proto3" json:"argument,omitempty"`
}

ChaincodeValidation instructs the peer how transactions for this chaincode should be validated. The only validation mechanism which ships with fabric today is the standard 'vscc' validation mechanism. This built in validation method utilizes an endorsement policy which checks that a sufficient number of signatures have been included. The 'arguement' field encodes any parameters required by the validation implementation.

func (*ChaincodeValidation) Descriptor ¶ added in v1.1.0

func (*ChaincodeValidation) Descriptor() ([]byte, []int)

func (*ChaincodeValidation) GetArgument ¶ added in v1.1.0

func (m *ChaincodeValidation) GetArgument() []byte

func (*ChaincodeValidation) GetName ¶ added in v1.1.0

func (m *ChaincodeValidation) GetName() string

func (*ChaincodeValidation) ProtoMessage ¶ added in v1.1.0

func (*ChaincodeValidation) ProtoMessage()

func (*ChaincodeValidation) Reset ¶ added in v1.1.0

func (m *ChaincodeValidation) Reset()

func (*ChaincodeValidation) String ¶ added in v1.1.0

func (m *ChaincodeValidation) String() string

func (*ChaincodeValidation) VariablyOpaqueFieldProto ¶ added in v1.1.0

func (cv *ChaincodeValidation) VariablyOpaqueFieldProto(name string) (proto.Message, error)

func (*ChaincodeValidation) VariablyOpaqueFields ¶ added in v1.1.0

func (cv *ChaincodeValidation) VariablyOpaqueFields() []string

type ChannelInfo ¶

type ChannelInfo struct {
	ChannelId string `protobuf:"bytes,1,opt,name=channel_id,json=channelId" json:"channel_id,omitempty"`
}

ChannelInfo contains general information about channels

func (*ChannelInfo) Descriptor ¶

func (*ChannelInfo) Descriptor() ([]byte, []int)

func (*ChannelInfo) GetChannelId ¶

func (m *ChannelInfo) GetChannelId() string

func (*ChannelInfo) ProtoMessage ¶

func (*ChannelInfo) ProtoMessage()

func (*ChannelInfo) Reset ¶

func (m *ChannelInfo) Reset()

func (*ChannelInfo) String ¶

func (m *ChannelInfo) String() string

type ChannelQueryResponse ¶

type ChannelQueryResponse struct {
	Channels []*ChannelInfo `protobuf:"bytes,1,rep,name=channels" json:"channels,omitempty"`
}

ChannelQueryResponse returns information about each channel that pertains to a query in lscc.go, such as GetChannels (returns all channels for a given peer)

func (*ChannelQueryResponse) Descriptor ¶

func (*ChannelQueryResponse) Descriptor() ([]byte, []int)

func (*ChannelQueryResponse) GetChannels ¶

func (m *ChannelQueryResponse) GetChannels() []*ChannelInfo

func (*ChannelQueryResponse) ProtoMessage ¶

func (*ChannelQueryResponse) ProtoMessage()

func (*ChannelQueryResponse) Reset ¶

func (m *ChannelQueryResponse) Reset()

func (*ChannelQueryResponse) String ¶

func (m *ChannelQueryResponse) String() string

type ConfidentialityLevel ¶

type ConfidentialityLevel int32

Confidentiality Levels

const (
	ConfidentialityLevel_PUBLIC       ConfidentialityLevel = 0
	ConfidentialityLevel_CONFIDENTIAL ConfidentialityLevel = 1
)

func (ConfidentialityLevel) EnumDescriptor ¶

func (ConfidentialityLevel) EnumDescriptor() ([]byte, []int)

func (ConfidentialityLevel) String ¶

func (x ConfidentialityLevel) String() string

type ConfigTree ¶ added in v1.1.0

type ConfigTree struct {
	ChannelConfig   *common3.Config `protobuf:"bytes,1,opt,name=channel_config,json=channelConfig" json:"channel_config,omitempty"`
	ResourcesConfig *common3.Config `protobuf:"bytes,2,opt,name=resources_config,json=resourcesConfig" json:"resources_config,omitempty"`
}

ConfigTree encapsulates channel and resources configuration of a channel. Both configurations are represented as common.Config

func (*ConfigTree) Descriptor ¶ added in v1.1.0

func (*ConfigTree) Descriptor() ([]byte, []int)

func (*ConfigTree) GetChannelConfig ¶ added in v1.1.0

func (m *ConfigTree) GetChannelConfig() *common3.Config

func (*ConfigTree) GetResourcesConfig ¶ added in v1.1.0

func (m *ConfigTree) GetResourcesConfig() *common3.Config

func (*ConfigTree) ProtoMessage ¶ added in v1.1.0

func (*ConfigTree) ProtoMessage()

func (*ConfigTree) Reset ¶ added in v1.1.0

func (m *ConfigTree) Reset()

func (*ConfigTree) String ¶ added in v1.1.0

func (m *ConfigTree) String() string

type DelState ¶ added in v1.1.0

type DelState struct {
	Key        string `protobuf:"bytes,1,opt,name=key" json:"key,omitempty"`
	Collection string `protobuf:"bytes,2,opt,name=collection" json:"collection,omitempty"`
}

func (*DelState) Descriptor ¶ added in v1.1.0

func (*DelState) Descriptor() ([]byte, []int)

func (*DelState) GetCollection ¶ added in v1.1.0

func (m *DelState) GetCollection() string

func (*DelState) GetKey ¶ added in v1.1.0

func (m *DelState) GetKey() string

func (*DelState) ProtoMessage ¶ added in v1.1.0

func (*DelState) ProtoMessage()

func (*DelState) Reset ¶ added in v1.1.0

func (m *DelState) Reset()

func (*DelState) String ¶ added in v1.1.0

func (m *DelState) String() string

type DeliverClient ¶ added in v1.1.0

type DeliverClient interface {
	// deliver first requires an Envelope of type ab.DELIVER_SEEK_INFO with Payload data as a marshaled orderer.SeekInfo message,
	// then a stream of block replies is received.
	Deliver(ctx context.Context, opts ...grpc.CallOption) (Deliver_DeliverClient, error)
	// deliver first requires an Envelope of type ab.DELIVER_SEEK_INFO with Payload data as a marshaled orderer.SeekInfo message,
	// then a stream of **filtered** block replies is received.
	DeliverFiltered(ctx context.Context, opts ...grpc.CallOption) (Deliver_DeliverFilteredClient, error)
}

func NewDeliverClient ¶ added in v1.1.0

func NewDeliverClient(cc *grpc.ClientConn) DeliverClient

type DeliverResponse ¶ added in v1.1.0

type DeliverResponse struct {
	// Types that are valid to be assigned to Type:
	//	*DeliverResponse_Status
	//	*DeliverResponse_Block
	//	*DeliverResponse_FilteredBlock
	Type isDeliverResponse_Type `protobuf_oneof:"Type"`
}

DeliverResponse

func (*DeliverResponse) Descriptor ¶ added in v1.1.0

func (*DeliverResponse) Descriptor() ([]byte, []int)

func (*DeliverResponse) GetBlock ¶ added in v1.1.0

func (m *DeliverResponse) GetBlock() *common.Block

func (*DeliverResponse) GetFilteredBlock ¶ added in v1.1.0

func (m *DeliverResponse) GetFilteredBlock() *FilteredBlock

func (*DeliverResponse) GetStatus ¶ added in v1.1.0

func (m *DeliverResponse) GetStatus() common.Status

func (*DeliverResponse) GetType ¶ added in v1.1.0

func (m *DeliverResponse) GetType() isDeliverResponse_Type

func (*DeliverResponse) ProtoMessage ¶ added in v1.1.0

func (*DeliverResponse) ProtoMessage()

func (*DeliverResponse) Reset ¶ added in v1.1.0

func (m *DeliverResponse) Reset()

func (*DeliverResponse) String ¶ added in v1.1.0

func (m *DeliverResponse) String() string

func (*DeliverResponse) XXX_OneofFuncs ¶ added in v1.1.0

func (*DeliverResponse) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

type DeliverResponse_Block ¶ added in v1.1.0

type DeliverResponse_Block struct {
	Block *common.Block `protobuf:"bytes,2,opt,name=block,oneof"`
}

type DeliverResponse_FilteredBlock ¶ added in v1.1.0

type DeliverResponse_FilteredBlock struct {
	FilteredBlock *FilteredBlock `protobuf:"bytes,3,opt,name=filtered_block,json=filteredBlock,oneof"`
}

type DeliverResponse_Status ¶ added in v1.1.0

type DeliverResponse_Status struct {
	Status common.Status `protobuf:"varint,1,opt,name=status,enum=common.Status,oneof"`
}

type DeliverServer ¶ added in v1.1.0

type DeliverServer interface {
	// deliver first requires an Envelope of type ab.DELIVER_SEEK_INFO with Payload data as a marshaled orderer.SeekInfo message,
	// then a stream of block replies is received.
	Deliver(Deliver_DeliverServer) error
	// deliver first requires an Envelope of type ab.DELIVER_SEEK_INFO with Payload data as a marshaled orderer.SeekInfo message,
	// then a stream of **filtered** block replies is received.
	DeliverFiltered(Deliver_DeliverFilteredServer) error
}

type Deliver_DeliverClient ¶ added in v1.1.0

type Deliver_DeliverClient interface {
	Send(*common.Envelope) error
	Recv() (*DeliverResponse, error)
	grpc.ClientStream
}

type Deliver_DeliverFilteredClient ¶ added in v1.1.0

type Deliver_DeliverFilteredClient interface {
	Send(*common.Envelope) error
	Recv() (*DeliverResponse, error)
	grpc.ClientStream
}

type Deliver_DeliverFilteredServer ¶ added in v1.1.0

type Deliver_DeliverFilteredServer interface {
	Send(*DeliverResponse) error
	Recv() (*common.Envelope, error)
	grpc.ServerStream
}

type Deliver_DeliverServer ¶ added in v1.1.0

type Deliver_DeliverServer interface {
	Send(*DeliverResponse) error
	Recv() (*common.Envelope, error)
	grpc.ServerStream
}

type DynamicApplicationConfigValue ¶

type DynamicApplicationConfigValue struct {
	*common.ConfigValue
	// contains filtered or unexported fields
}

func (*DynamicApplicationConfigValue) VariablyOpaqueFieldProto ¶

func (ccv *DynamicApplicationConfigValue) VariablyOpaqueFieldProto(name string) (proto.Message, error)

type DynamicApplicationGroup ¶

type DynamicApplicationGroup struct {
	*common.ConfigGroup
}

func (*DynamicApplicationGroup) DynamicMapFieldProto ¶

func (dag *DynamicApplicationGroup) DynamicMapFieldProto(name string, key string, base proto.Message) (proto.Message, error)

type DynamicApplicationGroupFactory ¶

type DynamicApplicationGroupFactory struct{}

func (DynamicApplicationGroupFactory) DynamicConfigGroup ¶

func (dagf DynamicApplicationGroupFactory) DynamicConfigGroup(cg *common.ConfigGroup) proto.Message

type DynamicApplicationOrgConfigValue ¶

type DynamicApplicationOrgConfigValue struct {
	*common.ConfigValue
	// contains filtered or unexported fields
}

func (*DynamicApplicationOrgConfigValue) VariablyOpaqueFieldProto ¶

func (daocv *DynamicApplicationOrgConfigValue) VariablyOpaqueFieldProto(name string) (proto.Message, error)

type DynamicApplicationOrgGroup ¶

type DynamicApplicationOrgGroup struct {
	*common.ConfigGroup
}

func (*DynamicApplicationOrgGroup) DynamicMapFieldProto ¶

func (dag *DynamicApplicationOrgGroup) DynamicMapFieldProto(name string, key string, base proto.Message) (proto.Message, error)

type DynamicResourceAPIsConfigGroup ¶ added in v1.1.0

type DynamicResourceAPIsConfigGroup struct {
	*common.ConfigGroup
}

func (*DynamicResourceAPIsConfigGroup) DynamicMapFieldProto ¶ added in v1.1.0

func (dracg *DynamicResourceAPIsConfigGroup) DynamicMapFieldProto(name string, key string, base proto.Message) (proto.Message, error)

func (*DynamicResourceAPIsConfigGroup) DynamicMapFields ¶ added in v1.1.0

func (dracg *DynamicResourceAPIsConfigGroup) DynamicMapFields() []string

type DynamicResourceAPIsConfigValue ¶ added in v1.1.0

type DynamicResourceAPIsConfigValue struct {
	*common.ConfigValue
}

func (*DynamicResourceAPIsConfigValue) VariablyOpaqueFieldProto ¶ added in v1.1.0

func (drcv *DynamicResourceAPIsConfigValue) VariablyOpaqueFieldProto(name string) (proto.Message, error)

type DynamicResourceChaincodeConfigGroup ¶ added in v1.1.0

type DynamicResourceChaincodeConfigGroup struct {
	*common.ConfigGroup
}

func (*DynamicResourceChaincodeConfigGroup) DynamicMapFieldProto ¶ added in v1.1.0

func (drccg *DynamicResourceChaincodeConfigGroup) DynamicMapFieldProto(name string, key string, base proto.Message) (proto.Message, error)

func (*DynamicResourceChaincodeConfigGroup) DynamicMapFields ¶ added in v1.1.0

func (draccg *DynamicResourceChaincodeConfigGroup) DynamicMapFields() []string

type DynamicResourceChaincodeConfigValue ¶ added in v1.1.0

type DynamicResourceChaincodeConfigValue struct {
	*common.ConfigValue
	// contains filtered or unexported fields
}

func (*DynamicResourceChaincodeConfigValue) VariablyOpaqueFieldProto ¶ added in v1.1.0

func (drccv *DynamicResourceChaincodeConfigValue) VariablyOpaqueFieldProto(name string) (proto.Message, error)

type DynamicResourceChaincodesConfigGroup ¶ added in v1.1.0

type DynamicResourceChaincodesConfigGroup struct {
	*common.ConfigGroup
}

func (*DynamicResourceChaincodesConfigGroup) DynamicMapFieldProto ¶ added in v1.1.0

func (drccg *DynamicResourceChaincodesConfigGroup) DynamicMapFieldProto(name string, key string, base proto.Message) (proto.Message, error)

func (*DynamicResourceChaincodesConfigGroup) DynamicMapFields ¶ added in v1.1.0

func (draccg *DynamicResourceChaincodesConfigGroup) DynamicMapFields() []string

type DynamicResourceConfigGroup ¶ added in v1.1.0

type DynamicResourceConfigGroup struct {
	*common.ConfigGroup
}

func (*DynamicResourceConfigGroup) DynamicMapFieldProto ¶ added in v1.1.0

func (drcg *DynamicResourceConfigGroup) DynamicMapFieldProto(name string, key string, base proto.Message) (proto.Message, error)

func (*DynamicResourceConfigGroup) DynamicMapFields ¶ added in v1.1.0

func (drcg *DynamicResourceConfigGroup) DynamicMapFields() []string

type Endorsement ¶

type Endorsement struct {
	// Identity of the endorser (e.g. its certificate)
	Endorser []byte `protobuf:"bytes,1,opt,name=endorser,proto3" json:"endorser,omitempty"`
	// Signature of the payload included in ProposalResponse concatenated with
	// the endorser's certificate; ie, sign(ProposalResponse.payload + endorser)
	Signature []byte `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"`
}

An endorsement is a signature of an endorser over a proposal response. By producing an endorsement message, an endorser implicitly "approves" that proposal response and the actions contained therein. When enough endorsements have been collected, a transaction can be generated out of a set of proposal responses. Note that this message only contains an identity and a signature but no signed payload. This is intentional because endorsements are supposed to be collected in a transaction, and they are all expected to endorse a single proposal response/action (many endorsements over a single proposal response)

func (*Endorsement) Descriptor ¶

func (*Endorsement) Descriptor() ([]byte, []int)

func (*Endorsement) GetEndorser ¶

func (m *Endorsement) GetEndorser() []byte

func (*Endorsement) GetSignature ¶

func (m *Endorsement) GetSignature() []byte

func (*Endorsement) ProtoMessage ¶

func (*Endorsement) ProtoMessage()

func (*Endorsement) Reset ¶

func (m *Endorsement) Reset()

func (*Endorsement) String ¶

func (m *Endorsement) String() string

type EndorserClient ¶

type EndorserClient interface {
	ProcessProposal(ctx context.Context, in *SignedProposal, opts ...grpc.CallOption) (*ProposalResponse, error)
}

func NewEndorserClient ¶

func NewEndorserClient(cc *grpc.ClientConn) EndorserClient

type EndorserServer ¶

type EndorserServer interface {
	ProcessProposal(context.Context, *SignedProposal) (*ProposalResponse, error)
}

type Event ¶

type Event struct {
	// Types that are valid to be assigned to Event:
	//	*Event_Register
	//	*Event_Block
	//	*Event_ChaincodeEvent
	//	*Event_Rejection
	//	*Event_Unregister
	//	*Event_FilteredBlock
	Event isEvent_Event `protobuf_oneof:"Event"`
	// Creator of the event, specified as a certificate chain
	Creator []byte `protobuf:"bytes,6,opt,name=creator,proto3" json:"creator,omitempty"`
	// Timestamp of the client - used to mitigate replay attacks
	Timestamp *google_protobuf1.Timestamp `protobuf:"bytes,8,opt,name=timestamp" json:"timestamp,omitempty"`
	// If mutual TLS is employed, this represents
	// the hash of the client's TLS certificate
	TlsCertHash []byte `protobuf:"bytes,9,opt,name=tls_cert_hash,json=tlsCertHash,proto3" json:"tls_cert_hash,omitempty"`
}

Event is used by

  • consumers (adapters) to send Register
  • producer to advertise supported types and events

func (*Event) Descriptor ¶

func (*Event) Descriptor() ([]byte, []int)

func (*Event) GetBlock ¶

func (m *Event) GetBlock() *common.Block

func (*Event) GetChaincodeEvent ¶

func (m *Event) GetChaincodeEvent() *ChaincodeEvent

func (*Event) GetCreator ¶

func (m *Event) GetCreator() []byte

func (*Event) GetEvent ¶

func (m *Event) GetEvent() isEvent_Event

func (*Event) GetFilteredBlock ¶ added in v1.1.0

func (m *Event) GetFilteredBlock() *FilteredBlock

func (*Event) GetRegister ¶

func (m *Event) GetRegister() *Register

func (*Event) GetRejection ¶

func (m *Event) GetRejection() *Rejection

func (*Event) GetTimestamp ¶ added in v1.1.0

func (m *Event) GetTimestamp() *google_protobuf1.Timestamp

func (*Event) GetTlsCertHash ¶ added in v1.1.0

func (m *Event) GetTlsCertHash() []byte

func (*Event) GetUnregister ¶

func (m *Event) GetUnregister() *Unregister

func (*Event) ProtoMessage ¶

func (*Event) ProtoMessage()

func (*Event) Reset ¶

func (m *Event) Reset()

func (*Event) String ¶

func (m *Event) String() string

func (*Event) XXX_OneofFuncs ¶

func (*Event) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

type EventType ¶

type EventType int32
const (
	EventType_REGISTER      EventType = 0
	EventType_BLOCK         EventType = 1
	EventType_CHAINCODE     EventType = 2
	EventType_REJECTION     EventType = 3
	EventType_FILTEREDBLOCK EventType = 4
)

func (EventType) EnumDescriptor ¶

func (EventType) EnumDescriptor() ([]byte, []int)

func (EventType) String ¶

func (x EventType) String() string

type Event_Block ¶

type Event_Block struct {
	Block *common.Block `protobuf:"bytes,2,opt,name=block,oneof"`
}

type Event_ChaincodeEvent ¶

type Event_ChaincodeEvent struct {
	ChaincodeEvent *ChaincodeEvent `protobuf:"bytes,3,opt,name=chaincode_event,json=chaincodeEvent,oneof"`
}

type Event_FilteredBlock ¶ added in v1.1.0

type Event_FilteredBlock struct {
	FilteredBlock *FilteredBlock `protobuf:"bytes,7,opt,name=filtered_block,json=filteredBlock,oneof"`
}

type Event_Register ¶

type Event_Register struct {
	Register *Register `protobuf:"bytes,1,opt,name=register,oneof"`
}

type Event_Rejection ¶

type Event_Rejection struct {
	Rejection *Rejection `protobuf:"bytes,4,opt,name=rejection,oneof"`
}

type Event_Unregister ¶

type Event_Unregister struct {
	Unregister *Unregister `protobuf:"bytes,5,opt,name=unregister,oneof"`
}

type EventsClient ¶

type EventsClient interface {
	// event chatting using Event
	Chat(ctx context.Context, opts ...grpc.CallOption) (Events_ChatClient, error)
}

func NewEventsClient ¶

func NewEventsClient(cc *grpc.ClientConn) EventsClient

type EventsServer ¶

type EventsServer interface {
	// event chatting using Event
	Chat(Events_ChatServer) error
}

type Events_ChatClient ¶

type Events_ChatClient interface {
	Send(*SignedEvent) error
	Recv() (*Event, error)
	grpc.ClientStream
}

type Events_ChatServer ¶

type Events_ChatServer interface {
	Send(*Event) error
	Recv() (*SignedEvent, error)
	grpc.ServerStream
}

type FilteredBlock ¶ added in v1.1.0

type FilteredBlock struct {
	ChannelId            string                 `protobuf:"bytes,1,opt,name=channel_id,json=channelId" json:"channel_id,omitempty"`
	Number               uint64                 `protobuf:"varint,2,opt,name=number" json:"number,omitempty"`
	FilteredTransactions []*FilteredTransaction `protobuf:"bytes,4,rep,name=filtered_transactions,json=filteredTransactions" json:"filtered_transactions,omitempty"`
}

FilteredBlock is sent by producers and contains minimal information about the block.

func (*FilteredBlock) Descriptor ¶ added in v1.1.0

func (*FilteredBlock) Descriptor() ([]byte, []int)

func (*FilteredBlock) GetChannelId ¶ added in v1.1.0

func (m *FilteredBlock) GetChannelId() string

func (*FilteredBlock) GetFilteredTransactions ¶ added in v1.1.0

func (m *FilteredBlock) GetFilteredTransactions() []*FilteredTransaction

func (*FilteredBlock) GetNumber ¶ added in v1.1.0

func (m *FilteredBlock) GetNumber() uint64

func (*FilteredBlock) ProtoMessage ¶ added in v1.1.0

func (*FilteredBlock) ProtoMessage()

func (*FilteredBlock) Reset ¶ added in v1.1.0

func (m *FilteredBlock) Reset()

func (*FilteredBlock) String ¶ added in v1.1.0

func (m *FilteredBlock) String() string

type FilteredChaincodeAction ¶ added in v1.1.0

type FilteredChaincodeAction struct {
	ChaincodeEvent *ChaincodeEvent `protobuf:"bytes,1,opt,name=chaincode_event,json=chaincodeEvent" json:"chaincode_event,omitempty"`
}

FilteredChaincodeAction is a minimal set of information about an action within a transaction.

func (*FilteredChaincodeAction) Descriptor ¶ added in v1.1.0

func (*FilteredChaincodeAction) Descriptor() ([]byte, []int)

func (*FilteredChaincodeAction) GetChaincodeEvent ¶ added in v1.1.0

func (m *FilteredChaincodeAction) GetChaincodeEvent() *ChaincodeEvent

func (*FilteredChaincodeAction) ProtoMessage ¶ added in v1.1.0

func (*FilteredChaincodeAction) ProtoMessage()

func (*FilteredChaincodeAction) Reset ¶ added in v1.1.0

func (m *FilteredChaincodeAction) Reset()

func (*FilteredChaincodeAction) String ¶ added in v1.1.0

func (m *FilteredChaincodeAction) String() string

type FilteredTransaction ¶ added in v1.1.0

type FilteredTransaction struct {
	Txid             string            `protobuf:"bytes,1,opt,name=txid" json:"txid,omitempty"`
	Type             common.HeaderType `protobuf:"varint,2,opt,name=type,enum=common.HeaderType" json:"type,omitempty"`
	TxValidationCode TxValidationCode  `` /* 134-byte string literal not displayed */
	// Types that are valid to be assigned to Data:
	//	*FilteredTransaction_TransactionActions
	Data isFilteredTransaction_Data `protobuf_oneof:"Data"`
}

FilteredTransaction is a minimal set of information about a transaction within a block.

func (*FilteredTransaction) Descriptor ¶ added in v1.1.0

func (*FilteredTransaction) Descriptor() ([]byte, []int)

func (*FilteredTransaction) GetData ¶ added in v1.1.0

func (m *FilteredTransaction) GetData() isFilteredTransaction_Data

func (*FilteredTransaction) GetTransactionActions ¶ added in v1.1.0

func (m *FilteredTransaction) GetTransactionActions() *FilteredTransactionActions

func (*FilteredTransaction) GetTxValidationCode ¶ added in v1.1.0

func (m *FilteredTransaction) GetTxValidationCode() TxValidationCode

func (*FilteredTransaction) GetTxid ¶ added in v1.1.0

func (m *FilteredTransaction) GetTxid() string

func (*FilteredTransaction) GetType ¶ added in v1.1.0

func (m *FilteredTransaction) GetType() common.HeaderType

func (*FilteredTransaction) ProtoMessage ¶ added in v1.1.0

func (*FilteredTransaction) ProtoMessage()

func (*FilteredTransaction) Reset ¶ added in v1.1.0

func (m *FilteredTransaction) Reset()

func (*FilteredTransaction) String ¶ added in v1.1.0

func (m *FilteredTransaction) String() string

func (*FilteredTransaction) XXX_OneofFuncs ¶ added in v1.1.0

func (*FilteredTransaction) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

type FilteredTransactionActions ¶ added in v1.1.0

type FilteredTransactionActions struct {
	ChaincodeActions []*FilteredChaincodeAction `protobuf:"bytes,1,rep,name=chaincode_actions,json=chaincodeActions" json:"chaincode_actions,omitempty"`
}

FilteredTransactionActions is a wrapper for array of TransactionAction message from regular block

func (*FilteredTransactionActions) Descriptor ¶ added in v1.1.0

func (*FilteredTransactionActions) Descriptor() ([]byte, []int)

func (*FilteredTransactionActions) GetChaincodeActions ¶ added in v1.1.0

func (m *FilteredTransactionActions) GetChaincodeActions() []*FilteredChaincodeAction

func (*FilteredTransactionActions) ProtoMessage ¶ added in v1.1.0

func (*FilteredTransactionActions) ProtoMessage()

func (*FilteredTransactionActions) Reset ¶ added in v1.1.0

func (m *FilteredTransactionActions) Reset()

func (*FilteredTransactionActions) String ¶ added in v1.1.0

func (m *FilteredTransactionActions) String() string

type FilteredTransaction_TransactionActions ¶ added in v1.1.0

type FilteredTransaction_TransactionActions struct {
	TransactionActions *FilteredTransactionActions `protobuf:"bytes,4,opt,name=transaction_actions,json=transactionActions,oneof"`
}

type GetHistoryForKey ¶

type GetHistoryForKey struct {
	Key string `protobuf:"bytes,1,opt,name=key" json:"key,omitempty"`
}

func (*GetHistoryForKey) Descriptor ¶

func (*GetHistoryForKey) Descriptor() ([]byte, []int)

func (*GetHistoryForKey) GetKey ¶

func (m *GetHistoryForKey) GetKey() string

func (*GetHistoryForKey) ProtoMessage ¶

func (*GetHistoryForKey) ProtoMessage()

func (*GetHistoryForKey) Reset ¶

func (m *GetHistoryForKey) Reset()

func (*GetHistoryForKey) String ¶

func (m *GetHistoryForKey) String() string

type GetQueryResult ¶

type GetQueryResult struct {
	Query      string `protobuf:"bytes,1,opt,name=query" json:"query,omitempty"`
	Collection string `protobuf:"bytes,2,opt,name=collection" json:"collection,omitempty"`
}

func (*GetQueryResult) Descriptor ¶

func (*GetQueryResult) Descriptor() ([]byte, []int)

func (*GetQueryResult) GetCollection ¶ added in v1.1.0

func (m *GetQueryResult) GetCollection() string

func (*GetQueryResult) GetQuery ¶

func (m *GetQueryResult) GetQuery() string

func (*GetQueryResult) ProtoMessage ¶

func (*GetQueryResult) ProtoMessage()

func (*GetQueryResult) Reset ¶

func (m *GetQueryResult) Reset()

func (*GetQueryResult) String ¶

func (m *GetQueryResult) String() string

type GetState ¶ added in v1.1.0

type GetState struct {
	Key        string `protobuf:"bytes,1,opt,name=key" json:"key,omitempty"`
	Collection string `protobuf:"bytes,2,opt,name=collection" json:"collection,omitempty"`
}

func (*GetState) Descriptor ¶ added in v1.1.0

func (*GetState) Descriptor() ([]byte, []int)

func (*GetState) GetCollection ¶ added in v1.1.0

func (m *GetState) GetCollection() string

func (*GetState) GetKey ¶ added in v1.1.0

func (m *GetState) GetKey() string

func (*GetState) ProtoMessage ¶ added in v1.1.0

func (*GetState) ProtoMessage()

func (*GetState) Reset ¶ added in v1.1.0

func (m *GetState) Reset()

func (*GetState) String ¶ added in v1.1.0

func (m *GetState) String() string

type GetStateByRange ¶

type GetStateByRange struct {
	StartKey   string `protobuf:"bytes,1,opt,name=startKey" json:"startKey,omitempty"`
	EndKey     string `protobuf:"bytes,2,opt,name=endKey" json:"endKey,omitempty"`
	Collection string `protobuf:"bytes,3,opt,name=collection" json:"collection,omitempty"`
}

func (*GetStateByRange) Descriptor ¶

func (*GetStateByRange) Descriptor() ([]byte, []int)

func (*GetStateByRange) GetCollection ¶ added in v1.1.0

func (m *GetStateByRange) GetCollection() string

func (*GetStateByRange) GetEndKey ¶

func (m *GetStateByRange) GetEndKey() string

func (*GetStateByRange) GetStartKey ¶

func (m *GetStateByRange) GetStartKey() string

func (*GetStateByRange) ProtoMessage ¶

func (*GetStateByRange) ProtoMessage()

func (*GetStateByRange) Reset ¶

func (m *GetStateByRange) Reset()

func (*GetStateByRange) String ¶

func (m *GetStateByRange) String() string

type Interest ¶

type Interest struct {
	EventType EventType `protobuf:"varint,1,opt,name=event_type,json=eventType,enum=protos.EventType" json:"event_type,omitempty"`
	// Ideally we should just have the following oneof for different
	// Reg types and get rid of EventType. But this is an API change
	// Additional Reg types may add messages specific to their type
	// to the oneof.
	//
	// Types that are valid to be assigned to RegInfo:
	//	*Interest_ChaincodeRegInfo
	RegInfo isInterest_RegInfo `protobuf_oneof:"RegInfo"`
	ChainID string             `protobuf:"bytes,3,opt,name=chainID" json:"chainID,omitempty"`
}

func (*Interest) Descriptor ¶

func (*Interest) Descriptor() ([]byte, []int)

func (*Interest) GetChainID ¶

func (m *Interest) GetChainID() string

func (*Interest) GetChaincodeRegInfo ¶

func (m *Interest) GetChaincodeRegInfo() *ChaincodeReg

func (*Interest) GetEventType ¶

func (m *Interest) GetEventType() EventType

func (*Interest) GetRegInfo ¶

func (m *Interest) GetRegInfo() isInterest_RegInfo

func (*Interest) ProtoMessage ¶

func (*Interest) ProtoMessage()

func (*Interest) Reset ¶

func (m *Interest) Reset()

func (*Interest) String ¶

func (m *Interest) String() string

func (*Interest) XXX_OneofFuncs ¶

func (*Interest) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

type Interest_ChaincodeRegInfo ¶

type Interest_ChaincodeRegInfo struct {
	ChaincodeRegInfo *ChaincodeReg `protobuf:"bytes,2,opt,name=chaincode_reg_info,json=chaincodeRegInfo,oneof"`
}

type LogLevelRequest ¶

type LogLevelRequest struct {
	LogModule string `protobuf:"bytes,1,opt,name=log_module,json=logModule" json:"log_module,omitempty"`
	LogLevel  string `protobuf:"bytes,2,opt,name=log_level,json=logLevel" json:"log_level,omitempty"`
}

func (*LogLevelRequest) Descriptor ¶

func (*LogLevelRequest) Descriptor() ([]byte, []int)

func (*LogLevelRequest) GetLogLevel ¶

func (m *LogLevelRequest) GetLogLevel() string

func (*LogLevelRequest) GetLogModule ¶

func (m *LogLevelRequest) GetLogModule() string

func (*LogLevelRequest) ProtoMessage ¶

func (*LogLevelRequest) ProtoMessage()

func (*LogLevelRequest) Reset ¶

func (m *LogLevelRequest) Reset()

func (*LogLevelRequest) String ¶

func (m *LogLevelRequest) String() string

type LogLevelResponse ¶

type LogLevelResponse struct {
	LogModule string `protobuf:"bytes,1,opt,name=log_module,json=logModule" json:"log_module,omitempty"`
	LogLevel  string `protobuf:"bytes,2,opt,name=log_level,json=logLevel" json:"log_level,omitempty"`
}

func (*LogLevelResponse) Descriptor ¶

func (*LogLevelResponse) Descriptor() ([]byte, []int)

func (*LogLevelResponse) GetLogLevel ¶

func (m *LogLevelResponse) GetLogLevel() string

func (*LogLevelResponse) GetLogModule ¶

func (m *LogLevelResponse) GetLogModule() string

func (*LogLevelResponse) ProtoMessage ¶

func (*LogLevelResponse) ProtoMessage()

func (*LogLevelResponse) Reset ¶

func (m *LogLevelResponse) Reset()

func (*LogLevelResponse) String ¶

func (m *LogLevelResponse) String() string

type PeerEndpoint ¶

type PeerEndpoint struct {
	Id      *PeerID `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"`
	Address string  `protobuf:"bytes,2,opt,name=address" json:"address,omitempty"`
}

func (*PeerEndpoint) Descriptor ¶

func (*PeerEndpoint) Descriptor() ([]byte, []int)

func (*PeerEndpoint) GetAddress ¶

func (m *PeerEndpoint) GetAddress() string

func (*PeerEndpoint) GetId ¶

func (m *PeerEndpoint) GetId() *PeerID

func (*PeerEndpoint) ProtoMessage ¶

func (*PeerEndpoint) ProtoMessage()

func (*PeerEndpoint) Reset ¶

func (m *PeerEndpoint) Reset()

func (*PeerEndpoint) String ¶

func (m *PeerEndpoint) String() string

type PeerID ¶

type PeerID struct {
	Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
}

func (*PeerID) Descriptor ¶

func (*PeerID) Descriptor() ([]byte, []int)

func (*PeerID) GetName ¶

func (m *PeerID) GetName() string

func (*PeerID) ProtoMessage ¶

func (*PeerID) ProtoMessage()

func (*PeerID) Reset ¶

func (m *PeerID) Reset()

func (*PeerID) String ¶

func (m *PeerID) String() string

type ProcessedTransaction ¶

type ProcessedTransaction struct {
	// An Envelope which includes a processed transaction
	TransactionEnvelope *common.Envelope `protobuf:"bytes,1,opt,name=transactionEnvelope" json:"transactionEnvelope,omitempty"`
	// An indication of whether the transaction was validated or invalidated by committing peer
	ValidationCode int32 `protobuf:"varint,2,opt,name=validationCode" json:"validationCode,omitempty"`
}

ProcessedTransaction wraps an Envelope that includes a transaction along with an indication of whether the transaction was validated or invalidated by committing peer. The use case is that GetTransactionByID API needs to retrieve the transaction Envelope from block storage, and return it to a client, and indicate whether the transaction was validated or invalidated by committing peer. So that the originally submitted transaction Envelope is not modified, the ProcessedTransaction wrapper is returned.

func (*ProcessedTransaction) Descriptor ¶

func (*ProcessedTransaction) Descriptor() ([]byte, []int)

func (*ProcessedTransaction) GetTransactionEnvelope ¶

func (m *ProcessedTransaction) GetTransactionEnvelope() *common.Envelope

func (*ProcessedTransaction) GetValidationCode ¶

func (m *ProcessedTransaction) GetValidationCode() int32

func (*ProcessedTransaction) ProtoMessage ¶

func (*ProcessedTransaction) ProtoMessage()

func (*ProcessedTransaction) Reset ¶

func (m *ProcessedTransaction) Reset()

func (*ProcessedTransaction) String ¶

func (m *ProcessedTransaction) String() string

type Proposal ¶

type Proposal struct {
	// The header of the proposal. It is the bytes of the Header
	Header []byte `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"`
	// The payload of the proposal as defined by the type in the proposal
	// header.
	Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`
	// Optional extensions to the proposal. Its content depends on the Header's
	// type field.  For the type CHAINCODE, it might be the bytes of a
	// ChaincodeAction message.
	Extension []byte `protobuf:"bytes,3,opt,name=extension,proto3" json:"extension,omitempty"`
}

A Proposal is sent to an endorser for endorsement. The proposal contains:

  1. A header which should be unmarshaled to a Header message. Note that Header is both the header of a Proposal and of a Transaction, in that i) both headers should be unmarshaled to this message; and ii) it is used to compute cryptographic hashes and signatures. The header has fields common to all proposals/transactions. In addition it has a type field for additional customization. An example of this is the ChaincodeHeaderExtension message used to extend the Header for type CHAINCODE.
  2. A payload whose type depends on the header's type field.
  3. An extension whose type depends on the header's type field.

Let us see an example. For type CHAINCODE (see the Header message), we have the following:

  1. The header is a Header message whose extensions field is a ChaincodeHeaderExtension message.
  2. The payload is a ChaincodeProposalPayload message.
  3. The extension is a ChaincodeAction that might be used to ask the endorsers to endorse a specific ChaincodeAction, thus emulating the submitting peer model.

func (*Proposal) Descriptor ¶

func (*Proposal) Descriptor() ([]byte, []int)

func (*Proposal) GetExtension ¶

func (m *Proposal) GetExtension() []byte

func (*Proposal) GetHeader ¶

func (m *Proposal) GetHeader() []byte

func (*Proposal) GetPayload ¶

func (m *Proposal) GetPayload() []byte

func (*Proposal) ProtoMessage ¶

func (*Proposal) ProtoMessage()

func (*Proposal) Reset ¶

func (m *Proposal) Reset()

func (*Proposal) String ¶

func (m *Proposal) String() string

type ProposalResponse ¶

type ProposalResponse struct {
	// Version indicates message protocol version
	Version int32 `protobuf:"varint,1,opt,name=version" json:"version,omitempty"`
	// Timestamp is the time that the message
	// was created as  defined by the sender
	Timestamp *google_protobuf1.Timestamp `protobuf:"bytes,2,opt,name=timestamp" json:"timestamp,omitempty"`
	// A response message indicating whether the
	// endorsement of the action was successful
	Response *Response `protobuf:"bytes,4,opt,name=response" json:"response,omitempty"`
	// The payload of response. It is the bytes of ProposalResponsePayload
	Payload []byte `protobuf:"bytes,5,opt,name=payload,proto3" json:"payload,omitempty"`
	// The endorsement of the proposal, basically
	// the endorser's signature over the payload
	Endorsement *Endorsement `protobuf:"bytes,6,opt,name=endorsement" json:"endorsement,omitempty"`
}

A ProposalResponse is returned from an endorser to the proposal submitter. The idea is that this message contains the endorser's response to the request of a client to perform an action over a chaincode (or more generically on the ledger); the response might be success/error (conveyed in the Response field) together with a description of the action and a signature over it by that endorser. If a sufficient number of distinct endorsers agree on the same action and produce signature to that effect, a transaction can be generated and sent for ordering.

func (*ProposalResponse) Descriptor ¶

func (*ProposalResponse) Descriptor() ([]byte, []int)

func (*ProposalResponse) GetEndorsement ¶

func (m *ProposalResponse) GetEndorsement() *Endorsement

func (*ProposalResponse) GetPayload ¶

func (m *ProposalResponse) GetPayload() []byte

func (*ProposalResponse) GetResponse ¶

func (m *ProposalResponse) GetResponse() *Response

func (*ProposalResponse) GetTimestamp ¶

func (m *ProposalResponse) GetTimestamp() *google_protobuf1.Timestamp

func (*ProposalResponse) GetVersion ¶

func (m *ProposalResponse) GetVersion() int32

func (*ProposalResponse) ProtoMessage ¶

func (*ProposalResponse) ProtoMessage()

func (*ProposalResponse) Reset ¶

func (m *ProposalResponse) Reset()

func (*ProposalResponse) String ¶

func (m *ProposalResponse) String() string

type ProposalResponsePayload ¶

type ProposalResponsePayload struct {
	// Hash of the proposal that triggered this response. The hash is used to
	// link a response with its proposal, both for bookeeping purposes on an
	// asynchronous system and for security reasons (accountability,
	// non-repudiation). The hash usually covers the entire Proposal message
	// (byte-by-byte). However this implies that the hash can only be verified
	// if the entire proposal message is available when ProposalResponsePayload is
	// included in a transaction or stored in the ledger. For confidentiality
	// reasons, with chaincodes it might be undesirable to store the proposal
	// payload in the ledger.  If the type is CHAINCODE, this is handled by
	// separating the proposal's header and
	// the payload: the header is always hashed in its entirety whereas the
	// payload can either be hashed fully, or only its hash may be hashed, or
	// nothing from the payload can be hashed. The PayloadVisibility field in the
	// Header's extension controls to which extent the proposal payload is
	// "visible" in the sense that was just explained.
	ProposalHash []byte `protobuf:"bytes,1,opt,name=proposal_hash,json=proposalHash,proto3" json:"proposal_hash,omitempty"`
	// Extension should be unmarshaled to a type-specific message. The type of
	// the extension in any proposal response depends on the type of the proposal
	// that the client selected when the proposal was initially sent out.  In
	// particular, this information is stored in the type field of a Header.  For
	// chaincode, it's a ChaincodeAction message
	Extension []byte `protobuf:"bytes,2,opt,name=extension,proto3" json:"extension,omitempty"`
}

ProposalResponsePayload is the payload of a proposal response. This message is the "bridge" between the client's request and the endorser's action in response to that request. Concretely, for chaincodes, it contains a hashed representation of the proposal (proposalHash) and a representation of the chaincode state changes and events inside the extension field.

func (*ProposalResponsePayload) Descriptor ¶

func (*ProposalResponsePayload) Descriptor() ([]byte, []int)

func (*ProposalResponsePayload) GetExtension ¶

func (m *ProposalResponsePayload) GetExtension() []byte

func (*ProposalResponsePayload) GetProposalHash ¶

func (m *ProposalResponsePayload) GetProposalHash() []byte

func (*ProposalResponsePayload) ProtoMessage ¶

func (*ProposalResponsePayload) ProtoMessage()

func (*ProposalResponsePayload) Reset ¶

func (m *ProposalResponsePayload) Reset()

func (*ProposalResponsePayload) StaticallyOpaqueFieldProto ¶ added in v1.1.0

func (ppr *ProposalResponsePayload) StaticallyOpaqueFieldProto(name string) (proto.Message, error)

func (*ProposalResponsePayload) StaticallyOpaqueFields ¶ added in v1.1.0

func (ppr *ProposalResponsePayload) StaticallyOpaqueFields() []string

func (*ProposalResponsePayload) String ¶

func (m *ProposalResponsePayload) String() string

type PutState ¶ added in v1.1.0

type PutState struct {
	Key        string `protobuf:"bytes,1,opt,name=key" json:"key,omitempty"`
	Value      []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	Collection string `protobuf:"bytes,3,opt,name=collection" json:"collection,omitempty"`
}

func (*PutState) Descriptor ¶ added in v1.1.0

func (*PutState) Descriptor() ([]byte, []int)

func (*PutState) GetCollection ¶ added in v1.1.0

func (m *PutState) GetCollection() string

func (*PutState) GetKey ¶ added in v1.1.0

func (m *PutState) GetKey() string

func (*PutState) GetValue ¶ added in v1.1.0

func (m *PutState) GetValue() []byte

func (*PutState) ProtoMessage ¶ added in v1.1.0

func (*PutState) ProtoMessage()

func (*PutState) Reset ¶ added in v1.1.0

func (m *PutState) Reset()

func (*PutState) String ¶ added in v1.1.0

func (m *PutState) String() string

type QueryResponse ¶

type QueryResponse struct {
	Results []*QueryResultBytes `protobuf:"bytes,1,rep,name=results" json:"results,omitempty"`
	HasMore bool                `protobuf:"varint,2,opt,name=has_more,json=hasMore" json:"has_more,omitempty"`
	Id      string              `protobuf:"bytes,3,opt,name=id" json:"id,omitempty"`
}

func (*QueryResponse) Descriptor ¶

func (*QueryResponse) Descriptor() ([]byte, []int)

func (*QueryResponse) GetHasMore ¶

func (m *QueryResponse) GetHasMore() bool

func (*QueryResponse) GetId ¶

func (m *QueryResponse) GetId() string

func (*QueryResponse) GetResults ¶

func (m *QueryResponse) GetResults() []*QueryResultBytes

func (*QueryResponse) ProtoMessage ¶

func (*QueryResponse) ProtoMessage()

func (*QueryResponse) Reset ¶

func (m *QueryResponse) Reset()

func (*QueryResponse) String ¶

func (m *QueryResponse) String() string

type QueryResultBytes ¶

type QueryResultBytes struct {
	ResultBytes []byte `protobuf:"bytes,1,opt,name=resultBytes,proto3" json:"resultBytes,omitempty"`
}

func (*QueryResultBytes) Descriptor ¶

func (*QueryResultBytes) Descriptor() ([]byte, []int)

func (*QueryResultBytes) GetResultBytes ¶

func (m *QueryResultBytes) GetResultBytes() []byte

func (*QueryResultBytes) ProtoMessage ¶

func (*QueryResultBytes) ProtoMessage()

func (*QueryResultBytes) Reset ¶

func (m *QueryResultBytes) Reset()

func (*QueryResultBytes) String ¶

func (m *QueryResultBytes) String() string

type QueryStateClose ¶

type QueryStateClose struct {
	Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"`
}

func (*QueryStateClose) Descriptor ¶

func (*QueryStateClose) Descriptor() ([]byte, []int)

func (*QueryStateClose) GetId ¶

func (m *QueryStateClose) GetId() string

func (*QueryStateClose) ProtoMessage ¶

func (*QueryStateClose) ProtoMessage()

func (*QueryStateClose) Reset ¶

func (m *QueryStateClose) Reset()

func (*QueryStateClose) String ¶

func (m *QueryStateClose) String() string

type QueryStateNext ¶

type QueryStateNext struct {
	Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"`
}

func (*QueryStateNext) Descriptor ¶

func (*QueryStateNext) Descriptor() ([]byte, []int)

func (*QueryStateNext) GetId ¶

func (m *QueryStateNext) GetId() string

func (*QueryStateNext) ProtoMessage ¶

func (*QueryStateNext) ProtoMessage()

func (*QueryStateNext) Reset ¶

func (m *QueryStateNext) Reset()

func (*QueryStateNext) String ¶

func (m *QueryStateNext) String() string

type Register ¶

type Register struct {
	Events []*Interest `protobuf:"bytes,1,rep,name=events" json:"events,omitempty"`
}

---------- consumer events --------- Register is sent by consumers for registering events string type - "register"

func (*Register) Descriptor ¶

func (*Register) Descriptor() ([]byte, []int)

func (*Register) GetEvents ¶

func (m *Register) GetEvents() []*Interest

func (*Register) ProtoMessage ¶

func (*Register) ProtoMessage()

func (*Register) Reset ¶

func (m *Register) Reset()

func (*Register) String ¶

func (m *Register) String() string

type Rejection ¶

type Rejection struct {
	Tx       *Transaction `protobuf:"bytes,1,opt,name=tx" json:"tx,omitempty"`
	ErrorMsg string       `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg" json:"error_msg,omitempty"`
}

Rejection is sent by consumers for erroneous transaction rejection events string type - "rejection"

func (*Rejection) Descriptor ¶

func (*Rejection) Descriptor() ([]byte, []int)

func (*Rejection) GetErrorMsg ¶

func (m *Rejection) GetErrorMsg() string

func (*Rejection) GetTx ¶

func (m *Rejection) GetTx() *Transaction

func (*Rejection) ProtoMessage ¶

func (*Rejection) ProtoMessage()

func (*Rejection) Reset ¶

func (m *Rejection) Reset()

func (*Rejection) String ¶

func (m *Rejection) String() string

type Response ¶

type Response struct {
	// A status code that should follow the HTTP status codes.
	Status int32 `protobuf:"varint,1,opt,name=status" json:"status,omitempty"`
	// A message associated with the response code.
	Message string `protobuf:"bytes,2,opt,name=message" json:"message,omitempty"`
	// A payload that can be used to include metadata with this response.
	Payload []byte `protobuf:"bytes,3,opt,name=payload,proto3" json:"payload,omitempty"`
}

A response with a representation similar to an HTTP response that can be used within another message.

func (*Response) Descriptor ¶

func (*Response) Descriptor() ([]byte, []int)

func (*Response) GetMessage ¶

func (m *Response) GetMessage() string

func (*Response) GetPayload ¶

func (m *Response) GetPayload() []byte

func (*Response) GetStatus ¶

func (m *Response) GetStatus() int32

func (*Response) ProtoMessage ¶

func (*Response) ProtoMessage()

func (*Response) Reset ¶

func (m *Response) Reset()

func (*Response) String ¶

func (m *Response) String() string

type ServerStatus ¶

type ServerStatus struct {
	Status ServerStatus_StatusCode `protobuf:"varint,1,opt,name=status,enum=protos.ServerStatus_StatusCode" json:"status,omitempty"`
}

func (*ServerStatus) Descriptor ¶

func (*ServerStatus) Descriptor() ([]byte, []int)

func (*ServerStatus) GetStatus ¶

func (m *ServerStatus) GetStatus() ServerStatus_StatusCode

func (*ServerStatus) ProtoMessage ¶

func (*ServerStatus) ProtoMessage()

func (*ServerStatus) Reset ¶

func (m *ServerStatus) Reset()

func (*ServerStatus) String ¶

func (m *ServerStatus) String() string

type ServerStatus_StatusCode ¶

type ServerStatus_StatusCode int32
const (
	ServerStatus_UNDEFINED ServerStatus_StatusCode = 0
	ServerStatus_STARTED   ServerStatus_StatusCode = 1
	ServerStatus_STOPPED   ServerStatus_StatusCode = 2
	ServerStatus_PAUSED    ServerStatus_StatusCode = 3
	ServerStatus_ERROR     ServerStatus_StatusCode = 4
	ServerStatus_UNKNOWN   ServerStatus_StatusCode = 5
)

func (ServerStatus_StatusCode) EnumDescriptor ¶

func (ServerStatus_StatusCode) EnumDescriptor() ([]byte, []int)

func (ServerStatus_StatusCode) String ¶

func (x ServerStatus_StatusCode) String() string

type SignedChaincodeDeploymentSpec ¶

type SignedChaincodeDeploymentSpec struct {
	// This is the bytes of the ChaincodeDeploymentSpec
	ChaincodeDeploymentSpec []byte `` /* 132-byte string literal not displayed */
	// This is the instantiation policy which is identical in structure
	// to endorsement policy.  This policy is checked by the VSCC at commit
	// time on the instantiation (all peers will get the same policy as it
	// will be part of the LSCC instantation record and will be part of the
	// hash as well)
	InstantiationPolicy []byte `protobuf:"bytes,2,opt,name=instantiation_policy,json=instantiationPolicy,proto3" json:"instantiation_policy,omitempty"`
	// The endorsements of the above deployment spec, the owner's signature over
	// chaincode_deployment_spec and Endorsement.endorser.
	OwnerEndorsements []*Endorsement `protobuf:"bytes,3,rep,name=owner_endorsements,json=ownerEndorsements" json:"owner_endorsements,omitempty"`
}

SignedChaincodeDeploymentSpec carries the CDS along with endorsements

func (*SignedChaincodeDeploymentSpec) Descriptor ¶

func (*SignedChaincodeDeploymentSpec) Descriptor() ([]byte, []int)

func (*SignedChaincodeDeploymentSpec) GetChaincodeDeploymentSpec ¶

func (m *SignedChaincodeDeploymentSpec) GetChaincodeDeploymentSpec() []byte

func (*SignedChaincodeDeploymentSpec) GetInstantiationPolicy ¶

func (m *SignedChaincodeDeploymentSpec) GetInstantiationPolicy() []byte

func (*SignedChaincodeDeploymentSpec) GetOwnerEndorsements ¶

func (m *SignedChaincodeDeploymentSpec) GetOwnerEndorsements() []*Endorsement

func (*SignedChaincodeDeploymentSpec) ProtoMessage ¶

func (*SignedChaincodeDeploymentSpec) ProtoMessage()

func (*SignedChaincodeDeploymentSpec) Reset ¶

func (m *SignedChaincodeDeploymentSpec) Reset()

func (*SignedChaincodeDeploymentSpec) String ¶

type SignedEvent ¶

type SignedEvent struct {
	// Signature over the event bytes
	Signature []byte `protobuf:"bytes,1,opt,name=signature,proto3" json:"signature,omitempty"`
	// Marshal of Event object
	EventBytes []byte `protobuf:"bytes,2,opt,name=eventBytes,proto3" json:"eventBytes,omitempty"`
}

SignedEvent is used for any communication between consumer and producer

func (*SignedEvent) Descriptor ¶

func (*SignedEvent) Descriptor() ([]byte, []int)

func (*SignedEvent) GetEventBytes ¶

func (m *SignedEvent) GetEventBytes() []byte

func (*SignedEvent) GetSignature ¶

func (m *SignedEvent) GetSignature() []byte

func (*SignedEvent) ProtoMessage ¶

func (*SignedEvent) ProtoMessage()

func (*SignedEvent) Reset ¶

func (m *SignedEvent) Reset()

func (*SignedEvent) String ¶

func (m *SignedEvent) String() string

type SignedProposal ¶

type SignedProposal struct {
	// The bytes of Proposal
	ProposalBytes []byte `protobuf:"bytes,1,opt,name=proposal_bytes,json=proposalBytes,proto3" json:"proposal_bytes,omitempty"`
	// Signaure over proposalBytes; this signature is to be verified against
	// the creator identity contained in the header of the Proposal message
	// marshaled as proposalBytes
	Signature []byte `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"`
}

This structure is necessary to sign the proposal which contains the header and the payload. Without this structure, we would have to concatenate the header and the payload to verify the signature, which could be expensive with large payload

When an endorser receives a SignedProposal message, it should verify the signature over the proposal bytes. This verification requires the following steps:

  1. Verification of the validity of the certificate that was used to produce the signature. The certificate will be available once proposalBytes has been unmarshalled to a Proposal message, and Proposal.header has been unmarshalled to a Header message. While this unmarshalling-before-verifying might not be ideal, it is unavoidable because i) the signature needs to also protect the signing certificate; ii) it is desirable that Header is created once by the client and never changed (for the sake of accountability and non-repudiation). Note also that it is actually impossible to conclusively verify the validity of the certificate included in a Proposal, because the proposal needs to first be endorsed and ordered with respect to certificate expiration transactions. Still, it is useful to pre-filter expired certificates at this stage.
  2. Verification that the certificate is trusted (signed by a trusted CA) and that it is allowed to transact with us (with respect to some ACLs);
  3. Verification that the signature on proposalBytes is valid;
  4. Detect replay attacks;

func (*SignedProposal) Descriptor ¶

func (*SignedProposal) Descriptor() ([]byte, []int)

func (*SignedProposal) GetProposalBytes ¶

func (m *SignedProposal) GetProposalBytes() []byte

func (*SignedProposal) GetSignature ¶

func (m *SignedProposal) GetSignature() []byte

func (*SignedProposal) ProtoMessage ¶

func (*SignedProposal) ProtoMessage()

func (*SignedProposal) Reset ¶

func (m *SignedProposal) Reset()

func (*SignedProposal) String ¶

func (m *SignedProposal) String() string

type SignedTransaction ¶

type SignedTransaction struct {
	// The bytes of the Transaction. NDD
	TransactionBytes []byte `protobuf:"bytes,1,opt,name=transaction_bytes,json=transactionBytes,proto3" json:"transaction_bytes,omitempty"`
	// Signature of the transactionBytes The public key of the signature is in
	// the header field of TransactionAction There might be multiple
	// TransactionAction, so multiple headers, but there should be same
	// transactor identity (cert) in all headers
	Signature []byte `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"`
}

This message is necessary to facilitate the verification of the signature (in the signature field) over the bytes of the transaction (in the transactionBytes field).

func (*SignedTransaction) Descriptor ¶

func (*SignedTransaction) Descriptor() ([]byte, []int)

func (*SignedTransaction) GetSignature ¶

func (m *SignedTransaction) GetSignature() []byte

func (*SignedTransaction) GetTransactionBytes ¶

func (m *SignedTransaction) GetTransactionBytes() []byte

func (*SignedTransaction) ProtoMessage ¶

func (*SignedTransaction) ProtoMessage()

func (*SignedTransaction) Reset ¶

func (m *SignedTransaction) Reset()

func (*SignedTransaction) String ¶

func (m *SignedTransaction) String() string

type Transaction ¶

type Transaction struct {
	// The payload is an array of TransactionAction. An array is necessary to
	// accommodate multiple actions per transaction
	Actions []*TransactionAction `protobuf:"bytes,1,rep,name=actions" json:"actions,omitempty"`
}

The transaction to be sent to the ordering service. A transaction contains one or more TransactionAction. Each TransactionAction binds a proposal to potentially multiple actions. The transaction is atomic meaning that either all actions in the transaction will be committed or none will. Note that while a Transaction might include more than one Header, the Header.creator field must be the same in each. A single client is free to issue a number of independent Proposal, each with their header (Header) and request payload (ChaincodeProposalPayload). Each proposal is independently endorsed generating an action (ProposalResponsePayload) with one signature per Endorser. Any number of independent proposals (and their action) might be included in a transaction to ensure that they are treated atomically.

func (*Transaction) Descriptor ¶

func (*Transaction) Descriptor() ([]byte, []int)

func (*Transaction) GetActions ¶

func (m *Transaction) GetActions() []*TransactionAction

func (*Transaction) ProtoMessage ¶

func (*Transaction) ProtoMessage()

func (*Transaction) Reset ¶

func (m *Transaction) Reset()

func (*Transaction) String ¶

func (m *Transaction) String() string

type TransactionAction ¶

type TransactionAction struct {
	// The header of the proposal action, which is the proposal header
	Header []byte `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"`
	// The payload of the action as defined by the type in the header For
	// chaincode, it's the bytes of ChaincodeActionPayload
	Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`
}

TransactionAction binds a proposal to its action. The type field in the header dictates the type of action to be applied to the ledger.

func (*TransactionAction) Descriptor ¶

func (*TransactionAction) Descriptor() ([]byte, []int)

func (*TransactionAction) GetHeader ¶

func (m *TransactionAction) GetHeader() []byte

func (*TransactionAction) GetPayload ¶

func (m *TransactionAction) GetPayload() []byte

func (*TransactionAction) ProtoMessage ¶

func (*TransactionAction) ProtoMessage()

func (*TransactionAction) Reset ¶

func (m *TransactionAction) Reset()

func (*TransactionAction) StaticallyOpaqueFieldProto ¶ added in v1.1.0

func (ta *TransactionAction) StaticallyOpaqueFieldProto(name string) (proto.Message, error)

func (*TransactionAction) StaticallyOpaqueFields ¶ added in v1.1.0

func (ta *TransactionAction) StaticallyOpaqueFields() []string

func (*TransactionAction) String ¶

func (m *TransactionAction) String() string

type TxValidationCode ¶

type TxValidationCode int32
const (
	TxValidationCode_VALID                        TxValidationCode = 0
	TxValidationCode_NIL_ENVELOPE                 TxValidationCode = 1
	TxValidationCode_BAD_PAYLOAD                  TxValidationCode = 2
	TxValidationCode_BAD_COMMON_HEADER            TxValidationCode = 3
	TxValidationCode_BAD_CREATOR_SIGNATURE        TxValidationCode = 4
	TxValidationCode_INVALID_ENDORSER_TRANSACTION TxValidationCode = 5
	TxValidationCode_INVALID_CONFIG_TRANSACTION   TxValidationCode = 6
	TxValidationCode_UNSUPPORTED_TX_PAYLOAD       TxValidationCode = 7
	TxValidationCode_BAD_PROPOSAL_TXID            TxValidationCode = 8
	TxValidationCode_DUPLICATE_TXID               TxValidationCode = 9
	TxValidationCode_ENDORSEMENT_POLICY_FAILURE   TxValidationCode = 10
	TxValidationCode_MVCC_READ_CONFLICT           TxValidationCode = 11
	TxValidationCode_PHANTOM_READ_CONFLICT        TxValidationCode = 12
	TxValidationCode_UNKNOWN_TX_TYPE              TxValidationCode = 13
	TxValidationCode_TARGET_CHAIN_NOT_FOUND       TxValidationCode = 14
	TxValidationCode_MARSHAL_TX_ERROR             TxValidationCode = 15
	TxValidationCode_NIL_TXACTION                 TxValidationCode = 16
	TxValidationCode_EXPIRED_CHAINCODE            TxValidationCode = 17
	TxValidationCode_CHAINCODE_VERSION_CONFLICT   TxValidationCode = 18
	TxValidationCode_BAD_HEADER_EXTENSION         TxValidationCode = 19
	TxValidationCode_BAD_CHANNEL_HEADER           TxValidationCode = 20
	TxValidationCode_BAD_RESPONSE_PAYLOAD         TxValidationCode = 21
	TxValidationCode_BAD_RWSET                    TxValidationCode = 22
	TxValidationCode_ILLEGAL_WRITESET             TxValidationCode = 23
	TxValidationCode_INVALID_OTHER_REASON         TxValidationCode = 255
)

func (TxValidationCode) EnumDescriptor ¶

func (TxValidationCode) EnumDescriptor() ([]byte, []int)

func (TxValidationCode) String ¶

func (x TxValidationCode) String() string

type Unregister ¶

type Unregister struct {
	Events []*Interest `protobuf:"bytes,1,rep,name=events" json:"events,omitempty"`
}

---------- producer events ---------

func (*Unregister) Descriptor ¶

func (*Unregister) Descriptor() ([]byte, []int)

func (*Unregister) GetEvents ¶

func (m *Unregister) GetEvents() []*Interest

func (*Unregister) ProtoMessage ¶

func (*Unregister) ProtoMessage()

func (*Unregister) Reset ¶

func (m *Unregister) Reset()

func (*Unregister) String ¶

func (m *Unregister) String() string

type VSCCArgs ¶ added in v1.1.0

type VSCCArgs struct {
	EndorsementPolicyRef string `protobuf:"bytes,1,opt,name=endorsement_policy_ref,json=endorsementPolicyRef" json:"endorsement_policy_ref,omitempty"`
}

VSCCArgs is passed (marshaled) as a parameter to the VSCC imlementation via the argument field of the ChaincodeValidation message.

func (*VSCCArgs) Descriptor ¶ added in v1.1.0

func (*VSCCArgs) Descriptor() ([]byte, []int)

func (*VSCCArgs) GetEndorsementPolicyRef ¶ added in v1.1.0

func (m *VSCCArgs) GetEndorsementPolicyRef() string

func (*VSCCArgs) ProtoMessage ¶ added in v1.1.0

func (*VSCCArgs) ProtoMessage()

func (*VSCCArgs) Reset ¶ added in v1.1.0

func (m *VSCCArgs) Reset()

func (*VSCCArgs) String ¶ added in v1.1.0

func (m *VSCCArgs) String() string

Jump to

Keyboard shortcuts

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