Don't return the uuid
[src/app-framework-binder.git] / src / afb-context.c
index 6b3d6e9..8a1938a 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2015-2018 "IoT.bzh"
+ * Copyright (C) 2015-2019 "IoT.bzh"
  * Author "Fulup Ar Foll"
  * Author José Bollo <jose.bollo@iot.bzh>
  *
@@ -50,12 +50,19 @@ void afb_context_init(struct afb_context *context, struct afb_session *session,
        init_context(context, afb_session_addref(session), token);
 }
 
+void afb_context_init_validated(struct afb_context *context, struct afb_session *session)
+{
+       afb_context_init(context, session, NULL);
+       context->validated = 1;
+}
+
 void afb_context_subinit(struct afb_context *context, struct afb_context *super)
 {
        context->session = super->session;
        context->flags = 0;
        context->super = super;
        context->api_key = NULL;
+       context->token = NULL;
        context->validated = super->validated;
 }
 
@@ -70,18 +77,21 @@ int afb_context_connect(struct afb_context *context, const char *uuid, const cha
        init_context(context, session, token);
        if (created) {
                context->created = 1;
-               /* context->refreshing = 1; */
        }
        return 0;
 }
 
+int afb_context_connect_validated(struct afb_context *context, const char *uuid)
+{
+       int rc = afb_context_connect(context, uuid, NULL);
+       if (!rc)
+               context->validated = 1;
+       return rc;
+}
+
 void afb_context_disconnect(struct afb_context *context)
 {
        if (context->session && !context->super) {
-               if (context->refreshing && !context->refreshed) {
-                       afb_session_new_token (context->session);
-                       context->refreshed = 1;
-               }
                if (context->closing && !context->closed) {
                        afb_context_change_loa(context, 0);
                        afb_context_set(context, NULL, NULL);
@@ -92,33 +102,11 @@ void afb_context_disconnect(struct afb_context *context)
        }
 }
 
-const char *afb_context_sent_token(struct afb_context *context)
-{
-       if (context->session == NULL || context->closing || context->super)
-               return NULL;
-       if (!context->refreshing)
-               return NULL;
-       if (!context->refreshed) {
-               afb_session_new_token (context->session);
-               context->refreshed = 1;
-       }
-       return afb_session_token(context->session);
-}
-
 const char *afb_context_uuid(struct afb_context *context)
 {
        return context->session ? afb_session_uuid(context->session) : "";
 }
 
-const char *afb_context_sent_uuid(struct afb_context *context)
-{
-       if (context->session == NULL || context->closing || context->super)
-               return NULL;
-       if (!context->created)
-               return NULL;
-       return afb_session_uuid(context->session);
-}
-
 void *afb_context_make(struct afb_context *context, int replace, void *(*make_value)(void *closure), void (*free_value)(void *item), void *closure)
 {
        assert(context->session != NULL);
@@ -142,20 +130,6 @@ void afb_context_close(struct afb_context *context)
        context->closing = 1;
 }
 
-void afb_context_refresh(struct afb_context *context)
-{
-       if (context->super)
-               afb_context_refresh(context->super);
-       else {
-               assert(context->validated);
-               context->refreshing = 1;
-               if (!context->refreshed) {
-                       afb_session_new_token (context->session);
-                       context->refreshed = 1;
-               }
-       }
-}
-
 int afb_context_check(struct afb_context *context)
 {
        if (context->super)