@@ -1,4 +1,5 @@
1−{-# LANGUAGE ExplicitForAll #-}
1+{-# LANGUAGE ExplicitForAll #-}
2+{-# LANGUAGE ScopedTypeVariables #-}
3module Docker where
4module Docker where
@@ -16,86 +17,84 @@ import Network.HTTP.Types (StdMethod (..))
16import Docker.Internal
17import Docker.Internal
17import Docker.Types
18import Docker.Types
19−getDockerVersion :: forall m. MonadThrow m => DockerT m DockerVersion
20+getDockerVersion :: forall m. Monad m => DockerT m DockerVersion
20getDockerVersion = do
21getDockerVersion = do
21 (opts, httpHandler) <- ask
22 (opts, httpHandler) <- ask
22 let request = fromJust $ mkHttpRequest GET VersionEndpoint opts
23 let request = fromJust $ mkHttpRequest GET VersionEndpoint opts
23− response <- lift $ ((httpHandler request) :: m Response)
24+ response <- lift . lift $ ((httpHandler request) :: m Response)
24 let body = responseBody response
25 let body = responseBody response
25 let res = decode body
26 let res = decode body
26 return $ fromJust res
27 return $ fromJust res
28−listContainers :: forall m. MonadThrow m => ListOpts -> DockerT m [Container]
29+listContainers :: forall m. Monad m => ListOpts -> DockerT m [Container]
29listContainers lopts = do
30listContainers lopts = do
30 (opts, httpHandler) <- ask
31 (opts, httpHandler) <- ask
31 let request = fromJust $ mkHttpRequest GET (ListContainersEndpoint lopts) opts
32 let request = fromJust $ mkHttpRequest GET (ListContainersEndpoint lopts) opts
32− response <- lift $ httpHandler request
33+ response <- lift . lift $ ((httpHandler request) :: m Response)
33 let body = responseBody response
34 let body = responseBody response
34 let res = decode body
35 let res = decode body
35 return $ fromJust res
36 return $ fromJust res
37−listImages :: forall m. MonadThrow m => ListOpts -> DockerT m [Image]
38+listImages :: forall m. Monad m => ListOpts -> DockerT m [Image]
38listImages lopts = do
39listImages lopts = do
39 (opts, httpHandler) <- ask
40 (opts, httpHandler) <- ask
40 let request = fromJust $ mkHttpRequest GET (ListImagesEndpoint lopts) opts
41 let request = fromJust $ mkHttpRequest GET (ListImagesEndpoint lopts) opts
41− response <- lift $ ((httpHandler request) :: m Response)
42+ response <- lift . lift $ ((httpHandler request) :: m Response)
42 let body = responseBody response
43 let body = responseBody response
43 let res = decode body
44 let res = decode body
44 return $ fromJust res
45 return $ fromJust res
46−createContainer :: forall m. MonadThrow m => CreateOpts -> DockerT m ContainerID
47+createContainer :: forall m. Monad m => CreateOpts -> DockerT m ContainerID
47createContainer = undefined
48createContainer = undefined
49−startContainer :: forall m. MonadThrow m => StartOpts -> ContainerID -> DockerT m ContainerID
50+startContainer :: forall m. Monad m => StartOpts -> ContainerID -> DockerT m ContainerID
50startContainer sopts cid = do
51startContainer sopts cid = do
51 (opts, httpHandler) <- ask
52 (opts, httpHandler) <- ask
52 let request = fromJust $ mkHttpRequest POST (StartContainerEndpoint sopts cid) opts
53 let request = fromJust $ mkHttpRequest POST (StartContainerEndpoint sopts cid) opts
53− _ <- lift $ ((httpHandler request) :: m Response)
54+ _ <- lift . lift $ ((httpHandler request) :: m Response)
54 return cid
55 return cid
56−stopContainer :: forall m. MonadThrow m => Timeout -> ContainerID ->DockerT m ContainerID
57+stopContainer :: forall m. Monad m => Timeout -> ContainerID ->DockerT m ContainerID
57stopContainer t cid = do
58stopContainer t cid = do
58 (opts, httpHandler) <- ask
59 (opts, httpHandler) <- ask
59 let request = fromJust $ mkHttpRequest POST (StopContainerEndpoint t cid) opts
60 let request = fromJust $ mkHttpRequest POST (StopContainerEndpoint t cid) opts
60− _ <- lift $ ((httpHandler request) :: m Response)
61+ _ <- lift . lift $ ((httpHandler request) :: m Response)
61 return cid
62 return cid
63−killContainer :: forall m. MonadThrow m => Signal -> ContainerID -> DockerT m ContainerID
64+killContainer :: forall m. Monad m => Signal -> ContainerID -> DockerT m ContainerID
64killContainer s cid = do
65killContainer s cid = do
65 (opts, httpHandler) <- ask
66 (opts, httpHandler) <- ask
66 let request = fromJust $ mkHttpRequest POST (KillContainerEndpoint s cid) opts
67 let request = fromJust $ mkHttpRequest POST (KillContainerEndpoint s cid) opts
67− _ <- lift $ ((httpHandler request) :: m Response)
68+ _ <- lift . lift $ ((httpHandler request) :: m Response)
68 return cid
69 return cid
70−restartContainer :: forall m. MonadThrow m => Timeout -> ContainerID -> DockerT m ContainerID
71+restartContainer :: forall m. Monad m => Timeout -> ContainerID -> DockerT m ContainerID
71restartContainer t cid = do
72restartContainer t cid = do
72 (opts, httpHandler) <- ask
73 (opts, httpHandler) <- ask
73 let request = fromJust $ mkHttpRequest POST (RestartContainerEndpoint t cid) opts
74 let request = fromJust $ mkHttpRequest POST (RestartContainerEndpoint t cid) opts
74− _ <- lift $ ((httpHandler request) :: m Response)
75+ _ <- lift . lift $ ((httpHandler request) :: m Response)
75 return cid
76 return cid
77−pauseContainer :: forall m. MonadThrow m => ContainerID -> DockerT m ContainerID
78+pauseContainer :: forall m. Monad m => ContainerID -> DockerT m ContainerID
78pauseContainer cid = do
79pauseContainer cid = do
79 (opts, httpHandler) <- ask
80 (opts, httpHandler) <- ask
80 let request = fromJust $ mkHttpRequest POST (PauseContainerEndpoint cid) opts
81 let request = fromJust $ mkHttpRequest POST (PauseContainerEndpoint cid) opts
81− _ <- lift $ ((httpHandler request) :: m Response)
82+ _ <- lift . lift $ ((httpHandler request) :: m Response)
82 return cid
83 return cid
84−unpauseContainer :: forall m. MonadThrow m => ContainerID -> DockerT m ContainerID
85+unpauseContainer :: forall m. Monad m => ContainerID -> DockerT m ContainerID
85unpauseContainer cid = do
86unpauseContainer cid = do
86 (opts, httpHandler) <- ask
87 (opts, httpHandler) <- ask
87 let request = fromJust $ mkHttpRequest GET (UnpauseContainerEndpoint cid) opts
88 let request = fromJust $ mkHttpRequest GET (UnpauseContainerEndpoint cid) opts
88− _ <- lift $ ((httpHandler request) :: m Response)
89+ _ <- lift . lift $ ((httpHandler request) :: m Response)
89 return cid
90 return cid
91−deleteContainer :: forall m. MonadThrow m => DeleteOpts -> ContainerID -> DockerT m ContainerID
92+deleteContainer :: forall m. Monad m => DeleteOpts -> ContainerID -> DockerT m ContainerID
92deleteContainer dopts cid = do
93deleteContainer dopts cid = do
93 (opts, httpHandler) <- ask
94 (opts, httpHandler) <- ask
94 let request = fromJust $ mkHttpRequest DELETE (DeleteContainerEndpoint dopts cid) opts
95 let request = fromJust $ mkHttpRequest DELETE (DeleteContainerEndpoint dopts cid) opts
95− _ <- lift $ ((httpHandler request) :: m Response)
96+ _ <- lift . lift $ ((httpHandler request) :: m Response)
96 return cid
97 return cid
98−getContainerLogs :: forall m. MonadThrow m => LogOpts -> ContainerID -> DockerT m ()
99+getContainerLogs :: forall m. Monad m => LogOpts -> ContainerID -> DockerT m ()
99−getContainerLogs logopts cid = undefined
100+getContainerLogs logopts cid = undefined