This patch is preparatory for the OTP CLI patch.
>From 2e1f6213f9516c282857bc9138262a7501f3976f Mon Sep 17 00:00:00 2001
From: Nathaniel McCallum <npmccal...@redhat.com>
Date: Mon, 30 Sep 2013 12:45:37 -0400
Subject: [PATCH] Add IntEnum parameter to ipalib

---
 ipalib/__init__.py   |  2 +-
 ipalib/parameters.py | 14 ++++++++++++++
 2 files changed, 15 insertions(+), 1 deletion(-)

diff --git a/ipalib/__init__.py b/ipalib/__init__.py
index d822ba5956d6afb6ef6d88063f8359926e47016b..ab89ab77ec94603d242e56436021c9b6ed8663cb 100644
--- a/ipalib/__init__.py
+++ b/ipalib/__init__.py
@@ -886,7 +886,7 @@ from frontend import Command, LocalOrRemote, Updater, Advice
 from frontend import Object, Method, Property
 from crud import Create, Retrieve, Update, Delete, Search
 from parameters import DefaultFrom, Bool, Flag, Int, Decimal, Bytes, Str, IA5Str, Password, DNParam, DeprecatedParam
-from parameters import BytesEnum, StrEnum, AccessTime, File
+from parameters import BytesEnum, StrEnum, IntEnum, AccessTime, File
 from errors import SkipPluginModule
 from text import _, ngettext, GettextFactory, NGettextFactory
 
diff --git a/ipalib/parameters.py b/ipalib/parameters.py
index ab4b8321686bd88ad122a37ff289a0153e65ea21..fbcb87537ba662763a00e12178d424a8718baa8a 100644
--- a/ipalib/parameters.py
+++ b/ipalib/parameters.py
@@ -1567,6 +1567,20 @@ class StrEnum(Enum):
     type = unicode
 
 
+class IntEnum(Enum):
+    """
+    Enumerable for integer data (stored in the ``int`` type).
+    """
+
+    type = int
+
+    def _convert_scalar(self, value, index=None):
+        return Int._convert_scalar(self, value, index=index)
+
+    def _validate_scalar(self, value, index=None):
+        Int._validate_scalar(self, value, index=index)
+
+
 class Any(Param):
     """
     A parameter capable of holding values of any type. For internal use only.
-- 
1.8.3.1

_______________________________________________
Freeipa-devel mailing list
Freeipa-devel@redhat.com
https://www.redhat.com/mailman/listinfo/freeipa-devel

Reply via email to