Stay organized with collections
    
    
      
      Save and categorize content based on your preferences.
    
  
  
    
  
  
  
  
    
    
    
  
  
    
    
    
    ProxyFileDescriptorCallback
    abstract class ProxyFileDescriptorCallback
    
    Callback that handles file system requests from ProxyFileDescriptor. All callback methods except for onRelease should throw android.system.ErrnoException with proper errno on errors. See errno(3) and android.system.OsConstants. Typical errnos are 
      
    
    Summary
    
    
      
        
          | Public methods | 
        
          | open Unit | Ensures all the written data are stored in permanent storage device. | 
        
          | open Long | Returns size of bytes provided by the file descriptor. | 
        
          | open Int | Provides bytes read from file descriptor. | 
        
          | abstract Unit | Invoked after the file is closed. | 
        
          | open Int | Handles bytes written to file descriptor. | 
      
    
    Public constructors
    
      ProxyFileDescriptorCallback
      ProxyFileDescriptorCallback()
     
    Public methods
    
      onFsync
      
      open fun onFsync(): Unit
      Ensures all the written data are stored in permanent storage device. For example, if it has data stored in on memory cache, it needs to flush data to storage device.
      
        
          
            | Exceptions | 
          
            | android.system.ErrnoException | ErrnoException containing E constants in OsConstants. | 
        
      
     
    
      onGetSize
      
      open fun onGetSize(): Long
      Returns size of bytes provided by the file descriptor.
      
        
          
            | Return | 
          
            | Long | Size of bytes. | 
        
      
      
        
          
            | Exceptions | 
          
            | android.system.ErrnoException | ErrnoException containing E constants in OsConstants. | 
        
      
     
    
      onRead
      
      open fun onRead(
    offset: Long, 
    size: Int, 
    data: ByteArray!
): Int
      Provides bytes read from file descriptor. It needs to return exact requested size of bytes unless it reaches file end.
      
        
          
            | Parameters | 
          
            | offset | Long: Offset in bytes from the file head specifying where to read bytes. If a seek operation is conducted on the file descriptor, then a read operation is requested, the offset refrects the proper position of requested bytes. | 
          
            | size | Int: Size for read bytes. | 
          
            | data | ByteArray!: Byte array to store read bytes. | 
        
      
      
        
          
            | Return | 
          
            | Int | Size of bytes returned by the function. | 
        
      
      
        
          
            | Exceptions | 
          
            | android.system.ErrnoException | ErrnoException containing E constants in OsConstants. | 
        
      
     
    
      onRelease
      
      abstract fun onRelease(): Unit
      Invoked after the file is closed.
     
    
      onWrite
      
      open fun onWrite(
    offset: Long, 
    size: Int, 
    data: ByteArray!
): Int
      Handles bytes written to file descriptor.
      
        
          
            | Parameters | 
          
            | offset | Long: Offset in bytes from the file head specifying where to write bytes. If a seek operation is conducted on the file descriptor, then a write operation is requested, the offset refrects the proper position of requested bytes. | 
          
            | size | Int: Size for write bytes. | 
          
            | data | ByteArray!: Byte array to be written to somewhere. | 
        
      
      
        
          
            | Return | 
          
            | Int | Size of bytes processed by the function. | 
        
      
      
        
          
            | Exceptions | 
          
            | android.system.ErrnoException | ErrnoException containing E constants in OsConstants. | 
        
      
     
  
  
  
    
  
 
  
    
      
      
    
    
      
    
    
  
       
    
    
      
    
  
  
  Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
  Last updated 2025-02-10 UTC.
  
  
  
    
      [[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-02-10 UTC."],[],[]]