~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to libdrizzle-2.0/libdrizzle.hpp

  • Committer: Brian Aker
  • Date: 2011-11-26 23:14:59 UTC
  • mto: This revision was merged to the branch mainline in revision 2465.
  • Revision ID: brian@tangent.org-20111126231459-pa9i3arizevf0vlr
Remove con from being passed object.

Show diffs side-by-side

added added

removed removed

Lines of Context:
148
148
public:
149
149
  explicit connection_c(drizzle_c& drizzle)
150
150
  {
151
 
    drizzle_con_create(drizzle, *this);
 
151
    b_= drizzle_con_create(drizzle);
 
152
 
 
153
    if (b_ == NULL)
 
154
    {
 
155
      throw "drizzle_con_create() failed";
 
156
    }
152
157
    read_conf_files();
153
158
  }
154
159
 
155
160
  ~connection_c()
156
161
  {
157
 
    drizzle_con_free(*this);
 
162
    drizzle_con_free(b_);
158
163
  }
159
164
 
160
165
  operator drizzle_con_st*()
161
166
  {
162
 
    return &b_;
 
167
    return b_;
163
168
  }
164
169
 
165
170
  const char* error()
166
171
  {
167
 
    return drizzle_con_error(*this);
 
172
    return drizzle_con_error(b_);
168
173
  }
169
174
 
170
175
  void set_tcp(const char* host, in_port_t port)
171
176
  {
172
 
    drizzle_con_set_tcp(*this, host, port);
 
177
    drizzle_con_set_tcp(b_, host, port);
173
178
  }
174
179
 
175
180
  void set_auth(const char* user, const char* password)
176
181
  {
177
 
    drizzle_con_set_auth(*this, user, password);
 
182
    drizzle_con_set_auth(b_, user, password);
178
183
  }
179
184
 
180
185
  void set_db(const char* db)
181
186
  {
182
 
    drizzle_con_set_db(*this, db);
 
187
    drizzle_con_set_db(b_, db);
183
188
  }
184
189
 
185
190
  drizzle_return_t query(result_c& result, const char* str, size_t str_size)
186
191
  {
187
192
    drizzle_return_t ret;
 
193
 
188
194
    drizzle_query(*this, result, str, str_size, &ret);
 
195
 
189
196
    if (!ret)
 
197
    {
190
198
      ret = drizzle_result_buffer(result);
 
199
    }
 
200
 
191
201
    return ret;
192
202
  }
193
203
 
205
215
  {
206
216
    result_c result;
207
217
    if (query(result, str, str_size))
 
218
    {
208
219
      throw bad_query(error());
 
220
    }
 
221
 
209
222
    return result;
210
223
  }
211
224
 
221
234
private:
222
235
  void read_conf_files();
223
236
 
224
 
  drizzle_con_st b_;
 
237
  drizzle_con_st *b_;
225
238
};
226
239
 
227
240
class query_c