blob: f16ca9f2f1a1c4a257ba2488d21a069af10500c1 [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 SERVICES_CATALOG_MANIFEST_PROVIDER_H_
#define SERVICES_CATALOG_MANIFEST_PROVIDER_H_
#include <string>
namespace base {
class Value;
}
namespace catalog {
// An interface which can be implemented by a catalog embedder to override
// manifest fetching behavior.
class ManifestProvider {
public:
virtual ~ManifestProvider() {}
// Retrieves the raw contents of the manifest for application named |name|.
// Returns true if |name| is known and |*manifest_contents| is populated.
// returns false otherwise.
virtual std::unique_ptr<base::Value> GetManifest(const std::string& name) = 0;
};
} // namespace catalog
#endif // SERVICES_CATALOG_MANIFEST_PROVIDER_H_