API de contratos inteligentes de Solidary
Oracle Blockchain Platform Enterprise Edition para Hyperledger Besu proporciona métodos de Solidity que puede utilizar para trabajar con contratos inteligentes de Solidity.
La API admite tokens según el estándar ERC-20 y el estándar ERC-1155. Las implementaciones de ERC-20 y ERC-1155 incluyen un contrato inteligente de cuenta y un contrato inteligente de token. El contrato inteligente de cuenta proporciona métodos de control de identidad y acceso. El contrato inteligente de tokens proporciona funciones específicamente relacionadas con tokens.
ERC-20 Métodos de contrato de cuenta
Métodos para la gestión de cuentas
-
createAccount - Este método crea una cuenta para un usuario especificado. Las cuentas realizan un seguimiento del saldo de token de un usuario y del saldo retenido, y se deben crear para todos los usuarios que tendrán tokens en cualquier momento. Este método solo lo puede llamar un
Token Admino unOrg Adminde la organización especificada. -
deleteAccount - Este método suprime la cuenta de un usuario especificado. Una cuenta solo se puede suprimir si el saldo del token es cero. Este método solo lo puede llamar un
Token Admino unOrg Adminde la organización especificada. -
getAccountStatus - Este método obtiene el estado actual de la cuenta especificada. Este método solo puede ser llamado por un
Token Admin,Token Auditor,Org Adminde la organización especificada o por el usuario especificado. -
getAccountByAddress - Este método obtiene la información de cuenta de un usuario especificado. Este método solo puede ser llamado por un
Token Admin,Token Auditor,Org Adminde la organización especificada o por el usuario especificado. -
getAllAccounts - Este método obtiene la información de cuenta de todas las cuentas que se encuentran en un rango especificado. Este método solo se puede llamar mediante
Token AdminoToken Auditor. -
activateAccount - Este método activa una cuenta de usuario. Este método solo puede ser llamado por un
Token AdminoOrg Adminde la organización especificada. -
suspendAccount - Este método suspende una cuenta de usuario. Para eliminar una cuenta, el saldo de la cuenta debe ser cero. Este método solo puede ser llamado por un
Token AdminoOrg Adminde la organización especificada. -
setMaxDailyAmount - Este método define la cantidad máxima de tokens que se pueden usar en transacciones diariamente. Este método solo puede ser llamado por un
Token AdminoOrg Adminde la organización especificada. -
setMaxDailyTransactionCount - Este método define el número máximo de transacciones que se pueden completar diariamente. Este método solo puede ser llamado por un
Token AdminoOrg Adminde la organización especificada.
Métodos para la gestión de administradores
-
addTokenAdmin - Este método agrega un usuario como
Token Admin. Este método solo se puede llamar medianteToken Admin. -
removeTokenAdmin - Este método elimina un usuario como
Token Admin. Este método solo se puede llamar medianteToken Admin. -
getAllTokenAdmins - Este método devuelve una lista de todos los usuarios que son
Token Admin. Este método solo puede ser llamado porToken AdminoToken Auditor. -
isTokenAdmin - Este método comprueba si el usuario especificado es un
Token Admin. Este método solo se puede llamar medianteToken Admin,Token Auditor,Org AdminoOrg Auditor. -
addOrgAdmin - Este método agrega un usuario como
Org Admin. Este método solo puede ser llamado por unToken AdminoOrg Adminde la organización especificada. -
removeOrgAdmin - Este método elimina un usuario como
Org Admin. Este método solo puede ser llamado por unToken AdminoOrg Adminde la organización especificada. -
getAllOrgAdmins - Este método devuelve una lista de todos los usuarios que son
Org Admin. Este método solo puede ser llamado porToken Admin,Token Auditor,Org AdminoOrg Auditor. -
isOrgAdmin - Este método comprueba si el usuario especificado es un
Org Admin. Este método solo se puede llamar medianteToken Admin,Token Auditor,Org AdminoOrg Auditor.
Métodos para la gestión de auditor
-
addTokenAuditor - Este método agrega un usuario como
Token Auditor. Este método solo se puede llamar medianteToken Admin. -
removeTokenAuditor - Este método elimina un usuario como
Token Auditor. Este método solo se puede llamar medianteToken Admin. -
getAllTokenAuditors - Este método devuelve una lista de todos los usuarios que son
Token Auditor. Este método solo puede ser llamado porToken AdminoToken Auditor. -
isTokenAuditor - Este método comprueba si el usuario especificado es un
Token Auditor. Este método puede ser llamado por cualquier usuario. -
addOrgAuditor - Este método agrega un usuario como
Org Auditor. Este método solo puede ser llamado por unToken AdminoOrg Adminde la organización especificada. -
removeOrgAuditor - Este método elimina un usuario como
Org Auditor. Este método solo puede ser llamado por unToken AdminoOrg Adminde la organización especificada. -
getAllOrgAuditors - Este método devuelve una lista de todos los usuarios que son
Org Auditor. Este método solo puede ser llamado porToken Admin,Token Auditor,Org AdminoOrg Auditor. -
isOrgAuditor - Este método comprueba si el usuario especificado es un
Org Auditor. Este método puede ser llamado por cualquier usuario.
Métodos para la gestión de roles
-
addRole - Este método agrega un rol a un usuario especificado. Este método solo puede ser llamado por un
Token AdminoOrg Adminde la organización especificada. -
removeRole - Este método elimina un rol de un usuario especificado. Este método solo puede ser llamado por un
Token AdminoOrg Adminde la organización especificada. -
accountHasRole - Este método comprueba si un usuario tiene un rol especificado. Este método puede ser llamado por cualquier usuario.
Métodos de contrato de token ERC-20
Métodos para la Gestión de Configuración de Token
-
__ERC20Token_init - Este método se llama cuando se despliega el contrato de token. Este método solo se puede llamar mediante
Token Admin. -
initializeERC20Token - Este método inicializa un token ERC-20. Este método solo se puede llamar mediante
Token Admin. -
getToken - Este método obtiene detalles para un token. Este método solo se puede llamar mediante
Token Admin,Token Auditor,Org AdminoOrg Auditor. -
decimals - Este método obtiene el valor decimal para un token. Este método solo se puede llamar mediante
Token Admin,Token Auditor,Org AdminoOrg Auditor.
-
__ERC20Token_init - Este método se llama cuando se despliega el contrato de token. Este método solo se puede llamar mediante
Token Admin. -
initializeERC20Token - Este método inicializa un token ERC-20. Este método solo se puede llamar mediante
Token Admin. -
getToken - Este método obtiene detalles para un token. Este método solo se puede llamar mediante
Token Admin,Token Auditor,Org AdminoOrg Auditor. -
cap - Este método obtiene el suministro máximo de token (cap). Este método solo se puede llamar mediante
Token Admin,Token Auditor,Org AdminoOrg Auditor. -
balanceOf - Este método obtiene el saldo de token para el usuario especificado. Este método solo puede ser llamado por
Token Admin,Token Auditor,Org Admin,Org Auditoro por el usuario especificado.
-
mint - Este método crea (minte) tokens. Cualquier usuario con el rol minter puede llamar a este método.
-
batchMint - Este método crea (minuta) tokens para más de un usuario a la vez. Cualquier usuario con el rol minter puede llamar a este método.
-
requestMint - Este método puede ser llamado por un minter para enviar una solicitud al notario para crear una cantidad especificada de tokens.
-
approveMint - Este método puede ser llamado por un notario para aprobar una solicitud de acuñación.
-
rejectMint - Este método puede ser llamado por un notario para rechazar una solicitud de acuñación.
Gestión de comportamiento de token - Comportamiento que se puede grabar
-
burn - Este método desactiva (quema) los tokens. Este método puede ser llamado por cualquier usuario con el rol de quemador.
-
batchBurn - Este método quema tokens para más de un usuario a la vez. Este método puede ser llamado por cualquier usuario con el rol de quemador.
-
requestBurn - Este método puede ser llamado por un quemador para enviar una solicitud al notario para quemar una cantidad especificada de tokens.
-
approveBurn - Este método puede ser llamado por un notario para aprobar una solicitud de grabación.
-
rejectBurn - Este método puede ser llamado por un notario para rechazar una solicitud de grabación.
Gestión de comportamiento de token - Comportamiento transferible
-
transfer - Este método transfiere tokens a un usuario especificado. Cualquier usuario con tokens puede llamar a este método.
-
batchTransfer - Este método transfiere tokens a una lista especificada de usuarios. Cualquier usuario con tokens puede llamar a este método.
Gestión de comportamiento de token - Comportamiento delegable
-
allowance - Este método delega el gasto de token a un usuario especificado. Cualquier usuario con tokens puede llamar a este método.
-
approve - Este método aprueba la cantidad de tokens para un gastador delegado especificado. Cualquier usuario con tokens puede llamar a este método.
-
transferFrom - Los gastadores delegados utilizan este método para transferir tokens.
Gestión de comportamiento de token - Comportamiento utilizable
-
isPaused - Este método comprueba si el contrato está en pausa. Este método solo se puede llamar mediante
Token Admin,Token Auditor,Org AdminoOrg Auditor. -
pause - Este método pausa el contrato. Este método solo se puede llamar mediante
Token Admin. -
unpause - Este método reanuda el contrato. Este método solo se puede llamar mediante
Token Admin.
Gestión de comportamiento de token - Comportamiento retenible
-
hold - Este método crea una retención en nombre del propietario del token. Cualquier usuario con tokens puede llamar a este método.
-
executeHold - Este método aprueba una petición de retención. Este método sólo puede ser llamado por el notario previamente especificado.
-
releaseHold - Este método rechaza una solicitud de retención. Este método sólo puede ser llamado por el notario previamente especificado.
-
getOnHoldBalanceWithOperationId - Este método devuelve el saldo retenido para un ID de operación especificado. Este método puede ser llamado por un
Token AdminoToken Auditor,Org AdminoOrg Auditorde la organización especificada, o por un participante de la transacción (emisor, destinatario, notario). -
getAccountOnHoldBalance - Este método devuelve el saldo retenido de una cuenta especificada. Este método puede ser llamado por un
Token AdminoToken Auditor,Org AdminoOrg Auditorde la organización especificada, o por un participante de la transacción (emisor, destinatario, notario).
ERC-1155 Métodos de contrato de cuenta
Métodos para la gestión de cuentas
-
createAccount - Este método crea una cuenta para un usuario especificado. Las cuentas realizan un seguimiento del saldo de token de un usuario y se deben crear para todos los usuarios que tendrán tokens en cualquier momento. Este método solo se puede llamar mediante
Token Admin. -
deleteAccount - Este método suprime la cuenta de un usuario especificado. Una cuenta solo se puede suprimir si el saldo del token es cero. Este método solo se puede llamar mediante
Token Admin. -
getAccountStatus - Este método obtiene el estado actual de la cuenta especificada. Este método solo lo puede llamar un
Token Admino el usuario especificado. -
getAccountByAddress - Este método obtiene la información de cuenta de un usuario especificado. Este método solo lo puede llamar un
Token Admino el usuario especificado. -
getAllAccounts - Este método obtiene la información de cuenta de todas las cuentas que se encuentran en un rango especificado. Este método solo se puede llamar mediante
Token Admin. -
activateAccount - Este método activa una cuenta de usuario. Este método solo se puede llamar mediante
Token Admin. -
suspendAccount - Este método suspende una cuenta de usuario. Para eliminar una cuenta, el saldo de la cuenta debe ser cero. Este método solo se puede llamar mediante
Token Admin.
Métodos para la gestión de administradores
-
addTokenAdmin - Este método agrega un usuario como
Token Admin. Este método solo se puede llamar medianteToken Admin. -
removeTokenAdmin - Este método elimina un usuario como
Token Admin. Este método solo se puede llamar medianteToken Admin. -
getAllTokenAdmins - Este método devuelve una lista de todos los usuarios que son
Token Admin. Este método solo puede ser llamado porToken Admin. -
isTokenAdmin - Este método comprueba si el usuario especificado es un
Token Admin. Este método solo se puede llamar medianteToken Admin.
Métodos para la gestión de roles
-
addRole - Este método agrega un rol a un usuario especificado. Este método solo se puede llamar mediante
Token Admin. -
removeRole - Este método elimina un rol de un usuario especificado. Este método solo puede ser llamado por un
Token AdminoOrg Adminde la organización especificada. -
accountHasRole - Este método comprueba si un usuario tiene un rol especificado. Este método puede ser llamado por cualquier usuario.
-
addTokenSysRole - Este método agrega el rol
TOKEN_SYS_VAULT_ROLEa un usuario especificado. Este método solo se puede llamar medianteToken Admin. -
removeTokenSysRole - Este método elimina el rol
TOKEN_SYS_VAULT_ROLEde un usuario especificado. Este método solo se puede llamar medianteToken Admin. -
transferTokenSysRole - Este método transfiere el rol
TOKEN_SYS_VAULT_ROLEde un usuario a otro. Este método solo se puede llamar medianteToken Admin.
ERC-1155 Métodos de contrato de token
Métodos para la Gestión de Configuración de Token
-
__ERC1155Token_init - Este método se llama cuando se despliega el contrato de token. Este método solo se puede llamar mediante
Token Admin. -
saveNFTClass - Este método guarda la información de clase de NFT en la contabilidad. Este método solo se puede llamar mediante
Token Admin. -
createNonFungibleToken - Este método acuña NFT. Este método solo puede ser llamado por un usuario con el rol minter.
-
createFungibleToken - Este método se llama cuando se despliega el contrato de token. Este método solo se puede llamar mediante
Token Admin. -
getTokenById - Este método obtiene detalles para un token. Este método solo lo puede llamar un propietario de token o
Token Admin. -
geTokenDecimals - Este método obtiene el valor decimal para un token. Este método solo se puede llamar mediante
Token Admin.
-
tokenIdOf - Este método obtiene el ID de un token. Este método solo se puede llamar mediante
Token Admin. -
balanceOf - Este método obtiene el saldo de token para el usuario especificado. Este método solo puede ser llamado por un
Token Admino por el propietario del token. -
balanceOfBatch - Este método obtiene el saldo de token para una lista de usuarios. Este método solo puede ser llamado por un
Token Admino por el propietario del token. -
exists - Este método comprueba si existe un token especificado. Este método solo se puede llamar mediante
Token Admin. -
totalSupply - Este método comprueba el suministro total de todos los tokens del contrato. Este método solo se puede llamar mediante
Token Admin. -
totalSupply - Este método comprueba el suministro total de un token especificado en el contrato. Este método solo se puede llamar mediante
Token Admin.
Gestión de comportamiento de token - Comportamiento que se puede grabar
-
burnBatch - Este método destruye (quema) los tokens ERC-1155 en modo por lotes. Se deben inicializar los tokens. Este método puede ser llamado por cualquier usuario con el rol de quemador.
-
burnNFT - Este método destruye (quema) un token no fungible. Se deben inicializar los tokens. Este método puede ser llamado por cualquier usuario con el rol de quemador.
Gestión de comportamiento de token - Comportamiento transferible
-
safeTransferFrom - Este método transfiere tokens de un remitente a un receptor. Este método puede ser llamado por cualquier usuario que tenga tokens.
-
safeBatchTransferFrom - Este método transfiere tokens de un remitente a un receptor. Este método puede ser llamado por cualquier usuario que tenga tokens.
Gestión de comportamiento de token - Comportamiento delegable
-
setApprovalForAll - Este método otorga o revoca el permiso para que un operador transfiera los tokens del emisor de llamada, según el parámetro
approved. Este método puede ser llamado por cualquier usuario que tenga tokens. -
isApprovedForAll - Este método comprueba si un operador está aprobado para transferir tokens para una cuenta especificada. Este método puede ser llamado por cualquier usuario que tenga tokens.
Gestión de comportamiento de token - Comportamiento utilizable
-
paused - Este método comprueba si el contrato está en pausa. Este método puede ser llamado por cualquier usuario.
-
pause - Este método pausa el contrato. Este método solo se puede llamar mediante
Token Admin. -
unpause - Este método reanuda un contrato en pausa. Este método solo se puede llamar mediante
Token Admin.
Gestión de comportamiento de token - Comportamiento bloqueable