Skip to content

Commit

Permalink
Remove unused code
Browse files Browse the repository at this point in the history
  • Loading branch information
marcusbfs committed Feb 14, 2025
1 parent 946c443 commit 2718d8a
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 48 deletions.
33 changes: 8 additions & 25 deletions src/Internal/QueryM/Ogmios/Mempool.purs
Original file line number Diff line number Diff line change
Expand Up @@ -48,13 +48,10 @@ import Control.Monad.Error.Class (liftEither, throwError)
import Ctl.Internal.QueryM.Ogmios.Mempool.Dispatcher
( DispatchError(JsonError)
, Dispatcher
, GenericPendingRequests
, PendingRequests
, RequestBody
, WebsocketDispatch
, mkWebsocketDispatch
, newDispatcher
, newPendingRequests
)
import Ctl.Internal.QueryM.Ogmios.Mempool.JsWebSocket
( JsWebSocket
Expand Down Expand Up @@ -91,7 +88,6 @@ import Data.Map as Map
import Data.Maybe (Maybe(Nothing, Just))
import Data.Newtype (class Newtype, wrap)
import Data.Show.Generic (genericShow)
import Data.Tuple.Nested (type (/\), (/\))
import Effect (Effect)
import Effect.Aff (Aff, Canceler(Canceler), makeAff)
import Effect.Class (liftEffect)
Expand Down Expand Up @@ -186,8 +182,6 @@ listeners (WebSocket _ ls) = ls
-- OgmiosWebSocket Setup and PrimOps
--------------------------------------------------------------------------------

type IsTxConfirmed = TransactionHash -> Aff Boolean

mkOgmiosWebSocketAff
:: Logger
-> String
Expand Down Expand Up @@ -258,21 +252,20 @@ mkOgmiosWebSocketLens
-> Effect (MkServiceWebSocketLens OgmiosListeners)
mkOgmiosWebSocketLens logger = do
dispatcher <- newDispatcher
pendingRequests <- newPendingRequests
pure $
let
ogmiosWebSocket :: JsWebSocket -> OgmiosWebSocket
ogmiosWebSocket ws = WebSocket ws
{ acquireMempool:
mkListenerSet dispatcher pendingRequests
mkListenerSet dispatcher
, releaseMempool:
mkListenerSet dispatcher pendingRequests
mkListenerSet dispatcher
, mempoolHasTx:
mkListenerSet dispatcher pendingRequests
mkListenerSet dispatcher
, mempoolNextTx:
mkListenerSet dispatcher pendingRequests
mkListenerSet dispatcher
, mempoolSizeAndCapacity:
mkListenerSet dispatcher pendingRequests
mkListenerSet dispatcher
}

in
Expand Down Expand Up @@ -302,9 +295,6 @@ type ListenerSet (request :: Type) (response :: Type) =
-> Effect Unit
, removeMessageListener :: ListenerId -> Effect Unit
-- ^ Removes ID from dispatch map and pending requests queue.
, addRequest :: ListenerId -> RequestBody /\ request -> Effect Unit
-- ^ Saves request body until the request is fulfilled. The body is used
-- to replay requests in case of a WebSocket failure.
}

mkAddMessageListener
Expand All @@ -324,29 +314,23 @@ mkAddMessageListener dispatcher =
mkRemoveMessageListener
:: forall (requestData :: Type)
. Dispatcher
-> GenericPendingRequests requestData
-> (ListenerId -> Effect Unit)
mkRemoveMessageListener dispatcher pendingRequests =
mkRemoveMessageListener dispatcher =
\reflection -> do
Ref.modify_ (Map.delete reflection) dispatcher
Ref.modify_ (Map.delete reflection) pendingRequests

-- we manipluate closures to make the DispatchIdMap updateable using these
-- methods, this can be picked up by a query or cancellation function
mkListenerSet
:: forall (request :: Type) (response :: Type)
. DecodeOgmios response
=> Dispatcher
-> PendingRequests
-> ListenerSet request response
mkListenerSet dispatcher pendingRequests =
mkListenerSet dispatcher =
{ addMessageListener:
mkAddMessageListener dispatcher
, removeMessageListener:
mkRemoveMessageListener dispatcher pendingRequests
, addRequest:
\reflection (requestBody /\ _) ->
Ref.modify_ (Map.insert reflection requestBody) pendingRequests
mkRemoveMessageListener dispatcher
}

mkRequestAff
Expand Down Expand Up @@ -375,7 +359,6 @@ mkRequestAff listeners' webSocket logger jsonRpc2Call getLs input = do
respLs.removeMessageListener id
cont $ lmap ogmiosDecodeErrorToError res
)
respLs.addRequest id (sBody /\ input)
_wsSend webSocket (logger Debug) sBody
-- Uncomment this code fragment to test `SubmitTx` request resend logic:
pure $ Canceler $ \err -> do
Expand Down
19 changes: 0 additions & 19 deletions src/Internal/QueryM/Ogmios/Mempool/Dispatcher.purs
Original file line number Diff line number Diff line change
@@ -1,28 +1,22 @@
module Ctl.Internal.QueryM.Ogmios.Mempool.Dispatcher
( DispatchError(JsonError, FaultError, ListenerCancelled)
, Dispatcher
, GenericPendingRequests
, PendingRequests
, PendingSubmitTxRequests
, RequestBody
, WebsocketDispatch
, dispatchErrorToError
, mkWebsocketDispatch
, newDispatcher
, newPendingRequests
, ListenerId
) where

import Prelude

import Aeson (Aeson, JsonDecodeError, stringifyAeson)
import Cardano.Types.TransactionHash (TransactionHash)
import Ctl.Internal.QueryM.Ogmios.Mempool.JsonRpc2 (parseJsonRpc2ResponseId)
import Data.Either (Either(Left, Right))
import Data.Map (Map)
import Data.Map (empty, lookup) as Map
import Data.Maybe (Maybe(Just, Nothing))
import Data.Tuple.Nested (type (/\))
import Effect (Effect)
import Effect.Exception (Error, error)
import Effect.Ref (Ref)
Expand Down Expand Up @@ -76,16 +70,3 @@ mkWebsocketDispatch dispatcher aeson = do
Nothing -> pure $ Left $ ListenerCancelled reflection
Just action -> pure $ Right $ action aeson

type ShouldResend = Boolean

type GenericPendingRequests (requestData :: Type) =
Ref (Map ListenerId requestData)

newPendingRequests
:: forall (requestData :: Type). Effect (GenericPendingRequests requestData)
newPendingRequests = Ref.new Map.empty

type PendingRequests = GenericPendingRequests RequestBody

type PendingSubmitTxRequests = GenericPendingRequests
(RequestBody /\ TransactionHash)
5 changes: 1 addition & 4 deletions test/Ogmios/GenerateFixtures.purs
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ import Ctl.Internal.QueryM.Ogmios.Mempool
( ListenerSet
, WebSocket(WebSocket)
, defaultMessageListener
, mkListenerSet
, mkOgmiosCallType
, mkRequestAff
)
Expand All @@ -30,7 +29,7 @@ import Ctl.Internal.QueryM.Ogmios.Mempool.JsWebSocket
import Ctl.Internal.QueryM.Ogmios.Mempool.JsonRpc2 (JsonRpc2Call)
import Ctl.Internal.QueryM.Ogmios.Types (class DecodeOgmios)
import Ctl.Internal.ServerConfig (ServerConfig, defaultOgmiosWsConfig, mkWsUrl)
import Data.Either (Either(Left, Right))
import Data.Either (Either(Left))
import Data.Log.Level (LogLevel(Trace, Debug))
import Data.Map as Map
import Data.Newtype (class Newtype, unwrap, wrap)
Expand Down Expand Up @@ -74,8 +73,6 @@ mkWebSocket lvl serverCfg cb = do
_onWsMessage ws (logger Debug) $ defaultMessageListener (\_ _ -> pure unit)
[ messageDispatch ]
void $ _onWsError ws $ const onError
cb $ Right $ WebSocket ws
(mkListenerSet dispatcher pendingRequests)
pure $ \err -> cb $ Left $ err
where
logger :: LogLevel -> String -> Effect Unit
Expand Down

0 comments on commit 2718d8a

Please sign in to comment.