root/chrome/browser/printing/cloud_print/cloud_print_url.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef CHROME_BROWSER_PRINTING_CLOUD_PRINT_CLOUD_PRINT_URL_H_
#define CHROME_BROWSER_PRINTING_CLOUD_PRINT_CLOUD_PRINT_URL_H_

#include <string>

class GURL;
class Profile;

namespace user_prefs {
class PrefRegistrySyncable;
}

// Centralize URL management for the cloud print service.
class CloudPrintURL {
 public:
  static void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry);

  explicit CloudPrintURL(Profile* profile) : profile_(profile) {}

  GURL GetCloudPrintServiceURL();
  GURL GetCloudPrintServiceDialogURL();
  GURL GetCloudPrintServiceManageURL();
  GURL GetCloudPrintServiceEnableURL(const std::string& proxy_id);
  GURL GetCloudPrintSigninURL();
  GURL GetCloudPrintAddAccountURL();

  // These aren't derived from the service, but it makes sense to keep all the
  // URLs together, and this gives the unit tests access for testing.
  static GURL GetCloudPrintLearnMoreURL();
  static GURL GetCloudPrintTestPageURL();

 private:
  Profile* profile_;
};

#endif  // CHROME_BROWSER_PRINTING_CLOUD_PRINT_CLOUD_PRINT_URL_H_

/* [<][>][^][v][top][bottom][index][help] */