Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 06c81f29 authored by Kenny Root's avatar Kenny Root Committed by Android (Google) Code Review
Browse files

Merge changes I8a257579,I82d16312 into gingerbread

* changes:
  Add AStorageManager API to NDK
  Reorganize MountService IPC
parents 300b0b7e 086d084d
Loading
Loading
Loading
Loading
+0 −4
Original line number Diff line number Diff line
@@ -118,10 +118,6 @@ LOCAL_SRC_FILES += \
	core/java/android/net/IThrottleManager.aidl \
	core/java/android/os/IHardwareService.aidl \
	core/java/android/os/IMessenger.aidl \
	core/java/android/os/storage/IMountService.aidl \
	core/java/android/os/storage/IMountServiceListener.aidl \
	core/java/android/os/storage/IMountShutdownObserver.aidl \
	core/java/android/os/storage/IObbActionListener.aidl \
	core/java/android/os/INetworkManagementService.aidl \
	core/java/android/os/INetStatService.aidl \
	core/java/android/os/IPermissionController.aidl \
+1 −0
Original line number Diff line number Diff line
@@ -67,6 +67,7 @@ $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES/libequalizerte
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES/libreverb_intermediates)
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES/libreverbtest_intermediates)
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib/soundfx/)
$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/framework_intermediates/src/core/java/android/os/storage/*)

# ************************************************
# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
+0 −184
Original line number Diff line number Diff line
/* //device/java/android/android/os/IUsb.aidl
**
** Copyright 2007, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License"); 
** you may not use this file except in compliance with the License. 
** You may obtain a copy of the License at 
**
**     http://www.apache.org/licenses/LICENSE-2.0 
**
** Unless required by applicable law or agreed to in writing, software 
** distributed under the License is distributed on an "AS IS" BASIS, 
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
** See the License for the specific language governing permissions and 
** limitations under the License.
*/

package android.os.storage;

import android.os.storage.IMountServiceListener;
import android.os.storage.IMountShutdownObserver;
import android.os.storage.IObbActionListener;

/** WARNING! Update IMountService.h and IMountService.cpp if you change this file.
 * In particular, the ordering of the methods below must match the 
 * _TRANSACTION enum in IMountService.cpp
 * @hide - Applications should use android.os.storage.StorageManager to access
 * storage functions.
 */
interface IMountService
{
    /**
     * Registers an IMountServiceListener for receiving async
     * notifications.
     */
    void registerListener(IMountServiceListener listener);

    /**
     * Unregisters an IMountServiceListener
     */
    void unregisterListener(IMountServiceListener listener);

    /**
     * Returns true if a USB mass storage host is connected
     */
    boolean isUsbMassStorageConnected();

    /**
     * Enables / disables USB mass storage.
     * The caller should check actual status of enabling/disabling
     * USB mass storage via StorageEventListener.
     */
    void setUsbMassStorageEnabled(boolean enable);

    /**
     * Returns true if a USB mass storage host is enabled (media is shared)
     */
    boolean isUsbMassStorageEnabled();

    /**
     * Mount external storage at given mount point.
     * Returns an int consistent with MountServiceResultCode
     */
    int mountVolume(String mountPoint);

    /**
     * Safely unmount external storage at given mount point.
     * The unmount is an asynchronous operation. Applications
     * should register StorageEventListener for storage related
     * status changes.
     * 
     */
    void unmountVolume(String mountPoint, boolean force);

    /**
     * Format external storage given a mount point.
     * Returns an int consistent with MountServiceResultCode
     */
    int formatVolume(String mountPoint);

    /**
     * Returns an array of pids with open files on
     * the specified path.
     */
    int[] getStorageUsers(String path);

    /**
     * Gets the state of a volume via its mountpoint.
     */
    String getVolumeState(String mountPoint);

    /*
     * Creates a secure container with the specified parameters.
     * Returns an int consistent with MountServiceResultCode
     */
    int createSecureContainer(String id, int sizeMb, String fstype, String key, int ownerUid);

    /*
     * Finalize a container which has just been created and populated.
     * After finalization, the container is immutable.
     * Returns an int consistent with MountServiceResultCode
     */
    int finalizeSecureContainer(String id);

    /*
     * Destroy a secure container, and free up all resources associated with it.
     * NOTE: Ensure all references are released prior to deleting.
     * Returns an int consistent with MountServiceResultCode
     */
    int destroySecureContainer(String id, boolean force);

    /*
     * Mount a secure container with the specified key and owner UID.
     * Returns an int consistent with MountServiceResultCode
     */
    int mountSecureContainer(String id, String key, int ownerUid);

    /*
     * Unount a secure container.
     * Returns an int consistent with MountServiceResultCode
     */
    int unmountSecureContainer(String id, boolean force);

    /*
     * Returns true if the specified container is mounted
     */
    boolean isSecureContainerMounted(String id);

    /*
     * Rename an unmounted secure container.
     * Returns an int consistent with MountServiceResultCode
     */
    int renameSecureContainer(String oldId, String newId);

    /*
     * Returns the filesystem path of a mounted secure container.
     */
    String getSecureContainerPath(String id);

    /**
     * Gets an Array of currently known secure container IDs
     */
    String[] getSecureContainerList();

    /**
     * Shuts down the MountService and gracefully unmounts all external media.
     * Invokes call back once the shutdown is complete.
     */
    void shutdown(IMountShutdownObserver observer);

    /**
     * Call into MountService by PackageManager to notify that its done
     * processing the media status update request.
     */
    void finishMediaUpdate();

    /**
     * Mounts an Opaque Binary Blob (OBB) with the specified decryption key and only
     * allows the calling process's UID access to the contents.
     *
     * MountService will call back to the supplied IObbActionListener to inform
     * it of the terminal state of the call.
     */
    void mountObb(String filename, String key, IObbActionListener token);

    /**
     * Unmounts an Opaque Binary Blob (OBB). When the force flag is specified, any
     * program using it will be forcibly killed to unmount the image.
     *
     * MountService will call back to the supplied IObbActionListener to inform
     * it of the terminal state of the call.
     */
    void unmountObb(String filename, boolean force, IObbActionListener token);

    /**
     * Checks whether the specified Opaque Binary Blob (OBB) is mounted somewhere.
     */
    boolean isObbMounted(String filename);

    /**
     * Gets the path to the mounted Opaque Binary Blob (OBB).
     */
    String getMountedObbPath(String filename);
}
Loading