hbs2/hbs2-peer/lib/HBS2/Peer/RPC/API/Mailbox.hs

35 lines
829 B
Haskell

{-# Language UndecidableInstances #-}
module HBS2.Peer.RPC.API.Mailbox where
import HBS2.Peer.Prelude
import HBS2.Net.Proto.Service
import HBS2.Net.Messaging.Unix (UNIX)
import HBS2.Data.Types.Refs (HashRef(..))
import HBS2.Data.Types.SignedBox
import Data.ByteString.Lazy ( ByteString )
import Data.ByteString qualified as BS
import Codec.Serialise
data RpcMailboxPoke
type MailboxAPI = '[ RpcMailboxPoke
]
type MailboxAPIProto = 0x056091510d3b2ec9
instance HasProtocol UNIX (ServiceProto MailboxAPI UNIX) where
type instance ProtocolId (ServiceProto MailboxAPI UNIX) = MailboxAPIProto
type instance Encoded UNIX = ByteString
decode = either (const Nothing) Just . deserialiseOrFail
encode = serialise
type instance Input RpcMailboxPoke = ()
type instance Output RpcMailboxPoke = ()