cb_data);
}
+/**
+ * signon_identity_add_reference:
+ * @reference: reference to be added
+ * @cb: callback
+ * @user_data : user_data.
+ *
+ * Adds named reference to identity
+ */
+void signon_identity_add_reference(SignonIdentity *self,
+ const gchar *reference,
+ SignonIdentityReferenceAddedCb cb,
+ gpointer user_data)
+{
+ g_return_if_fail (SIGNON_IS_IDENTITY (self));
+
+ SignonIdentityPrivate *priv = self->priv;
+ g_return_if_fail (priv != NULL);
+
+ //TODO implement
+
+ if (cb)
+ (cb) (self, NULL, user_data);
+}
+
+/**
+ * signon_identity_remove_reference:
+ * @reference: reference to be removed
+ * @cb: callback
+ * @user_data : user_data.
+ *
+ * Removes named reference from identity
+ */
+void signon_identity_remove_reference(SignonIdentity *self,
+ const gchar *reference,
+ SignonIdentityReferenceRemovedCb cb,
+ gpointer user_data)
+{
+ g_return_if_fail (SIGNON_IS_IDENTITY (self));
+
+ SignonIdentityPrivate *priv = self->priv;
+ g_return_if_fail (priv != NULL);
+
+ //TODO implement
+
+ if (cb)
+ (cb) (self, NULL, user_data);
+}
+
/**
* signon_identity_info:
* @cb: callback
typedef SignonIdentityVoidCb SignonIdentityRemovedCb;
typedef SignonIdentityVoidCb SignonIdentitySignedOutCb;
+typedef SignonIdentityVoidCb SignonIdentityReferenceAddedCb;
+typedef SignonIdentityVoidCb SignonIdentityReferenceRemovedCb;
/*
* types used in SignonIdentityInfo
SignonIdentitySignedOutCb cb,
gpointer user_data);
+void signon_identity_add_reference(SignonIdentity *self,
+ const gchar *reference,
+ SignonIdentityReferenceAddedCb cb,
+ gpointer user_data);
+
+void signon_identity_remove_reference(SignonIdentity *self,
+ const gchar *reference,
+ SignonIdentityReferenceRemovedCb cb,
+ gpointer user_data);
+
SignonIdentityInfo *signon_identity_info_new ();
void signon_identity_info_free (SignonIdentityInfo *info);