1f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani/*
2f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani * Copyright (C) 2012 The Android Open Source Project
3f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani *
4f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani * Licensed under the Apache License, Version 2.0 (the "License");
5f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani * you may not use this file except in compliance with the License.
6f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani * You may obtain a copy of the License at
7f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani *
8f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani *      http://www.apache.org/licenses/LICENSE-2.0
9f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani *
10f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani * Unless required by applicable law or agreed to in writing, software
11f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani * distributed under the License is distributed on an "AS IS" BASIS,
12f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani * See the License for the specific language governing permissions and
14f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani * limitations under the License.
15f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani */
16f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani
17f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasanipackage android.accounts;
18f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani
19f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani/**
20f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani * Used to store the Account and the UserId this account is associated with.
21f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani *
22f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani * @hide
23f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani */
24f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasanipublic class AccountAndUser {
25f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani    public Account account;
26f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani    public int userId;
27f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani
28f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani    public AccountAndUser(Account account, int userId) {
29f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani        this.account = account;
30f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani        this.userId = userId;
31f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani    }
32f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani
33f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani    public boolean equals(Object o) {
34f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani        if (this == o) return true;
35f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani        if (!(o instanceof AccountAndUser)) return false;
36f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani        final AccountAndUser other = (AccountAndUser) o;
37f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani        return this.account.equals(other.account)
38f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani                && this.userId == other.userId;
39f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani    }
40f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani
41f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani    @Override
42f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani    public int hashCode() {
43f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani        return account.hashCode() + userId;
44f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani    }
45f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani
46f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani    public String toString() {
47f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani        return account.toString() + " u" + userId;
48f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani    }
49f29f2369cf4e1de090c985ed53d3f5e59535986aAmith Yamasani}
50