[Gnucash-changes] --tweaks to get in sync with changed backend api;
-- break accounting
Linas Vepstas
linas at cvs.gnucash.org
Sun Jun 13 02:15:10 EDT 2004
Log Message:
-----------
--tweaks to get in sync with changed backend api;
-- break accounting periods, for now
Tags:
----
backend-work-1
Modified Files:
--------------
gnucash/src/backend/postgres:
PostgresBackend.c
book.c
gncquery.c
price.c
putil.h
Revision Data
-------------
Index: gncquery.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/backend/postgres/gncquery.c,v
retrieving revision 1.34
retrieving revision 1.34.2.1
diff -Lsrc/backend/postgres/gncquery.c -Lsrc/backend/postgres/gncquery.c -u -r1.34 -r1.34.2.1
--- src/backend/postgres/gncquery.c
+++ src/backend/postgres/gncquery.c
@@ -314,7 +314,7 @@
}
/* =========================================================== */
-/* Macro for QOF_QUERYCORE_STRING query types
+/* Macro for QOF_TYPE_STRING query types
* Note that postgres supports both case-sensitive and
* case-insensitve string searches, and it also supports
* regex! yahooo!
@@ -346,7 +346,7 @@
}
/* =========================================================== */
-/* Macro for QOF_QUERYCORE_NUMERIC type terms. The logic used here in the
+/* Macro for QOF_TYPE_NUMERIC type terms. The logic used here in the
* SQL exactly matches that used in the qofquery.c code. If
* that code is incorrect or has changed, then the code below is
* broken as well.
@@ -756,7 +756,7 @@
need_entry = TRUE;
need_trans_commodity = TRUE;
} else if (!safe_strcmp(pd->type_name, QOF_TYPE_GUID)) {
- if (!safe_strcmp(path->data, QOF_QUERY_PARAM_GUID))
+ if (!safe_strcmp(path->data, QOF_PARAM_GUID))
need_entry = TRUE;
else if (!safe_strcmp(path->data, SPLIT_ACCOUNT)) {
need_account = TRUE;
@@ -862,17 +862,17 @@
PINFO("term is QOF_TYPE_GUID");
- if (!safe_strcmp(path->data, QOF_QUERY_PARAM_GUID)) {
+ if (!safe_strcmp(path->data, QOF_PARAM_GUID)) {
field = "gncSplit.splitGuid";
g_assert(pdata->options != QOF_GUID_MATCH_ALL);
} else if (!safe_strcmp(path->data, SPLIT_TRANS) &&
- !safe_strcmp(path->next->data, QOF_QUERY_PARAM_GUID)) {
+ !safe_strcmp(path->next->data, QOF_PARAM_GUID)) {
field = "gncSplit.transGUID";
g_assert(pdata->options != QOF_GUID_MATCH_ALL);
} else if (!safe_strcmp(path->data, SPLIT_ACCOUNT) &&
- !safe_strcmp(path->next->data, QOF_QUERY_PARAM_GUID)) {
+ !safe_strcmp(path->next->data, QOF_PARAM_GUID)) {
field = "gncSplit.accountGUID";
g_assert(pdata->options != QOF_GUID_MATCH_ALL);
@@ -883,8 +883,8 @@
field = "gncSplit.accountGUID";
g_assert(pdata->options == QOF_GUID_MATCH_ALL);
- } else if (!safe_strcmp(path->data, QOF_QUERY_PARAM_BOOK) &&
- !safe_strcmp(path->next->data, QOF_QUERY_PARAM_GUID)) {
+ } else if (!safe_strcmp(path->data, QOF_PARAM_BOOK) &&
+ !safe_strcmp(path->next->data, QOF_PARAM_GUID)) {
/* XXX: Need to support the Book GUID? (gncAccount.bookGUID) */
field = "gncAccount.bookGUID";
g_assert(pdata->options != QOF_GUID_MATCH_ALL);
Index: price.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/backend/postgres/price.c,v
retrieving revision 1.22
retrieving revision 1.22.2.1
diff -Lsrc/backend/postgres/price.c -Lsrc/backend/postgres/price.c -u -r1.22 -r1.22.2.1
--- src/backend/postgres/price.c
+++ src/backend/postgres/price.c
@@ -462,7 +462,7 @@
void
pgend_price_begin_edit (QofBackend * bend, GNCPrice *pr)
{
- if (pr && pr->db && pr->db->dirty)
+ if (pr && pr->db && pr->db->inst.dirty)
{
PERR ("price db is unexpectedly dirty");
}
@@ -527,7 +527,7 @@
SEND_QUERY (be,bufp,);
FINISH_QUERY(be->connection);
- if (pr->db) pr->db->dirty = FALSE;
+ if (pr->db) pr->db->inst.dirty = FALSE;
LEAVE ("commited");
return;
Index: putil.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/backend/postgres/putil.h,v
retrieving revision 1.15
retrieving revision 1.15.2.1
diff -Lsrc/backend/postgres/putil.h -Lsrc/backend/postgres/putil.h -u -r1.15 -r1.15.2.1
--- src/backend/postgres/putil.h
+++ src/backend/postgres/putil.h
@@ -362,7 +362,7 @@
for (node=be->blist; node; node=node->next) \
{ \
book = node->data; \
- if (guid_equal (&book->entity.guid, &book_guid)) break; \
+ if (guid_equal (&book->inst.entity.guid, &book_guid)) break; \
book = NULL; \
} \
if (!book) return data; \
Index: book.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/backend/postgres/book.c,v
retrieving revision 1.11
retrieving revision 1.11.2.1
diff -Lsrc/backend/postgres/book.c -Lsrc/backend/postgres/book.c -u -r1.11 -r1.11.2.1
--- src/backend/postgres/book.c
+++ src/backend/postgres/book.c
@@ -97,7 +97,7 @@
if (book->idata)
{
pgendKVPDelete (be, book->idata);
- pgendKVPStore (be, book->idata, book->kvp_data);
+ pgendKVPStore (be, book->idata, book->inst.kvp_data);
}
LEAVE(" ");
}
@@ -172,7 +172,7 @@
if (0 != book->idata)
{
- book->kvp_data = pgendKVPFetch (be, book->idata, book->kvp_data);
+ book->inst.kvp_data = pgendKVPFetch (be, book->idata, book->inst.kvp_data);
}
LEAVE (" ");
@@ -200,7 +200,7 @@
for (node=blist; node; node=node->next)
{
book = node->data;
- if (guid_equal (&book->entity.guid, &guid)) break;
+ if (guid_equal (&book->inst.entity.guid, &guid)) break;
book = NULL;
}
@@ -237,7 +237,7 @@
QofBook *book = node->data;
if (0 != book->idata)
{
- book->kvp_data = pgendKVPFetch (be, book->idata, book->kvp_data);
+ book->inst.kvp_data = pgendKVPFetch (be, book->idata, book->inst.kvp_data);
}
}
Index: PostgresBackend.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/backend/postgres/PostgresBackend.c,v
retrieving revision 1.53
retrieving revision 1.53.2.1
diff -Lsrc/backend/postgres/PostgresBackend.c -Lsrc/backend/postgres/PostgresBackend.c -u -r1.53 -r1.53.2.1
--- src/backend/postgres/PostgresBackend.c
+++ src/backend/postgres/PostgresBackend.c
@@ -1643,20 +1643,21 @@
}
static void
-pgend_do_begin (QofBackend *bend, QofIdTypeConst type, gpointer object)
+pgend_do_begin (QofBackend *bend, QofInstance *inst)
{
PGBackend *be = (PGBackend*)bend;
+ QofIdTypeConst type = inst->entity.e_type;
ENTER ("be=%p, type=%s", bend, type);
- if (!safe_strcmp (type, GNC_ID_PERIOD))
- return pgend_book_transfer_begin (bend, object);
+ // if (!safe_strcmp (type, GNC_ID_PERIOD))
+ // return pgend_book_transfer_begin (bend, object);
switch (be->session_mode) {
case MODE_EVENT:
case MODE_POLL:
case MODE_SINGLE_UPDATE:
if (!safe_strcmp (type, GNC_ID_PRICE))
- return pgend_price_begin_edit (bend, object);
+ return pgend_price_begin_edit (bend, (GNCPrice *) inst);
case MODE_SINGLE_FILE:
case MODE_NONE:
@@ -1668,13 +1669,14 @@
}
static void
-pgend_do_commit (QofBackend *bend, QofIdTypeConst type, gpointer object)
+pgend_do_commit (QofBackend *bend, QofInstance *inst)
{
PGBackend *be = (PGBackend*)bend;
+ QofIdTypeConst type = inst->entity.e_type;
ENTER ("be=%p, type=%s", bend, type);
- if (!safe_strcmp (type, GNC_ID_PERIOD))
- return pgend_book_transfer_commit (bend, object);
+ // if (!safe_strcmp (type, GNC_ID_PERIOD))
+ // return pgend_book_transfer_commit (bend, object);
switch (be->session_mode) {
case MODE_EVENT:
@@ -1682,15 +1684,15 @@
case MODE_SINGLE_UPDATE:
if (!safe_strcmp (type, GNC_ID_TRANS)) {
- Transaction *txn = (Transaction*) object;
+ Transaction *txn = (Transaction*) inst;
return pgend_trans_commit_edit (bend, txn, txn->orig);
}
if (!safe_strcmp (type, GNC_ID_PRICE))
- return pgend_price_commit_edit (bend, object);
+ return pgend_price_commit_edit (bend, (GNCPrice *) inst);
if (!safe_strcmp (type, GNC_ID_ACCOUNT))
- return pgend_account_commit_edit (bend, object);
+ return pgend_account_commit_edit (bend, (Account *) inst);
case MODE_SINGLE_FILE:
case MODE_NONE:
@@ -1703,9 +1705,10 @@
}
static void
-pgend_do_rollback (QofBackend *bend, QofIdTypeConst type, gpointer object)
+pgend_do_rollback (QofBackend *bend, QofInstance *inst)
{
PGBackend *be = (PGBackend*)bend;
+ QofIdTypeConst type = inst->entity.e_type;
ENTER ("be=%p, type=%s", bend, type);
switch (be->session_mode) {
@@ -1713,7 +1716,7 @@
case MODE_POLL:
if (!safe_strcmp (type, GNC_ID_TRANS))
- return pgend_trans_rollback_edit (bend, object);
+ return pgend_trans_rollback_edit (bend, (Transaction *)inst);
case MODE_SINGLE_UPDATE:
case MODE_SINGLE_FILE:
More information about the gnucash-changes
mailing list