Example #1
0
class CronParameter(AbstractParameter):
    """ This parameter  simply provides a text entry
    This is the simplest exemple for to see how you can extend Parameter
    """

    def __init__(self, log=None, trigger=None):
        AbstractParameter.__init__(self, log, trigger)
        self.set_type("string")
        self.add_expected_entry("cron", "string", "Cron timed trigger")
        self.expr = None

    def fill(self, params):
        AbstractParameter.fill(self, params)
        params = self.get_parameters()
        if "cron" in params:
            self.expr = CronExpression(params["cron"])
        else:
            self.expr = None

    def evaluate(self):
        """ Return string, or none if no string entered yet
        """
        if self.expr:
            return self.expr.check_trigger_now()
        else:
            return None
Example #2
0
class CronParameter(AbstractParameter):
    """ This parameter  simply provides a text entry
    This is the simplest exemple for to see how you can extend Parameter
    """
    def __init__(self, log=None, trigger=None):
        AbstractParameter.__init__(self, log, trigger)
        self.set_type("string")
        self.add_expected_entry("cron", "string", "Cron timed trigger")
        self.expr = None

    def fill(self, params):
        AbstractParameter.fill(self, params)
        params = self.get_parameters()
        if "cron" in params:
            self.expr = CronExpression(params["cron"])
        else:
            self.expr = None

    def evaluate(self):
        """ Return string, or none if no string entered yet
        """
        if self.expr:
            return self.expr.check_trigger_now()
        else:
            return None
Example #3
0
def scenario_croncheckdate():
    data = {}
    try :
        for k, v in request.args.iteritems():
            data[k] = v
        data['date'] = tuple ([int(i) for i in data['date'].split(',')])
        try :
            job = CronExpression(data['cronrule'])
            if not job.isValidate() :
                return jsonify(result='error', reply="", content = {'error': gettext(u"Cron rule is not valid.")})
            now = job.check_trigger_now()
            istriggered = job.check_trigger(data['date'])
        except :
            print(traceback.format_exc())
            return jsonify(result='error', reply="", content = {'error': gettext(u"Error in cron rule, can't trigger it.")})
        return jsonify(result='success', reply="", content = {'error': "", 'result': {'now': now, 'date': istriggered}})
    except :
        print(traceback.format_exc())
        jsonify(result='error', reply="", content = {'error': gettext(u"Cron checking, bad request parameters.")})