1 // Copyright 2015 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.
5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_USERS_AFFILIATION_H_
6 #define CHROME_BROWSER_CHROMEOS_LOGIN_USERS_AFFILIATION_H_
13 typedef std::set
<std::string
> AffiliationIDSet
;
15 // Returns true if there is at least one common element in two sets.
16 // Complexity: O(n + m), where n - size of the first set, m - size of
18 bool HaveCommonElement(const std::set
<std::string
>& set1
,
19 const std::set
<std::string
>& set2
);
21 // TODO(peletskyi): Remove email and enterprise domain after affiliation
22 // based implementation will fully work. http://crbug.com/515476
23 // The function makes a decision if user with |user_affiliation_ids| and
24 // |email| is affiliated on the device with |device_affiliation_ids| and
25 // |enterprise_domain|.
26 bool IsUserAffiliated(const AffiliationIDSet
& user_affiliation_ids
,
27 const AffiliationIDSet
& device_affiliation_ids
,
28 const std::string
& email
,
29 const std::string
& enterprise_domain
);
31 } // namespace chromeos
33 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_USERS_AFFILIATION_H_