1 | /****************************************************************************
|
---|
2 | **
|
---|
3 | ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
|
---|
4 | ** Contact: Qt Software Information ([email protected])
|
---|
5 | **
|
---|
6 | ** This file is part of the QCLucene library and is distributable under
|
---|
7 | ** the terms of the LGPL license as specified in the license.txt file.
|
---|
8 | **
|
---|
9 | ****************************************************************************/
|
---|
10 |
|
---|
11 | #include "qreader_p.h"
|
---|
12 | #include "qclucene_global_p.h"
|
---|
13 |
|
---|
14 | #include <CLucene.h>
|
---|
15 | #include <CLucene/util/Reader.h>
|
---|
16 |
|
---|
17 | QT_BEGIN_NAMESPACE
|
---|
18 |
|
---|
19 | QCLuceneReaderPrivate::QCLuceneReaderPrivate()
|
---|
20 | : QSharedData()
|
---|
21 | {
|
---|
22 | reader = 0;
|
---|
23 | deleteCLuceneReader = true;
|
---|
24 | }
|
---|
25 |
|
---|
26 | QCLuceneReaderPrivate::QCLuceneReaderPrivate(const QCLuceneReaderPrivate &other)
|
---|
27 | : QSharedData()
|
---|
28 | {
|
---|
29 | reader = _CL_POINTER(other.reader);
|
---|
30 | }
|
---|
31 |
|
---|
32 | QCLuceneReaderPrivate::~QCLuceneReaderPrivate()
|
---|
33 | {
|
---|
34 | if (deleteCLuceneReader)
|
---|
35 | _CLDECDELETE(reader);
|
---|
36 | }
|
---|
37 |
|
---|
38 |
|
---|
39 | QCLuceneReader::QCLuceneReader()
|
---|
40 | : d(new QCLuceneReaderPrivate())
|
---|
41 | {
|
---|
42 | // nothing todo
|
---|
43 | }
|
---|
44 |
|
---|
45 | QCLuceneReader::~QCLuceneReader()
|
---|
46 | {
|
---|
47 | // nothing todo
|
---|
48 | }
|
---|
49 |
|
---|
50 |
|
---|
51 | QCLuceneStringReader::QCLuceneStringReader(const QString &value)
|
---|
52 | : QCLuceneReader()
|
---|
53 | , string(QStringToTChar(value))
|
---|
54 | {
|
---|
55 | d->reader = new lucene::util::StringReader(string);
|
---|
56 | }
|
---|
57 |
|
---|
58 | QCLuceneStringReader::QCLuceneStringReader(const QString &value, qint32 length)
|
---|
59 | : QCLuceneReader()
|
---|
60 | , string(QStringToTChar(value))
|
---|
61 | {
|
---|
62 | d->reader = new lucene::util::StringReader(string, int32_t(length));
|
---|
63 | }
|
---|
64 |
|
---|
65 | QCLuceneStringReader::QCLuceneStringReader(const QString &value, qint32 length,
|
---|
66 | bool copyData)
|
---|
67 | : QCLuceneReader()
|
---|
68 | , string(QStringToTChar(value))
|
---|
69 | {
|
---|
70 | d->reader = new lucene::util::StringReader(string, int32_t(length), copyData);
|
---|
71 | }
|
---|
72 |
|
---|
73 | QCLuceneStringReader::~QCLuceneStringReader()
|
---|
74 | {
|
---|
75 | delete [] string;
|
---|
76 | }
|
---|
77 |
|
---|
78 |
|
---|
79 | QCLuceneFileReader::QCLuceneFileReader(const QString &path, const QString &encoding,
|
---|
80 | qint32 cacheLength, qint32 cacheBuffer)
|
---|
81 | : QCLuceneReader()
|
---|
82 | {
|
---|
83 | const QByteArray tmpPath = path.toLocal8Bit();
|
---|
84 | const QByteArray tmpEncoding = encoding.toAscii();
|
---|
85 | d->reader = new lucene::util::FileReader(tmpPath.constData(),
|
---|
86 | tmpEncoding.constData(), int32_t(cacheLength), int32_t(cacheBuffer));
|
---|
87 | }
|
---|
88 |
|
---|
89 | QCLuceneFileReader::~QCLuceneFileReader()
|
---|
90 | {
|
---|
91 | // nothing todo
|
---|
92 | }
|
---|
93 |
|
---|
94 | QT_END_NAMESPACE
|
---|