]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/jaegertracing/thrift/lib/hs/src/Thrift/Transport.hs
import quincy beta 17.1.0
[ceph.git] / ceph / src / jaegertracing / thrift / lib / hs / src / Thrift / Transport.hs
diff --git a/ceph/src/jaegertracing/thrift/lib/hs/src/Thrift/Transport.hs b/ceph/src/jaegertracing/thrift/lib/hs/src/Thrift/Transport.hs
deleted file mode 100644 (file)
index 306edc2..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE MultiParamTypeClasses #-}
---
--- Licensed to the Apache Software Foundation (ASF) under one
--- or more contributor license agreements. See the NOTICE file
--- distributed with this work for additional information
--- regarding copyright ownership. The ASF licenses this file
--- to you under the Apache License, Version 2.0 (the
--- "License"); you may not use this file except in compliance
--- with the License. You may obtain a copy of the License at
---
---   http://www.apache.org/licenses/LICENSE-2.0
---
--- Unless required by applicable law or agreed to in writing,
--- software distributed under the License is distributed on an
--- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
--- KIND, either express or implied. See the License for the
--- specific language governing permissions and limitations
--- under the License.
---
-
-module Thrift.Transport
-  ( Transport(..)
-  , TransportExn(..)
-  , TransportExnType(..)
-  ) where
-
-import Control.Monad ( when )
-import Control.Exception ( Exception, throw )
-import Data.Functor ( (<$>) )
-import Data.Typeable ( Typeable )
-import Data.Word
-
-import qualified Data.ByteString.Lazy as LBS
-import Data.Monoid
-
-class Transport a where
-    tIsOpen :: a -> IO Bool
-    tClose  :: a -> IO ()
-    tRead   :: a -> Int -> IO LBS.ByteString
-    tPeek   :: a -> IO (Maybe Word8)
-    tWrite  :: a -> LBS.ByteString -> IO ()
-    tFlush  :: a -> IO ()
-    tReadAll :: a -> Int -> IO LBS.ByteString
-
-    tReadAll _ 0 = return mempty
-    tReadAll a len = do
-        result <- tRead a len
-        let rlen = fromIntegral $ LBS.length result
-        when (rlen == 0) (throw $ TransportExn "Cannot read. Remote side has closed." TE_UNKNOWN)
-        if len <= rlen
-          then return result
-          else (result `mappend`) <$> tReadAll a (len - rlen)
-
-data TransportExn = TransportExn String TransportExnType
-  deriving ( Show, Typeable )
-instance Exception TransportExn
-
-data TransportExnType
-    = TE_UNKNOWN
-    | TE_NOT_OPEN
-    | TE_ALREADY_OPEN
-    | TE_TIMED_OUT
-    | TE_END_OF_FILE
-      deriving ( Eq, Show, Typeable )