comparison utilities/vampipe-convert.cpp @ 32:2d97883d20df

Wire up a couple of server actions
author Chris Cannam <c.cannam@qmul.ac.uk>
date Tue, 24 May 2016 17:17:03 +0100
parents b376ab0ce003
children 0b48b10140bb
comparison
equal deleted inserted replaced
31:b376ab0ce003 32:2d97883d20df
1 1
2 #include "VampJson.h" 2 #include "VampJson.h"
3 #include "VampnProto.h" 3 #include "VampnProto.h"
4 4
5 #include "bits/RequestOrResponse.h" 5 #include "bits/RequestOrResponse.h"
6 #include "bits/PreservingPluginHandleMapper.h"
6 7
7 #include <iostream> 8 #include <iostream>
8 #include <sstream> 9 #include <sstream>
9 #include <stdexcept> 10 #include <stdexcept>
10 11
73 } 74 }
74 75
75 //!!! Lots of potential for refactoring the conversion classes based 76 //!!! Lots of potential for refactoring the conversion classes based
76 //!!! on the common matter in the following eight functions... 77 //!!! on the common matter in the following eight functions...
77 78
79 PreservingPluginHandleMapper mapper;
80
78 RequestOrResponse 81 RequestOrResponse
79 readRequestJson() 82 readRequestJson()
80 { 83 {
81 RequestOrResponse rr; 84 RequestOrResponse rr;
82 rr.direction = RequestOrResponse::Request; 85 rr.direction = RequestOrResponse::Request;
98 break; 101 break;
99 case RRType::Load: 102 case RRType::Load:
100 rr.loadRequest = VampJson::toVampRequest_Load(j); 103 rr.loadRequest = VampJson::toVampRequest_Load(j);
101 break; 104 break;
102 case RRType::Configure: 105 case RRType::Configure:
103 rr.configurationRequest = 106 rr.configurationRequest = VampJson::toVampRequest_Configure(j, mapper);
104 VampJson::toVampRequest_Configure(j, rr.mapper); 107 break;
105 break; 108 case RRType::Process:
106 case RRType::Process: 109 rr.processRequest = VampJson::toVampRequest_Process(j, mapper);
107 rr.processRequest = VampJson::toVampRequest_Process(j, rr.mapper); 110 break;
108 break; 111 case RRType::Finish:
109 case RRType::Finish: 112 rr.finishPlugin = VampJson::toVampRequest_Finish(j, mapper);
110 rr.finishPlugin = VampJson::toVampRequest_Finish(j, rr.mapper);
111 break; 113 break;
112 case RRType::NotValid: 114 case RRType::NotValid:
113 break; 115 break;
114 } 116 }
115 117
128 break; 130 break;
129 case RRType::Load: 131 case RRType::Load:
130 j = VampJson::fromVampRequest_Load(rr.loadRequest); 132 j = VampJson::fromVampRequest_Load(rr.loadRequest);
131 break; 133 break;
132 case RRType::Configure: 134 case RRType::Configure:
133 j = VampJson::fromVampRequest_Configure(rr.configurationRequest, 135 j = VampJson::fromVampRequest_Configure(rr.configurationRequest, mapper);
134 rr.mapper); 136 break;
135 break; 137 case RRType::Process:
136 case RRType::Process: 138 j = VampJson::fromVampRequest_Process(rr.processRequest, mapper);
137 j = VampJson::fromVampRequest_Process(rr.processRequest, rr.mapper); 139 break;
138 break; 140 case RRType::Finish:
139 case RRType::Finish: 141 j = VampJson::fromVampRequest_Finish(rr.finishPlugin, mapper);
140 j = VampJson::fromVampRequest_Finish(rr.finishPlugin, rr.mapper);
141 break; 142 break;
142 case RRType::NotValid: 143 case RRType::NotValid:
143 break; 144 break;
144 } 145 }
145 146
166 167
167 case RRType::List: 168 case RRType::List:
168 rr.listResponse = VampJson::toVampResponse_List(j); 169 rr.listResponse = VampJson::toVampResponse_List(j);
169 break; 170 break;
170 case RRType::Load: 171 case RRType::Load:
171 rr.loadResponse = VampJson::toVampResponse_Load(j, rr.mapper); 172 rr.loadResponse = VampJson::toVampResponse_Load(j, mapper);
172 break; 173 break;
173 case RRType::Configure: 174 case RRType::Configure:
174 rr.configurationResponse = VampJson::toVampResponse_Configure(j); 175 rr.configurationResponse = VampJson::toVampResponse_Configure(j);
175 break; 176 break;
176 case RRType::Process: 177 case RRType::Process:
195 196
196 case RRType::List: 197 case RRType::List:
197 j = VampJson::fromVampResponse_List("", rr.listResponse); 198 j = VampJson::fromVampResponse_List("", rr.listResponse);
198 break; 199 break;
199 case RRType::Load: 200 case RRType::Load:
200 j = VampJson::fromVampResponse_Load(rr.loadResponse, rr.mapper); 201 j = VampJson::fromVampResponse_Load(rr.loadResponse, mapper);
201 break; 202 break;
202 case RRType::Configure: 203 case RRType::Configure:
203 j = VampJson::fromVampResponse_Configure(rr.configurationResponse); 204 j = VampJson::fromVampResponse_Configure(rr.configurationResponse);
204 break; 205 break;
205 case RRType::Process: 206 case RRType::Process:
233 break; 234 break;
234 case RRType::Load: 235 case RRType::Load:
235 VampnProto::readVampRequest_Load(rr.loadRequest, reader); 236 VampnProto::readVampRequest_Load(rr.loadRequest, reader);
236 break; 237 break;
237 case RRType::Configure: 238 case RRType::Configure:
238 VampnProto::readVampRequest_Configure(rr.configurationRequest, reader, 239 VampnProto::readVampRequest_Configure(rr.configurationRequest,
239 rr.mapper); 240 reader, mapper);
240 break; 241 break;
241 case RRType::Process: 242 case RRType::Process:
242 VampnProto::readVampRequest_Process(rr.processRequest, reader, 243 VampnProto::readVampRequest_Process(rr.processRequest, reader, mapper);
243 rr.mapper); 244 break;
244 break; 245 case RRType::Finish:
245 case RRType::Finish: 246 VampnProto::readVampRequest_Finish(rr.finishPlugin, reader, mapper);
246 VampnProto::readVampRequest_Finish(rr.finishPlugin, reader,
247 rr.mapper);
248 break; 247 break;
249 case RRType::NotValid: 248 case RRType::NotValid:
250 break; 249 break;
251 } 250 }
252 251
267 case RRType::Load: 266 case RRType::Load:
268 VampnProto::buildVampRequest_Load(builder, rr.loadRequest); 267 VampnProto::buildVampRequest_Load(builder, rr.loadRequest);
269 break; 268 break;
270 case RRType::Configure: 269 case RRType::Configure:
271 VampnProto::buildVampRequest_Configure(builder, 270 VampnProto::buildVampRequest_Configure(builder,
272 rr.configurationRequest, 271 rr.configurationRequest, mapper);
273 rr.mapper); 272 break;
274 break; 273 case RRType::Process:
275 case RRType::Process: 274 VampnProto::buildVampRequest_Process(builder, rr.processRequest, mapper);
276 VampnProto::buildVampRequest_Process(builder, 275 break;
277 rr.processRequest, 276 case RRType::Finish:
278 rr.mapper); 277 VampnProto::buildVampRequest_Finish(builder, rr.finishPlugin, mapper);
279 break;
280 case RRType::Finish:
281 VampnProto::buildVampRequest_Finish(builder,
282 rr.finishPlugin,
283 rr.mapper);
284 break; 278 break;
285 case RRType::NotValid: 279 case RRType::NotValid:
286 break; 280 break;
287 } 281 }
288 282
304 298
305 case RRType::List: 299 case RRType::List:
306 VampnProto::readVampResponse_List(rr.listResponse, reader); 300 VampnProto::readVampResponse_List(rr.listResponse, reader);
307 break; 301 break;
308 case RRType::Load: 302 case RRType::Load:
309 VampnProto::readVampResponse_Load(rr.loadResponse, reader, rr.mapper); 303 VampnProto::readVampResponse_Load(rr.loadResponse, reader, mapper);
310 break; 304 break;
311 case RRType::Configure: 305 case RRType::Configure:
312 VampnProto::readVampResponse_Configure(rr.configurationResponse, 306 VampnProto::readVampResponse_Configure(rr.configurationResponse,
313 reader); 307 reader);
314 break; 308 break;
335 329
336 case RRType::List: 330 case RRType::List:
337 VampnProto::buildVampResponse_List(builder, "", rr.listResponse); 331 VampnProto::buildVampResponse_List(builder, "", rr.listResponse);
338 break; 332 break;
339 case RRType::Load: 333 case RRType::Load:
340 VampnProto::buildVampResponse_Load(builder, rr.loadResponse, rr.mapper); 334 VampnProto::buildVampResponse_Load(builder, rr.loadResponse, mapper);
341 break; 335 break;
342 case RRType::Configure: 336 case RRType::Configure:
343 VampnProto::buildVampResponse_Configure(builder, rr.configurationResponse); 337 VampnProto::buildVampResponse_Configure(builder, rr.configurationResponse);
344 break; 338 break;
345 case RRType::Process: 339 case RRType::Process: