StolenNftFilterOracle.sol

Git Source

Inherits: ReservoirOracle, Owned

Author: out.eth (@outdoteth)

A contract to check that a set of NFTs are not stolen.

State Variables

TOKEN_TYPE_HASH

bytes32 private constant TOKEN_TYPE_HASH = keccak256("Token(address contract,uint256 tokenId)");

cooldownPeriod

uint256 public cooldownPeriod = 0;

validFor

uint256 public validFor = 60 minutes;

Functions

constructor

constructor() Owned(msg.sender) ReservoirOracle(0x32dA57E736E05f75aa4FaE2E9Be60FD904492726);

setCooldownPeriod

Sets the cooldown period.

function setCooldownPeriod(uint256 _cooldownPeriod) public onlyOwner;

Parameters

NameTypeDescription

_cooldownPeriod

uint256

The cooldown period.

setValidFor

Sets the valid for period.

function setValidFor(uint256 _validFor) public onlyOwner;

Parameters

NameTypeDescription

_validFor

uint256

The valid for period.

validateTokensAreNotStolen

Checks that a set of NFTs are not stolen.

function validateTokensAreNotStolen(address tokenAddress, uint256[] calldata tokenIds, Message[] calldata messages)
    public
    view;

Parameters

NameTypeDescription

tokenAddress

address

The address of the NFT contract.

tokenIds

uint256[]

The ids of the NFTs.

messages

Message[]

The messages signed by the reservoir oracle.

Last updated