From e56ed85f4f11f3daec80326f7d43635281b3806b Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Thu, 14 Feb 2019 13:41:46 +0100 Subject: preparations for #5536 --- src/include/taler_exchangedb_plugin.h | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) (limited to 'src/include/taler_exchangedb_plugin.h') diff --git a/src/include/taler_exchangedb_plugin.h b/src/include/taler_exchangedb_plugin.h index 89df42190..2d9f14208 100644 --- a/src/include/taler_exchangedb_plugin.h +++ b/src/include/taler_exchangedb_plugin.h @@ -711,7 +711,6 @@ typedef int int done); - /** * Callback used to process data of a merchant under KYC monitoring. * @@ -1139,6 +1138,19 @@ typedef void /* bool? */ int done); +/** + * Function called with information about the exchange's denomination keys. + * + * @parma cls closure + * @param denom_pub public key of the denomination + * @param issue detailed information about the denomination (value, expiration times, fees) + */ +typedef void +(*TALER_EXCHANGEDB_DenominationInfoIterator)(void *cls, + const struct TALER_DenominationPublicKey *denom_pub, + const struct TALER_EXCHANGEDB_DenominationKeyInformationP *issue); + + /** * @brief The plugin API, returned from the plugin's "init" function. * The argument given to "init" is simply a configuration handle. @@ -1273,6 +1285,20 @@ struct TALER_EXCHANGEDB_Plugin struct TALER_EXCHANGEDB_DenominationKeyInformationP *issue); + /** + * Function called on every known denomination key. Runs in its + * own read-only transaction (hence no session provided). + * + * @param cls the @e cls of this struct with the plugin-specific state + * @param cb function to call on each denomination key + * @param cb_cls closure for @a cb + * @return transaction status code + */ + enum GNUNET_DB_QueryStatus + (*iterate_denomination_info) (void *cls, + TALER_EXCHANGEDB_DenominationInfoIterator cb, + void *cb_cls); + /** * Get the summary of a reserve. * -- cgit v1.2.3