2
# This file is part of GNU Enterprise.
4
# GNU Enterprise is free software; you can redistribute it
5
# and/or modify it under the terms of the GNU General Public
6
# License as published by the Free Software Foundation; either
7
# version 2, or (at your option) any later version.
9
# GNU Enterprise is distributed in the hope that it will be
10
# useful, but WITHOUT ANY WARRANTY; without even the implied
11
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12
# PURPOSE. See the GNU General Public License for more details.
14
# You should have received a copy of the GNU General Public
15
# License along with program; see the file COPYING. If not,
16
# write to the Free Software Foundation, Inc., 59 Temple Place
17
# - Suite 330, Boston, MA 02111-1307, USA.
19
# Copyright 2000-2005 Free Software Foundation
25
# Implementation of dbdriver for use with configuration files
32
from gnue.common.datasources.drivers.Base.ResultSet import ResultSet
33
from RecordSet import Configfile_RecordSet
34
from gnue.common.apps import GDebug
37
# Configfile_ResultSet
39
class Configfile_ResultSet(ResultSet):
40
def __init__(self, dataObject, cursor=None, \
41
defaultValues={}, masterRecordSet=None):
42
ResultSet.__init__(self, dataObject, cursor, defaultValues, masterRecordSet)
43
self._recordSetClass = Configfile_RecordSet
45
GDebug.printMesg(9, 'Configfile_ResultSet created')
48
def _loadNextRecord(self):
50
# all records has to be loaded in cache during resultset initialisation
53
# load all records at once
54
for dict in self._cursor:
56
record=self._recordSetClass(parent=self,initialData=dict)
57
self._cachedRecords.append (record)
59
# increase record count by one
60
self._recordCount=self._recordCount+1
64
self._cursor=[] # after adding the values, delete them from cursor
66
# if no record returned return a zero