Documentation ¶
Index ¶
- Constants
- type Config
- type ContractIdentity
- func (ci *ContractIdentity) CreateAccess(ctx contractapi.TransactionContextInterface, request model.AccessCreateRequest) (*model.AccessResponse, error)
- func (ci *ContractIdentity) CreateIssuer(ctx contractapi.TransactionContextInterface, ...) (*model.IssuerQueryResponse, error)
- func (ci *ContractIdentity) CreateParticipant(ctx contractapi.TransactionContextInterface, ...) (*model.ParticipantResponse, error)
- func (ci *ContractIdentity) CreateRole(ctx contractapi.TransactionContextInterface, ...) (*modelapi.RoleResponse, error)
- func (ci *ContractIdentity) DeleteIssuer(ctx contractapi.TransactionContextInterface, issuerRequest model.GetRequest) error
- func (ci *ContractIdentity) DeleteParticipant(ctx contractapi.TransactionContextInterface, ...) error
- func (ci *ContractIdentity) DeleteRole(ctx contractapi.TransactionContextInterface, request modelapi.GetRequest) error
- func (ci *ContractIdentity) GetAccess(ctx contractapi.TransactionContextInterface, request model.GetRequest) (*model.AccessResponse, error)
- func (ci *ContractIdentity) GetAccesses(ctx contractapi.TransactionContextInterface, request model.QueryPaginator) (*model.PaginatedQueryResponse, error)
- func (ci *ContractIdentity) GetIgnoredFunctions() []string
- func (ci *ContractIdentity) GetIssuer(ctx contractapi.TransactionContextInterface, request model.GetRequest) (*model.IssuerQueryResponse, error)
- func (ci *ContractIdentity) GetIssuerHistory(ctx contractapi.TransactionContextInterface, issuerRequest model.GetRequest) ([]model.IssuerHistoryQueryResponse, error)
- func (ci *ContractIdentity) GetIssuers(ctx contractapi.TransactionContextInterface) ([]model.IssuerQueryResponse, error)
- func (ci *ContractIdentity) GetParticipant(ctx contractapi.TransactionContextInterface, ...) (*model.Participant, error)
- func (ci *ContractIdentity) GetParticipantHistory(ctx contractapi.TransactionContextInterface, ...) ([]model.ParticipantHistoryQueryResponse, error)
- func (ci *ContractIdentity) GetParticipantRoles(ctx contractapi.TransactionContextInterface, ...) ([]model.RoleResponse, error)
- func (ci *ContractIdentity) GetParticipants(ctx contractapi.TransactionContextInterface, request model.QueryPaginator) (*model.PaginatedQueryResponse, error)
- func (ci *ContractIdentity) GetRole(ctx contractapi.TransactionContextInterface, request modelapi.GetRequest) (*modelapi.RoleResponse, error)
- func (ci *ContractIdentity) GetRoles(ctx contractapi.TransactionContextInterface) ([]modelapi.RoleResponse, error)
- func (ci *ContractIdentity) InitLedger(ctx contractapi.TransactionContextInterface) error
- func (ci *ContractIdentity) OnlyDevAccess(ctx contractapi.TransactionContextInterface) error
- func (ci *ContractIdentity) OnlyDevIssuer(ctx contractapi.TransactionContextInterface) (string, error)
- func (ci *ContractIdentity) OnlyDevParticipant(ctx contractapi.TransactionContextInterface) (string, error)
- func (ci *ContractIdentity) ParticipantExits(ctx contractapi.TransactionContextInterface, ...) (bool, error)
- func (ci *ContractIdentity) QueryAssetsBy(ctx contractapi.TransactionContextInterface, query map[string]interface{}) ([]interface{}, error)
- func (ci *ContractIdentity) QueryAssetsWithPagination(ctx contractapi.TransactionContextInterface, request model.RichQuerySelector) (*model.PaginatedQueryResponse, error)
- func (ci *ContractIdentity) RenewIssuer(ctx contractapi.TransactionContextInterface, issuerRequest IssuerUpdateRequest) (*model.IssuerQueryResponse, error)
- func (ci *ContractIdentity) UpdateParticipant(ctx contractapi.TransactionContextInterface, ...) error
- func (ci *ContractIdentity) UpdateRole(ctx contractapi.TransactionContextInterface, ...) error
- type IssuerUpdateRequest
Constants ¶
const ( ParticipantDocType = "did.participant" RoleDocType = "did.role" AccessDocType = "did.access" IssuerDocType = "did.issuer" )
docType
const ( // index Deleted = "deleted" // objectType ObjectTypeParticipantDeleted = ParticipantDocType + "~" + Deleted + "~did" // use to index deleted participant ObjectTypeIssuerByDefault = IssuerDocType + ":default~uuid" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct {
AutogenerateDid bool `json:"autogenerateDid,omitempty" metadata:",optional"` // did is sent by the dapp, it is not generated by the chaincode
}
Config TODO: in a later version this configuration should be able to be managed in a decentralized way
type ContractIdentity ¶
type ContractIdentity struct {
contractapi.Contract
}
ContractIdentity chaincode that defines the business logic for managing identity
func (*ContractIdentity) CreateAccess ¶
func (ci *ContractIdentity) CreateAccess(ctx contractapi.TransactionContextInterface, request model.AccessCreateRequest) (*model.AccessResponse, error)
CreateAccess
Arguments:
0: AccessCreateRequest -
Returns:
0: AccessResponse 1: error
func (*ContractIdentity) CreateIssuer ¶
func (ci *ContractIdentity) CreateIssuer(ctx contractapi.TransactionContextInterface, issuerRequest model.IssuerCreateRequest) (*model.IssuerQueryResponse, error)
CreateIssuer create in the ledger the issuer's certificate with its attributes
Arguments:
0: IssuerCreateRequest
Returns:
0: Issuer 1: error
func (*ContractIdentity) CreateParticipant ¶
func (ci *ContractIdentity) CreateParticipant(ctx contractapi.TransactionContextInterface, request model.ParticipantCreateRequest) (*model.ParticipantResponse, error)
CreateParticipant
func (*ContractIdentity) CreateRole ¶
func (ci *ContractIdentity) CreateRole(ctx contractapi.TransactionContextInterface, request modelapi.RoleCreateRequest) (*modelapi.RoleResponse, error)
TODO: remove model-traceability-go dependence CreateRole
func (*ContractIdentity) DeleteIssuer ¶
func (ci *ContractIdentity) DeleteIssuer(ctx contractapi.TransactionContextInterface, issuerRequest model.GetRequest) error
DeleteIssuer delete an issuer from the ledger
Arguments:
0: GetRequest
Returns:
0: Issuer 1: error
func (*ContractIdentity) DeleteParticipant ¶
func (ci *ContractIdentity) DeleteParticipant(ctx contractapi.TransactionContextInterface, identityRequest model.ParticipantDeleteRequest) error
DeleteParticipant TODO: debug
func (*ContractIdentity) DeleteRole ¶
func (ci *ContractIdentity) DeleteRole(ctx contractapi.TransactionContextInterface, request modelapi.GetRequest) error
DeleteRole
func (*ContractIdentity) GetAccess ¶
func (ci *ContractIdentity) GetAccess(ctx contractapi.TransactionContextInterface, request model.GetRequest) (*model.AccessResponse, error)
GetAccess get an access
Arguments:
0: GetRequest
Returns:
0: AccessResponse 1: error
func (*ContractIdentity) GetAccesses ¶
func (ci *ContractIdentity) GetAccesses(ctx contractapi.TransactionContextInterface, request model.QueryPaginator) (*model.PaginatedQueryResponse, error)
GetAccesses get all access
Arguments:
0: request model.RichQuerySelector
Returns:
0: *model.PaginatedQueryResponse 1: error
func (*ContractIdentity) GetIgnoredFunctions ¶
func (ci *ContractIdentity) GetIgnoredFunctions() []string
GetIgnoredFunctions returns functions are still callable by the code just not directly by outside users
func (*ContractIdentity) GetIssuer ¶
func (ci *ContractIdentity) GetIssuer(ctx contractapi.TransactionContextInterface, request model.GetRequest) (*model.IssuerQueryResponse, error)
GetIssuer get an issuer from the ledger
Arguments:
0: GetRequest
Returns:
0: Issuer 1: error
func (*ContractIdentity) GetIssuerHistory ¶
func (ci *ContractIdentity) GetIssuerHistory(ctx contractapi.TransactionContextInterface, issuerRequest model.GetRequest) ([]model.IssuerHistoryQueryResponse, error)
GetIssuerHistory returns the chain of custody for a issuer since issuance
Arguments:
0: model.GetRequest
Returns:
0: []model.IssuerHistoryQueryResponse 1: error
func (*ContractIdentity) GetIssuers ¶
func (ci *ContractIdentity) GetIssuers(ctx contractapi.TransactionContextInterface) ([]model.IssuerQueryResponse, error)
GetIssuers get all issuer
Arguments:
0: none
Returns:
0: []Issuer 1: error
func (*ContractIdentity) GetParticipant ¶
func (ci *ContractIdentity) GetParticipant(ctx contractapi.TransactionContextInterface, request model.ParticipantGetRequest) (*model.Participant, error)
func (*ContractIdentity) GetParticipantHistory ¶
func (ci *ContractIdentity) GetParticipantHistory(ctx contractapi.TransactionContextInterface, request model.ParticipantGetRequest) ([]model.ParticipantHistoryQueryResponse, error)
GetParticipantHistory returns the chain of custody for an identity since issuance
Arguments:
0: model_api.ParticipantGetRequest
Returns:
0: []model_api.ParticipantHistoryQueryResponse 1: error
func (*ContractIdentity) GetParticipantRoles ¶
func (ci *ContractIdentity) GetParticipantRoles(ctx contractapi.TransactionContextInterface, request model.ParticipantGetRequest) ([]model.RoleResponse, error)
func (*ContractIdentity) GetParticipants ¶
func (ci *ContractIdentity) GetParticipants(ctx contractapi.TransactionContextInterface, request model.QueryPaginator) (*model.PaginatedQueryResponse, error)
GetParticipants get all identity
Arguments:
0: request model.RichQuerySelector
Returns:
0: *model.PaginatedQueryResponse 1: error
func (*ContractIdentity) GetRole ¶
func (ci *ContractIdentity) GetRole(ctx contractapi.TransactionContextInterface, request modelapi.GetRequest) (*modelapi.RoleResponse, error)
GetRole
func (*ContractIdentity) GetRoles ¶
func (ci *ContractIdentity) GetRoles(ctx contractapi.TransactionContextInterface) ([]modelapi.RoleResponse, error)
GetRoles get all role
func (*ContractIdentity) InitLedger ¶
func (ci *ContractIdentity) InitLedger(ctx contractapi.TransactionContextInterface) error
InitLedger adds a base set of data to the ledger
func (*ContractIdentity) OnlyDevAccess ¶
func (ci *ContractIdentity) OnlyDevAccess(ctx contractapi.TransactionContextInterface) error
OnlyDevAccess TODO: only for test
func (*ContractIdentity) OnlyDevIssuer ¶
func (ci *ContractIdentity) OnlyDevIssuer(ctx contractapi.TransactionContextInterface) (string, error)
OnlyDevIssuer [temporary] function to populate with test data
func (*ContractIdentity) OnlyDevParticipant ¶
func (ci *ContractIdentity) OnlyDevParticipant(ctx contractapi.TransactionContextInterface) (string, error)
OnlyDevParticipant [temporary] function to populate with test data
func (*ContractIdentity) ParticipantExits ¶
func (ci *ContractIdentity) ParticipantExits(ctx contractapi.TransactionContextInterface, request model.ParticipantGetRequest) (bool, error)
ParticipantExits returns true when identity with given key exists in the worldState.
func (*ContractIdentity) QueryAssetsBy ¶
func (ci *ContractIdentity) QueryAssetsBy(ctx contractapi.TransactionContextInterface, query map[string]interface{}) ([]interface{}, error)
QueryAssetsBy uses a query string to perform a query for any identity contract asset Query string matching state database syntax is passed in and executed as is. Supports ad hoc queries that can be defined at runtime by the client. Param Ex: {"selector":{"docType":"did.participant","id":"myID"}}
Arguments:
0: queryStruct map[string]interface{}
Returns:
0: []string
func (*ContractIdentity) QueryAssetsWithPagination ¶
func (ci *ContractIdentity) QueryAssetsWithPagination(ctx contractapi.TransactionContextInterface, request model.RichQuerySelector) (*model.PaginatedQueryResponse, error)
QueryAssetsWithPagination uses a query string, page size and a bookmark to perform a query for assets. Query string matching state database syntax is passed in and executed as is. The number of fetched records would be equal to or lesser than the specified page size. Supports ad hoc queries that can be defined at runtime by the client. If this is not desired, follow the QueryAssetsForOwner example for parameterized queries. Only available on state databases that support rich query (e.g. CouchDB) Paginated queries are only valid for read only transactions. Example: Pagination with Ad hoc Rich Query
func (*ContractIdentity) RenewIssuer ¶
func (ci *ContractIdentity) RenewIssuer(ctx contractapi.TransactionContextInterface, issuerRequest IssuerUpdateRequest) (*model.IssuerQueryResponse, error)
RenewIssuer update issuer certificate in the ledger
Arguments:
0: IssuerUpdateRequest
Returns:
0: Issuer 1: error
func (*ContractIdentity) UpdateParticipant ¶
func (ci *ContractIdentity) UpdateParticipant(ctx contractapi.TransactionContextInterface, request model.ParticipantUpdateRequest) error
func (*ContractIdentity) UpdateRole ¶
func (ci *ContractIdentity) UpdateRole(ctx contractapi.TransactionContextInterface, request modelapi.RoleUpdateRequest) error
UpdateRole
type IssuerUpdateRequest ¶
type IssuerUpdateRequest struct { ID string `json:"id"` CertPem string `json:"certPem"` // b64 certificate PEM active }
IssuerUpdateRequest