OpenSync
0.22
|
00001 /* 00002 * libosengine - A synchronization engine for the opensync framework 00003 * Copyright (C) 2004-2005 Armin Bauer <armin.bauer@opensync.org> 00004 * 00005 * This library is free software; you can redistribute it and/or 00006 * modify it under the terms of the GNU Lesser General Public 00007 * License as published by the Free Software Foundation; either 00008 * version 2.1 of the License, or (at your option) any later version. 00009 * 00010 * This library is distributed in the hope that it will be useful, 00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00013 * Lesser General Public License for more details. 00014 * 00015 * You should have received a copy of the GNU Lesser General Public 00016 * License along with this library; if not, write to the Free Software 00017 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00018 * 00019 */ 00020 00021 #include "engine.h" 00022 #include "engine_internals.h" 00023 00024 void osengine_print_all(OSyncEngine *engine) 00025 { 00026 GList *i; 00027 GList *n; 00028 osync_debug("ENG", 2, "ENGINE:"); 00029 osync_debug("ENG", 2, "running: %s", osync_flag_get_state(engine->fl_running) ? "YES" : "NO"); 00030 osync_debug("ENG", 2, "sync: %s", osync_flag_get_state(engine->fl_sync) ? "YES" : "NO"); 00031 osync_debug("ENG", 2, "stop: %s", osync_flag_get_state(engine->fl_stop) ? "YES" : "NO"); 00032 osync_debug("ENG", 2, "sent changes: %s (no: %i, yes: %i)", osync_flag_get_state(engine->cmb_sent_changes) ? "YES" : "NO", engine->cmb_sent_changes->num_not_set, engine->cmb_sent_changes->num_set); 00033 osync_debug("ENG", 2, "all mapped: %s (no: %i, yes: %i)", osync_flag_get_state(engine->cmb_entries_mapped) ? "YES" : "NO", engine->cmb_entries_mapped->num_not_set, engine->cmb_entries_mapped->num_set); 00034 osync_debug("ENG", 2, "synced: %s (no: %i, yes: %i)", osync_flag_get_state(engine->cmb_synced) ? "YES" : "NO", engine->cmb_synced->num_not_set, engine->cmb_synced->num_set); 00035 osync_debug("ENG", 2, "conflicts checked: %s (no: %i, yes: %i)", osync_flag_get_state(engine->cmb_chkconflict) ? "YES" : "NO", engine->cmb_chkconflict->num_not_set, engine->cmb_chkconflict->num_set); 00036 osync_debug("ENG", 2, "finished: %s (no: %i, yes: %i)", osync_flag_get_state(engine->cmb_finished) ? "YES" : "NO", engine->cmb_finished->num_not_set, engine->cmb_finished->num_set); 00037 osync_debug("ENG", 2, "connected: %s (no: %i, yes: %i)", osync_flag_get_state(engine->cmb_connected) ? "YES" : "NO", engine->cmb_connected->num_not_set, engine->cmb_connected->num_set); 00038 osync_debug("ENG", 2, "Multiplied: %s (no: %i, yes: %i)", osync_flag_get_state(engine->cmb_multiplied) ? "YES" : "NO", engine->cmb_multiplied->num_not_set, engine->cmb_multiplied->num_set); 00039 00040 for (i = engine->clients; i; i = i->next) { 00041 OSyncClient *client = i->data; 00042 osync_debug("ENG", 2, "\tCLIENT %lli %s:", osync_member_get_id(client->member), osync_member_get_pluginname(client->member)); 00043 osync_debug("ENG", 2, "\tconnected: %s", osync_flag_get_state(client->fl_connected) ? "YES" : "NO"); 00044 osync_debug("ENG", 2, "\tsent changes: %s", osync_flag_get_state(client->fl_sent_changes) ? "YES" : "NO"); 00045 osync_debug("ENG", 2, "\tdone: %s", osync_flag_get_state(client->fl_done) ? "YES" : "NO"); 00046 osync_debug("ENG", 2, "\tfinished: %s", osync_flag_get_state(client->fl_finished) ? "YES" : "NO"); 00047 } 00048 00049 for (i = engine->maptable->mappings; i; i = i->next) { 00050 OSyncMapping *mapping = i->data; 00051 osync_debug("ENG", 2, "MAPPING %p ID: %lli:", mapping, mapping->id); 00052 osync_debug("ENG", 2, "solved: %s", osync_flag_get_state(mapping->fl_solved) ? "YES" : "NO"); 00053 osync_debug("ENG", 2, "synced: %s (no: %i, yes: %i)", osync_flag_get_state(mapping->cmb_synced) ? "YES" : "NO", mapping->cmb_synced->num_not_set, mapping->cmb_synced->num_set); 00054 osync_debug("ENG", 2, "conflict checked: %s", osync_flag_get_state(mapping->fl_chkconflict) ? "YES" : "NO"); 00055 osync_debug("ENG", 2, "muliplied: %s", osync_flag_get_state(mapping->fl_multiplied) ? "YES" : "NO"); 00056 osync_debug("ENG", 2, "has data: %s", osync_flag_get_state(mapping->cmb_has_data) ? "YES" : "NO"); 00057 osync_debug("ENG", 2, "has info: %s (no: %i, yes: %i)", osync_flag_get_state(mapping->cmb_has_info) ? "YES" : "NO", mapping->cmb_has_info->num_not_set, mapping->cmb_has_info->num_set); 00058 osync_debug("ENG", 2, "delete: %s (no: %i, yes: %i)", osync_flag_get_state(mapping->cmb_deleted) ? "YES" : "NO", mapping->cmb_deleted->num_not_set, mapping->cmb_deleted->num_set); 00059 00060 for (n = mapping->entries; n; n = n->next) { 00061 OSyncMappingEntry *entry = n->data; 00062 osync_debug("ENG", 2, "\tENTRY: %p, CHANGE %p, Member %lli:", entry, entry->change, osync_member_get_id(entry->client->member)); 00063 osync_debug("ENG", 2, "\tuid: %s, changetype: %i", osync_change_get_uid(entry->change), osync_change_get_changetype(entry->change)); 00064 osync_debug("ENG", 2, "\tObjType: %s, Format %s", osync_change_get_objtype(entry->change) ? osync_objtype_get_name(osync_change_get_objtype(entry->change)) : "None", osync_change_get_objformat(entry->change) ? osync_objformat_get_name(osync_change_get_objformat(entry->change)) : "None"); 00065 osync_debug("ENG", 2, "\thas data: %s", osync_flag_get_state(entry->fl_has_data) ? "YES" : "NO"); 00066 osync_debug("ENG", 2, "\tdirty: %s", osync_flag_get_state(entry->fl_dirty) ? "YES" : "NO"); 00067 osync_debug("ENG", 2, "\tmapped: %s", osync_flag_get_state(entry->fl_mapped) ? "YES" : "NO"); 00068 osync_debug("ENG", 2, "\thas info: %s", osync_flag_get_state(entry->fl_has_info) ? "YES" : "NO"); 00069 osync_debug("ENG", 2, "\tsynced: %s", osync_flag_get_state(entry->fl_synced) ? "YES" : "NO"); 00070 osync_debug("ENG", 2, "\tdeleted: %s", osync_flag_get_state(entry->fl_deleted) ? "YES" : "NO"); 00071 } 00072 } 00073 00074 for (n = engine->maptable->unmapped; n; n = n->next) { 00075 OSyncMappingEntry *entry = n->data; 00076 osync_debug("ENG", 2, "UNMAPPED ENTRY %p with change %p:", entry, entry->change); 00077 osync_debug("ENG", 2, "uid: %s, changetype: %i", osync_change_get_uid(entry->change), osync_change_get_changetype(entry->change)); 00078 osync_debug("ENG", 2, "ObjType: %s, Format %s", osync_change_get_objtype(entry->change) ? osync_objtype_get_name(osync_change_get_objtype(entry->change)) : "None", osync_change_get_objformat(entry->change) ? osync_objformat_get_name(osync_change_get_objformat(entry->change)) : "None"); 00079 osync_debug("ENG", 2, "has data: %s", osync_flag_get_state(entry->fl_has_data) ? "YES" : "NO"); 00080 osync_debug("ENG", 2, "dirty: %s", osync_flag_get_state(entry->fl_dirty) ? "YES" : "NO"); 00081 osync_debug("ENG", 2, "mapped: %s", osync_flag_get_state(entry->fl_mapped) ? "YES" : "NO"); 00082 osync_debug("ENG", 2, "has info: %s", osync_flag_get_state(entry->fl_has_info) ? "YES" : "NO"); 00083 osync_debug("ENG", 2, "synced: %s", osync_flag_get_state(entry->fl_synced) ? "YES" : "NO"); 00084 } 00085 } 00086 00087 void osengine_print_flags(OSyncEngine *engine) 00088 { 00089 osync_trace(TRACE_INTERNAL, "ENG(RUN%i,STOP%i,SENT%i,READ%i,MAP%i,CHK%i,MUL%i,SYNC%i,COMMITTED%i)", \ 00090 osync_flag_is_set(engine->fl_running), \ 00091 osync_flag_is_not_set(engine->fl_stop), \ 00092 osync_flag_is_set(engine->cmb_sent_changes), \ 00093 osync_flag_is_set(engine->cmb_read_all), \ 00094 osync_flag_is_set(engine->cmb_entries_mapped), \ 00095 osync_flag_is_set(engine->cmb_chkconflict), \ 00096 osync_flag_is_set(engine->cmb_multiplied), \ 00097 osync_flag_is_set(engine->cmb_synced), \ 00098 osync_flag_is_set(engine->cmb_committed_all)); 00099 } 00100 00101 void osync_client_print_flags(OSyncClient *client) 00102 { 00103 osync_trace(TRACE_INTERNAL, "CL(CON%i,SENT%i,DONE%i,FIN%i,COMMITTED%i)", \ 00104 osync_flag_is_set(client->fl_connected), \ 00105 osync_flag_is_set(client->fl_sent_changes), \ 00106 osync_flag_is_set(client->fl_done), \ 00107 osync_flag_is_set(client->fl_finished), \ 00108 osync_flag_is_set(client->fl_committed_all)); 00109 } 00110 00111 void osengine_mappingentry_print_flags(OSyncMappingEntry *entry) 00112 { 00113 osync_trace(TRACE_INTERNAL, "ENT(DATA%i,DRY%i,MAP%i,INFO%i,SYNC%i,DEL%i)", \ 00114 osync_flag_is_set(entry->fl_has_data), \ 00115 osync_flag_is_set(entry->fl_dirty), \ 00116 osync_flag_is_set(entry->fl_mapped), \ 00117 osync_flag_is_set(entry->fl_has_info), \ 00118 osync_flag_is_set(entry->fl_synced), \ 00119 osync_flag_is_set(entry->fl_deleted)); 00120 } 00121 00122 void osengine_mapping_print_flags(OSyncMapping *mapping) 00123 { 00124 osync_trace(TRACE_INTERNAL, "MAP(SOLV%i,SYNC%i,DATA%i,INFO%i,DEL%i,CHK%i,MUL%i)", \ 00125 osync_flag_is_set(mapping->fl_solved), \ 00126 osync_flag_is_set(mapping->cmb_synced), \ 00127 osync_flag_is_set(mapping->cmb_has_data), \ 00128 osync_flag_is_set(mapping->cmb_has_info), \ 00129 osync_flag_is_set(mapping->cmb_deleted), \ 00130 osync_flag_is_set(mapping->fl_chkconflict), \ 00131 osync_flag_is_set(mapping->fl_multiplied)); 00132 } 00133 00134 void osengine_get_wasted(OSyncEngine *engine, int *all, int *wasted) 00135 { 00136 *all = engine->alldeciders; 00137 *wasted = engine->wasted; 00138 }