Upstreaming browser/ui/uikit_ui_util from iOS.
[chromium-blink-merge.git] / ios / chrome / browser / updatable_config / updatable_array.h
blob2496327c7d1301e76522f21af15450141cd45256
1 // Copyright 2013 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.
5 #ifndef IOS_CHROME_BROWSER_UPDATABLE_CONFIG_UPDATABLE_ARRAY_H_
6 #define IOS_CHROME_BROWSER_UPDATABLE_CONFIG_UPDATABLE_ARRAY_H_
8 #import "ios/chrome/browser/updatable_config/updatable_config_base.h"
9 #import "ios/public/provider/chrome/browser/updatable_resource_provider.h"
11 // UpdatableResourceBridge supports data files of json or plist format but only
12 // allows dictionary types in the data. UpdatableArrayDelegate overrides the
13 // default file loader to accept plist file type with <array> data.
14 // This class is publicly declared here for unit tests to mock for testing
15 // and is not intended to be used elsewhere.
16 @interface UpdatableArrayDelegate : NSObject<UpdatableResourceDelegate>
18 // The array object loaded from updatable resource.
19 @property(nonatomic, readonly) NSArray* resourceArray;
21 @end
23 @interface UpdatableArray : UpdatableConfigBase
25 // Returns an autoreleased copy of the configuration array read from the
26 // file specified in the initializer. This implementation supports <array>
27 // data type specified as a plist only.
28 - (NSArray*)arrayFromConfig;
30 @end
32 #endif // IOS_CHROME_BROWSER_UPDATABLE_CONFIG_UPDATABLE_ARRAY_H_