00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef OPENSYNC_OBJTYPE_SINK_PRIVATE_H_
00022 #define OPENSYNC_OBJTYPE_SINK_PRIVATE_H_
00023
00030
00031 #define OSYNC_SINK_TIMEOUT_TRANSPORT 30
00032 #define OSYNC_SINK_TIMEOUT_SINGLEIO 30
00033 #define OSYNC_SINK_TIMEOUT_BATCHIO 1800
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053 #define OSYNC_SINK_TIMEOUT_CONNECT OSYNC_SINK_TIMEOUT_TRANSPORT
00054 #define OSYNC_SINK_TIMEOUT_CONNECTDONE OSYNC_SINK_TIMEOUT_SINGLEIO
00055 #define OSYNC_SINK_TIMEOUT_DISCONNECT OSYNC_SINK_TIMEOUT_TRANSPORT
00056 #define OSYNC_SINK_TIMEOUT_GETCHANGES OSYNC_SINK_TIMEOUT_BATCHIO
00057 #define OSYNC_SINK_TIMEOUT_COMMIT OSYNC_SINK_TIMEOUT_BATCHIO
00058 #define OSYNC_SINK_TIMEOUT_BATCHCOMMIT OSYNC_SINK_TIMEOUT_BATCHIO
00059 #define OSYNC_SINK_TIMEOUT_COMMITTEDALL OSYNC_SINK_TIMEOUT_SINGLEIO
00060 #define OSYNC_SINK_TIMEOUT_SYNCDONE OSYNC_SINK_TIMEOUT_SINGLEIO
00061 #define OSYNC_SINK_TIMEOUT_READ OSYNC_SINK_TIMEOUT_BATCHIO
00062 #define OSYNC_SINK_TIMEOUT_WRITE OSYNC_SINK_TIMEOUT_BATCHIO
00063
00064 typedef struct OSyncObjTypeSinkFunctionTimeouts {
00065 unsigned int connect;
00066 unsigned int connect_done;
00067 unsigned int disconnect;
00068 unsigned int get_changes;
00069 unsigned int commit;
00070 unsigned int batch_commit;
00071 unsigned int committed_all;
00072 unsigned int sync_done;
00073 unsigned int read;
00074 unsigned int write;
00075 } OSyncObjTypeSinkFunctionTimeouts;
00076
00077 struct OSyncObjTypeSink {
00079 OSyncAnchor *anchor;
00080
00082 osync_bool anchor_requested;
00083
00085 char *preferred_format;
00087 OSyncList *objformatsinks;
00088
00090 OSyncObjTypeSinkFunctions functions;
00091 void *userdata;
00092
00094 OSyncObjTypeSinkFunctionTimeouts timeout;
00095
00097 char *objtype;
00098
00100 osync_bool write;
00102 osync_bool func_write;
00103
00105 osync_bool read;
00107 osync_bool func_read;
00108
00110 osync_bool getchanges;
00112 osync_bool func_getchanges;
00113
00115 osync_bool enabled;
00116
00118 osync_bool slowsync;
00119
00121 int ref_count;
00122
00124 OSyncList *commit_changes;
00125 OSyncList *commit_contexts;
00126 osync_bool available;
00127 };
00128
00131 #endif
00132