hopr_chain_indexer/
constants.rs

1use std::time::Duration;
2
3pub const LOGS_SNAPSHOT_DOWNLOADER_MAX_SIZE: u64 = 2 * 1024 * 1024 * 1024; // 2GB max
4pub const LOGS_SNAPSHOT_DOWNLOADER_TIMEOUT: Duration = Duration::from_secs(1800); // 30 minutes
5pub const LOGS_SNAPSHOT_DOWNLOADER_MAX_RETRIES: u32 = 3;
6
7pub mod topics {
8    use alloy::{primitives::B256, sol_types::SolEvent};
9    use hopr_bindings::{
10        hoprannouncementsevents::HoprAnnouncementsEvents::{AddressAnnouncement, KeyBinding, RevokeAnnouncement},
11        hoprchannels::HoprChannels::LedgerDomainSeparatorUpdated,
12        hoprchannelsevents::HoprChannelsEvents::{
13            ChannelBalanceDecreased, ChannelBalanceIncreased, ChannelClosed, ChannelOpened, DomainSeparatorUpdated,
14            OutgoingChannelClosureInitiated, TicketRedeemed,
15        },
16        hoprnetworkregistryevents::HoprNetworkRegistryEvents::{
17            Deregistered, DeregisteredByManager, EligibilityUpdated, NetworkRegistryStatusUpdated, Registered,
18            RegisteredByManager, RequirementUpdated,
19        },
20        hoprnodesaferegistryevents::HoprNodeSafeRegistryEvents::{DergisteredNodeSafe, RegisteredNodeSafe},
21        hoprticketpriceoracleevents::HoprTicketPriceOracleEvents::TicketPriceUpdated,
22        hoprwinningprobabilityoracleevents::HoprWinningProbabilityOracleEvents::WinProbUpdated,
23    };
24
25    pub fn channel() -> Vec<B256> {
26        vec![
27            ChannelBalanceDecreased::SIGNATURE_HASH,
28            ChannelBalanceIncreased::SIGNATURE_HASH,
29            ChannelClosed::SIGNATURE_HASH,
30            ChannelOpened::SIGNATURE_HASH,
31            OutgoingChannelClosureInitiated::SIGNATURE_HASH,
32            TicketRedeemed::SIGNATURE_HASH,
33            DomainSeparatorUpdated::SIGNATURE_HASH,
34            LedgerDomainSeparatorUpdated::SIGNATURE_HASH,
35        ]
36    }
37
38    pub fn network_registry() -> Vec<B256> {
39        vec![
40            DeregisteredByManager::SIGNATURE_HASH,
41            Deregistered::SIGNATURE_HASH,
42            EligibilityUpdated::SIGNATURE_HASH,
43            NetworkRegistryStatusUpdated::SIGNATURE_HASH,
44            RegisteredByManager::SIGNATURE_HASH,
45            Registered::SIGNATURE_HASH,
46            RequirementUpdated::SIGNATURE_HASH,
47        ]
48    }
49
50    pub fn announcement() -> Vec<B256> {
51        vec![
52            AddressAnnouncement::SIGNATURE_HASH,
53            KeyBinding::SIGNATURE_HASH,
54            RevokeAnnouncement::SIGNATURE_HASH,
55        ]
56    }
57
58    pub fn node_safe_registry() -> Vec<B256> {
59        vec![
60            RegisteredNodeSafe::SIGNATURE_HASH,
61            DergisteredNodeSafe::SIGNATURE_HASH,
62            hopr_bindings::hoprnodesaferegistryevents::HoprNodeSafeRegistryEvents::DomainSeparatorUpdated::SIGNATURE_HASH,
63        ]
64    }
65
66    pub fn ticket_price_oracle() -> Vec<B256> {
67        vec![TicketPriceUpdated::SIGNATURE_HASH]
68    }
69
70    pub fn winning_prob_oracle() -> Vec<B256> {
71        vec![WinProbUpdated::SIGNATURE_HASH]
72    }
73
74    pub fn module_implementation() -> Vec<B256> {
75        vec![]
76    }
77}