@startuml

    !include lexakai.theme
    
    title "com.telenav.kivakit.filesystems.hdfs.proxy.spi"
    
    interface Remote
    Remote <|-- HdfsProxy
    interface HdfsProxy
    {
        --
        +long length(String path)
        +long openForReading(String path)
        +long openForWriting(String path)
        +String root(String path)
        --(checks)--
        +boolean isWritable(String path)
        --(filesystem)--
        +boolean deleteFile(String path)
        +boolean deleteFolder(String path)
        +boolean exists(String path)
        +List<String> files(String path)
        +List<String> folders(String path)
        +boolean isFile(String path)
        +boolean isFolder(String path)
        +boolean mkdirs(String path)
        +List<String> nestedFiles(String path)
        +boolean rename(String from, String to)
        +String temporaryFile(String path, String baseName)
        +String temporaryFolder(String path, String baseName)
        --(time)--
        +long lastModified(String path)
        +boolean lastModified(String pathAsString, long time)
    }
    
@enduml

