tablestorage-0.1.0.2: src/Network/TableStorage/Query.hs
-- |
-- This module contains functions which help when unmarshalling query responses
module Network.TableStorage.Query where
import Data.Time
import Network.TableStorage.Types
-- |
-- Find the value in a binary-valued column or return Nothing if no such column exists
edmBinary :: String -> Entity -> Maybe String
edmBinary key en = do
col <- lookup key $ entityColumns en
case col of
EdmBinary s -> s
_ -> Nothing
-- |
-- Find the value in a string-valued column or return Nothing if no such column exists
edmString :: String -> Entity -> Maybe String
edmString key en = do
col <- lookup key $ entityColumns en
case col of
EdmString s -> s
_ -> Nothing
-- |
-- Find the value in a boolean-valued column or return Nothing if no such column exists
edmBoolean :: String -> Entity -> Maybe Bool
edmBoolean key en = do
col <- lookup key $ entityColumns en
case col of
EdmBoolean s -> s
_ -> Nothing
-- |
-- Find the value in a date-valued column or return Nothing if no such column exists
edmDateTime :: String -> Entity -> Maybe UTCTime
edmDateTime key en = do
col <- lookup key $ entityColumns en
case col of
EdmDateTime s -> s
_ -> Nothing
-- |
-- Find the value in a double-valued column or return Nothing if no such column exists
edmDouble :: String -> Entity -> Maybe Double
edmDouble key en = do
col <- lookup key $ entityColumns en
case col of
EdmDouble s -> s
_ -> Nothing
-- |
-- Find the value in a Guid-valued column or return Nothing if no such column exists
edmGuid :: String -> Entity -> Maybe String
edmGuid key en = do
col <- lookup key $ entityColumns en
case col of
EdmGuid s -> s
_ -> Nothing
-- |
-- Find the value in an integer-valued column or return Nothing if no such column exists
edmInt32 :: String -> Entity -> Maybe Int
edmInt32 key en = do
col <- lookup key $ entityColumns en
case col of
EdmInt32 s -> s
_ -> Nothing
-- |
-- Find the value in an integer-valued column or return Nothing if no such column exists
edmInt64 :: String -> Entity -> Maybe Int
edmInt64 key en = do
col <- lookup key $ entityColumns en
case col of
EdmInt64 s -> s
_ -> Nothing