source: main/trunk/greenstone2/runtime-src/src/colservr/sqlfilter.h@ 27220

Last change on this file since 27220 was 22049, checked in by davidb, 14 years ago

Similar to introduction of sqlquery action, introduction of sqlquery-filter is achieved by creating common base (between sql-browse and sql-query filter) and then using inheritance to achieve the desired functionaly

File size: 2.0 KB
Line 
1/**********************************************************************
2 *
3 * sqlfilter.h --
4 * Copyright (C) 2008 DL Consulting Ltd
5 * Copyright (C) 2010 New Zealand Digital Library Project
6 *
7 * A component of the Greenstone digital library software
8 * from the New Zealand Digital Library Project at the
9 * University of Waikato, New Zealand.
10 *
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License as published by
13 * the Free Software Foundation; either version 2 of the License, or
14 * (at your option) any later version.
15 *
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
20 *
21 * You should have received a copy of the GNU General Public License
22 * along with this program; if not, write to the Free Software
23 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
24 *
25 *********************************************************************/
26
27#ifndef SQLFILTER_H
28#define SQLFILTER_H
29
30
31#include "filter.h"
32#include "comtypes.h"
33#include "sqldbclass.h"
34#include "text_t.h"
35
36
37class sqlfilterclass : public filterclass {
38protected:
39 text_t sql_db_filename;
40 text_t indexstem;
41 sqldbclass *sql_db_ptr;
42
43public:
44 sqlfilterclass ();
45 virtual ~sqlfilterclass ();
46
47 text_t get_filter_name () { return "SQLFilter"; }
48
49 // configure should be called once for each configuration line
50 // default configures the default filter options
51 virtual void configure (const text_t &key, const text_tarray &cfgline);
52
53 // the sql db ptr remains the responsibility of the calling code and
54 // should be destroyed after this sqlfilter is destroyed
55 void set_sql_db_ptr (sqldbclass *sql_db_ptr_arg) { sql_db_ptr = sql_db_ptr_arg; }
56
57 bool init (ostream &logout);
58
59 bool connect_to_sqldb (FilterResponse_t &response,
60 comerror_t &err, ostream &logout);
61 void disconnect_from_sqldb ();
62
63};
64
65
66#endif
Note: See TracBrowser for help on using the repository browser.