18ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen// Copyright (c) 2009 The Chromium Authors. All rights reserved.
28ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen// Use of this source code is governed by a BSD-style license that can be
38ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen// found in the LICENSE file.
48ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen
58ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen#include "chrome/common/extensions/extension_error_utils.h"
68ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen
78ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen#include "base/string_util.h"
88ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen
98ae428e0fb7feea16d79853f29447469a93bedffKristian Monsenstd::string ExtensionErrorUtils::FormatErrorMessage(
108ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen    const std::string& format,
118ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen    const std::string& s1) {
128ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen  std::string ret_val = format;
138ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen  ReplaceFirstSubstringAfterOffset(&ret_val, 0, "*", s1);
148ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen  return ret_val;
158ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen}
168ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen
178ae428e0fb7feea16d79853f29447469a93bedffKristian Monsenstd::string ExtensionErrorUtils::FormatErrorMessage(
188ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen    const std::string& format,
198ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen    const std::string& s1,
208ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen    const std::string& s2) {
218ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen  std::string ret_val = format;
228ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen  ReplaceFirstSubstringAfterOffset(&ret_val, 0, "*", s1);
238ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen  ReplaceFirstSubstringAfterOffset(&ret_val, 0, "*", s2);
248ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen  return ret_val;
258ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen}
268ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen
278ae428e0fb7feea16d79853f29447469a93bedffKristian Monsenstd::string ExtensionErrorUtils::FormatErrorMessage(
288ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen    const std::string& format,
298ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen    const std::string& s1,
308ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen    const std::string& s2,
318ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen    const std::string& s3) {
328ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen  std::string ret_val = format;
338ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen  ReplaceFirstSubstringAfterOffset(&ret_val, 0, "*", s1);
348ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen  ReplaceFirstSubstringAfterOffset(&ret_val, 0, "*", s2);
358ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen  ReplaceFirstSubstringAfterOffset(&ret_val, 0, "*", s3);
368ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen  return ret_val;
378ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen}
38