Skip to content

Commit

Permalink
Create ChannelValidator.sol
Browse files Browse the repository at this point in the history
  • Loading branch information
KOSASIH authored Oct 20, 2024
1 parent b938990 commit 3160e9e
Showing 1 changed file with 19 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import "./StateChannel.sol";

contract ChannelValidator {
event ChannelValidated(address indexed channel, address indexed participant);

function validateChannel(StateChannel _channel) external {
require(!_channel.isOpen(), "Channel is still open");
emit ChannelValidated(address(_channel), msg.sender);
}

function validateFinalBalances(StateChannel _channel, uint256 _finalBalanceA, uint256 _finalBalanceB) external {
require(!_channel.isOpen(), "Channel is still open");
require(_finalBalanceA + _finalBalanceB == address(_channel).balance, "Invalid final balances");
emit ChannelValidated(address(_channel), msg.sender);
}
}

0 comments on commit 3160e9e

Please sign in to comment.