naiveproxy/components/services/unzip/public/interfaces/unzipper.mojom
2018-12-09 21:59:24 -05:00

29 lines
967 B
Plaintext

// Copyright 2017 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.
module unzip.mojom;
import "components/services/filesystem/public/interfaces/directory.mojom";
import "mojo/public/mojom/base/file.mojom";
import "mojo/public/mojom/base/file_path.mojom";
interface UnzipFilter {
[Sync]
ShouldUnzipFile(mojo_base.mojom.FilePath path) => (bool result);
};
interface Unzipper {
// Unzip |zip_file| into |output_dir|.
// Returns true on success, false otherwise.
Unzip(mojo_base.mojom.File zip_file, filesystem.mojom.Directory output_dir)
=> (bool result);
// Same as |unzip| but only includes the files for which |filter| returns
// true. Note that this incurs one IPC for each file of the archive.
UnzipWithFilter(
mojo_base.mojom.File zip_file,
filesystem.mojom.Directory output_dir,
UnzipFilter filter) => (bool result);
};