Skip to content

jnonce/azure-docdb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Azure.DocDB

DocDB document access in Haskell. For example:

import           Azure.DocDB
import           Control.Monad.IO.Class
import           Data.Aeson ((.=))
import qualified Data.Aeson as A
import qualified Data.HashMap.Lazy as HM

key = "{base64-encoded-key}"
accountEndpoint = "https://{databaseaccount}.documents.azure.com"
docToMake = "myDB" #> "myCollection" #> "myDoc"

main :: IO ()
  manager <- newManager tlsManagerSettings
  state <- mkDBSocketState key accountEndpoint manager

  execDBSocketT (testCreateDoc docToMake) state

testCreateDoc :: (MonadIO m, DBSocketMonad m) => DocumentId -> m (ETagged A.Value)
testCreateDoc (DocumentId collection docName) = do
  let testDoc = A.Object $ HM.fromList
                  [ ("id", A.String docName),
                    ("Hello", A.Number 98000) ]
  result :: ETagged A.Value <- createDocument collection testDoc
  liftIO $ print result
  return result

About

Azure DocumentDB client library

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published