Metadata
CoreMetadataModule
CoreMetadataModule은 Story 내의 IP 자산에 대한 핵심 메타데이터를 관리합니다. IP 자산의 메타데이터 속성을 설정하고 업데이트할 수 있으며, 메타데이터를 동결하여 추가 변경을 방지할 수 있습니다.
상태 변수
name
모듈의 이름을 반환합니다.
함수
initialize
CoreMetadataModule 계약을 초기화합니다.
Parameters:
accessManager
: 프로토콜 관리자 역할 계약의 주소입니다.
name
모듈의 이름을 반환합니다.
Returns:
string
: 모듈의 이름입니다.
updateNftTokenURI
IP 자산이 연결된 IP NFT에서 최신 TokenURI를 검색하여 IP 자산의 nftTokenURI를 업데이트합니다.
Parameters:
ipId
: IP 자산의 주소입니다.nftMetadataHash
: NFT의 메타데이터를 나타내는 bytes32 해시입니다. 이 메타데이터는 IP 자산과 연관되어 있으며 NFT의 TokenURI를 통해 접근할 수 있습니다. 메타데이터를 사용할 수 없음을 나타내려면 bytes32(0)를 사용하세요.
setMetadataURI
IP 자산의 metadataURI를 설정합니다.
Parameters:
ipId
: IP 자산의 주소입니다.metadataURI
: IP 자산에 설정할 metadataURI입니다.metadataHash
: metadataURI에 있는 메타데이터의 해시입니다. 메타데이터를 사용할 수 없음을 나타내려면 bytes32(0)를 사용하세요.
setAll
IP 자산의 모든 핵심 메타데이터를 설정합니다.
Parameters:
ipId
: IP 자산의 주소입니다.metadataURI
: IP 자산에 설정할 metadataURI입니다.metadataHash
: metadataURI에 있는 메타데이터의 해시입니다. 메타데이터를 사용할 수 없음을 나타내려면 bytes32(0)를 사용하세요.nftMetadataHash
: NFT의 메타데이터를 나타내는 bytes32 해시입니다. 이 메타데이터는 IP 자산과 연관되어 있으며 NFT의 TokenURI를 통해 접근할 수 있습니다. 메타데이터를 사용할 수 없음을 나타내려면 bytes32(0)를 사용하세요.
freezeMetadata
IP 자산의 모든 메타데이터를 변경 불가능하게 만듭니다.
Parameters:
ipId
: IP 자산의 주소입니다.
isMetadataFrozen
IP 자산의 메타데이터가 변경 불가능한지 확인합니다.
Parameters:
ipId
: IP 자산의 주소입니다.
Returns:
bool
: 메타데이터가 동결되었으면 true, 그렇지 않으면 false입니다.
supportsInterface
IERC165 인터페이스를 구현합니다.
Parameters:
interfaceId
: 인터페이스 식별자입니다.
Returns:
bool
: 계약이 인터페이스를 지원하면 true, 그렇지 않으면 false입니다.