pub struct App {
pub id: String,
pub version: Version,
pub fingerprint: Option<String>,
pub cohort: Cohort,
pub user_counting: UserCounting,
pub extra_fields: HashMap<String, String>,
}
Expand description
The App struct holds information about an application to perform an update check for.
Fields§
§id: String
This is the app_id that Omaha uses to identify a given application.
version: Version
This is the current version of the application.
fingerprint: Option<String>
This is the fingerprint for the application package.
See https://github.com/google/omaha/blob/HEAD/doc/ServerProtocolV3.md#packages–fingerprints
cohort: Cohort
The app’s current cohort information (cohort id, hint, etc). This is both provided to Omaha as well as returned by Omaha.
user_counting: UserCounting
The app’s current user-counting information. This is both provided to Omaha as well as returned by Omaha.
extra_fields: HashMap<String, String>
Extra fields to include in requests to Omaha. The client library does not inspect or operate on these, it just sends them to the service as part of the “app” objects in each request.
Implementations§
Source§impl App
impl App
Sourcepub fn builder() -> AppBuilder<((), (), (), (), (), ())>
pub fn builder() -> AppBuilder<((), (), (), (), (), ())>
Create a builder for building App
.
On the builder, call .id(...)
, .version(...)
, .fingerprint(...)
(optional), .cohort(...)
(optional), .user_counting(...)
(optional), .extra_fields(...)
(optional) to set the values of the fields.
Finally, call .build()
to create the instance of App
.
Source§impl App
impl App
Sourcepub async fn load<'a>(&'a mut self, storage: &'a impl Storage)
pub async fn load<'a>(&'a mut self, storage: &'a impl Storage)
Load data from |storage|, only overwrite existing fields if data exists.
Sourcepub async fn persist<'a>(&'a self, storage: &'a mut impl Storage)
pub async fn persist<'a>(&'a self, storage: &'a mut impl Storage)
Persist cohort and user counting to |storage|, will try to set all of them to storage even if previous set fails. It will NOT call commit() on |storage|, caller is responsible to call commit().
Sourcepub fn get_current_channel(&self) -> &str
pub fn get_current_channel(&self) -> &str
Get the current channel name from cohort name, returns empty string if no cohort name set for the app.
Sourcepub fn get_target_channel(&self) -> &str
pub fn get_target_channel(&self) -> &str
Get the target channel name from cohort hint, fallback to current channel if no hint.
Sourcepub fn set_target_channel(
&mut self,
channel: Option<String>,
id: Option<String>,
)
pub fn set_target_channel( &mut self, channel: Option<String>, id: Option<String>, )
Set the cohort hint to |channel|.
pub fn valid(&self) -> bool
Trait Implementations§
Source§impl From<&App> for PersistedApp
impl From<&App> for PersistedApp
impl Eq for App
impl StructuralPartialEq for App
Auto Trait Implementations§
impl Freeze for App
impl RefUnwindSafe for App
impl Send for App
impl Sync for App
impl Unpin for App
impl UnwindSafe for App
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)