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
;
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
;
32 #endif // IOS_CHROME_BROWSER_UPDATABLE_CONFIG_UPDATABLE_ARRAY_H_