| 681 | |
| 682 | |
| 683 | Status TestCSIPlugin::ValidateVolumeCapabilities( |
| 684 | ServerContext* context, |
| 685 | const csi::v0::ValidateVolumeCapabilitiesRequest* request, |
| 686 | csi::v0::ValidateVolumeCapabilitiesResponse* response) |
| 687 | { |
| 688 | LOG(INFO) << request->GetDescriptor()->name() << " '" << *request << "'"; |
| 689 | |
| 690 | // TODO(chhsiao): Validate the request. |
| 691 | |
| 692 | Try<Option<Error>, StatusError> result = validateVolumeCapabilities( |
| 693 | request->volume_id(), |
| 694 | request->volume_attributes(), |
| 695 | mesos::csi::v0::devolve(request->volume_capabilities())); |
| 696 | |
| 697 | if (result.isError()) { |
| 698 | return result.error().status; |
| 699 | } |
| 700 | |
| 701 | if (result->isSome()) { |
| 702 | response->set_supported(false); |
| 703 | response->set_message(result->get().message); |
| 704 | } else { |
| 705 | response->set_supported(true); |
| 706 | } |
| 707 | |
| 708 | return Status::OK; |
| 709 | } |
| 710 | |
| 711 | |
| 712 | Status TestCSIPlugin::ListVolumes( |