1 // Copyright 2014 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef REMOTING_IOS_HOST_REFRESH_H_ 6 #define REMOTING_IOS_HOST_REFRESH_H_ 7 8 #import <Foundation/Foundation.h> 9 10 #import "GTMOAuth2Authentication.h" 11 12 // HostRefresh encapsulates a fetch of the Chromoting host list from 13 // the jabber service. 14 15 // Contract to handle the host list result of a Chromoting host list fetch. 16 @protocol HostRefreshDelegate<NSObject> 17 18 - (void)hostListRefresh:(NSArray*)hostList errorMessage:(NSString*)errorMessage; 19 20 @end 21 22 // Fetches the host list from the jabber service async. Authenticates, 23 // and parses the results to provide to a HostListViewController 24 @interface HostRefresh : NSObject<NSURLConnectionDataDelegate> 25 26 // Store data read while the connection is active, and can be used after the 27 // connection has been discarded 28 @property(nonatomic, copy) NSMutableData* jsonData; 29 @property(nonatomic, copy) NSString* errorMessage; 30 @property(nonatomic, assign) id<HostRefreshDelegate> delegate; 31 32 - (void)refreshHostList:(GTMOAuth2Authentication*)authReq 33 delegate:(id<HostRefreshDelegate>)delegate; 34 35 @end 36 37 #endif // REMOTING_IOS_HOST_REFRESH_H_ 38