Home | History | Annotate | Download | only in ios
      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