mirror of https://github.com/voidlizard/hbs2
52 lines
1.6 KiB
Haskell
52 lines
1.6 KiB
Haskell
module HBS2.Peer.Proto.LWWRef.Internal
|
|
( module HBS2.Peer.Proto.LWWRef.Internal
|
|
, module HBS2.Peer.Proto.LWWRef
|
|
) where
|
|
|
|
import HBS2.Prelude.Plated
|
|
import HBS2.Peer.Proto.LWWRef
|
|
import HBS2.Storage
|
|
|
|
import HBS2.Hash
|
|
import HBS2.Clock
|
|
import HBS2.Net.Proto
|
|
import HBS2.Net.Auth.Credentials
|
|
import HBS2.Base58
|
|
import HBS2.Events
|
|
import HBS2.Actors.Peer.Types
|
|
import HBS2.Peer.Proto.Peer
|
|
import HBS2.Net.Proto.Sessions
|
|
import HBS2.Data.Types.Refs
|
|
import HBS2.Misc.PrettyStuff
|
|
|
|
import HBS2.System.Logger.Simple
|
|
|
|
import Control.Monad.Trans.Maybe
|
|
import Data.Maybe
|
|
import Data.Hashable hiding (Hashed)
|
|
import Data.ByteString (ByteString)
|
|
import Type.Reflection (someTypeRep)
|
|
import Lens.Micro.Platform
|
|
|
|
|
|
lwwRefProto :: forall e s m proto . ( MonadIO m
|
|
, Request e proto m
|
|
, Response e proto m
|
|
, HasDeferred proto e m
|
|
, HasGossip e (LWWRefProto e) m
|
|
, HasStorage m
|
|
, IsPeerAddr e m
|
|
, Pretty (Peer e)
|
|
, Sessions e (KnownPeer e) m
|
|
, Signatures s
|
|
, Pretty (AsBase58 (PubKey 'Sign s))
|
|
, s ~ Encryption e
|
|
, proto ~ LWWRefProto e
|
|
)
|
|
=> LWWRefProto e -> m ()
|
|
|
|
lwwRefProto req = do
|
|
debug $ yellow "lwwRefProto"
|
|
pure ()
|
|
|