[content] Change codes fabout content path not including extension
[platform/framework/native/content.git] / src / FCnt_ContentTransferEvent.cpp
1 //
2 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
3 //
4 // Licensed under the Apache License, Version 2.0 (the License);
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
7 //
8 //     http://www.apache.org/licenses/LICENSE-2.0
9 //
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
15 //
16 /**
17  * @file                FCntContentTransferEvent.cpp
18  * @brief               This is the implementation file for the %ContentTransferEvent and %ContentTransferEventArg class.
19  *
20  * This file contains implementation of the %ContentTransferEvent and %ContentTransferEventArg class.
21  */
22
23 #include <FBaseSysLog.h>
24 #include <FCntIContentTransferListener.h>
25 #include "FCnt_ContentTransferEvent.h"
26
27 using namespace Tizen::Base;
28
29 namespace Tizen { namespace Content
30 {
31
32 // ContentTransferEvent class
33 _ContentTransferEvent::_ContentTransferEvent(void)
34 {
35 }
36
37 _ContentTransferEvent::~_ContentTransferEvent(void)
38 {
39
40 }
41
42 void
43 _ContentTransferEvent::FireImpl(Runtime::IEventListener& listener, const Runtime::IEventArg& arg)
44 {
45         ClearLastResult();
46         result r = E_SUCCESS;
47
48         IContentTransferListener* pIContentTransferListener = dynamic_cast<IContentTransferListener*>(&listener);
49         SysTryReturnVoidResult(NID_CNT, pIContentTransferListener != null, r = E_INVALID_STATE,
50                                 "[E_INVALID_STATE] IContentTransferListener interface must not be null.");
51
52         const _ContentTransferEventArg* pArg = dynamic_cast<const _ContentTransferEventArg*>(&arg);
53         SysTryReturnVoidResult(NID_CNT, pArg != null, r = E_INVALID_STATE, "[E_INVALID_STATE] ContentTransferEventArg must not be null.");
54
55         switch (pArg->GetEventType())
56         {
57         case CONTENT_TRANSFER_EVENT_DOWNLOAD_COMPLETED:
58                 SysLog(NID_CNT, "Event fire after call DownloadComplete.");
59                 pIContentTransferListener->OnContentDownloadCompleted(pArg->GetRequestId(), pArg->GetContentId(),
60                                                                                                                           pArg->GetResult(), pArg->GetErrorCode(), pArg->GetErrorMsg());
61                 break;
62
63         case CONTENT_TRANSFER_EVENT_CANCELED:
64                 SysLog(NID_CNT, "Event fire after call DownloadCancel.");
65                 pIContentTransferListener->OnContentTransferCanceled(pArg->GetRequestId(), pArg->GetResult(),
66                                                                                                                          pArg->GetErrorCode(), pArg->GetErrorMsg());
67                 break;
68
69         case CONTENT_TRANSFER_EVENT_DOWNLOAD_TO_BUFFER_COMPLETED:
70                 SysLog(NID_CNT, "Event fire after call DownloadToBufferComplete.");
71                 pIContentTransferListener->OnContentDownloadToBufferCompleted(pArg->GetRequestId(), pArg->GetBuffer(),
72                                                                                                                                           pArg->GetResult(), pArg->GetErrorCode(), pArg->GetErrorMsg());
73                 break;
74
75         case CONTENT_TRANSFER_EVENT_TRANSFER_IN_PROGRESS:
76                 SysLog(NID_CNT, "Event fire after call DownloadInProgress.");
77                 pIContentTransferListener->OnContentTransferInProgress(pArg->GetRequestId(), pArg->GetTotalTransferedSize());
78                 break;
79
80         default:
81                 r = E_INVALID_STATE;
82                 SysTryReturnVoidResult(NID_CNT, r == E_SUCCESS, r, "[E_INVALID_STATE] Event type is unknown.");
83         }
84
85         SetLastResult(r);
86 }
87
88
89 // ContentTransferEventArg class
90 _ContentTransferEventArg::_ContentTransferEventArg(void)
91         : __requestId(INVALID_REQUEST_ID)
92         , __contentId()
93         , __contentTransferEventType(CONTENT_TRANSFER_EVENT_NONE)
94         , __totalSize(-1)
95         , __res(E_SUCCESS)
96         , __errorMsg(L"")
97         , __errorCode(L"")
98         , __pBuffer(null)
99 {
100 }
101
102 _ContentTransferEventArg::~_ContentTransferEventArg(void)
103 {
104
105 }
106
107 void
108 _ContentTransferEventArg::SetEventType(ContentTransferEventType eType)
109 {
110         __contentTransferEventType = eType;
111 }
112
113 void
114 _ContentTransferEventArg::SetResult(result res)
115 {
116         __res = res;
117 }
118
119 void
120 _ContentTransferEventArg::SetErrorMsg(const String& ErrorCode, const String& ErrorMsg)
121 {
122         __errorMsg = ErrorMsg;
123         __errorCode = ErrorCode;
124 }
125
126 void
127 _ContentTransferEventArg::SetRequestId(RequestId requestId)
128 {
129         __requestId = requestId;
130 }
131
132 void
133 _ContentTransferEventArg::SetContentId(const ContentId& contentId)
134 {
135         __contentId = contentId;
136 }
137
138 void
139 _ContentTransferEventArg::SetTotalTransferedSize(int totalSize)
140 {
141         __totalSize = totalSize;
142 }
143
144
145 ContentTransferEventType
146 _ContentTransferEventArg::GetEventType(void) const
147 {
148         return __contentTransferEventType;
149 }
150
151 result
152 _ContentTransferEventArg::GetResult(void) const
153 {
154         return __res;
155 }
156
157 String
158 _ContentTransferEventArg::GetErrorMsg(void) const
159 {
160         return __errorMsg;
161 }
162
163 String
164 _ContentTransferEventArg::GetErrorCode(void) const
165 {
166         return __errorCode;
167 }
168
169 RequestId
170 _ContentTransferEventArg::GetRequestId(void) const
171 {
172         return __requestId;
173 }
174
175 ContentId
176 _ContentTransferEventArg::GetContentId(void) const
177 {
178         return __contentId;
179 }
180
181 int
182 _ContentTransferEventArg::GetTotalTransferedSize(void) const
183 {
184         return __totalSize;
185 }
186
187 void
188 _ContentTransferEventArg::SetBuffer(ByteBuffer* pBuffer)
189 {
190         __pBuffer = std::unique_ptr<ByteBuffer>(pBuffer);
191 }
192
193 ByteBuffer*
194 _ContentTransferEventArg::GetBuffer(void) const
195 {
196         return __pBuffer.get();
197 }
198 }}