Skip to content

Commit

Permalink
Implement query protocol state in cardano-cli using the new api
Browse files Browse the repository at this point in the history
  • Loading branch information
Jimbo4350 committed Jan 28, 2021
1 parent e18b2d9 commit da28b27
Show file tree
Hide file tree
Showing 4 changed files with 77 additions and 159 deletions.
2 changes: 1 addition & 1 deletion cardano-api/src/Cardano/Api/TxBody.hs
Original file line number Diff line number Diff line change
Expand Up @@ -236,7 +236,7 @@ data TxIn = TxIn TxId TxIx

deriving instance ToJSON TxIn
instance ToJSONKey TxIn where
toJSONKey = toJSONKeyText (\txIn -> Text.pack $ show txIn)
toJSONKey = toJSONKeyText (Text.pack . show)

newtype TxIx = TxIx Word
deriving stock (Eq, Ord, Show)
Expand Down
3 changes: 1 addition & 2 deletions cardano-cli/src/Cardano/CLI/Shelley/Commands.hs
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,6 @@ import Prelude

import Cardano.Api
import Cardano.Api.Modes
import Cardano.Api.Protocol (Protocol)
import Cardano.Api.Shelley hiding (PoolId)

import Ouroboros.Consensus.BlockchainTime (SystemStart (..))
Expand Down Expand Up @@ -278,7 +277,7 @@ data QueryCmd =
| QueryStakeAddressInfo AnyCardanoEra AnyConsensusModeParams StakeAddress NetworkId (Maybe OutputFile)
| QueryUTxO AnyCardanoEra AnyConsensusModeParams QueryFilter NetworkId (Maybe OutputFile)
| QueryLedgerState AnyCardanoEra AnyConsensusModeParams NetworkId (Maybe OutputFile)
| QueryProtocolState AnyCardanoEra Protocol NetworkId (Maybe OutputFile)
| QueryProtocolState AnyCardanoEra AnyConsensusModeParams NetworkId (Maybe OutputFile)
deriving Show

renderQueryCmd :: QueryCmd -> Text
Expand Down
40 changes: 1 addition & 39 deletions cardano-cli/src/Cardano/CLI/Shelley/Parsers.hs
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ import Prelude (String)

import Cardano.Api
import Cardano.Api.Modes
import Cardano.Api.Protocol (Protocol (..))
import Cardano.Api.Shelley

import Cardano.Chain.Slotting (EpochSlots (..))
Expand Down Expand Up @@ -709,7 +708,7 @@ pQueryCmd =
pQueryProtocolState :: Parser QueryCmd
pQueryProtocolState = QueryProtocolState
<$> pCardanoEra
<*> pProtocol
<*> pConsensusModeParams
<*> pNetworkId
<*> pMaybeOutputFile

Expand Down Expand Up @@ -2303,43 +2302,6 @@ pConsensusModeParams = asum
pByronConsensusMode :: Parser AnyConsensusModeParams
pByronConsensusMode = AnyConsensusModeParams . ByronModeParams <$> pEpochSlots

pProtocol :: Parser Protocol
pProtocol =
( Opt.flag' ()
( Opt.long "shelley-mode"
<> Opt.help "For talking to a node running in Shelley-only mode."
)
*> pShelleyMode
)
<|>
( Opt.flag' ()
( Opt.long "byron-mode"
<> Opt.help "For talking to a node running in Byron-only mode."
)
*> pByronMode
)
<|>
( Opt.flag' ()
( Opt.long "cardano-mode"
<> Opt.help "For talking to a node running in full Cardano mode (default)."
)
*> pCardanoMode
)
<|>
-- Default to the Cardano protocol.
pure
(CardanoProtocol
(EpochSlots defaultByronEpochSlots))
where
pByronMode :: Parser Protocol
pByronMode = ByronProtocol <$> pEpochSlots

pShelleyMode :: Parser Protocol
pShelleyMode = pure ShelleyProtocol

pCardanoMode :: Parser Protocol
pCardanoMode = CardanoProtocol <$> pEpochSlots

defaultByronEpochSlots :: Word64
defaultByronEpochSlots = 21600

Expand Down
Loading

0 comments on commit da28b27

Please sign in to comment.