# The //chrome/browser/policy code is being converted into a component at
# //components/policy. This DEPS file is temporarily restricting the include
# rules for this code; once all the exceptions are fixed then the code will
# be moved, and this file will be removed.
# http://crbug.com/271392

include_rules = [
  "-chrome",
  "-chromeos",
  "-content",
  "+chrome/browser/policy",
  "+chrome/browser/policy/cloud",
]

specific_include_rules = {
  # These files will stay.
  r"(cloud_policy_browsertest|"
  r"cloud_policy_manager_browsertest|"
  r"component_cloud_policy_browsertest|"
  r"device_management_service_browsertest|"
  r"test_request_interceptor|"
  r"user_policy_signin_service_android|"
  r"user_policy_signin_service_base|"
  r"user_policy_signin_service|"
  r"user_policy_signin_service_factory|"
  r"user_policy_signin_service_unittest)"
  r"\.(cc|h)": [
    "+chrome",
    "+chromeos",
    "+content/public/browser",
    "+content/public/common",
    "+content/public/test",
    "+content/test/net",
  ],

  r"cloud_policy_browsertest.cc": [
    "+sync/internal_api/public/base/invalidation.h",
  ],

  # TODO(joaodasilva): remove these exceptions.
  r"cloud_policy_invalidator\.cc": [
    "+chrome/browser/invalidation/invalidation_service.h",
  ],

  r"cloud_policy_invalidator_unittest\.cc": [
    "+chrome/browser/invalidation/fake_invalidation_service.h",
  ],

  r"cloud_policy_manager_unittest\.cc": [
    "+chrome/browser/invalidation/fake_invalidation_service.h",
  ],

  r"user_cloud_policy_invalidator\.cc": [
    "+chrome/browser/chrome_notification_types.h",
    "+chrome/browser/invalidation/invalidation_service_factory.h",
    "+content/public/browser/notification_source.h",
  ],

  r"user_cloud_policy_invalidator_factory\.cc": [
    "+chrome/browser/invalidation/invalidation_service_factory.h",
    "+chrome/browser/profiles/profile.h",
    "+chrome/browser/chromeos/policy/user_cloud_policy_manager_chromeos.h",
    "+chrome/browser/chromeos/policy/user_cloud_policy_manager_factory_chromeos.h",
  ],

  r"user_cloud_policy_invalidator\.h": [
    "+content/public/browser/notification_observer.h",
    "+content/public/browser/notification_registrar.h",
  ],

  r"user_cloud_policy_manager_factory\.cc": [
    "+chrome/browser/profiles/profile.h",
  ],

  r"user_cloud_policy_store\.cc": [
    "+chrome/browser/profiles/profile.h",
    "+chrome/browser/signin/signin_manager.h",
    "+chrome/browser/signin/signin_manager_factory.h",
  ],

  r"user_cloud_policy_store_unittest\.cc": [
    "+chrome/browser/signin/fake_signin_manager.h",
    "+chrome/browser/signin/signin_manager.h",
    "+chrome/browser/signin/signin_manager_factory.h",
    "+chrome/common/pref_names.h",
    "+chrome/test/base/testing_profile.h",
  ],
}
