diff options
author | Christian Mollekopf <chrigi_1@fastmail.fm> | 2015-06-08 10:47:57 +0200 |
---|---|---|
committer | Christian Mollekopf <chrigi_1@fastmail.fm> | 2015-06-08 10:47:57 +0200 |
commit | 63919d3040295415306267df7b66e7a5e2c9395f (patch) | |
tree | cb5e416487243ca68e6ad3ecff40a00527017ec6 /synchronizer | |
parent | 810543a625074fb8685c7c59e36123c055e8fda6 (diff) | |
download | sink-63919d3040295415306267df7b66e7a5e2c9395f.tar.gz sink-63919d3040295415306267df7b66e7a5e2c9395f.zip |
Differentiate between resource name and instance identifier
Diffstat (limited to 'synchronizer')
-rw-r--r-- | synchronizer/listener.cpp | 17 | ||||
-rw-r--r-- | synchronizer/listener.h | 1 |
2 files changed, 10 insertions, 8 deletions
diff --git a/synchronizer/listener.cpp b/synchronizer/listener.cpp index 71723c9..c8b81e8 100644 --- a/synchronizer/listener.cpp +++ b/synchronizer/listener.cpp | |||
@@ -35,12 +35,13 @@ | |||
35 | #include <QTimer> | 35 | #include <QTimer> |
36 | #include <QLockFile> | 36 | #include <QLockFile> |
37 | 37 | ||
38 | Listener::Listener(const QByteArray &resourceName, QObject *parent) | 38 | Listener::Listener(const QByteArray &resourceInstanceIdentifier, QObject *parent) |
39 | : QObject(parent), | 39 | : QObject(parent), |
40 | m_server(new QLocalServer(this)), | 40 | m_server(new QLocalServer(this)), |
41 | m_resourceName(resourceName), | 41 | m_resourceName(Akonadi2::Store::resourceName(resourceInstanceIdentifier)), |
42 | m_resourceInstanceIdentifier(resourceInstanceIdentifier), | ||
42 | m_resource(0), | 43 | m_resource(0), |
43 | m_pipeline(new Akonadi2::Pipeline(resourceName, parent)), | 44 | m_pipeline(new Akonadi2::Pipeline(resourceInstanceIdentifier, parent)), |
44 | m_clientBufferProcessesTimer(new QTimer(this)), | 45 | m_clientBufferProcessesTimer(new QTimer(this)), |
45 | m_messageId(0) | 46 | m_messageId(0) |
46 | { | 47 | { |
@@ -48,19 +49,19 @@ Listener::Listener(const QByteArray &resourceName, QObject *parent) | |||
48 | this, &Listener::refreshRevision); | 49 | this, &Listener::refreshRevision); |
49 | connect(m_server, &QLocalServer::newConnection, | 50 | connect(m_server, &QLocalServer::newConnection, |
50 | this, &Listener::acceptConnection); | 51 | this, &Listener::acceptConnection); |
51 | Trace() << "Trying to open " << m_resourceName; | 52 | Trace() << "Trying to open " << m_resourceInstanceIdentifier; |
52 | 53 | ||
53 | m_lockfile = new QLockFile(resourceName + ".lock"); | 54 | m_lockfile = new QLockFile(m_resourceInstanceIdentifier + ".lock"); |
54 | m_lockfile->setStaleLockTime(0); | 55 | m_lockfile->setStaleLockTime(0); |
55 | if (!m_lockfile->tryLock(0)) { | 56 | if (!m_lockfile->tryLock(0)) { |
56 | Warning() << "Failed to acquire exclusive lock on socket."; | 57 | Warning() << "Failed to acquire exclusive lock on socket."; |
57 | exit(-1); | 58 | exit(-1); |
58 | } | 59 | } |
59 | 60 | ||
60 | if (!m_server->listen(QString::fromLatin1(resourceName))) { | 61 | if (!m_server->listen(QString::fromLatin1(m_resourceInstanceIdentifier))) { |
61 | // FIXME: multiple starts need to be handled here | 62 | // FIXME: multiple starts need to be handled here |
62 | m_server->removeServer(resourceName); | 63 | m_server->removeServer(m_resourceInstanceIdentifier); |
63 | if (!m_server->listen(QString::fromLatin1(resourceName))) { | 64 | if (!m_server->listen(QString::fromLatin1(m_resourceInstanceIdentifier))) { |
64 | Warning() << "Utter failure to start server"; | 65 | Warning() << "Utter failure to start server"; |
65 | exit(-1); | 66 | exit(-1); |
66 | } | 67 | } |
diff --git a/synchronizer/listener.h b/synchronizer/listener.h index b3929e7..2577673 100644 --- a/synchronizer/listener.h +++ b/synchronizer/listener.h | |||
@@ -90,6 +90,7 @@ private: | |||
90 | QVector<Client> m_connections; | 90 | QVector<Client> m_connections; |
91 | flatbuffers::FlatBufferBuilder m_fbb; | 91 | flatbuffers::FlatBufferBuilder m_fbb; |
92 | const QByteArray m_resourceName; | 92 | const QByteArray m_resourceName; |
93 | const QByteArray m_resourceInstanceIdentifier; | ||
93 | Akonadi2::Resource *m_resource; | 94 | Akonadi2::Resource *m_resource; |
94 | Akonadi2::Pipeline *m_pipeline; | 95 | Akonadi2::Pipeline *m_pipeline; |
95 | QTimer *m_clientBufferProcessesTimer; | 96 | QTimer *m_clientBufferProcessesTimer; |