Browse code

refactor, remove useless buffers

Docker-DCO-1.1-Signed-off-by: Victor Vieux <victor.vieux@docker.com> (github: vieux)

Victor Vieux authored on 2014/01/18 11:54:02
Showing 1 changed files
... ...
@@ -184,8 +184,9 @@ func getImagesJSON(srv *Server, version float64, w http.ResponseWriter, r *http.
184 184
 	}
185 185
 
186 186
 	var (
187
-		buffer *bytes.Buffer
188
-		job    = srv.Eng.Job("images")
187
+		err  error
188
+		outs *engine.Table
189
+		job  = srv.Eng.Job("images")
189 190
 	)
190 191
 
191 192
 	job.Setenv("filter", r.Form.Get("filter"))
... ...
@@ -193,20 +194,15 @@ func getImagesJSON(srv *Server, version float64, w http.ResponseWriter, r *http.
193 193
 
194 194
 	if version >= 1.9 {
195 195
 		job.Stdout.Add(w)
196
-	} else {
197
-		buffer = bytes.NewBuffer(nil)
198
-		job.Stdout.Add(buffer)
196
+	} else if outs, err = job.Stdout.AddTable(); err != nil {
197
+		return err
199 198
 	}
200 199
 
201
-	if err := job.Run(); err != nil {
200
+	if err = job.Run(); err != nil {
202 201
 		return err
203 202
 	}
204 203
 
205 204
 	if version < 1.9 { // Send as a valid JSON array
206
-		outs := engine.NewTable("Created", 0)
207
-		if _, err := outs.ReadFrom(buffer); err != nil {
208
-			return err
209
-		}
210 205
 		if version < 1.8 { // Convert to legacy format
211 206
 			outsLegacy := engine.NewTable("Created", 0)
212 207
 			for _, out := range outs.Data {
... ...
@@ -222,10 +218,10 @@ func getImagesJSON(srv *Server, version float64, w http.ResponseWriter, r *http.
222 222
 					outsLegacy.Add(outLegacy)
223 223
 				}
224 224
 			}
225
-			if _, err := outsLegacy.WriteListTo(w); err != nil {
225
+			if _, err = outsLegacy.WriteListTo(w); err != nil {
226 226
 				return err
227 227
 			}
228
-		} else if _, err := outs.WriteListTo(w); err != nil {
228
+		} else if _, err = outs.WriteListTo(w); err != nil {
229 229
 			return err
230 230
 		}
231 231
 	}
... ...
@@ -312,25 +308,21 @@ func getImagesHistory(srv *Server, version float64, w http.ResponseWriter, r *ht
312 312
 	}
313 313
 
314 314
 	var (
315
-		buffer *bytes.Buffer
316
-		job    = srv.Eng.Job("history", vars["name"])
315
+		err  error
316
+		outs *engine.Table
317
+		job  = srv.Eng.Job("history", vars["name"])
317 318
 	)
318 319
 
319 320
 	if version >= 1.9 {
320 321
 		job.Stdout.Add(w)
321
-	} else {
322
-		buffer = bytes.NewBuffer(nil)
323
-		job.Stdout.Add(buffer)
322
+	} else if outs, err = job.Stdout.AddTable(); err != nil {
323
+		return err
324 324
 	}
325
-	if err := job.Run(); err != nil {
325
+	if err = job.Run(); err != nil {
326 326
 		return err
327 327
 	}
328 328
 	if version < 1.9 { // Send as a valid JSON array
329
-		outs := engine.NewTable("Created", 0)
330
-		if _, err := outs.ReadFrom(buffer); err != nil {
331
-			return err
332
-		}
333
-		if _, err := outs.WriteListTo(w); err != nil {
329
+		if _, err = outs.WriteListTo(w); err != nil {
334 330
 			return err
335 331
 		}
336 332
 	}
... ...
@@ -342,25 +334,21 @@ func getContainersChanges(srv *Server, version float64, w http.ResponseWriter, r
342 342
 		return fmt.Errorf("Missing parameter")
343 343
 	}
344 344
 	var (
345
-		buffer *bytes.Buffer
346
-		job    = srv.Eng.Job("changes", vars["name"])
345
+		err  error
346
+		outs *engine.Table
347
+		job  = srv.Eng.Job("changes", vars["name"])
347 348
 	)
348 349
 
349 350
 	if version >= 1.9 {
350 351
 		job.Stdout.Add(w)
351
-	} else {
352
-		buffer = bytes.NewBuffer(nil)
353
-		job.Stdout.Add(buffer)
352
+	} else if outs, err = job.Stdout.AddTable(); err != nil {
353
+		return err
354 354
 	}
355
-	if err := job.Run(); err != nil {
355
+	if err = job.Run(); err != nil {
356 356
 		return err
357 357
 	}
358 358
 	if version < 1.9 { // Send as a valid JSON array
359
-		outs := engine.NewTable("", 0)
360
-		if _, err := outs.ReadFrom(buffer); err != nil {
361
-			return err
362
-		}
363
-		if _, err := outs.WriteListTo(w); err != nil {
359
+		if _, err = outs.WriteListTo(w); err != nil {
364 360
 			return err
365 361
 		}
366 362
 	}
... ...
@@ -514,24 +502,20 @@ func getImagesSearch(srv *Server, version float64, w http.ResponseWriter, r *htt
514 514
 	}
515 515
 
516 516
 	var (
517
-		buffer *bytes.Buffer
518
-		job    = srv.Eng.Job("search", r.Form.Get("term"))
517
+		err  error
518
+		outs *engine.Table
519
+		job  = srv.Eng.Job("search", r.Form.Get("term"))
519 520
 	)
520 521
 	if version >= 1.9 {
521 522
 		job.Stdout.Add(w)
522
-	} else {
523
-		buffer = bytes.NewBuffer(nil)
524
-		job.Stdout.Add(buffer)
523
+	} else if outs, err = job.Stdout.AddTable(); err != nil {
524
+		return err
525 525
 	}
526
-	if err := job.Run(); err != nil {
526
+	if err = job.Run(); err != nil {
527 527
 		return err
528 528
 	}
529 529
 	if version < 1.9 { // Send as a valid JSON array
530
-		outs := engine.NewTable("", 0)
531
-		if _, err := outs.ReadFrom(buffer); err != nil {
532
-			return err
533
-		}
534
-		if _, err := outs.WriteListTo(w); err != nil {
530
+		if _, err = outs.WriteListTo(w); err != nil {
535 531
 			return err
536 532
 		}
537 533
 	}