[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-anastasis] branch master updated: deduplicate code
From: |
gnunet |
Subject: |
[taler-anastasis] branch master updated: deduplicate code |
Date: |
Sat, 13 Mar 2021 13:03:03 +0100 |
This is an automated email from the git hooks/post-receive script.
grothoff pushed a commit to branch master
in repository anastasis.
The following commit(s) were added to refs/heads/master by this push:
new e68a3fc deduplicate code
e68a3fc is described below
commit e68a3fc87a8c25481321447df36d897a1f3028f3
Author: Christian Grothoff <christian@grothoff.org>
AuthorDate: Sat Mar 13 12:57:44 2021 +0100
deduplicate code
---
contrib/gana | 2 +-
src/reducer/anastasis_api_backup_redux.c | 57 +++-----------------------------
src/reducer/anastasis_api_redux.c | 29 ++++++++++++----
src/reducer/anastasis_api_redux.h | 18 ++++++++++
4 files changed, 45 insertions(+), 61 deletions(-)
diff --git a/contrib/gana b/contrib/gana
index 880352a..943729d 160000
--- a/contrib/gana
+++ b/contrib/gana
@@ -1 +1 @@
-Subproject commit 880352a419beee4864f863182dbc695c859ee3f7
+Subproject commit 943729d4e2c2d97c3b5d737cf76b388086d94378
diff --git a/src/reducer/anastasis_api_backup_redux.c
b/src/reducer/anastasis_api_backup_redux.c
index cd3206c..a44a950 100644
--- a/src/reducer/anastasis_api_backup_redux.c
+++ b/src/reducer/anastasis_api_backup_redux.c
@@ -780,60 +780,11 @@ add_provider (json_t *state,
ANASTASIS_ActionCallback cb,
void *cb_cls)
{
- json_t *urls;
- json_t *tlist;
-
- tlist = json_object_get (state,
- "authentication_providers");
- if (NULL == tlist)
- {
- tlist = json_object ();
- GNUNET_assert (NULL != tlist);
- GNUNET_assert (0 ==
- json_object_set_new (state,
- "authentication_providers",
- tlist));
- }
- if (NULL == arguments)
- {
- ANASTASIS_redux_fail_ (cb,
- cb_cls,
- TALER_EC_ANASTASIS_REDUCER_INPUT_INVALID,
- "arguments missing");
- return NULL;
- }
- urls = json_object_get (arguments,
- "urls");
- if (NULL == urls)
- {
- ANASTASIS_redux_fail_ (cb,
- cb_cls,
- TALER_EC_ANASTASIS_REDUCER_INPUT_INVALID,
- "'urls' missing");
+ if (ANASTASIS_add_provider_ (state,
+ arguments,
+ cb,
+ cb_cls))
return NULL;
- }
- {
- size_t index;
- json_t *url;
-
- json_array_foreach (urls, index, url)
- {
- const char *url_str = json_string_value (url);
-
- if (NULL == url_str)
- {
- ANASTASIS_redux_fail_ (cb,
- cb_cls,
- TALER_EC_ANASTASIS_REDUCER_INPUT_INVALID,
- "'urls' must be strings");
- return NULL;
- }
- GNUNET_assert (0 ==
- json_object_set_new (tlist,
- url_str,
- json_object ()));
- }
- }
return ANASTASIS_REDUX_backup_begin_ (state,
NULL,
cb,
diff --git a/src/reducer/anastasis_api_redux.c
b/src/reducer/anastasis_api_redux.c
index fe68630..8a2df70 100644
--- a/src/reducer/anastasis_api_redux.c
+++ b/src/reducer/anastasis_api_redux.c
@@ -1317,6 +1317,24 @@ add_provider (json_t *state,
const json_t *arguments,
ANASTASIS_ActionCallback cb,
void *cb_cls)
+{
+ if (ANASTASIS_add_provider_ (state,
+ arguments,
+ cb,
+ cb_cls))
+ return NULL;
+ cb (cb_cls,
+ TALER_EC_NONE,
+ state);
+ return NULL;
+}
+
+
+bool
+ANASTASIS_add_provider_ (json_t *state,
+ const json_t *arguments,
+ ANASTASIS_ActionCallback cb,
+ void *cb_cls)
{
json_t *urls;
json_t *tlist;
@@ -1338,7 +1356,7 @@ add_provider (json_t *state,
cb_cls,
TALER_EC_ANASTASIS_REDUCER_INPUT_INVALID,
"arguments missing");
- return NULL;
+ return true;
}
urls = json_object_get (arguments,
"urls");
@@ -1348,7 +1366,7 @@ add_provider (json_t *state,
cb_cls,
TALER_EC_ANASTASIS_REDUCER_INPUT_INVALID,
"'urls' missing");
- return NULL;
+ return true;
}
{
size_t index;
@@ -1364,7 +1382,7 @@ add_provider (json_t *state,
cb_cls,
TALER_EC_ANASTASIS_REDUCER_INPUT_INVALID,
"'urls' must be strings");
- return NULL;
+ return true;
}
GNUNET_assert (0 ==
json_object_set_new (tlist,
@@ -1372,10 +1390,7 @@ add_provider (json_t *state,
json_object ()));
}
}
- cb (cb_cls,
- TALER_EC_NONE,
- state);
- return NULL;
+ return false;
}
diff --git a/src/reducer/anastasis_api_redux.h
b/src/reducer/anastasis_api_redux.h
index 5487eb6..306caf9 100644
--- a/src/reducer/anastasis_api_redux.h
+++ b/src/reducer/anastasis_api_redux.h
@@ -179,6 +179,24 @@ ANASTASIS_redux_fail_ (ANASTASIS_ActionCallback cb,
const char *detail);
+/**
+ * DispatchHandler/Callback function which is called for a
+ * "add_provider" action. Adds another Anastasis provider
+ * to the list of available providers for storing information.
+ *
+ * @param state state to operate on
+ * @param arguments arguments with a provider URL to add
+ * @param cb callback to call during/after operation
+ * @param cb_cls callback closure
+ * @return true if @a cb was invoked
+ */
+bool
+ANASTASIS_add_provider_ (json_t *state,
+ const json_t *arguments,
+ ANASTASIS_ActionCallback cb,
+ void *cb_cls);
+
+
/**
* Adds the server configuration of the Anastasis provider
* at @a url to the json @a state. Checks if we have
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [taler-anastasis] branch master updated: deduplicate code,
gnunet <=