2
* Copyright 2014 Canonical Ltd.
4
* This program is free software: you can redistribute it and/or modify it
5
* under the terms of the GNU General Public License version 3, as published
6
* by the Free Software Foundation.
8
* This program is distributed in the hope that it will be useful, but
9
* WITHOUT ANY WARRANTY; without even the implied warranties of
10
* MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
11
* PURPOSE. See the GNU General Public License for more details.
13
* You should have received a copy of the GNU General Public License along
14
* with this program. If not, see <http://www.gnu.org/licenses/>.
17
* Charles Kerr <charles.kerr@canonical.com>
20
#include <transfer/transfer.h>
22
#include <cstdio> // std::snprintf()
32
std::string Transfer::next_unique_id()
34
static unsigned int next = 1000;
36
std::snprintf(buf, sizeof(buf), "%u", next);
41
bool Transfer::can_start() const
46
bool Transfer::can_resume() const
48
return state==PAUSED || state==CANCELED || state==ERROR;
51
bool Transfer::can_pause() const
53
return state==RUNNING || state==HASHING || state==PROCESSING;
56
bool Transfer::can_cancel() const
58
return state!=FINISHED;
61
bool Transfer::can_clear() const
63
return state==FINISHED;
70
} // namespace transfer
71
} // namespace indicator