projects
/
pazpar2-moved-to-github.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Refactor how total hits are calculated
[pazpar2-moved-to-github.git]
/
src
/
database.c
diff --git
a/src/database.c
b/src/database.c
index
fd88d0b
..
41e0f06
100644
(file)
--- a/
src/database.c
+++ b/
src/database.c
@@
-106,7
+106,7
@@
struct database *new_database(const char *id, NMEM nmem)
struct setting *idset;
db = nmem_malloc(nmem, sizeof(*db));
struct setting *idset;
db = nmem_malloc(nmem, sizeof(*db));
- db->url = nmem_strdup(nmem, id);
+ db->id = nmem_strdup(nmem, id);
db->num_settings = PZ_MAX_EOF;
db->settings = nmem_malloc(nmem, sizeof(struct settings*) *
db->num_settings);
db->num_settings = PZ_MAX_EOF;
db->settings = nmem_malloc(nmem, sizeof(struct settings*) *
db->num_settings);
@@
-115,35
+115,29
@@
struct database *new_database(const char *id, NMEM nmem)
idset = nmem_malloc(nmem, sizeof(*idset));
idset->precedence = 0;
idset->name = "pz:id";
idset = nmem_malloc(nmem, sizeof(*idset));
idset->precedence = 0;
idset->name = "pz:id";
- idset->target = idset->value = db->url;
+ idset->target = idset->value = db->id;
idset->next = 0;
db->settings[PZ_ID] = idset;
return db;
}
idset->next = 0;
db->settings[PZ_ID] = idset;
return db;
}
-static struct database *load_database(const char *id,
- struct conf_service *service)
-{
- struct database *db;
-
- db = new_database(id, service->nmem);
-
- db->next = service->databases;
- service->databases = db;
-
- return db;
-}
-
// Return a database structure by ID. Load and add to list if necessary
// new==1 just means we know it's not in the list
// Return a database structure by ID. Load and add to list if necessary
// new==1 just means we know it's not in the list
-struct database *find_database(const char *id, struct conf_service *service)
+struct database *create_database_for_service(const char *id,
+ struct conf_service *service)
{
struct database *p;
for (p = service->databases; p; p = p->next)
{
struct database *p;
for (p = service->databases; p; p = p->next)
- if (!strcmp(p->url, id))
+ if (!strcmp(p->id, id))
return p;
return p;
- return load_database(id, service);
+
+ p = new_database(id, service->nmem);
+
+ p->next = service->databases;
+ service->databases = p;
+
+ return p;
}
// This whole session_grep database thing should be moved elsewhere
}
// This whole session_grep database thing should be moved elsewhere