aboutsummaryrefslogtreecommitdiff
path: root/server/src
diff options
context:
space:
mode:
authorGregor Kleen <gkleen@yggdrasil.li>2016-01-28 12:16:27 +0000
committerGregor Kleen <gkleen@yggdrasil.li>2016-01-28 12:16:27 +0000
commit9dd562eef0c4ff6f15e6ef3e7c360f5fdf04573b (patch)
treedceab9cf078e1a9e31e9579c1d6669bcf2311201 /server/src
parentf236eb926bd554cb6494a0184d1070f264c4d03a (diff)
downloadthermoprint-9dd562eef0c4ff6f15e6ef3e7c360f5fdf04573b.tar
thermoprint-9dd562eef0c4ff6f15e6ef3e7c360f5fdf04573b.tar.gz
thermoprint-9dd562eef0c4ff6f15e6ef3e7c360f5fdf04573b.tar.bz2
thermoprint-9dd562eef0c4ff6f15e6ef3e7c360f5fdf04573b.tar.xz
thermoprint-9dd562eef0c4ff6f15e6ef3e7c360f5fdf04573b.zip
more logging
Diffstat (limited to 'server/src')
-rw-r--r--server/src/Thermoprint/Server/API.hs18
1 files changed, 14 insertions, 4 deletions
diff --git a/server/src/Thermoprint/Server/API.hs b/server/src/Thermoprint/Server/API.hs
index 77f33e7..4d036ce 100644
--- a/server/src/Thermoprint/Server/API.hs
+++ b/server/src/Thermoprint/Server/API.hs
@@ -67,6 +67,9 @@ data HandlerInput = HandlerInput { sqlPool :: ConnectionPool -- ^ How to intera
67 , printers :: Map PrinterId Printer 67 , printers :: Map PrinterId Printer
68 } 68 }
69 69
70instance MonadLogger m => MonadLogger (EitherT a m) where
71 monadLoggerLog loc src lvl = lift . monadLoggerLog loc src lvl
72
70handlerNat :: ( MonadReader ConnectionPool m 73handlerNat :: ( MonadReader ConnectionPool m
71 , MonadLoggerIO m 74 , MonadLoggerIO m
72 ) => Map PrinterId Printer -> m (Handler :~> EitherT ServantErr IO) 75 ) => Map PrinterId Printer -> m (Handler :~> EitherT ServantErr IO)
@@ -157,7 +160,7 @@ abortJob jobId = do
157 let filtered = Seq.filter (/= castId jobId) pending 160 let filtered = Seq.filter (/= castId jobId) pending
158 writeTVar (queue p) $ current { pending = filtered } 161 writeTVar (queue p) $ current { pending = filtered }
159 return . not $ ((==) `on` length) pending filtered 162 return . not $ ((==) `on` length) pending filtered
160 when found . lift . $(logInfo) $ "Removed " <> (T.pack $ show (castId jobId :: Integer)) <> " from " <> (T.pack . show $ pId') 163 when found . $(logInfo) $ "Removed job #" <> (T.pack $ show (castId jobId :: Integer)) <> " from " <> (T.pack . show $ pId')
161 return found 164 return found
162 when (not found) $ left err404 165 when (not found) $ left err404
163 166
@@ -167,16 +170,23 @@ listDrafts = asks sqlPool >>= runSqlPool (selectSourceRes [] []) >>= flip with t
167 toMap source = fmap Map.fromList . sourceToList $ (\(Entity key (Draft title _)) -> (castId key, title)) `mapOutput` source 170 toMap source = fmap Map.fromList . sourceToList $ (\(Entity key (Draft title _)) -> (castId key, title)) `mapOutput` source
168 171
169addDraft :: Maybe DraftTitle -> Printout -> Handler API.DraftId 172addDraft :: Maybe DraftTitle -> Printout -> Handler API.DraftId
170addDraft title content = fmap castId . runSqlPool (insert $ Draft title content) =<< asks sqlPool 173addDraft title content = do
174 id <- fmap castId . runSqlPool (insert $ Draft title content) =<< asks sqlPool
175 $(logInfo) $ "Added draft #" <> (T.pack $ show (castId id :: Integer)) <> " (" <> (T.pack $ show title) <> ")"
176 return id
171 177
172updateDraft :: API.DraftId -> Maybe DraftTitle -> Printout -> Handler () 178updateDraft :: API.DraftId -> Maybe DraftTitle -> Printout -> Handler ()
173updateDraft draftId title content = (\(KeyNotFound _) -> left $ err404) `handle` (runSqlPool (update (castId draftId) [ DraftTitle =. title, DraftContent =. content ]) =<< asks sqlPool) 179updateDraft draftId title content = handle (\(KeyNotFound _) -> left $ err404) $ do
180 runSqlPool (update (castId draftId) [ DraftTitle =. title, DraftContent =. content ]) =<< asks sqlPool
181 $(logInfo) $ "Updated draft #" <> (T.pack $ show (castId draftId :: Integer))
174 182
175getDraft :: API.DraftId -> Handler (Maybe DraftTitle, Printout) 183getDraft :: API.DraftId -> Handler (Maybe DraftTitle, Printout)
176getDraft draftId = fmap (\(Draft title content) -> (title, content)) . maybe (left err404) return =<< runSqlPool (get $ castId draftId) =<< asks sqlPool 184getDraft draftId = fmap (\(Draft title content) -> (title, content)) . maybe (left err404) return =<< runSqlPool (get $ castId draftId) =<< asks sqlPool
177 185
178deleteDraft :: API.DraftId -> Handler () 186deleteDraft :: API.DraftId -> Handler ()
179deleteDraft draftId = runSqlPool (delete $ (castId draftId :: Key Draft)) =<< asks sqlPool 187deleteDraft draftId = do
188 runSqlPool (delete $ (castId draftId :: Key Draft)) =<< asks sqlPool
189 $(logInfo) $ "Made sure draft #" <> (T.pack $ show (castId draftId :: Integer)) <> " is Deleted"
180 190
181printDraft :: API.DraftId -> Maybe PrinterId -> Handler API.JobId 191printDraft :: API.DraftId -> Maybe PrinterId -> Handler API.JobId
182printDraft draftId printerId = (\(Draft _ content) -> queueJob printerId content) =<< maybe (left err404) return =<< runSqlPool (get $ castId draftId) =<< asks sqlPool 192printDraft draftId printerId = (\(Draft _ content) -> queueJob printerId content) =<< maybe (left err404) return =<< runSqlPool (get $ castId draftId) =<< asks sqlPool