31 lines
1.1 KiB
Solidity
31 lines
1.1 KiB
Solidity
// contracts/NFTBridgeShutdown.sol
|
|
// SPDX-License-Identifier: Apache 2
|
|
|
|
pragma solidity ^0.8.0;
|
|
|
|
import "./NFTBridgeGovernance.sol";
|
|
|
|
import "@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol";
|
|
|
|
/**
|
|
* @title BridgeShutdown
|
|
* @notice This contract implements a stripped-down version of the NFT bridge
|
|
* asset transfer protocol that is a drop-in replacement for the
|
|
* NFTBridge implementation contract, effectively disabling all
|
|
* non-governance functionality.
|
|
* In particular, sending and receiving assets is disabled, but the
|
|
* contract remains upgradeable through governance.
|
|
*/
|
|
contract NFTBridgeShutdown is NFTBridgeGovernance {
|
|
|
|
function initialize() public {
|
|
address implementation = ERC1967Upgrade._getImplementation();
|
|
setInitialized(implementation);
|
|
|
|
// this function needs to be exposed for an upgrade to pass
|
|
// NOTE: leave this function empty! It specifically does not have an
|
|
// 'initializer' modifier, to allow this contract to be upgraded to
|
|
// multiple times.
|
|
}
|
|
}
|