~ken-vandine/keeper/ual3

« back to all changes in this revision

Viewing changes to src/helper/backup-helper.cpp

  • Committer: Tarmac
  • Author(s): Xavi Garcia Mena
  • Date: 2016-12-21 17:19:46 UTC
  • mfrom: (122.2.6 keeper-errors-charles)
  • Revision ID: tarmac-20161221171946-rldp5j2hckh93klc
This branch adds error notification in each keeper task.

Approved by unity-api-1-bot, Charles Kerr.

Show diffs side-by-side

added added

removed removed

Lines of Context:
62
62
        int rc = socketpair(AF_UNIX, SOCK_STREAM | SOCK_NONBLOCK, 0, fds);
63
63
        if (rc == -1)
64
64
        {
65
 
            // TODO throw exception.
66
 
            qWarning() << "BackupHelperPrivate: error creating socket pair to communicate with helper ";
 
65
            qWarning() <<  QStringLiteral("Error creating socket to communicate with helper");;
 
66
            Q_EMIT(q_ptr->error(keeper::KeeperError::HELPER_SOCKET_ERROR));
67
67
            return;
68
68
        }
69
69
 
140
140
                    std::function<void(bool)>{[this](bool success){
141
141
                        qDebug() << "Commit finished";
142
142
                        if (!success)
 
143
                        {
143
144
                            write_error_ = true;
 
145
                            Q_EMIT(q_ptr->error(keeper::KeeperError::COMMITTING_DATA_ERROR));
 
146
                        }
144
147
                        else
145
148
                            uploader_committed_file_name_ = uploader_->file_name();
146
149
                        uploader_.reset();
175
178
    {
176
179
        stop_inactivity_timer();
177
180
        qWarning() << "Inactivity detected in the helper...stopping it";
 
181
        Q_EMIT(q_ptr->error(keeper::KeeperError::HELPER_INACTIVITY_DETECTED));
178
182
        stop();
179
183
    }
180
184
 
212
216
                }
213
217
                else if (n < 0) {
214
218
                    read_error_ = true;
 
219
                    Q_EMIT(q_ptr->error(keeper::KeeperError::HELPER_READ_ERROR));
215
220
                    stop();
216
221
                    return;
217
222
                }
228
233
                if (n < 0) {
229
234
                    write_error_ = true;
230
235
                    qWarning() << "Write error:" << socket->errorString();
 
236
                    Q_EMIT(q_ptr->error(keeper::KeeperError::HELPER_WRITE_ERROR));
231
237
                    stop();
232
238
                }
233
239
                break;
258
264
        {
259
265
            if (!q_ptr->is_helper_running())
260
266
            {
 
267
                if (n_uploaded_ > q_ptr->expected_size())
 
268
                {
 
269
                    Q_EMIT(q_ptr->error(keeper::KeeperError::HELPER_WRITE_ERROR));
 
270
                }
261
271
                q_ptr->set_state(Helper::State::FAILED);
262
272
            }
263
273
        }