blob: cd36806f2ed1a6940d634f6235f64333805a6558 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
#include "storage/storage_defines.hpp"
#include "std/sstream.hpp"
namespace storage
{
string DebugPrint(Status status)
{
switch (status)
{
case Status::EUndefined:
return string("EUndefined");
case Status::EOnDisk:
return string("OnDisk");
case Status::ENotDownloaded:
return string("NotDownloaded");
case Status::EDownloadFailed:
return string("DownloadFailed");
case Status::EDownloading:
return string("Downloading");
case Status::EInQueue:
return string("InQueue");
case Status::EUnknown:
return string("Unknown");
case Status::EOnDiskOutOfDate:
return string("OnDiskOutOfDate");
case Status::EOutOfMemFailed:
return string("OutOfMemFailed");
}
}
string DebugPrint(NodeStatus status)
{
switch (status)
{
case NodeStatus::Undefined:
return string("Undefined");
case NodeStatus::Error:
return string("Error");
case NodeStatus::OnDisk:
return string("OnDisk");
case NodeStatus::NotDownloaded:
return string("NotDownloaded");
case NodeStatus::Downloading:
return string("Downloading");
case NodeStatus::InQueue:
return string("InQueue");
case NodeStatus::OnDiskOutOfDate:
return string("OnDiskOutOfDate");
case NodeStatus::Partly:
return string("Partly");
}
}
string DebugPrint(NodeErrorCode status)
{
switch (status)
{
case NodeErrorCode::NoError:
return string("NoError");
case NodeErrorCode::UnknownError:
return string("UnknownError");
case NodeErrorCode::OutOfMemFailed:
return string("OutOfMemFailed");
case NodeErrorCode::NoInetConnection:
return string("NoInetConnection");
}
}
StatusAndError ParseStatus(Status innerStatus)
{
switch (innerStatus)
{
case Status::EUndefined:
return StatusAndError(NodeStatus::Undefined, NodeErrorCode::NoError);
case Status::EOnDisk:
return StatusAndError(NodeStatus::OnDisk, NodeErrorCode::NoError);
case Status::ENotDownloaded:
return StatusAndError(NodeStatus::NotDownloaded, NodeErrorCode::NoError);
case Status::EDownloadFailed:
return StatusAndError(NodeStatus::Error, NodeErrorCode::NoInetConnection);
case Status::EDownloading:
return StatusAndError(NodeStatus::Downloading, NodeErrorCode::NoError);
case Status::EInQueue:
return StatusAndError(NodeStatus::InQueue, NodeErrorCode::NoError);
case Status::EUnknown:
return StatusAndError(NodeStatus::Error, NodeErrorCode::UnknownError);
case Status::EOnDiskOutOfDate:
return StatusAndError(NodeStatus::OnDiskOutOfDate, NodeErrorCode::NoError);
case Status::EOutOfMemFailed:
return StatusAndError(NodeStatus::Error, NodeErrorCode::OutOfMemFailed);
}
}
string DebugPrint(StatusAndError statusAndError)
{
ostringstream out;
out << "StatusAndError[" << DebugPrint(statusAndError.status)
<< ", " << DebugPrint(statusAndError.error) << "]";
return out.str();
}
} // namespace storage
|