//VolumesList : Lists available volumes for use func (handler *StorageHandlersImpl) VolumesList(params storage.ListVolumesParams) middleware.Responder { defer trace.End(trace.Begin("")) var result []*models.VolumeResponse portlayerVolumes, err := storageVolumeLayer.VolumesList(context.TODO()) if err != nil { log.Error(err) return storage.NewListVolumesInternalServerError().WithPayload(&models.Error{ Code: swag.Int64(http.StatusInternalServerError), Message: err.Error(), }) } log.Debugf("volumes fetched from list call : %#v", portlayerVolumes) for i := range portlayerVolumes { model, err := fillVolumeModel(portlayerVolumes[i]) if err != nil { log.Error(err) return storage.NewListVolumesInternalServerError().WithPayload(&models.Error{ Code: swag.Int64(http.StatusInternalServerError), Message: err.Error(), }) } result = append(result, &model) } log.Debugf("volumes returned from list call : %#v", result) return storage.NewListVolumesOK().WithPayload(result) }
//GetVolume : Gets a handle to a volume func (h *StorageHandlersImpl) GetVolume(params storage.GetVolumeParams) middleware.Responder { defer trace.End(trace.Begin(params.Name)) op := trace.NewOperation(context.Background(), fmt.Sprintf("VolumeGet(%s)", params.Name)) data, err := h.volumeCache.VolumeGet(op, params.Name) if err == os.ErrNotExist { return storage.NewGetVolumeNotFound().WithPayload(&models.Error{ Code: swag.Int64(http.StatusNotFound), Message: err.Error(), }) } response, err := fillVolumeModel(data) if err != nil { return storage.NewListVolumesInternalServerError().WithPayload(&models.Error{ Code: swag.Int64(http.StatusInternalServerError), Message: err.Error(), }) } log.Debugf("VolumeGet returned : %#v", response) return storage.NewGetVolumeOK().WithPayload(&response) }