[Zope-Checkins] CVS: Products/DCOracle2/DCOracle2 - DCOracle2.py:1.87

Matthew T. Kromer matt@zope.com
Mon, 13 May 2002 12:56:33 -0400


Update of /cvs-repository/Products/DCOracle2/DCOracle2
In directory cvs.zope.org:/tmp/cvs-serv17503/DCOracle2

Modified Files:
	DCOracle2.py 
Log Message:
Add patch from Collector #47, default args to stored procedures


=== Products/DCOracle2/DCOracle2/DCOracle2.py 1.86 => 1.87 ===
         self._cursor = cursor
         self._schema = schema
+        self._argList = None
+
+
+    def argList(self):
+        """ Return the arguments to a stored procedure, in a list of tuples
+            of (name, type, mode).  Mode is itself a tuple, containing
+            possible values IN, OUT, and DEFAULT.
+        """
+        if self._exec == 0: return []
+
+        if self._argList is not None: return self._argList
+
+        result = []
+
+        procdesc = self._description[3]
+
+        for arg in procdesc:
+            argDesc = arg[3]
+            result.append((arg[1], argDesc[0], argDesc[5]))
+
+        self._arglist = result
+
+        return result
 
     # Procedure calls take two "hidden" parameters, used by cursor.callproc
     # __allreturn is used to specify that ALL parameters are to be returned,