Go Methoden für ERC-1155 NFT Locking
Blockchain App Builder generiert automatisch Methoden, mit denen Sie nicht fungible Token sperren können, die den erweiterten ERC-1155-Standard verwenden.
Ein gesperrtes Token kann nicht gebrannt oder an andere Benutzer übertragen werden. Alle anderen Eigenschaften, wie Status, Eigentümer und Historie des Tokens, werden beibehalten. Sie können die NFT-Sperrfunktionalität verwenden, wenn Sie ein Token in ein anderes Blockchain-Netzwerk wie Ethereum oder Polygon übertragen.
Bevor Sie NFTs sperren können, müssen Sie einem Benutzer die Vault-Managerrolle zuweisen. Der Vault-Manager ist ein spezieller Rollentyp, eine TokenSys-Rolle. TokenSys-Rollen unterscheiden sich von Asset-basierten Rollen wie Burner, Minter und Notar sowie von administrativen Rollen wie Token Admin und Org Admin. Derzeit unterstützt Blockchain App Builder die Rolle vault TokenSys. Der einzelne Benutzer mit der Rolle vault für einen Chaincode ist der Vault-Manager des Chaincodes und kann gesperrte NFTs verwalten.
- Erstellen Sie ein nicht fungibles Token mit dem sperrbaren Verhalten.
- Verwenden Sie die Methode
AddTokenSysRole, um einem Benutzer, dem Vault-Manager, die Rollevaultzu erteilen. - Rufen Sie die Methode
LockNFTauf, um ein nicht fungibles Token zu sperren, das durch die Token-ID angegeben wird.
TokenSys Rollenverwaltungsmethoden
-
AddTokenSysRole - Diese Methode fügt einem angegebenen Benutzer eine
TokenSys-Rolle hinzu. Diese Methode kann nur von einemToken Admindes Chaincodes aufgerufen werden. -
IsInTokenSysRole - Diese Methode gibt einen booleschen Wert zurück, der angibt, ob ein Benutzer eine angegebene
TokenSys-Rolle hat. Diese Methode kann nur von einemToken Admindes Chaincodes aufgerufen werden. -
RemoveTokenSysRole - Diese Methode entfernt eine
TokenSys-Rolle von einem angegebenen Benutzer. Diese Methode kann nur von einemToken Admindes Chaincodes aufgerufen werden. -
TransferTokenSysRole - Diese Methode überträgt eine
TokenSys-Rolle von einem Benutzer an einen anderen Benutzer. Diese Methode kann nur von einemToken Admindes Chaincodes aufgerufen werden. -
GetAccountsByTokenSysRole - Diese Methode gibt eine Liste aller Account-IDs für eine angegebene
TokenSys-Rolle zurück. Diese Methode kann nur von einemToken Admindes Chaincodes aufgerufen werden. -
GetUsersByTokenSysRole - Diese Methode gibt Benutzerinformationen für alle Benutzer mit einer angegebenen
TokenSys-Rolle zurück. Diese Methode kann nur von einemToken Admindes Chaincodes aufgerufen werden.
NFT-Sperrmethoden
-
LockNFT - Diese Methode sperrt ein angegebenes nicht fungibles Token. Um ein Token zu sperren, muss ein Benutzer mit der Rolle
TokenSysvaultvorhanden sein, der als Vault-Manager fungiert. Diese Methode kann nur vom Eigentümer des Tokens aufgerufen werden. -
IsNFTLocked - Diese Methode gibt einen booleschen Wert zurück, der angibt, ob ein angegebenes Token gesperrt ist. Diese Methode kann nur vom Tokeneigentümer, vom Vault-Manager (dem Benutzer mit der Rolle
TokenSysvault) oder von einemToken Admindes Chaincodes aufgerufen werden. -
GetAllLockedNFTs - Diese Methode gibt eine Liste aller gesperrten nicht fungiblen Token zurück. Diese Methode kann nur vom Vault-Manager (dem Benutzer mit der Rolle
TokenSysvault) oder einemToken Admindes Chaincodes aufgerufen werden. -
GetAllLockedNFTsByOrg - Diese Methode gibt eine Liste aller gesperrten nicht fungiblen Token für eine angegebene Organisation und optional einen angegebenen Benutzer zurück. Diese Methode kann nur vom Vault-Manager (dem Benutzer mit der Rolle
TokenSysvault) oder einemToken Admindes Chaincodes aufgerufen werden.