WvStreams
Main Page
Modules
Classes
Files
File List
File Members
include
unitransactiongen.h
1
/* -*- Mode: C++ -*-
2
* Worldvisions Weaver Software:
3
* Copyright (C) 2002 Net Integration Technologies, Inc.
4
*
5
* A UniConfGen that represents pending transactions to another generator.
6
*/
7
#ifndef __UNITRANSACTIONGEN_H
8
#define __UNITRANSACTIONGEN_H
9
10
#include "uniconfgen.h"
11
12
class
UniConfChangeTree
;
13
class
UniConfValueTree
;
14
80
class
UniTransactionGen
:
public
UniConfGen
81
{
82
public
:
87
UniTransactionGen
(
IUniConfGen
*_base);
88
93
~UniTransactionGen
();
94
95
96
/***** Overridden methods *****/
97
98
virtual
WvString
get
(
const
UniConfKey
&key);
99
virtual
void
set
(
const
UniConfKey
&key,
WvStringParm
value);
100
virtual
void
setv
(
const
UniConfPairList &pairs);
101
virtual
void
commit
();
102
virtual
bool
refresh
();
103
virtual
Iter
*
iterator
(
const
UniConfKey
&key);
104
virtual
bool
isok
();
105
virtual
void
flush_buffers
();
106
107
protected
:
108
UniConfChangeTree
*root;
109
IUniConfGen
*base;
110
114
void
apply_changes
(
UniConfChangeTree
*node,
115
const
UniConfKey
§ion);
116
120
void
apply_values
(
UniConfValueTree
*newcontents,
121
const
UniConfKey
§ion);
122
126
void
cancel_changes
(
UniConfChangeTree
*node,
127
const
UniConfKey
§ion);
128
132
void
cancel_values
(
UniConfValueTree
*newcontents,
133
const
UniConfKey
§ion);
134
138
void
gencallback
(
const
UniConfKey
&key,
139
WvStringParm
value);
140
145
UniConfValueTree
*
create_value
(
UniConfValueTree
*parent,
146
const
UniConfKey
&key,
147
int
seg,
148
WvStringParm
value);
149
150
UniConfChangeTree
*create_change(
UniConfChangeTree
*parent,
151
const
UniConfKey
&key,
152
int
seg,
153
WvStringParm
value);
154
155
UniConfValueTree
*set_value(
UniConfValueTree
*node,
156
const
UniConfKey
&key,
157
int
seg,
158
WvStringParm
value);
159
160
UniConfChangeTree
*set_change(
UniConfChangeTree
*node,
161
const
UniConfKey
&key,
162
int
seg,
163
WvStringParm
value);
164
168
void
deletion_simulator
(
const
UniConfKey
&key);
169
173
void
deletion_simulator2
(
const
UniConfKey
&key);
174
179
void
deletion_visitor
(
const
UniConfValueTree
*node,
void
*userdata);
180
};
181
182
#endif
Generated on Mon Jul 16 2012 13:15:39 for WvStreams by
1.8.1.1