/** * Generated by API Builder - https://www.apibuilder.io * Service version: 0.0.1-SNAPSHOT * User agent: apibuilder app.apibuilder.io/gimbalabs/hilltop-api/0.0.1-SNAPSHOT/anorm_2_6_parsers */ import anorm._ package io.gimbalabs.hilltop.api.v0.anorm.parsers { import io.gimbalabs.hilltop.api.v0.anorm.conversions.Standard._ import io.gimbalabs.hilltop.api.v0.anorm.conversions.Types._ object Country { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.Country] = parser(prefixOpt = Some(s"$prefix$sep")) def parser(name: String = "country", prefixOpt: Option[String] = None): RowParser[io.gimbalabs.hilltop.api.v0.models.Country] = { SqlParser.str(prefixOpt.getOrElse("") + name) map { case value => io.gimbalabs.hilltop.api.v0.models.Country(value) } } } object ActiveStakeAmount { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.ActiveStakeAmount] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( amountInLovelaces: String = "amount_in_lovelaces", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.ActiveStakeAmount] = { SqlParser.long(prefixOpt.getOrElse("") + amountInLovelaces) map { case amountInLovelaces => { io.gimbalabs.hilltop.api.v0.models.ActiveStakeAmount( amountInLovelaces = amountInLovelaces ) } } } } object AddressStakeAmount { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.AddressStakeAmount] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( stakeAddress: String = "stake_address", amountInLovelaces: String = "amount_in_lovelaces", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.AddressStakeAmount] = { SqlParser.str(prefixOpt.getOrElse("") + stakeAddress) ~ SqlParser.long(prefixOpt.getOrElse("") + amountInLovelaces) map { case stakeAddress ~ amountInLovelaces => { io.gimbalabs.hilltop.api.v0.models.AddressStakeAmount( stakeAddress = stakeAddress, amountInLovelaces = amountInLovelaces ) } } } } object Block { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.Block] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( number: String = "number", epochNumber: String = "epoch_number", slotNumber: String = "slot_number", epochSlotNumber: String = "epoch_slot_number", size: String = "size", transactionCount: String = "transaction_count", time: String = "time", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.Block] = { SqlParser.long(prefixOpt.getOrElse("") + number) ~ SqlParser.long(prefixOpt.getOrElse("") + epochNumber) ~ SqlParser.long(prefixOpt.getOrElse("") + slotNumber) ~ SqlParser.long(prefixOpt.getOrElse("") + epochSlotNumber) ~ SqlParser.long(prefixOpt.getOrElse("") + size) ~ SqlParser.long(prefixOpt.getOrElse("") + transactionCount) ~ SqlParser.get[_root_.org.joda.time.DateTime](prefixOpt.getOrElse("") + time) map { case number ~ epochNumber ~ slotNumber ~ epochSlotNumber ~ size ~ transactionCount ~ time => { io.gimbalabs.hilltop.api.v0.models.Block( number = number, epochNumber = epochNumber, slotNumber = slotNumber, epochSlotNumber = epochSlotNumber, size = size, transactionCount = transactionCount, time = time ) } } } } object CnftMetadataV001 { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.CnftMetadataV001] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( policyId: String = "policyId", tokens: String = "tokens", assetPrefix: String = "asset", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.CnftMetadataV001] = { SqlParser.str(prefixOpt.getOrElse("") + policyId) ~ SqlParser.get[Map[String, String]](prefixOpt.getOrElse("") + tokens) ~ io.gimbalabs.hilltop.api.v0.anorm.parsers.CnftMetadataV001Asset.parserWithPrefix(prefixOpt.getOrElse("") + assetPrefix) map { case policyId ~ tokens ~ asset => { io.gimbalabs.hilltop.api.v0.models.CnftMetadataV001( policyId = policyId, tokens = tokens, asset = asset ) } } } } object CnftMetadataV001Asset { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.CnftMetadataV001Asset] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( assetName: String = "assetName", attributes: String = "attributes", ipfs: String = "ipfs", mimeType: String = "mimeType", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.CnftMetadataV001Asset] = { SqlParser.str(prefixOpt.getOrElse("") + assetName).? ~ SqlParser.get[_root_.play.api.libs.json.JsValue](prefixOpt.getOrElse("") + attributes).? ~ SqlParser.str(prefixOpt.getOrElse("") + ipfs) ~ SqlParser.str(prefixOpt.getOrElse("") + mimeType).? map { case assetName ~ attributes ~ ipfs ~ mimeType => { io.gimbalabs.hilltop.api.v0.models.CnftMetadataV001Asset( assetName = assetName, attributes = attributes, ipfs = ipfs, mimeType = mimeType ) } } } } object DayBlock { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.DayBlock] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( firstPrefix: String = "first", lastPrefix: String = "last", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.DayBlock] = { io.gimbalabs.hilltop.api.v0.anorm.parsers.Block.parserWithPrefix(prefixOpt.getOrElse("") + firstPrefix) ~ io.gimbalabs.hilltop.api.v0.anorm.parsers.Block.parserWithPrefix(prefixOpt.getOrElse("") + lastPrefix) map { case first ~ last => { io.gimbalabs.hilltop.api.v0.models.DayBlock( first = first, last = last ) } } } } object Delegation { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.Delegation] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( stakingAddress: String = "staking_address", delegations: String = "delegations", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.Delegation] = { SqlParser.str(prefixOpt.getOrElse("") + stakingAddress) ~ SqlParser.get[Seq[io.gimbalabs.hilltop.api.v0.models.StakepoolDelegation]](prefixOpt.getOrElse("") + delegations) map { case stakingAddress ~ delegations => { io.gimbalabs.hilltop.api.v0.models.Delegation( stakingAddress = stakingAddress, delegations = delegations ) } } } } object DelegatorsCount { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.DelegatorsCount] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( delegatorsCountTotal: String = "delegators_count_total", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.DelegatorsCount] = { SqlParser.int(prefixOpt.getOrElse("") + delegatorsCountTotal) map { case delegatorsCountTotal => { io.gimbalabs.hilltop.api.v0.models.DelegatorsCount( delegatorsCountTotal = delegatorsCountTotal ) } } } } object Epoch { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.Epoch] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( outSum: String = "out_sum", fees: String = "fees", txCount: String = "tx_count", blkCount: String = "blk_count", number: String = "number", startTime: String = "start_time", endTime: String = "end_time", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.Epoch] = { SqlParser.long(prefixOpt.getOrElse("") + outSum) ~ SqlParser.long(prefixOpt.getOrElse("") + fees) ~ SqlParser.int(prefixOpt.getOrElse("") + txCount) ~ SqlParser.int(prefixOpt.getOrElse("") + blkCount) ~ SqlParser.int(prefixOpt.getOrElse("") + number) ~ SqlParser.get[_root_.org.joda.time.DateTime](prefixOpt.getOrElse("") + startTime) ~ SqlParser.get[_root_.org.joda.time.DateTime](prefixOpt.getOrElse("") + endTime) map { case outSum ~ fees ~ txCount ~ blkCount ~ number ~ startTime ~ endTime => { io.gimbalabs.hilltop.api.v0.models.Epoch( outSum = outSum, fees = fees, txCount = txCount, blkCount = blkCount, number = number, startTime = startTime, endTime = endTime ) } } } } object GenericError { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.GenericError] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( description: String = "description", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.GenericError] = { SqlParser.str(prefixOpt.getOrElse("") + description) map { case description => { io.gimbalabs.hilltop.api.v0.models.GenericError( description = description ) } } } } object Healthcheck { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.Healthcheck] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( status: String = "status", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.Healthcheck] = { SqlParser.str(prefixOpt.getOrElse("") + status) map { case status => { io.gimbalabs.hilltop.api.v0.models.Healthcheck( status = status ) } } } } object NativeAsset { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.NativeAsset] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( transactionId: String = "transaction_id", policyId: String = "policy_id", tokenName: String = "token_name", metadata: String = "metadata", blockNumber: String = "block_number", epochSlotNumber: String = "epoch_slot_number", epochNumber: String = "epoch_number", invalidBefore: String = "invalid_before", invalidHereafter: String = "invalid_hereafter", quantity: String = "quantity", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.NativeAsset] = { SqlParser.str(prefixOpt.getOrElse("") + transactionId) ~ SqlParser.str(prefixOpt.getOrElse("") + policyId) ~ SqlParser.str(prefixOpt.getOrElse("") + tokenName) ~ SqlParser.get[_root_.play.api.libs.json.JsValue](prefixOpt.getOrElse("") + metadata) ~ SqlParser.long(prefixOpt.getOrElse("") + blockNumber) ~ SqlParser.long(prefixOpt.getOrElse("") + epochSlotNumber) ~ SqlParser.long(prefixOpt.getOrElse("") + epochNumber) ~ SqlParser.long(prefixOpt.getOrElse("") + invalidBefore).? ~ SqlParser.long(prefixOpt.getOrElse("") + invalidHereafter).? ~ SqlParser.long(prefixOpt.getOrElse("") + quantity) map { case transactionId ~ policyId ~ tokenName ~ metadata ~ blockNumber ~ epochSlotNumber ~ epochNumber ~ invalidBefore ~ invalidHereafter ~ quantity => { io.gimbalabs.hilltop.api.v0.models.NativeAsset( transactionId = transactionId, policyId = policyId, tokenName = tokenName, metadata = metadata, blockNumber = blockNumber, epochSlotNumber = epochSlotNumber, epochNumber = epochNumber, invalidBefore = invalidBefore, invalidHereafter = invalidHereafter, quantity = quantity ) } } } } object NativeAssetDetails { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.NativeAssetDetails] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( policyId: String = "policy_id", assetName: String = "asset_name", metadata: String = "metadata", mintedAt: String = "minted_at", lastMintedAt: String = "last_minted_at", firstMintingTxBlock: String = "first_minting_tx_block", lastMintingTxBlock: String = "last_minting_tx_block", mintingTxHash: String = "minting_tx_hash", circulatingSupply: String = "circulating_supply", fingerprint: String = "fingerprint", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.NativeAssetDetails] = { SqlParser.str(prefixOpt.getOrElse("") + policyId) ~ SqlParser.str(prefixOpt.getOrElse("") + assetName) ~ SqlParser.get[_root_.play.api.libs.json.JsValue](prefixOpt.getOrElse("") + metadata) ~ SqlParser.get[_root_.org.joda.time.DateTime](prefixOpt.getOrElse("") + mintedAt) ~ SqlParser.get[_root_.org.joda.time.DateTime](prefixOpt.getOrElse("") + lastMintedAt) ~ SqlParser.long(prefixOpt.getOrElse("") + firstMintingTxBlock) ~ SqlParser.long(prefixOpt.getOrElse("") + lastMintingTxBlock) ~ SqlParser.str(prefixOpt.getOrElse("") + mintingTxHash) ~ SqlParser.long(prefixOpt.getOrElse("") + circulatingSupply) ~ SqlParser.str(prefixOpt.getOrElse("") + fingerprint) map { case policyId ~ assetName ~ metadata ~ mintedAt ~ lastMintedAt ~ firstMintingTxBlock ~ lastMintingTxBlock ~ mintingTxHash ~ circulatingSupply ~ fingerprint => { io.gimbalabs.hilltop.api.v0.models.NativeAssetDetails( policyId = policyId, assetName = assetName, metadata = metadata, mintedAt = mintedAt, lastMintedAt = lastMintedAt, firstMintingTxBlock = firstMintingTxBlock, lastMintingTxBlock = lastMintingTxBlock, mintingTxHash = mintingTxHash, circulatingSupply = circulatingSupply, fingerprint = fingerprint ) } } } } object NativeAssetDetailsRequest { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.NativeAssetDetailsRequest] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( policyId: String = "policy_id", assetNames: String = "asset_names", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.NativeAssetDetailsRequest] = { SqlParser.str(prefixOpt.getOrElse("") + policyId) ~ SqlParser.get[Seq[String]](prefixOpt.getOrElse("") + assetNames).? map { case policyId ~ assetNames => { io.gimbalabs.hilltop.api.v0.models.NativeAssetDetailsRequest( policyId = policyId, assetNames = assetNames ) } } } } object NativeAssetId { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.NativeAssetId] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( policyId: String = "policy_id", assetName: String = "asset_name", blockNumber: String = "block_number", blockTime: String = "block_time", fingerprint: String = "fingerprint", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.NativeAssetId] = { SqlParser.str(prefixOpt.getOrElse("") + policyId) ~ SqlParser.str(prefixOpt.getOrElse("") + assetName) ~ SqlParser.long(prefixOpt.getOrElse("") + blockNumber) ~ SqlParser.get[_root_.org.joda.time.DateTime](prefixOpt.getOrElse("") + blockTime) ~ SqlParser.str(prefixOpt.getOrElse("") + fingerprint) map { case policyId ~ assetName ~ blockNumber ~ blockTime ~ fingerprint => { io.gimbalabs.hilltop.api.v0.models.NativeAssetId( policyId = policyId, assetName = assetName, blockNumber = blockNumber, blockTime = blockTime, fingerprint = fingerprint ) } } } } object NftDetails { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.NftDetails] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( policyId: String = "policy_id", assetNameRaw: String = "asset_name_raw", assetName: String = "asset_name", metadata: String = "metadata", mintedAt: String = "minted_at", mintedAtBlock: String = "minted_at_block", mintingTxHash: String = "minting_tx_hash", amount: String = "amount", fingerprint: String = "fingerprint", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.NftDetails] = { SqlParser.str(prefixOpt.getOrElse("") + policyId) ~ SqlParser.str(prefixOpt.getOrElse("") + assetNameRaw) ~ SqlParser.str(prefixOpt.getOrElse("") + assetName).? ~ SqlParser.get[_root_.play.api.libs.json.JsValue](prefixOpt.getOrElse("") + metadata) ~ SqlParser.get[_root_.org.joda.time.DateTime](prefixOpt.getOrElse("") + mintedAt) ~ SqlParser.long(prefixOpt.getOrElse("") + mintedAtBlock) ~ SqlParser.str(prefixOpt.getOrElse("") + mintingTxHash) ~ SqlParser.long(prefixOpt.getOrElse("") + amount) ~ SqlParser.str(prefixOpt.getOrElse("") + fingerprint) map { case policyId ~ assetNameRaw ~ assetName ~ metadata ~ mintedAt ~ mintedAtBlock ~ mintingTxHash ~ amount ~ fingerprint => { io.gimbalabs.hilltop.api.v0.models.NftDetails( policyId = policyId, assetNameRaw = assetNameRaw, assetName = assetName, metadata = metadata, mintedAt = mintedAt, mintedAtBlock = mintedAtBlock, mintingTxHash = mintingTxHash, amount = amount, fingerprint = fingerprint ) } } } } object NftMetadata { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.NftMetadata] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( name: String = "name", image: String = "image", mediaType: String = "mediaType", files: String = "files", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.NftMetadata] = { SqlParser.str(prefixOpt.getOrElse("") + name).? ~ SqlParser.str(prefixOpt.getOrElse("") + image).? ~ SqlParser.str(prefixOpt.getOrElse("") + mediaType).? ~ SqlParser.get[Seq[io.gimbalabs.hilltop.api.v0.models.NftMetadataFile]](prefixOpt.getOrElse("") + files).? map { case name ~ image ~ mediaType ~ files => { io.gimbalabs.hilltop.api.v0.models.NftMetadata( name = name, image = image, mediaType = mediaType, files = files ) } } } } object NftMetadataFile { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.NftMetadataFile] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( name: String = "name", src: String = "src", mediaType: String = "mediaType", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.NftMetadataFile] = { SqlParser.str(prefixOpt.getOrElse("") + name).? ~ SqlParser.str(prefixOpt.getOrElse("") + src).? ~ SqlParser.str(prefixOpt.getOrElse("") + mediaType).? map { case name ~ src ~ mediaType => { io.gimbalabs.hilltop.api.v0.models.NftMetadataFile( name = name, src = src, mediaType = mediaType ) } } } } object NftMetadataFilesAsObject { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.NftMetadataFilesAsObject] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( name: String = "name", image: String = "image", mediaType: String = "mediaType", filesPrefix: String = "files", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.NftMetadataFilesAsObject] = { SqlParser.str(prefixOpt.getOrElse("") + name).? ~ SqlParser.str(prefixOpt.getOrElse("") + image).? ~ SqlParser.str(prefixOpt.getOrElse("") + mediaType).? ~ io.gimbalabs.hilltop.api.v0.anorm.parsers.NftMetadataFile.parserWithPrefix(prefixOpt.getOrElse("") + filesPrefix).? map { case name ~ image ~ mediaType ~ files => { io.gimbalabs.hilltop.api.v0.models.NftMetadataFilesAsObject( name = name, image = image, mediaType = mediaType, files = files ) } } } } object NftMetadataImgArray { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.NftMetadataImgArray] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( name: String = "name", image: String = "image", mediaType: String = "mediaType", files: String = "files", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.NftMetadataImgArray] = { SqlParser.str(prefixOpt.getOrElse("") + name).? ~ SqlParser.get[Seq[String]](prefixOpt.getOrElse("") + image).? ~ SqlParser.str(prefixOpt.getOrElse("") + mediaType).? ~ SqlParser.get[Seq[io.gimbalabs.hilltop.api.v0.models.NftMetadataFile]](prefixOpt.getOrElse("") + files).? map { case name ~ image ~ mediaType ~ files => { io.gimbalabs.hilltop.api.v0.models.NftMetadataImgArray( name = name, image = image, mediaType = mediaType, files = files ) } } } } object NftMetadataNoFiles { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.NftMetadataNoFiles] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( name: String = "name", image: String = "image", mediaType: String = "mediaType", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.NftMetadataNoFiles] = { SqlParser.str(prefixOpt.getOrElse("") + name).? ~ SqlParser.str(prefixOpt.getOrElse("") + image).? ~ SqlParser.str(prefixOpt.getOrElse("") + mediaType).? map { case name ~ image ~ mediaType => { io.gimbalabs.hilltop.api.v0.models.NftMetadataNoFiles( name = name, image = image, mediaType = mediaType ) } } } } object PoolRetiring { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.PoolRetiring] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( tickerName: String = "ticker_name", poolId: String = "pool_id", certificateIndex: String = "certificate_index", epochNumber: String = "epoch_number", blockNumber: String = "block_number", retiringAtEpoch: String = "retiring_at_epoch", txHash: String = "tx_hash", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.PoolRetiring] = { SqlParser.str(prefixOpt.getOrElse("") + tickerName).? ~ SqlParser.str(prefixOpt.getOrElse("") + poolId) ~ SqlParser.int(prefixOpt.getOrElse("") + certificateIndex) ~ SqlParser.long(prefixOpt.getOrElse("") + epochNumber) ~ SqlParser.long(prefixOpt.getOrElse("") + blockNumber) ~ SqlParser.long(prefixOpt.getOrElse("") + retiringAtEpoch) ~ SqlParser.str(prefixOpt.getOrElse("") + txHash) map { case tickerName ~ poolId ~ certificateIndex ~ epochNumber ~ blockNumber ~ retiringAtEpoch ~ txHash => { io.gimbalabs.hilltop.api.v0.models.PoolRetiring( tickerName = tickerName, poolId = poolId, certificateIndex = certificateIndex, epochNumber = epochNumber, blockNumber = blockNumber, retiringAtEpoch = retiringAtEpoch, txHash = txHash ) } } } } object PoolUpdate { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.PoolUpdate] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( epochNumber: String = "epoch_number", blockNumber: String = "block_number", txHash: String = "tx_hash", poolTickerName: String = "pool_ticker_name", poolBech32Id: String = "pool_bech32_id", certificateIndex: String = "certificate_index", vrfKeyHash: String = "vrf_key_hash", pledge: String = "pledge", rewardAddress: String = "reward_address", activeEpochNumber: String = "active_epoch_number", margin: String = "margin", fixedCost: String = "fixed_cost", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.PoolUpdate] = { SqlParser.int(prefixOpt.getOrElse("") + epochNumber) ~ SqlParser.long(prefixOpt.getOrElse("") + blockNumber) ~ SqlParser.str(prefixOpt.getOrElse("") + txHash) ~ SqlParser.str(prefixOpt.getOrElse("") + poolTickerName).? ~ SqlParser.str(prefixOpt.getOrElse("") + poolBech32Id) ~ SqlParser.int(prefixOpt.getOrElse("") + certificateIndex) ~ SqlParser.str(prefixOpt.getOrElse("") + vrfKeyHash) ~ SqlParser.long(prefixOpt.getOrElse("") + pledge) ~ SqlParser.str(prefixOpt.getOrElse("") + rewardAddress) ~ SqlParser.long(prefixOpt.getOrElse("") + activeEpochNumber) ~ SqlParser.get[Double](prefixOpt.getOrElse("") + margin) ~ SqlParser.long(prefixOpt.getOrElse("") + fixedCost) map { case epochNumber ~ blockNumber ~ txHash ~ poolTickerName ~ poolBech32Id ~ certificateIndex ~ vrfKeyHash ~ pledge ~ rewardAddress ~ activeEpochNumber ~ margin ~ fixedCost => { io.gimbalabs.hilltop.api.v0.models.PoolUpdate( epochNumber = epochNumber, blockNumber = blockNumber, txHash = txHash, poolTickerName = poolTickerName, poolBech32Id = poolBech32Id, certificateIndex = certificateIndex, vrfKeyHash = vrfKeyHash, pledge = pledge, rewardAddress = rewardAddress, activeEpochNumber = activeEpochNumber, margin = margin, fixedCost = fixedCost ) } } } } object Reward { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.Reward] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( stakingAddress: String = "staking_address", epoch: String = "epoch", amount: String = "amount", poolId: String = "pool_id", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.Reward] = { SqlParser.str(prefixOpt.getOrElse("") + stakingAddress) ~ SqlParser.int(prefixOpt.getOrElse("") + epoch) ~ SqlParser.long(prefixOpt.getOrElse("") + amount) ~ SqlParser.str(prefixOpt.getOrElse("") + poolId) map { case stakingAddress ~ epoch ~ amount ~ poolId => { io.gimbalabs.hilltop.api.v0.models.Reward( stakingAddress = stakingAddress, epoch = epoch, amount = amount, poolId = poolId ) } } } } object Sigma { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.Sigma] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( sigma: String = "sigma", epoch: String = "epoch", totalStaked: String = "total_staked", activeStake: String = "active_stake", nonce: String = "nonce", d: String = "d", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.Sigma] = { SqlParser.get[Double](prefixOpt.getOrElse("") + sigma) ~ SqlParser.int(prefixOpt.getOrElse("") + epoch) ~ SqlParser.long(prefixOpt.getOrElse("") + totalStaked) ~ SqlParser.long(prefixOpt.getOrElse("") + activeStake) ~ SqlParser.str(prefixOpt.getOrElse("") + nonce) ~ SqlParser.get[Double](prefixOpt.getOrElse("") + d) map { case sigma ~ epoch ~ totalStaked ~ activeStake ~ nonce ~ d => { io.gimbalabs.hilltop.api.v0.models.Sigma( sigma = sigma, epoch = epoch, totalStaked = totalStaked, activeStake = activeStake, nonce = nonce, d = d ) } } } } object Stakepool { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.Stakepool] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( id: String = "id", poolIdBech32: String = "pool_id_bech32", metadataPrefix: String = "metadata", cost: String = "cost", margin: String = "margin", pledge: String = "pledge", activeStake: String = "active_stake", saturation: String = "saturation", retiringAtEpoch: String = "retiring_at_epoch", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.Stakepool] = { SqlParser.str(prefixOpt.getOrElse("") + id) ~ SqlParser.str(prefixOpt.getOrElse("") + poolIdBech32) ~ io.gimbalabs.hilltop.api.v0.anorm.parsers.StakepoolMetadata.parserWithPrefix(prefixOpt.getOrElse("") + metadataPrefix).? ~ SqlParser.long(prefixOpt.getOrElse("") + cost) ~ SqlParser.get[Double](prefixOpt.getOrElse("") + margin) ~ SqlParser.long(prefixOpt.getOrElse("") + pledge) ~ SqlParser.long(prefixOpt.getOrElse("") + activeStake) ~ SqlParser.get[Double](prefixOpt.getOrElse("") + saturation) ~ SqlParser.long(prefixOpt.getOrElse("") + retiringAtEpoch).? map { case id ~ poolIdBech32 ~ metadata ~ cost ~ margin ~ pledge ~ activeStake ~ saturation ~ retiringAtEpoch => { io.gimbalabs.hilltop.api.v0.models.Stakepool( id = id, poolIdBech32 = poolIdBech32, metadata = metadata, cost = cost, margin = margin, pledge = pledge, activeStake = activeStake, saturation = saturation, retiringAtEpoch = retiringAtEpoch ) } } } } object StakepoolDelegation { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.StakepoolDelegation] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( stakepoolPrefix: String = "stakepool", epoch: String = "epoch", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.StakepoolDelegation] = { io.gimbalabs.hilltop.api.v0.anorm.parsers.Stakepool.parserWithPrefix(prefixOpt.getOrElse("") + stakepoolPrefix) ~ SqlParser.int(prefixOpt.getOrElse("") + epoch) map { case stakepool ~ epoch => { io.gimbalabs.hilltop.api.v0.models.StakepoolDelegation( stakepool = stakepool, epoch = epoch ) } } } } object StakepoolMetadata { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.StakepoolMetadata] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( name: String = "name", ticker: String = "ticker", homepage: String = "homepage", description: String = "description", extended: String = "extended", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.StakepoolMetadata] = { SqlParser.str(prefixOpt.getOrElse("") + name) ~ SqlParser.str(prefixOpt.getOrElse("") + ticker) ~ SqlParser.str(prefixOpt.getOrElse("") + homepage) ~ SqlParser.str(prefixOpt.getOrElse("") + description) ~ SqlParser.str(prefixOpt.getOrElse("") + extended).? map { case name ~ ticker ~ homepage ~ description ~ extended => { io.gimbalabs.hilltop.api.v0.models.StakepoolMetadata( name = name, ticker = ticker, homepage = homepage, description = description, extended = extended ) } } } } object Transaction { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.Transaction] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( hash: String = "hash", block: String = "block", timestamp: String = "timestamp", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.Transaction] = { SqlParser.str(prefixOpt.getOrElse("") + hash) ~ SqlParser.long(prefixOpt.getOrElse("") + block) ~ SqlParser.get[_root_.org.joda.time.DateTime](prefixOpt.getOrElse("") + timestamp) map { case hash ~ block ~ timestamp => { io.gimbalabs.hilltop.api.v0.models.Transaction( hash = hash, block = block, timestamp = timestamp ) } } } } object TransactionHistoryRequest { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.TransactionHistoryRequest] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( addresses: String = "addresses", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.TransactionHistoryRequest] = { SqlParser.get[Seq[String]](prefixOpt.getOrElse("") + addresses) map { case addresses => { io.gimbalabs.hilltop.api.v0.models.TransactionHistoryRequest( addresses = addresses ) } } } } object WalletBalance { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[io.gimbalabs.hilltop.api.v0.models.WalletBalance] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( balance: String = "balance", prefixOpt: Option[String] = None ): RowParser[io.gimbalabs.hilltop.api.v0.models.WalletBalance] = { SqlParser.long(prefixOpt.getOrElse("") + balance) map { case balance => { io.gimbalabs.hilltop.api.v0.models.WalletBalance( balance = balance ) } } } } }