blob: c86479c96446fb815a9a8bdf71d68b80a26f1781 [file] [log] [blame]
// Copyright 2025 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef COMPONENTS_SESSION_MANAGER_CORE_SESSION_H_
#define COMPONENTS_SESSION_MANAGER_CORE_SESSION_H_
#include "components/account_id/account_id.h"
#include "components/session_manager/session_manager_export.h"
#include "components/session_manager/session_manager_types.h"
namespace session_manager {
// Represents a session.
class SESSION_EXPORT Session {
public:
Session(SessionId session_id, const AccountId& account_id);
Session(const Session&) = delete;
Session& operator=(const Session&) = delete;
~Session();
// Returns the ID for this session.
SessionId session_id() const { return session_id_; }
// Returns the AccountId for the User of this session.
const AccountId& account_id() const { return account_id_; }
private:
const SessionId session_id_;
// TODO(crbug.com/278643115): Replace with user_manager::User.
const AccountId account_id_;
};
} // namespace session_manager
#endif // COMPONENTS_SESSION_MANAGER_CORE_SESSION_H_