Refactoring: Moved last check parameters from unsorted.py to dedicated modules (CMK...
[check_mk.git] / cmk / gui / plugins / wato / check_parameters / domino_tasks.py
blob0601be7532a10ecb1c66470e146b7e79ec14e098
1 #!/usr/bin/python
2 # -*- encoding: utf-8; py-indent-offset: 4 -*-
3 # +------------------------------------------------------------------+
4 # | ____ _ _ __ __ _ __ |
5 # | / ___| |__ ___ ___| | __ | \/ | |/ / |
6 # | | | | '_ \ / _ \/ __| |/ / | |\/| | ' / |
7 # | | |___| | | | __/ (__| < | | | | . \ |
8 # | \____|_| |_|\___|\___|_|\_\___|_| |_|_|\_\ |
9 # | |
10 # | Copyright Mathias Kettner 2014 mk@mathias-kettner.de |
11 # +------------------------------------------------------------------+
13 # This file is part of Check_MK.
14 # The official homepage is at http://mathias-kettner.de/check_mk.
16 # check_mk is free software; you can redistribute it and/or modify it
17 # under the terms of the GNU General Public License as published by
18 # the Free Software Foundation in version 2. check_mk is distributed
19 # in the hope that it will be useful, but WITHOUT ANY WARRANTY; with-
20 # out even the implied warranty of MERCHANTABILITY or FITNESS FOR A
21 # PARTICULAR PURPOSE. See the GNU General Public License for more de-
22 # tails. You should have received a copy of the GNU General Public
23 # License along with GNU Make; see the file COPYING. If not, write
24 # to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
25 # Boston, MA 02110-1301 USA.
27 from cmk.gui.i18n import _
28 from cmk.gui.valuespec import (
29 Alternative,
30 Dictionary,
31 FixedValue,
32 Integer,
33 RegExp,
34 TextAscii,
35 Transform,
37 from cmk.gui.plugins.wato import (
38 RulespecGroupCheckParametersApplications,
39 register_check_parameters,
42 register_check_parameters(
43 RulespecGroupCheckParametersApplications,
44 "domino_tasks",
45 _("Lotus Domino Tasks"),
46 Dictionary(
47 elements=[
49 "process",
50 Alternative(
51 title=_("Name of the task"),
52 style="dropdown",
53 elements=[
54 TextAscii(
55 title=_("Exact name of the task"),
56 size=50,
58 Transform(
59 RegExp(
60 size=50,
61 mode=RegExp.prefix,
63 title=_("Regular expression matching tasks"),
64 help=_("This regex must match the <i>beginning</i> of the complete "
65 "command line of the task including arguments"),
66 forth=lambda x: x[1:], # remove ~
67 back=lambda x: "~" + x, # prefix ~
69 FixedValue(
70 None,
71 totext="",
72 title=_("Match all tasks"),
75 match=lambda x: (not x and 2) or (x[0] == '~' and 1 or 0))),
76 ("warnmin",
77 Integer(
78 title=_("Minimum number of matched tasks for WARNING state"),
79 default_value=1,
80 )),
81 ("okmin",
82 Integer(
83 title=_("Minimum number of matched tasks for OK state"),
84 default_value=1,
85 )),
86 ("okmax",
87 Integer(
88 title=_("Maximum number of matched tasks for OK state"),
89 default_value=99999,
90 )),
91 ("warnmax",
92 Integer(
93 title=_("Maximum number of matched tasks for WARNING state"),
94 default_value=99999,
95 )),
97 required_keys=['warnmin', 'okmin', 'okmax', 'warnmax', 'process'],
99 TextAscii(
100 title=_("Name of service"),
101 help=_("This name will be used in the description of the service"),
102 allow_empty=False,
103 regex="^[a-zA-Z_0-9 _.-]*$",
104 regex_error=_("Please use only a-z, A-Z, 0-9, space, underscore, "
105 "dot and hyphen for your service description"),
107 match_type="dict",
108 has_inventory=False)