summaryrefslogtreecommitdiff
path: root/haskell/src/SpaceTraders/Database/Contracts.hs
diff options
context:
space:
mode:
Diffstat (limited to 'haskell/src/SpaceTraders/Database/Contracts.hs')
-rw-r--r--haskell/src/SpaceTraders/Database/Contracts.hs13
1 files changed, 13 insertions, 0 deletions
diff --git a/haskell/src/SpaceTraders/Database/Contracts.hs b/haskell/src/SpaceTraders/Database/Contracts.hs
new file mode 100644
index 0000000..1ef5d6d
--- /dev/null
+++ b/haskell/src/SpaceTraders/Database/Contracts.hs
@@ -0,0 +1,13 @@
+{-# LANGUAGE OverloadedStrings #-}
+
+module SpaceTraders.Database.Contracts
+ ( addContract
+ ) where
+
+import Data.Aeson
+import qualified Database.SQLite.Simple as S
+
+import SpaceTraders.Model.Contract
+
+addContract :: S.Connection -> Contract -> IO ()
+addContract conn contract = S.execute conn "INSERT INTO contracts(data) VALUES (json(?));" (S.Only (encode contract))