blob: 179df07c80206bf1ae1e714b073e9732fde031c0 [file] [log] [blame]
// Copyright 2019 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//! Convenience types related to account auth states.
use crate::{FidlLocalAccountId, LocalAccountId};
use fidl_fuchsia_auth::{AuthState, AuthStateSummary};
/// Convenience type for the autogenerated FIDL AccountAuthState.
pub type FidlAccountAuthState = fidl_fuchsia_auth_account::AccountAuthState;
/// Wrapper type of an AccountAuthState which is cloneable.
#[derive(Clone)]
pub struct AccountAuthState {
/// Identifies the account to which this auth state belongs
pub account_id: LocalAccountId,
// TODO(dnordstrom): Add other states
}
impl From<&AccountAuthState> for FidlAccountAuthState {
fn from(account_auth_state: &AccountAuthState) -> FidlAccountAuthState {
FidlAccountAuthState {
account_id: FidlLocalAccountId::from(account_auth_state.account_id.clone()),
auth_state: AuthState { summary: AuthStateSummary::Unknown },
}
}
}