base.py (580B)
1 # standard imports 2 import os 3 import logging 4 import json 5 6 # external imports 7 from hexathon import strip_0x 8 from chainsyncer.filter import SyncFilter 9 10 logg = logging.getLogger(__name__) 11 12 13 class RuledFilter(SyncFilter): 14 15 def __init__(self, rules_filter=None, store=None): 16 self.rules_filter = rules_filter 17 18 19 def filter(self, conn, block, tx, **kwargs): 20 if self.rules_filter != None: 21 if not self.rules_filter.apply_rules(tx): 22 logg.debug('rule match failed for tx {}'.format(tx.hash)) 23 return True 24 return False