Esempio n. 1
0
void on_editgroupdiscoverbutton_clicked(GtkButton* button, gpointer user_data)
{
	g_assert(user_data);
	MSyncEnv* env = (MSyncEnv*)user_data;
	OSyncError* error = NULL;
	
	//TODO: dont block gui thread!
	//g_thread_create((GThreadFunc)msync_group_syncronize2, group, FALSE, NULL);
	
	OSyncEngine *engine = osync_engine_new(env->curgroup->group, &error);
	if (!engine) {
		goto error;
	}
	
	/* Discover the objtypes for the members */
	if(!osync_engine_discover_and_block(engine,env->curmember, &error))
		goto error_free_engine;
	
	osync_engine_unref(engine);
	return;

error_free_engine:
	osync_engine_unref(engine);
error:
	msync_error_message(GTK_WINDOW(env->mainwindow), TRUE, "Error while discovering: %s\n", osync_error_print(&error));
	osync_error_unref(&error);
}
Esempio n. 2
0
void discover_all_once(OSyncEngine *engine, OSyncError **error)
{
	OSyncGroup *group = osync_engine_get_group(engine);
	int i, max = osync_group_num_members(group); 
	for (i=0; i < max; i++) {
		OSyncMember *member = osync_group_nth_member(group, i);
		osync_engine_discover_and_block(engine, member, error);
		osync_member_save(member, error);
	}
}