commit d5f14ec8e71bf4bc983535dc74b7af04d651da45
parent e93a9431facf52909c79f61b978db339a8c9ac11
Author: Christian Grothoff <christian@grothoff.org>
Date: Sun, 19 Apr 2020 01:07:38 +0200
start on DELETE instance
Diffstat:
4 files changed, 60 insertions(+), 1 deletion(-)
diff --git a/src/backend/Makefile.am b/src/backend/Makefile.am
@@ -23,6 +23,8 @@ taler_merchant_httpd_SOURCES = \
taler-merchant-httpd_config.c taler-merchant-httpd_config.h \
taler-merchant-httpd_exchanges.c taler-merchant-httpd_exchanges.h \
taler-merchant-httpd_mhd.c taler-merchant-httpd_mhd.h \
+ taler-merchant-httpd_private-delete-instances-ID.c \
+ taler-merchant-httpd_private-delete-instances-ID.h \
taler-merchant-httpd_private-get-instances.c \
taler-merchant-httpd_private-get-instances.h \
taler-merchant-httpd_private-get-instances-ID.c \
diff --git a/src/backend/taler-merchant-httpd.c b/src/backend/taler-merchant-httpd.c
@@ -28,6 +28,7 @@
#include "taler-merchant-httpd_config.h"
#include "taler-merchant-httpd_exchanges.h"
#include "taler-merchant-httpd_mhd.h"
+#include "taler-merchant-httpd_private-delete-instances-ID.h"
#include "taler-merchant-httpd_private-get-instances.h"
#include "taler-merchant-httpd_private-get-instances-ID.h"
#include "taler-merchant-httpd_private-post-instances.h"
@@ -735,13 +736,13 @@ url_handler (void *cls,
.method = MHD_HTTP_METHOD_GET,
.handler = &TMH_private_get_instances_ID
},
-#if 0
/* DELETE /instances/$ID/: */
{
.url_prefix = "/",
.method = MHD_HTTP_METHOD_DELETE,
.handler = &TMH_private_delete_instances_ID
},
+#if 0
/* PATCH /instances/$ID/: */
{
.url_prefix = "/",
diff --git a/src/backenddb/plugin_merchantdb_postgres.c b/src/backenddb/plugin_merchantdb_postgres.c
@@ -606,6 +606,36 @@ postgres_insert_account (
}
+/**
+ * Delete private key of an instance from our database.
+ *
+ * @param cls closure
+ * @param merchant_pub public key of the instance
+ * @return database result code
+ */
+static enum GNUNET_DB_QueryStatus
+postgres_delete_instance_private_key (
+ void *cls,
+ const struct TALER_MerchantPublicKeyP *merchant_pub)
+{
+}
+
+
+/**
+ * Purge an instance and all associated information from our database.
+ * Highly likely to cause undesired data loss. Use with caution.
+ *
+ * @param cls closure
+ * @param merchant_pub public key of the instance
+ * @return database result code
+ */
+static enum GNUNET_DB_QueryStatus
+postgres_purge_instance (void *cls,
+ const struct TALER_MerchantPublicKeyP *merchant_pub)
+{
+}
+
+
/* ********************* OLD API ************************** */
/**
diff --git a/src/include/taler_merchantdb_plugin.h b/src/include/taler_merchantdb_plugin.h
@@ -384,6 +384,32 @@ struct TALER_MERCHANTDB_Plugin
const struct TALER_MERCHANTDB_AccountDetails *account_details);
+ /**
+ * Delete private key of an instance from our database.
+ *
+ * @param cls closure
+ * @param merchant_pub public key of the instance
+ * @return database result code
+ */
+ enum GNUNET_DB_QueryStatus
+ (*delete_instance_private_key)(
+ void *cls,
+ const struct TALER_MerchantPublicKeyP *merchant_pub);
+
+
+ /**
+ * Purge an instance and all associated information from our database.
+ * Highly likely to cause undesired data loss. Use with caution.
+ *
+ * @param cls closure
+ * @param merchant_pub public key of the instance
+ * @return database result code
+ */
+ enum GNUNET_DB_QueryStatus
+ (*purge_instance)(void *cls,
+ const struct TALER_MerchantPublicKeyP *merchant_pub);
+
+
/* ****************** OLD API ******************** */
/**