diff options
Diffstat (limited to 'src/backend/taler-merchant-httpd_private-get-instances-ID.c')
-rw-r--r-- | src/backend/taler-merchant-httpd_private-get-instances-ID.c | 43 |
1 files changed, 36 insertions, 7 deletions
diff --git a/src/backend/taler-merchant-httpd_private-get-instances-ID.c b/src/backend/taler-merchant-httpd_private-get-instances-ID.c index 8f392393..6c3730a2 100644 --- a/src/backend/taler-merchant-httpd_private-get-instances-ID.c +++ b/src/backend/taler-merchant-httpd_private-get-instances-ID.c @@ -26,17 +26,14 @@ /** * Handle a GET "/instances/$ID" request. * - * @param rh context of the handler + * @param mi instance to return information about * @param connection the MHD connection to handle - * @param[in,out] hc context with further information about the request * @return MHD result code */ -MHD_RESULT -TMH_private_get_instances_ID (const struct TMH_RequestHandler *rh, - struct MHD_Connection *connection, - struct TMH_HandlerContext *hc) +static MHD_RESULT +get_instances_ID (struct TMH_MerchantInstance *mi, + struct MHD_Connection *connection) { - struct TMH_MerchantInstance *mi = hc->instance; json_t *ja; GNUNET_assert (NULL != mi); @@ -104,4 +101,36 @@ TMH_private_get_instances_ID (const struct TMH_RequestHandler *rh, } +MHD_RESULT +TMH_private_get_instances_ID (const struct TMH_RequestHandler *rh, + struct MHD_Connection *connection, + struct TMH_HandlerContext *hc) +{ + struct TMH_MerchantInstance *mi = hc->instance; + + return get_instances_ID (mi, + connection); +} + + +MHD_RESULT +TMH_private_get_instances_default_ID (const struct TMH_RequestHandler *rh, + struct MHD_Connection *connection, + struct TMH_HandlerContext *hc) +{ + struct TMH_MerchantInstance *mi; + + mi = TMH_lookup_instance (hc->infix); + if (NULL == mi) + { + return TALER_MHD_reply_with_error (connection, + MHD_HTTP_NOT_FOUND, + TALER_EC_MERCHANT_GENERIC_INSTANCE_UNKNOWN, + hc->infix); + } + return get_instances_ID (mi, + connection); +} + + /* end of taler-merchant-httpd_private-get-instances-ID.c */ |