#lang mzscheme
(require mzlib/kw
scheme/class
scheme/contract)
(require "../generic/connection.ss"
"../generic/database.ss"
"database.ss")
(define/kw (make-database
#:key
[server "localhost"]
[port 5432]
database
username
[password #f]
[ssl 'optional]
[ssl-encrypt 'sslv2-or-v3])
(new database%
[server server]
[port port]
[database database]
[username username]
[password password]
[ssl ssl]
[ssl-encrypt ssl-encrypt]))
(provide (struct connection (back-end in-transaction?))
database%
make-database)