image_annotation_utils.cc 960 B

1234567891011121314151617181920212223242526
  1. // Copyright 2019 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #include "services/image_annotation/image_annotation_utils.h"
  5. #include <map>
  6. #include "base/no_destructor.h"
  7. namespace image_annotation {
  8. DescFailureReason ParseDescFailureReason(const std::string& reason_string) {
  9. const static base::NoDestructor<std::map<std::string, DescFailureReason>>
  10. kFailureReasonStrings(
  11. {{"UNKNOWN", DescFailureReason::kUnknown},
  12. {"OTHER", DescFailureReason::kOther},
  13. {"POLICY_VIOLATION", DescFailureReason::kPolicyViolation},
  14. {"ADULT", DescFailureReason::kAdult}});
  15. const auto lookup = kFailureReasonStrings->find(reason_string);
  16. return lookup == kFailureReasonStrings->end() ? DescFailureReason::kUnknown
  17. : lookup->second;
  18. }
  19. } // namespace image_annotation