Trigger and Function
The deposit_to_l2 job is triggered when an deposit-related transaction occurs or an event is produced. Specifically:
bridgeETHTo: When the transaction content involves depositing WETH to a specific L2 chain through a contract
depositERC20: When the transaction content involves depositing ERC20 to a specific L2 chain through a contract
def parse_deposit_transaction_function(
transactions: List[Transaction],
contract_set: set,
chain_mapping: dict,
sig_function_mapping: dict,
sig_parse_mapping: dict,
) -> List[TokenDepositTransaction]:
deposit_tokens = []
for transaction in transactions:
if transaction.to_address in contract_set:
input_sig = transaction.input[0:10]
if input_sig in sig_function_mapping:
deposit_transaction = sig_parse_mapping[input_sig](
transaction=transaction,
chain_mapping=chain_mapping,
function=sig_function_mapping[input_sig],
)
deposit_tokens.append(deposit_transaction)
return deposit_tokensand the function to extract the deposit info from the transaction input data:
Meanwhile, after deposit_to_l2_job is triggered, the AddressTokenDeposit value is continuously aggregated by TokenDepositTransaction:
Last updated