IBR-DTNSuite
0.12
Main Page
Namespaces
Classes
Files
File List
File Members
IBR-DTNSuite
Namespaces
Classes
Files
File List
daemon
src
api
core
AbstractWorker.cpp
AbstractWorker.h
BundleCore.cpp
BundleCore.h
BundleEvent.cpp
BundleEvent.h
BundleExpiredEvent.cpp
BundleExpiredEvent.h
BundleGeneratedEvent.cpp
BundleGeneratedEvent.h
BundlePurgeEvent.cpp
BundlePurgeEvent.h
CustodyEvent.cpp
CustodyEvent.h
Event.cpp
Event.h
EventDebugger.cpp
EventDebugger.h
EventDispatcher.h
EventReceiver.cpp
EventReceiver.h
EventSwitch.cpp
EventSwitch.h
FragmentManager.cpp
FragmentManager.h
GlobalEvent.cpp
GlobalEvent.h
Node.cpp
Node.h
NodeEvent.cpp
NodeEvent.h
StatusReportGenerator.cpp
StatusReportGenerator.h
TimeAdjustmentEvent.cpp
TimeAdjustmentEvent.h
TimeEvent.cpp
TimeEvent.h
WallClock.cpp
WallClock.h
net
routing
security
storage
CapsuleWorker.cpp
CapsuleWorker.h
Component.cpp
Component.h
config.h
Configuration.cpp
Configuration.h
Debugger.cpp
Debugger.h
DevNull.cpp
DevNull.h
DTNTPWorker.cpp
DTNTPWorker.h
EchoWorker.cpp
EchoWorker.h
Main.cpp
NativeDaemon.cpp
NativeDaemon.h
NTService.cpp
ibrcommon
ibrdtn
tools
File Members
CustodyEvent.cpp
Go to the documentation of this file.
1
/*
2
* CustodyEvent.cpp
3
*
4
* Copyright (C) 2011 IBR, TU Braunschweig
5
*
6
* Written-by: Johannes Morgenroth <morgenroth@ibr.cs.tu-bs.de>
7
*
8
* Licensed under the Apache License, Version 2.0 (the "License");
9
* you may not use this file except in compliance with the License.
10
* You may obtain a copy of the License at
11
*
12
* http://www.apache.org/licenses/LICENSE-2.0
13
*
14
* Unless required by applicable law or agreed to in writing, software
15
* distributed under the License is distributed on an "AS IS" BASIS,
16
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17
* See the License for the specific language governing permissions and
18
* limitations under the License.
19
*
20
*/
21
22
#include "
core/CustodyEvent.h
"
23
#include "
core/EventDispatcher.h
"
24
#include "
ibrdtn/data/Exceptions.h
"
25
26
namespace
dtn
27
{
28
namespace
core
29
{
30
CustodyEvent::CustodyEvent(
const
dtn::data::MetaBundle
&bundle,
const
EventCustodyAction
action)
31
: m_bundle(bundle), m_action(action)
32
{
33
}
34
35
CustodyEvent::~CustodyEvent
()
36
{
37
}
38
39
const
dtn::data::MetaBundle
&
CustodyEvent::getBundle
()
const
40
{
41
return
m_bundle;
42
}
43
44
EventCustodyAction
CustodyEvent::getAction
()
const
45
{
46
return
m_action;
47
}
48
49
const
std::string
CustodyEvent::getName
()
const
50
{
51
return
CustodyEvent::className
;
52
}
53
54
std::string
CustodyEvent::getMessage
()
const
55
{
56
switch
(
getAction
())
57
{
58
case
CUSTODY_ACCEPT
:
59
if
(
getBundle
().procflags &
dtn::data::Bundle::CUSTODY_REQUESTED
)
60
{
61
return
"custody acceptance"
;
62
}
63
break
;
64
65
case
CUSTODY_REJECT
:
66
if
(
getBundle
().procflags & dtn::data::Bundle::CUSTODY_REQUESTED)
67
{
68
return
"custody reject"
;
69
}
70
break
;
71
};
72
73
return
"unknown"
;
74
}
75
76
void
CustodyEvent::raise
(
const
dtn::data::MetaBundle
&bundle,
const
EventCustodyAction
action)
77
{
78
dtn::core::EventDispatcher<CustodyEvent>::queue
(
new
CustodyEvent
(bundle, action) );
79
}
80
81
const
std::string
CustodyEvent::className
=
"CustodyEvent"
;
82
}
83
}
daemon
src
core
CustodyEvent.cpp
Generated on Thu Mar 27 2014 09:26:20 for IBR-DTNSuite by
1.8.4