packages feed

haskelldb-hsql-odbc (empty) → 0.10

raw patch · 3 files changed

+74/−0 lines, 3 filesdep +basedep +haskell98dep +haskelldbbuild-type:Customsetup-changed

Dependencies added: base, haskell98, haskelldb, haskelldb-hsql, hsql, hsql-odbc, mtl

Files

+ Database/HaskellDB/HSQL/ODBC.hs view
@@ -0,0 +1,55 @@+-----------------------------------------------------------+-- |+-- Module      :  Database.HaskellDB.HSQL.ODBC+-- Copyright   :  HWT Group 2003,+--                Bjorn Bringert 2006+-- License     :  BSD-style+-- +-- Maintainer  :  haskelldb-users@lists.sourceforge.net+-- Stability   :  experimental+-- Portability :  non-portable+--+-----------------------------------------------------------++module Database.HaskellDB.HSQL.ODBC (+		                     ODBCOptions(..),+		                     odbcConnect, +                                     odbcDriverConnect,+                                     DriverInterface(..),+		                     driver+		                    ) where++import Database.HaskellDB.Database+import Database.HaskellDB.HSQL+import Database.HaskellDB.DriverAPI+import Database.HaskellDB.Sql.Generate (SqlGenerator)+import qualified Database.HSQL.ODBC as ODBC (connect, driverConnect) ++data ODBCOptions = ODBCOptions { +                               dsn :: String, -- ^ name binding in ODBC+                               uid :: String, -- ^ user id+                               pwd :: String  -- ^ password+                  	       }          ++odbcConnect :: MonadIO m => SqlGenerator -> ODBCOptions -> (Database -> m a) -> m a+odbcConnect gen opts = +    hsqlConnect gen (ODBC.connect (dsn opts) (uid opts) (pwd opts))++-- | DSN-less connection.+odbcDriverConnect :: MonadIO m => SqlGenerator -> String -> (Database -> m a) -> m a+odbcDriverConnect gen opts =+    hsqlConnect gen (ODBC.driverConnect opts)++odbcConnectOpts :: MonadIO m => [(String,String)] -> (Database -> m a) -> m a+odbcConnectOpts opts f = +    do+    [a,b,c] <- getOptions ["dsn","uid","pwd"] opts+    g <- getGenerator opts+    odbcConnect g (ODBCOptions {dsn = a,+                                uid = b,+			        pwd = c}) f++-- | This driver requires the following options: +--   "dsn", "uid", "pwd"+driver :: DriverInterface+driver = defaultdriver { connect = odbcConnectOpts }
+ Setup.hs view
@@ -0,0 +1,4 @@+#!/usr/bin/env runghc++import Distribution.Simple+main = defaultMain
+ haskelldb-hsql-odbc.cabal view
@@ -0,0 +1,15 @@+Name: haskelldb-hsql-odbc+Version: 0.10+Copyright: The authors+Maintainer: haskelldb-users@lists.sourceforge.net+Author: Daan Leijen, Conny Andersson, Martin Andersson, Mary Bergman, Victor Blomqvist, Bjorn Bringert, Anders Hockersten, Torbjorn Martin, Jeremy Shaw+License: BSD3+build-depends: haskell98, base, mtl, haskelldb, haskelldb-hsql, hsql, hsql-odbc+Extensions: ExistentialQuantification,+            OverlappingInstances,+            UndecidableInstances,+            MultiParamTypeClasses+Synopsis: HaskellDB support for the HSQL ODBC driver.+Exposed-Modules:+        Database.HaskellDB.HSQL.ODBC+ghc-options: -O2