~ubuntu-branches/ubuntu/oneiric/strigi/oneiric

« back to all changes in this revision

Viewing changes to src/daemon/dbus/dbuscpp/dbusmessagewriter.h

  • Committer: Package Import Robot
  • Author(s): Felix Geyer
  • Date: 2011-09-24 17:12:15 UTC
  • mfrom: (1.2.6 upstream)
  • mto: This revision was merged to the branch mainline in revision 44.
  • Revision ID: package-import@ubuntu.com-20110924171215-zmbi1f77jntvz65h
Tags: upstream-0.7.6
ImportĀ upstreamĀ versionĀ 0.7.6

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* This file is part of Strigi Desktop Search
2
 
 *
3
 
 * Copyright (C) 2006 Jos van den Oever <jos@vandenoever.info>
4
 
 *
5
 
 * This library is free software; you can redistribute it and/or
6
 
 * modify it under the terms of the GNU Library General Public
7
 
 * License as published by the Free Software Foundation; either
8
 
 * version 2 of the License, or (at your option) any later version.
9
 
 *
10
 
 * This library is distributed in the hope that it will be useful,
11
 
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13
 
 * Library General Public License for more details.
14
 
 *
15
 
 * You should have received a copy of the GNU Library General Public License
16
 
 * along with this library; see the file COPYING.LIB.  If not, write to
17
 
 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18
 
 * Boston, MA 02110-1301, USA.
19
 
 */
20
 
#ifndef DBUSMESSAGEWRITER_H
21
 
#define DBUSMESSAGEWRITER_H
22
 
#define DBUS_API_SUBJECT_TO_CHANGE 1
23
 
#include <string>
24
 
#include <set>
25
 
#include <map>
26
 
#include <vector>
27
 
#include <strigi/strigiconfig.h>
28
 
#ifdef HAVE_STDINT_H
29
 
#include <stdint.h>
30
 
#endif
31
 
 
32
 
#include <dbus/dbus.h>
33
 
 
34
 
class DBusMessageWriter {
35
 
    DBusConnection* const conn;
36
 
    DBusMessage* const reply;
37
 
    DBusMessage* const reply_to;
38
 
    DBusMessage* error;
39
 
public:
40
 
    DBusMessageIter it;
41
 
 
42
 
    DBusMessageWriter(DBusConnection* conn, DBusMessage* msg);
43
 
    DBusMessageWriter(DBusConnection* conn, const char* objectpath,
44
 
        const char* interface, const char* function);
45
 
    DBusMessageWriter() :conn(0), reply(0), reply_to(0), error(0) { }
46
 
    ~DBusMessageWriter();
47
 
    void setError(const std::string& error);
48
 
};
49
 
 
50
 
DBusMessageWriter& operator<<(DBusMessageWriter&, bool b);
51
 
DBusMessageWriter& operator<<(DBusMessageWriter&, int32_t i);
52
 
DBusMessageWriter& operator<<(DBusMessageWriter&, uint32_t i);
53
 
DBusMessageWriter& operator<<(DBusMessageWriter&, int64_t i);
54
 
DBusMessageWriter& operator<<(DBusMessageWriter&, double d);
55
 
DBusMessageWriter& operator<<(DBusMessageWriter&, const std::string& s);
56
 
DBusMessageWriter& operator<<(DBusMessageWriter&, const std::set<std::string>& s);
57
 
DBusMessageWriter& operator<<(DBusMessageWriter&, const std::vector<int32_t>& s);
58
 
DBusMessageWriter& operator<<(DBusMessageWriter&, const std::vector<uint32_t>& s);
59
 
DBusMessageWriter& operator<<(DBusMessageWriter&, const std::vector<std::string>& s);
60
 
DBusMessageWriter& operator<<(DBusMessageWriter&, const std::map<std::string, std::string>& s);
61
 
DBusMessageWriter& operator<<(DBusMessageWriter&, const std::vector<std::pair<bool, std::string> >& s);
62
 
DBusMessageWriter& operator<<(DBusMessageWriter&, const std::multimap<int, std::string>&);
63
 
DBusMessageWriter& operator<<(DBusMessageWriter&, const std::vector<std::pair<std::string, dbus_uint32_t> >&);
64
 
DBusMessageWriter& operator<<(DBusMessageWriter&, const std::vector<std::vector<std::string> >&);
65
 
 
66
 
#endif