@@ -11,7 +11,6 @@ import Prelude hiding (exp)
1111import Network.Wai
1212import Web.Encodings
1313import Data.List (partition)
14−import Data.Function.Predicate (is, isn't, equals)
1514import Data.Maybe (fromMaybe, mapMaybe)
1615import Web.ClientSession
1716import Data.Time.Clock (getCurrentTime, UTCTime, addUTCTime)
@@ -55,15 +54,16 @@ clientsession cnames key minutesToLive app env = do
5554 initCookiesRaw :: B.ByteString
5655 initCookiesRaw = fromMaybe B.empty $ lookup Cookie hs
5756 nonCookies :: [(RequestHeader, B.ByteString)]
58− nonCookies = filter (fst `isn't` (== Cookie)) hs
57+ nonCookies = filter (\(x, _) -> x /= Cookie) hs
5958 initCookies :: [(B.ByteString, B.ByteString)]
6059 initCookies = parseCookies initCookiesRaw
6160 cookies, interceptCookies :: [(B.ByteString, B.ByteString)]
62− (interceptCookies, cookies) = partition (fst `is` (`elem` cnames))
61+ (interceptCookies, cookies) = partition (\(x, _) -> x `elem` cnames)
6362 initCookies
6463 cookiesRaw, remoteHost' :: B.ByteString
6564 cookiesRaw = B.concat $ combineCookies cookies
6665 remoteHost' = remoteHost env
66+ print ("intercept", cnames, interceptCookies)
6767 now <- getCurrentTime
6868 let convertedCookies :: [(B.ByteString, B.ByteString)]
6969 convertedCookies =
@@ -71,13 +71,14 @@ clientsession cnames key minutesToLive app env = do
7171 let env' = env { requestHeaders =
7272 (Cookie, cookiesRaw)
7373 -- FIXME not sure how I feel about the next line
74− : filter (fst `equals` Cookie) (requestHeaders env)
74+ : filter (\(x, _) -> x == Cookie)
75+ (requestHeaders env)
7576 ++ nonCookies
7677 }
7778 res <- app convertedCookies env'
7879 let interceptHeaders, responseHeaders' :: [(ResponseHeader, B.ByteString)]
7980 (interceptHeaders, responseHeaders') =
80− partition ((responseHeaderToBS . fst) `is` (`elem` cnames))
81+ partition (\(x, _) -> responseHeaderToBS x `elem` cnames)
8182 $ responseHeaders res
8283 interceptHeaders' :: [(B.ByteString, B.ByteString)]
8384 interceptHeaders' = map (first responseHeaderToBS) interceptHeaders
@@ -91,6 +92,7 @@ clientsession cnames key minutesToLive app env = do
9192 convertedCookies
9293 let newCookies = map (setCookie key exp formattedExp remoteHost') $
9394 oldCookies ++ interceptHeaders'
95+ print ("cookies", oldCookies, newCookies, cookiesRaw)
9496 let res' = res { responseHeaders = newCookies ++ responseHeaders' }
9597 return res'
9698