@crochet.wait_for(timeout=None)
@defer.inlineCallbacks
def filter_prune(line):
    # Delete filtered items from datafile
    print ''
    print 'Currently active filters:'
    for f in pappyproxy.pappy.main_context.active_filters:
        print '> %s' % f.filter_string

    # We copy so that we're not removing items from a set we're iterating over
    act_reqs = yield pappyproxy.pappy.main_context.get_reqs()
    inact_reqs = Request.cache.all_ids.difference(set(act_reqs))
    inact_reqs = inact_reqs.difference(set(Request.cache.unmangled_ids))
    message = 'This will delete %d/%d requests. You can NOT undo this!! Continue?' % (len(inact_reqs), (len(inact_reqs) + len(act_reqs)))
    if not confirm(message, 'n'):
        defer.returnValue(None)
    
    for reqid in inact_reqs:
        try:
            req = yield pappyproxy.http.Request.load_request(reqid)
            yield req.deep_delete()
        except PappyException as e:
            print e
    print 'Deleted %d requests' % len(inact_reqs)
    defer.returnValue(None)

###############
## Plugin hooks
Interval between two samples.
dataset/ETHPy150Open roglew/pappy-proxy/pappyproxy/plugins/filter.py/filter_prune--crossover with--dataset/ETHPy150Open NeuralEnsemble/python-neo/neo/core/analogsignal.py/BaseAnalogSignal.sampling_period