|
a/src/index/fetcher.h |
|
b/src/index/fetcher.h |
|
... |
|
... |
26 |
|
26 |
|
27 |
/**
|
27 |
/**
|
28 |
* Generic interface to retrieve the data for a document designated by
|
28 |
* Generic interface to retrieve the data for a document designated by
|
29 |
* its index data (udi/ipath/url). This is used to retrieve the data
|
29 |
* its index data (udi/ipath/url). This is used to retrieve the data
|
30 |
* for previewing. The actual implementation is specific to the kind
|
30 |
* for previewing. The actual implementation is specific to the kind
|
31 |
* of backend (file system, beagle cache, others?...), and the
|
31 |
* of backend (file system, web cache, others?...), and the
|
32 |
* implementation may of course may share code with the indexing-time
|
32 |
* implementation may of course share code with the indexing-time
|
33 |
* functions from the specific backend.
|
33 |
* functions from the specific backend.
|
34 |
*
|
34 |
*
|
35 |
* This is used to give access the raw document container (either as a
|
35 |
* This normally gives access the raw document container (either as a
|
36 |
* file or as a memory block). The Internfile code will then further
|
36 |
* file or as a memory block). The Internfile code will then further
|
37 |
* process it to get to the actual document, especially if
|
37 |
* process it to get to the actual document, especially if
|
38 |
* de-embedding is involved.
|
38 |
* de-embedding is involved.
|
|
|
39 |
*
|
|
|
40 |
* The DATADIRECT document kind, which holds final extracted data, is only
|
|
|
41 |
* returned when using an external indexer (only the python demo sample at
|
|
|
42 |
* this point), in which case the whole extraction is performed by the
|
|
|
43 |
* external code.
|
39 |
*/
|
44 |
*/
|
40 |
class DocFetcher {
|
45 |
class DocFetcher {
|
41 |
public:
|
46 |
public:
|
42 |
/** A RawDoc is the data for a document-holding entity either as a
|
47 |
/** A RawDoc is the data for a document-holding entity either as a
|
43 |
memory block, or pointed to by a file name */
|
48 |
memory block, or pointed to by a file name */
|
|
... |
|
... |
69 |
virtual bool makesig(RclConfig* cnf, const Rcl::Doc& idoc,
|
74 |
virtual bool makesig(RclConfig* cnf, const Rcl::Doc& idoc,
|
70 |
std::string& sig) = 0;
|
75 |
std::string& sig) = 0;
|
71 |
virtual ~DocFetcher() {}
|
76 |
virtual ~DocFetcher() {}
|
72 |
};
|
77 |
};
|
73 |
|
78 |
|
74 |
/** Return an appropriate fetcher object given the backend string identifier */
|
79 |
/** Return an appropriate fetcher object given the backend string
|
|
|
80 |
* identifier inside idoc*/
|
75 |
DocFetcher *docFetcherMake(RclConfig *config, const Rcl::Doc& idoc);
|
81 |
DocFetcher *docFetcherMake(RclConfig *config, const Rcl::Doc& idoc);
|
76 |
|
82 |
|
77 |
#endif /* _FETCHER_H_INCLUDED_ */
|
83 |
#endif /* _FETCHER_H_INCLUDED_ */
|