Skip to content

Commit dec9bde

Browse files
committed
SESPRINGPYTHONPY-70: Scrubbed database/transaction along with test cases and samples. NOTE: Previous CI failure was due to jetty issue. It happens from time to time, and is intermittent.
git-svn-id: https://src.springframework.org/svn/se-springpython-py/trunk/springpython@139 ce8fead1-4192-4296-8608-a705134b927f
1 parent ba74bf8 commit dec9bde

12 files changed

Lines changed: 395 additions & 404 deletions

File tree

samples/petclinic/cherrypy/controller.py

Lines changed: 23 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ class PetClinicController(DaoSupport):
4040

4141
def getVets(self):
4242
"""Return a list of vets from the database."""
43-
return self.databaseTemplate.query("""
43+
return self.database_template.query("""
4444
SELECT
4545
id,
4646
first_name,
@@ -50,7 +50,7 @@ def getVets(self):
5050

5151
def getOwners(self, lastName = ""):
5252
"""Return a list of owners, filtered by partial lastname."""
53-
return self.databaseTemplate.query("""
53+
return self.database_template.query("""
5454
SELECT
5555
id,
5656
first_name,
@@ -64,7 +64,7 @@ def getOwners(self, lastName = ""):
6464

6565
def getOwner(self, id):
6666
"""Return one owner."""
67-
return self.databaseTemplate.query("""
67+
return self.database_template.query("""
6868
SELECT
6969
id,
7070
first_name,
@@ -78,7 +78,7 @@ def getOwner(self, id):
7878

7979
def addOwner(self, **kwargs):
8080
"""Add an owner to the database."""
81-
rowsAffected = self.databaseTemplate.execute("""
81+
rowsAffected = self.database_template.execute("""
8282
INSERT INTO owners
8383
(first_name, last_name, address, city, telephone)
8484
VALUES
@@ -88,7 +88,7 @@ def addOwner(self, **kwargs):
8888

8989
def updateOwner(self, id, address = "", city = "", telephone = ""):
9090
"""Add an owner to the database."""
91-
rowsAffected = self.databaseTemplate.update("""
91+
rowsAffected = self.database_template.update("""
9292
UPDATE owners
9393
SET
9494
address = ?,
@@ -100,7 +100,7 @@ def updateOwner(self, id, address = "", city = "", telephone = ""):
100100

101101
def getPets(self, owner):
102102
"""Return pets belonging to a particular owner."""
103-
return self.databaseTemplate.query("""
103+
return self.database_template.query("""
104104
SELECT
105105
pets.id,
106106
pets.name,
@@ -114,7 +114,7 @@ def getPets(self, owner):
114114

115115
def getPet(self, id):
116116
"""Return pets belonging to a particular owner."""
117-
return self.databaseTemplate.query("""
117+
return self.database_template.query("""
118118
SELECT
119119
pets.id,
120120
pets.name,
@@ -127,7 +127,7 @@ def getPet(self, id):
127127

128128
def getVisits(self, pet):
129129
"""Return visits associated with a particular pet."""
130-
return self.databaseTemplate.query("""
130+
return self.database_template.query("""
131131
SELECT
132132
visits.visit_date,
133133
visits.description
@@ -138,7 +138,7 @@ def getVisits(self, pet):
138138

139139
def addPet(self, id, name, birthDate, type):
140140
"""Store a new pet in the database."""
141-
rowsAffected = self.databaseTemplate.execute("""
141+
rowsAffected = self.database_template.execute("""
142142
INSERT INTO pets
143143
(name, birth_date, type_id, owner_id)
144144
values
@@ -148,14 +148,14 @@ def addPet(self, id, name, birthDate, type):
148148

149149
def getPetTypes(self):
150150
"""Return visits associated with a particular pet."""
151-
return self.databaseTemplate.query("""
151+
return self.database_template.query("""
152152
SELECT types.id, types.name
153153
FROM types
154154
""", rowhandler=PetTypeRowCallbackHandler())
155155

156156
def visitClinic(self, petId, description):
157157
"""Record a visit to the clinic."""
158-
rowsAffected = self.databaseTemplate.execute("""
158+
rowsAffected = self.database_template.execute("""
159159
INSERT INTO visits
160160
(pet_id, description, visit_date)
161161
values
@@ -165,7 +165,7 @@ def visitClinic(self, petId, description):
165165

166166
def getVetSpecialties(self, vet):
167167
"""Look up specialties associated with a particular veterinarian."""
168-
return self.databaseTemplate.query("""
168+
return self.database_template.query("""
169169
SELECT
170170
specialties.id,
171171
specialties.name
@@ -177,7 +177,7 @@ def getVetSpecialties(self, vet):
177177

178178
def getUsername(self, id):
179179
"""Look up the username associated with a user id"""
180-
return self.databaseTemplate.queryForObject("""
180+
return self.database_template.query_for_object("""
181181
SELECT username
182182
FROM owners
183183
WHERE id = ?
@@ -188,16 +188,16 @@ def getUsers(self):
188188
This function fetches the users out of the database, so someone trying out PetClinic
189189
can get the passwords to log in.
190190
"""
191-
users = self.databaseTemplate.queryForList("select username, password, ' ', enabled from users")
191+
users = self.database_template.query_for_list("select username, password, ' ', enabled from users")
192192
for i in range(len(users)):
193-
authorities = [row for (row,) in self.databaseTemplate.queryForList("select authority from authorities where username = ?", (users[i][0],))]
193+
authorities = [row for (row,) in self.database_template.query_for_list("select authority from authorities where username = ?", (users[i][0],))]
194194
users[i] = (users[i][0], users[i][1], authorities, users[i][3])
195195
return users
196196

197197
class VetRowCallbackHandler(RowCallbackHandler):
198198
"""This is a row callback handler used in a database template call. It is used to process
199199
one row of data from a Vet-oriented query by mapping a Vet-record."""
200-
def processRow(self, row):
200+
def process_row(self, row):
201201
vet = Vet()
202202
vet.id = row[0]
203203
vet.firstName = row[1]
@@ -207,7 +207,7 @@ def processRow(self, row):
207207
class OwnerRowCallbackHandler(RowCallbackHandler):
208208
"""This is a row callback handler used in a database template call. It is used to process
209209
one row of data from an owner-oriented query by mapping an Owner-record."""
210-
def processRow(self, row):
210+
def process_row(self, row):
211211
owner = Owner()
212212
owner.id = row[0]
213213
owner.firstName = row[1]
@@ -220,7 +220,7 @@ def processRow(self, row):
220220
class PetRowCallbackHandler(RowCallbackHandler):
221221
"""This is a row callback handler used in a database template call. It is used to process
222222
one row of data from a pet-oriented query by mapping an Pet-record."""
223-
def processRow(self, row):
223+
def process_row(self, row):
224224
pet = Pet()
225225
pet.id = row[0]
226226
pet.name = row[1]
@@ -231,7 +231,7 @@ def processRow(self, row):
231231
class PetTypeRowCallbackHandler(RowCallbackHandler):
232232
"""This is a row callback handler used in a database template call. It is used to process
233233
one row of data from a visit-oriented query by mapping an Visit-record."""
234-
def processRow(self, row):
234+
def process_row(self, row):
235235
petType = PetType()
236236
petType.id = row[0]
237237
petType.name = row[1]
@@ -240,7 +240,7 @@ def processRow(self, row):
240240
class SpecialtyRowCallbackHandler(RowCallbackHandler):
241241
"""This is a row callback handler used in a database template call. It is used to process
242242
one row of data from a visit-oriented query by mapping an Visit-record."""
243-
def processRow(self, row):
243+
def process_row(self, row):
244244
specialty = Specialty()
245245
specialty.id = row[0]
246246
specialty.name = row[1]
@@ -249,7 +249,7 @@ def processRow(self, row):
249249
class VisitRowCallbackHandler(RowCallbackHandler):
250250
"""This is a row callback handler used in a database template call. It is used to process
251251
one row of data from a visit-oriented query by mapping an Visit-record."""
252-
def processRow(self, row):
252+
def process_row(self, row):
253253
visit = Visit()
254254
visit.date = row[0]
255255
visit.description = row[1]
@@ -260,12 +260,10 @@ def __init__(self, controller=None):
260260
self.controller = controller
261261
self.logger = logging.getLogger("springpython.petclinic.controller")
262262

263-
def supports(self, clazzOrConfigAttribute):
263+
def supports(self, attr):
264264
"""This voter will support a list.
265265
"""
266-
if type(clazzOrConfigAttribute) == list:
267-
return True
268-
elif clazzOrConfigAttribute and clazzOrConfigAttribute == "OWNER":
266+
if isinstance(attr, list) or (attr is not None and attr == "OWNER"):
269267
return True
270268
else:
271269
return False

src/springpython/database/__init__.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,12 @@ class IncorrectResultSizeDataAccessException(DataAccessException):
2020
pass
2121

2222
class ArgumentMustBeNamed(DataAccessException):
23-
def __init__(self, argumentName, msg = ""):
23+
def __init__(self, arg_name, msg = ""):
2424
DataAccessException.__init__(self, msg)
25-
self.argumentName = argumentName
25+
self.arg_name = arg_name
2626

2727
class InvalidArgumentType(DataAccessException):
28-
def __init__(self, argumentType, validTypes, msg = ""):
28+
def __init__(self, arg_type, valid_types, msg = ""):
2929
DataAccessException.__init__(self, msg)
30-
self.argumentType = argumentType
31-
self.validTypes = validTypes
30+
self.arg_type = arg_type
31+
self.valid_types = valid_types

0 commit comments

Comments
 (0)