Beispiel #1
0
def Expire(node,
           second=None,
           minute=None,
           hour=None,
           day=None,
           day_of_week=None,
           week=None,
           month=None,
           maxsize=128):
    def _interval(node=node):
        return node()

    # make new node
    ret = node._gennode(
        'Expire[{}-{}-{}-{}-{}-{}-{}-maxsize:{}](-'.format(
            second, minute, hour, day, day_of_week, week, month, maxsize) +
        node._name + ')', _interval, [node])

    # stash original recompute
    ret._orig_recompute = ret._recompute

    # make recompute run on expire
    ret._recompute = expire(second=second,
                            minute=minute,
                            hour=hour,
                            day=day,
                            day_of_week=day_of_week,
                            week=week,
                            month=month,
                            maxsize=maxsize)(ret._recompute)
    return ret
Beispiel #2
0
def Expire(
    node,
    second=None,
    minute=None,
    hour=None,
    day=None,
    day_of_week=None,
    week=None,
    month=None,
    maxsize=128,
):
    def _interval(data):
        return data

    # make new node
    ret = node._gennode(
        "Expire[{}-{}-{}-{}-{}-{}-{}-maxsize:{}]({})".format(
            second, minute, hour, day, day_of_week, week, month, maxsize,
            node._name),
        _interval,
        [node],
    )

    # stash original recompute
    ret._orig_call = ret._call

    # make recompute run on expire
    ret._call = expire(
        second=second,
        minute=minute,
        hour=hour,
        day=day,
        day_of_week=day_of_week,
        week=week,
        month=month,
        maxsize=maxsize,
    )(ret._call)
    return ret
Beispiel #3
0
 def _wrapper(foo):
     temporal_args['persistent'] = os.path.join(_PYEX_CACHE_FOLDER,
                                                foo.__name__)
     return expire(**temporal_args)(foo)
Beispiel #4
0
 def _wrapper(foo):
     if temporal_args.get("persistent", False):
         temporal_args["persistent"] = os.path.join(
             _PYEX_CACHE_FOLDER, foo.__name__
         )
     return expire(**temporal_args)(foo)