Fix time parsing and clean up
This commit is contained in:
parent
ce13ce11fc
commit
5ecf9864d3
2 changed files with 14 additions and 12 deletions
|
|
@ -51,14 +51,14 @@ newOpenChanSTM :: STM (CloseableChan a)
|
|||
newOpenChanSTM = do
|
||||
cClosed <- newTVar False
|
||||
cChan <- newTChan
|
||||
return $ CloseableChan{..}
|
||||
return CloseableChan{..}
|
||||
|
||||
-- | See 'newClosedChan'.
|
||||
newClosedChanSTM :: STM (CloseableChan a)
|
||||
newClosedChanSTM = do
|
||||
cClosed <- newTVar True
|
||||
cChan <- newTChan
|
||||
return $ CloseableChan{..}
|
||||
return CloseableChan{..}
|
||||
|
||||
-- | See 'writeChan'.
|
||||
writeChanSTM :: CloseableChan a -> a -> STM (Maybe ())
|
||||
|
|
@ -84,14 +84,12 @@ readChanSTM CloseableChan{..} = do
|
|||
|
||||
-- | See 'closeChan'.
|
||||
closeChanSTM :: CloseableChan a -> STM ()
|
||||
closeChanSTM CloseableChan{..} = do
|
||||
writeTVar cClosed True
|
||||
closeChanSTM CloseableChan{..} = writeTVar cClosed True
|
||||
--writeTChan cChan End
|
||||
|
||||
-- | See 'openChan'.
|
||||
openChanSTM :: CloseableChan a -> STM ()
|
||||
openChanSTM CloseableChan{..} = do
|
||||
writeTVar cClosed False
|
||||
openChanSTM CloseableChan{..} = writeTVar cClosed False
|
||||
|
||||
-- | See 'emptyChan'.
|
||||
emptyChanSTM :: CloseableChan a -> STM [a]
|
||||
|
|
|
|||
|
|
@ -15,8 +15,9 @@ module EuphApi.Types
|
|||
|
||||
import Data.Aeson
|
||||
import Data.Function
|
||||
import qualified Data.Text as T
|
||||
import qualified Data.Text as T
|
||||
import Data.Time
|
||||
import Data.Time.Clock.POSIX
|
||||
|
||||
-- | Represents <http://api.euphoria.io/#snowflake>.
|
||||
--
|
||||
|
|
@ -101,13 +102,16 @@ instance FromJSON Message where
|
|||
parseJSON = withObject "Message" $ \o -> do
|
||||
msgID <- o .: "id"
|
||||
msgParent <- o .:? "parent"
|
||||
msgTime <- o .: "time"
|
||||
msgSender <- o .: "sender"
|
||||
msgContent <- o .: "content"
|
||||
msgEdited <- o .:? "edited"
|
||||
msgDeleted <- o .:? "deleted"
|
||||
time <- o .: "time"
|
||||
edited <- o .:? "edited"
|
||||
deleted <- o .:? "deleted"
|
||||
msgTruncated <- o .:? "truncated" .!= False
|
||||
return $ Message{..}
|
||||
let msgTime = posixSecondsToUTCTime time
|
||||
msgEdited = posixSecondsToUTCTime <$> edited
|
||||
msgDeleted = posixSecondsToUTCTime <$> deleted
|
||||
return Message{..}
|
||||
|
||||
-- | Represents <http://api.euphoria.io/#sessionview>.
|
||||
--
|
||||
|
|
@ -135,4 +139,4 @@ instance FromJSON SessionView where
|
|||
sessSessionID <- o .: "session_id"
|
||||
isStaff <- o .:? "is_staff" .!= False
|
||||
isManager <- o .:? "is_manager" .!= False
|
||||
return $ SessionView{..}
|
||||
return SessionView{..}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue