blob: b4abefcf06f0e66bfc62fe48366f441d2460393d [file] [log] [blame]
// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef REMOTING_IOS_DOMAIN_HOST_INFO_H_
#define REMOTING_IOS_DOMAIN_HOST_INFO_H_
#import <Foundation/Foundation.h>
namespace remoting {
struct HostInfo;
} // namespace remoting
// A detail record for a Remoting Host.
@interface HostInfo : NSObject
// Various properties of the Remoting Host.
@property(nonatomic, copy) NSString* createdTime;
@property(nonatomic, copy) NSString* hostId;
@property(nonatomic, copy) NSString* hostName;
@property(nonatomic, copy) NSString* hostOs;
@property(nonatomic, copy) NSString* hostOsVersion;
@property(nonatomic, copy) NSString* hostVersion;
@property(nonatomic, copy) NSString* jabberId;
@property(nonatomic, copy) NSString* kind;
@property(nonatomic, copy) NSString* publicKey;
@property(nonatomic, copy) NSString* status;
@property(nonatomic, copy) NSString* updatedTime;
@property(nonatomic, copy) NSString* offlineReason;
// True when |status| is @"ONLINE", anything else is False.
@property(nonatomic, readonly) bool isOnline;
- (instancetype)initWithRemotingHostInfo:(const remoting::HostInfo&)hostInfo;
// First consider if |isOnline| is greater than anything else, then consider by
// case insensitive locale of |hostName|.
- (NSComparisonResult)compare:(HostInfo*)host;
@end
#endif // REMOTING_IOS_DOMAIN_HOST_INFO_H_