API de Contrato Inteligente de Solidez
O Oracle Blockchain Platform Enterprise Edition para Hyperledger Besu fornece métodos Solidity que você pode usar para trabalhar com contratos inteligentes Solidity.
A API suporta tokens com base no padrão ERC-20 e no padrão ERC-1155. As implementações ERC-20 e ERC-1155 incluem um contrato inteligente de conta e um contrato inteligente de token. O contrato inteligente da conta fornece métodos de controle de acesso e identidade. O contrato inteligente de token fornece funções especificamente relacionadas a tokens.
ERC-20 - Métodos de Contrato da Conta
Métodos para Gerenciamento de Contas
-
createAccount - Este método cria uma conta para um usuário especificado. As contas rastreiam o saldo de token e o saldo em espera de um usuário e devem ser criadas para todos os usuários que terão tokens a qualquer momento. Esse método só pode ser chamado por uma
Token Adminou umaOrg Adminda organização especificada. -
deleteAccount - Este método exclui a conta de um usuário especificado. Uma conta só poderá ser excluída se o saldo do token for zero. Esse método só pode ser chamado por uma
Token Adminou umaOrg Adminda organização especificada. -
getAccountStatus - Este método obtém o status atual da conta especificada. Esse método só pode ser chamado por uma
Token Admin,Token Auditor,Org Adminda organização especificada ou pelo usuário especificado. -
getAccountByAddress - Este método obtém as informações da conta de um usuário especificado. Esse método só pode ser chamado por uma
Token Admin,Token Auditor,Org Adminda organização especificada ou pelo usuário especificado. -
getAllAccounts - Este método obtém as informações da conta para todas as contas que se enquadram em um intervalo especificado. Esse método só pode ser chamado por uma
Token AdminouToken Auditor. -
activateAccount - Este método ativa uma conta de usuário. Esse método só pode ser chamado por uma
Token AdminouOrg Adminda organização especificada. -
suspendAccount - Este método suspende uma conta de usuário. Para excluir uma conta, o saldo da conta deve ser zero. Esse método só pode ser chamado por uma
Token AdminouOrg Adminda organização especificada. -
setMaxDailyAmount - Este método define a quantidade máxima de tokens que podem ser usados em transações diariamente. Esse método só pode ser chamado por uma
Token AdminouOrg Adminda organização especificada. -
setMaxDailyTransactionCount - Este método define o número máximo de transações que podem ser concluídas diariamente. Esse método só pode ser chamado por uma
Token AdminouOrg Adminda organização especificada.
Métodos para Gerenciamento do Administrador
-
addTokenAdmin - Esse método adiciona um usuário como
Token Admin. Esse método só pode ser chamado por umToken Admin. -
removeTokenAdmin - Esse método remove um usuário como
Token Admin. Esse método só pode ser chamado por umToken Admin. -
getAllTokenAdmins - Esse método retorna uma lista de todos os usuários que são um
Token Admin. Esse método só pode ser chamado peloToken Adminou peloToken Auditor. -
isTokenAdmin - Este método verifica se o usuário especificado é um
Token Admin. Esse método só pode ser chamado por umaToken Admin,Token Auditor,Org AdminouOrg Auditor. -
addOrgAdmin - Esse método adiciona um usuário como
Org Admin. Esse método só pode ser chamado por umaToken AdminouOrg Adminda organização especificada. -
removeOrgAdmin - Esse método remove um usuário como
Org Admin. Esse método só pode ser chamado por umaToken AdminouOrg Adminda organização especificada. -
getAllOrgAdmins - Esse método retorna uma lista de todos os usuários que são um
Org Admin. Esse método só pode ser chamado peloToken Admin,Token Auditor,Org AdminouOrg Auditor. -
isOrgAdmin - Este método verifica se o usuário especificado é um
Org Admin. Esse método só pode ser chamado por umaToken Admin,Token Auditor,Org AdminouOrg Auditor.
Métodos para Gerenciamento de Auditor
-
addTokenAuditor - Esse método adiciona um usuário como
Token Auditor. Esse método só pode ser chamado por umToken Admin. -
removeTokenAuditor - Esse método remove um usuário como
Token Auditor. Esse método só pode ser chamado por umToken Admin. -
getAllTokenAuditors - Esse método retorna uma lista de todos os usuários que são um
Token Auditor. Esse método só pode ser chamado peloToken Adminou peloToken Auditor. -
isTokenAuditor - Este método verifica se o usuário especificado é um
Token Auditor. Este método pode ser chamado por qualquer usuário. -
addOrgAuditor - Esse método adiciona um usuário como
Org Auditor. Esse método só pode ser chamado por umaToken AdminouOrg Adminda organização especificada. -
removeOrgAuditor - Esse método remove um usuário como
Org Auditor. Esse método só pode ser chamado por umaToken AdminouOrg Adminda organização especificada. -
getAllOrgAuditors - Esse método retorna uma lista de todos os usuários que são um
Org Auditor. Esse método só pode ser chamado peloToken Admin,Token Auditor,Org AdminouOrg Auditor. -
isOrgAuditor - Este método verifica se o usuário especificado é um
Org Auditor. Este método pode ser chamado por qualquer usuário.
Métodos para Gerenciamento de Atribuições
-
addRole - Este método adiciona uma atribuição a um usuário especificado. Esse método só pode ser chamado por uma
Token AdminouOrg Adminda organização especificada. -
removeRole - Este método remove uma atribuição de um usuário especificado. Esse método só pode ser chamado por uma
Token AdminouOrg Adminda organização especificada. -
accountHasRole - Este método verifica se um usuário tem uma função especificada. Este método pode ser chamado por qualquer usuário.
Métodos de Contrato de Token ERC-20
Métodos para Gerenciamento de Configuração de Token
-
__ERC20Token_init - Esse método é chamado quando o contrato de token é implantado. Esse método só pode ser chamado por um
Token Admin. -
initializeERC20Token - Este método inicializa um token ERC-20. Esse método só pode ser chamado por um
Token Admin. -
getToken - Este método obtém detalhes de um token. Esse método só pode ser chamado por uma
Token Admin,Token Auditor,Org AdminouOrg Auditor. -
decimals - Este método obtém o valor decimal de um token. Esse método só pode ser chamado por uma
Token Admin,Token Auditor,Org AdminouOrg Auditor.
-
__ERC20Token_init - Este método é chamado quando o contrato de token é implantado. Esse método só pode ser chamado por um
Token Admin. -
initializeERC20Token - Este método inicializa um token ERC-20. Esse método só pode ser chamado por um
Token Admin. -
getToken - Este método obtém detalhes de um token. Esse método só pode ser chamado por uma
Token Admin,Token Auditor,Org AdminouOrg Auditor. -
cap - Este método obtém o suprimento de token máximo (cap). Esse método só pode ser chamado por uma
Token Admin,Token Auditor,Org AdminouOrg Auditor. -
balanceOf - Este método obtém o saldo do token para o usuário especificado. Esse método só pode ser chamado por uma
Token Admin,Token Auditor,Org Admin,Org Auditorou pelo usuário especificado.
-
mint - Este método cria tokens (mints). Esse método pode ser chamado por qualquer usuário com a função de mineiro.
-
batchMint - Este método cria tokens (mints) para mais de um usuário por vez. Esse método pode ser chamado por qualquer usuário com a função de mineiro.
-
requestMint - Este método pode ser chamado por um mineiro para enviar uma solicitação ao notário para criar uma quantidade especificada de tokens.
-
approveMint - Este método pode ser chamado por um notário para aprovar uma solicitação de cunhagem.
-
rejectMint - Este método pode ser chamado por um notário para rejeitar uma solicitação de cunhagem.
Token Behavior Management - Comportamento Queimável
-
burn - Este método desativa tokens (queimações). Este método pode ser chamado por qualquer usuário com a função de queimador.
-
batchBurn - Este método grava tokens para mais de um usuário por vez. Este método pode ser chamado por qualquer usuário com a função de queimador.
-
requestBurn - Este método pode ser chamado por um queimador para enviar uma solicitação ao notário para queimar uma quantidade especificada de tokens.
-
approveBurn - Este método pode ser chamado por um notário para aprovar uma solicitação de gravação.
-
rejectBurn - Este método pode ser chamado por um notário para rejeitar uma solicitação de gravação.
Gerenciamento de Comportamento de Token - Comportamento Transferível
-
transfer - Este método transfere tokens para um usuário especificado. Este método pode ser chamado por qualquer usuário com tokens.
-
batchTransfer - Este método transfere tokens para uma lista especificada de usuários. Este método pode ser chamado por qualquer usuário com tokens.
Gerenciamento de Comportamento de Token - Comportamento Delegável
-
allowance - Este método delega gastos de token a um usuário especificado. Este método pode ser chamado por qualquer usuário com tokens.
-
approve - Este método aprova a quantidade de tokens para um gastador delegado especificado. Este método pode ser chamado por qualquer usuário com tokens.
-
transferFrom - Os gastadores delegados usam esse método para transferir tokens.
Gerenciamento de Comportamento de Token - Comportamento Pausável
-
isPaused - Este método verifica se o contrato está pausado. Esse método só pode ser chamado por uma
Token Admin,Token Auditor,Org AdminouOrg Auditor. -
pause - Este método pausa o contrato. Esse método só pode ser chamado por um
Token Admin. -
unpause - Este método retoma o contrato. Esse método só pode ser chamado por um
Token Admin.
Gerenciamento de Comportamento de Token - Comportamento de Retenção
-
hold - Este método cria uma retenção em nome do proprietário do token. Este método pode ser chamado por qualquer usuário com tokens.
-
executeHold - Este método aprova uma solicitação de retenção. Este método só pode ser chamado pelo notário especificado anteriormente.
-
releaseHold - Este método rejeita uma solicitação de retenção. Este método só pode ser chamado pelo notário especificado anteriormente.
-
getOnHoldBalanceWithOperationId - Este método retorna o saldo em retenção para um ID de operação especificado. Este método pode ser chamado por um
Token AdminouToken Auditor,Org AdminouOrg Auditorda organização especificada ou por um participante da transação (remetente, destinatário, notário). -
getAccountOnHoldBalance - Este método retorna o saldo em retenção de uma conta especificada. Este método pode ser chamado por um
Token AdminouToken Auditor,Org AdminouOrg Auditorda organização especificada ou por um participante da transação (remetente, destinatário, notário).
ERC-1155 - Métodos de Contrato da Conta
Métodos para Gerenciamento de Contas
-
createAccount - Este método cria uma conta para um usuário especificado. As contas rastreiam o saldo do token de um usuário e devem ser criadas para todos os usuários que terão tokens a qualquer momento. Esse método só pode ser chamado por um
Token Admin. -
deleteAccount - Este método exclui a conta de um usuário especificado. Uma conta só poderá ser excluída se o saldo do token for zero. Esse método só pode ser chamado por um
Token Admin. -
getAccountStatus - Este método obtém o status atual da conta especificada. Esse método só pode ser chamado por um
Token Adminou pelo usuário especificado. -
getAccountByAddress - Este método obtém as informações da conta de um usuário especificado. Esse método só pode ser chamado por um
Token Adminou pelo usuário especificado. -
getAllAccounts - Este método obtém as informações da conta para todas as contas que se enquadram em um intervalo especificado. Esse método só pode ser chamado por um
Token Admin. -
activateAccount - Este método ativa uma conta de usuário. Esse método só pode ser chamado por um
Token Admin. -
suspendAccount - Este método suspende uma conta de usuário. Para excluir uma conta, o saldo da conta deve ser zero. Esse método só pode ser chamado por um
Token Admin.
Métodos para Gerenciamento do Administrador
-
addTokenAdmin - Esse método adiciona um usuário como
Token Admin. Esse método só pode ser chamado por umToken Admin. -
removeTokenAdmin - Esse método remove um usuário como
Token Admin. Esse método só pode ser chamado por umToken Admin. -
getAllTokenAdmins - Esse método retorna uma lista de todos os usuários que são um
Token Admin. Esse método só pode ser chamado peloToken Admin. -
isTokenAdmin - Este método verifica se o usuário especificado é um
Token Admin. Esse método só pode ser chamado por umToken Admin.
Métodos para Gerenciamento de Atribuições
-
addRole - Este método adiciona uma atribuição a um usuário especificado. Esse método só pode ser chamado por um
Token Admin. -
removeRole - Este método remove uma atribuição de um usuário especificado. Esse método só pode ser chamado por uma
Token AdminouOrg Adminda organização especificada. -
accountHasRole - Este método verifica se um usuário tem uma função especificada. Este método pode ser chamado por qualquer usuário.
-
addTokenSysRole - Esse método adiciona a atribuição
TOKEN_SYS_VAULT_ROLEa um usuário especificado. Esse método só pode ser chamado por umToken Admin. -
removeTokenSysRole - Esse método remove a atribuição
TOKEN_SYS_VAULT_ROLEde um usuário especificado. Esse método só pode ser chamado por umToken Admin. -
transferTokenSysRole - Esse método transfere a atribuição
TOKEN_SYS_VAULT_ROLEde um usuário para outro. Esse método só pode ser chamado por umToken Admin.
ERC-1155 - Métodos de Contrato de Token
Métodos para Gerenciamento de Configuração de Token
-
__ERC1155Token_init - Esse método é chamado quando o contrato de token é implantado. Esse método só pode ser chamado por um
Token Admin. -
saveNFTClass - Este método salva as informações da classe NFT no razão. Esse método só pode ser chamado por um
Token Admin. -
createNonFungibleToken - Este método cunha NFTs. Esse método só pode ser chamado por um usuário com a função de mineiro.
-
createFungibleToken - Esse método é chamado quando o contrato de token é implantado. Esse método só pode ser chamado por um
Token Admin. -
getTokenById - Este método obtém detalhes de um token. Esse método só pode ser chamado por um proprietário de token ou
Token Admin. -
geTokenDecimals - Este método obtém o valor decimal de um token. Esse método só pode ser chamado por um
Token Admin.
-
tokenIdOf - Este método obtém o ID de um token. Esse método só pode ser chamado por um
Token Admin. -
balanceOf - Este método obtém o saldo do token para o usuário especificado. Esse método só pode ser chamado por um
Token Adminou pelo proprietário do token. -
balanceOfBatch - Este método obtém o saldo do token para uma lista de usuários. Esse método só pode ser chamado por um
Token Adminou pelo proprietário do token. -
exists - Este método verifica se existe um token especificado. Esse método só pode ser chamado por um
Token Admin. -
totalSupply - Este método verifica o suprimento total de todos os tokens no contrato. Esse método só pode ser chamado por um
Token Admin. -
totalSupply - Este método verifica o suprimento total de um token especificado no contrato. Esse método só pode ser chamado por um
Token Admin.
Token Behavior Management - Comportamento Queimável
-
burnBatch - Este método destrói (queima) tokens ERC-1155 no modo batch. Os tokens devem ser inicializados. Este método pode ser chamado por qualquer usuário com a função de queimador.
-
burnNFT - Este método destrói (queima) um token não fungível. Os tokens devem ser inicializados. Este método pode ser chamado por qualquer usuário com a função de queimador.
Gerenciamento de Comportamento de Token - Comportamento Transferível
-
safeTransferFrom - Este método transfere tokens de um remetente para um destinatário. Este método pode ser chamado por qualquer usuário que possua tokens.
-
safeBatchTransferFrom - Este método transfere tokens de um remetente para um destinatário. Este método pode ser chamado por qualquer usuário que possua tokens.
Gerenciamento de Comportamento de Token - Comportamento Delegável
-
setApprovalForAll - Esse método concede ou revoga a permissão de um operador para transferir os tokens do chamador, com base no parâmetro
approved. Este método pode ser chamado por qualquer usuário que possua tokens. -
isApprovedForAll - Este método verifica se um operador está aprovado para transferir tokens para uma conta especificada. Este método pode ser chamado por qualquer usuário que possua tokens.
Gerenciamento de Comportamento de Token - Comportamento Pausável
-
paused - Este método verifica se o contrato está pausado. Este método pode ser chamado por qualquer usuário.
-
pause - Este método pausa o contrato. Esse método só pode ser chamado por um
Token Admin. -
unpause - Este método retoma um contrato pausado. Esse método só pode ser chamado por um
Token Admin.
Gerenciamento de Comportamento de Token - Comportamento Bloqueável
-
lockNFT - Este método bloqueia um token não fungível. Esse método só pode ser chamado por um usuário com a atribuição
TOKEN_SYS_VAULT_ROLE. -
isNFTLocked - Este método verifica se um token não fungível está bloqueado. Esse método só pode ser chamado por um usuário com a atribuição
TOKEN_SYS_VAULT_ROLEou pela atribuiçãoToken Admin.