Download Reference Manual
The Developer's Library for D
About Wiki Forums Source Search Contact

Changeset 3382

Show
Ignore:
Timestamp:
03/19/08 02:12:22 (9 months ago)
Author:
lmartin92
Message:

Fixed up a little. Now all is completed but FtpFiles?. I will work a little on this Saturday.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • branches/lmartin/ftp/tango/io/vfs/FtpFolder.d

    r3377 r3382  
    1717 
    1818    public this(char[] server, char[] path, char[] username = "anonymous", 
    19            char[] password = "anonymous@anonymous", uint port = 21) 
     19                char[] password = "anonymous@anonymous", uint port = 21) 
    2020    in { 
    2121        assert(server != ""); 
     
    7171 
    7272    public this(char[] server, char[] path, char[] username = "anonymous", 
    73            char[] password = "anonymous@anonymous", uint port = 21) 
     73                char[] password = "anonymous@anonymous", uint port = 21) 
    7474    in { 
    7575        assert(server != ""); 
     
    104104    VfsFolders self() { 
    105105        return new VfsFolders(toString_, name_, username_, password_, port_, 
    106                true); 
     106            true); 
    107107    } 
    108108 
    109109    VfsFolders tree() { 
    110110        return new VfsFolders(toString_, name_, username_, password_, port_, 
    111                false); 
     111            false); 
    112112    } 
    113113 
     
    123123            if(fi.type = FtpFileType.dir) { 
    124124                FtpFolder x = new FtpFolder(toString_, fi.name, username_, 
    125                        password_, port_); 
     125                    password_, port_); 
    126126                if((result = dg(x)) != 0) 
    127127                    break; 
     
    178178 
    179179    public this(char[] server, char[] path, char[] username = "anonymous", 
    180            char[] password = "anonymous@anonymous", uint port = 21) 
     180                char[] password = "anonymous@anonymous", uint port = 21) 
    181181    in { 
    182182        assert(server != ""); 
     
    195195    int opApply(int delegate(inout VfsFolder) dg) { 
    196196        FtpFolder ftp = new FtpFolder(toString_, name_, username, password_, 
    197                port_); 
     197            port_); 
    198198        ftp.opApply(dg); 
    199199    } 
     
    250250    VfsFiles catalog(char[] pattern) { 
    251251        return new FtpFiles(toString_, name_, username_, password_, port_, 
    252                pattern); 
     252            pattern); 
    253253    } 
    254254 
    255255    VfsFiles catalog(VfsFilter filter = null) { 
    256256        return new FtpFiles(toString_, name_, username_, password_, port_, 
    257                filter); 
     257            filter); 
    258258    } 
    259259} 
     
    267267 
    268268    public this(char[] server, char[] path, char[] username = "anonymous", 
    269            char[] password = "anonymous@anonymous", uint port = 21) 
     269                char[] password = "anonymous@anonymous", uint port = 21) 
    270270    in { 
    271271        assert(server != ""); 
     
    310310 
    311311    VfsFile copy(VfsFile source) { 
    312         return null
     312        output.write(source.input.read)
    313313    } 
    314314 
    315315    VfsFile move(VfsFile source) { 
    316         return null; 
     316        copy(source); 
     317        source.remove; 
    317318    } 
    318319 
    319320    VfsFile create() { 
    320         return null; 
     321        FileFolder ff = new FileFolder("/NF", true); 
     322        ftp_ = new FTPConnection(); 
     323        ftp_.connect(toString_, username_, password_, port_); 
     324        ftp_.put(name_, ff.input); 
     325        ftp.close(); 
     326        ff.remove(); 
     327        return new FtpFile(toString_, name_, username_, password_, port_); 
    321328    } 
    322329 
    323330    VfsFile create(InputStream stream) { 
    324         return null; 
     331        ftp_ = new FTPConnection(); 
     332        ftp_.connect(toString_, username_, password_, port_); 
     333        ftp_.put(name_, stream); 
     334        ftp.close(); 
     335        return new FtpFile(toString_, name_, username_, password_, port_); 
    325336    } 
    326337 
    327338    VfsFile remove() { 
    328         return null; 
     339        ftp_ = new FTPConnection(); 
     340        ftp_.connect(toString_, username_, password_, port_); 
     341        ftp_.del(name_); 
     342        return new VfsFile(toString_, name_, username_, password_, port_); 
    329343    } 
    330344 
    331345    InputStream input() { 
    332         return null; 
     346        ftp_ = new FtpConnection(); 
     347        ftp_.connect(toString_, username_, password_, port_); 
     348        InputStream input = ftp_.input; 
     349        prepareInputStream(ftp_, input, FtpCommand.RETR, ["", path_]); 
     350        ftp_.close(); 
     351        return input; 
    333352    } 
    334353 
    335354    OutputStream output() { 
    336         return null; 
     355        ftp_ = new FtpConnection(); 
     356        ftp_.connect(toString_, username_, password_, port_); 
     357        OutputStream output = ftp_.output; 
     358        prepareOutputStream(ftp_, output, FtpCommand.STOR, ["", path_]); 
     359        ftp_.close(); 
     360        return output; 
    337361    } 
    338362 
    339363    VfsFile dup() { 
    340         return null
     364        return new FtpFile(toString_, name_, username_, password_, port_)
    341365    } 
    342366} 
     
    350374    char[] filter_; 
    351375    VfsFilter ffilter_; 
    352     bool useFilter = false; 
    353  
    354     public this(char[] server, char[] path, char[] username = "anonymous", 
    355            char[] password = "anonymous@anonymous", uint port = 21, 
    356            char[] filtPattern = "") 
     376    bool useFilter_ = false; 
     377 
     378    public this(char[] server, char[] path, char[] username = "anonymous", 
     379                char[] password = "anonymous@anonymous", uint port = 21, 
     380                char[] filtPattern = "") 
    357381    in { 
    358382        assert(server != ""); 
     
    368392        port_ = port; 
    369393        filter_ = filtPattern; 
    370         useFilter = true; 
    371     } 
    372  
    373     public this(char[] server, char[] path, char[] username = "anonymous", 
    374            char[] password = "anonymous@anonymous", uint port = 21, 
    375            VfsFilter filter = null) 
     394        useFilter_ = true; 
     395    } 
     396 
     397    public this(char[] server, char[] path, char[] username = "anonymous", 
     398                char[] password = "anonymous@anonymous", uint port = 21, 
     399                VfsFilter filter = null) 
    376400    in { 
    377401        assert(server != "");