1 import java.util.Date ; 2 import jcifs.smb.*; 3 import java.io.*; 4 5 public class TestSmbURL { 6 7 static void test( String url, String name ) throws Exception { 8 SmbFile f; 9 10 if( name == null ) name = ""; 11 12 System.out.println( "INPUT[" + url + ", " + name + "]"); 13 try { 14 f = new SmbFile( url, name ); 15 } catch( Exception e ) { 16 e.printStackTrace(); 17 return; 18 } 19 20 System.out.print( "toString() : " ); 21 try { 22 System.out.println( f.toString() ); 23 } catch( Exception e ) { 24 e.printStackTrace(); System.out.println(); 25 } 26 System.out.print( "getCanonicalPath() : " ); 27 try { 28 System.out.println( f.getCanonicalPath() ); 29 } catch( Exception e ) { 30 e.printStackTrace(); System.out.println(); 31 } 32 System.out.print( "getUncPath() : " ); 33 try { 34 System.out.println( f.getUncPath() ); 35 } catch( Exception e ) { 36 e.printStackTrace(); System.out.println(); 37 } 38 System.out.print( "getName() : " ); 39 try { 40 System.out.println( f.getName() ); 41 } catch( Exception e ) { 42 e.printStackTrace(); System.out.println(); 43 } 44 System.out.print( "getParent() : " ); 45 try { 46 System.out.println( f.getParent() ); 47 } catch( Exception e ) { 48 e.printStackTrace(); System.out.println(); 49 } 50 System.out.print( "getPath() : " ); 51 try { 52 System.out.println( f.getPath() ); 53 } catch( Exception e ) { 54 e.printStackTrace(); System.out.println(); 55 } 56 System.out.print( "getServer() : " ); 57 try { 58 System.out.println( f.getServer() ); 59 } catch( Exception e ) { 60 e.printStackTrace(); System.out.println(); 61 } 62 System.out.print( "getShare() : " ); 63 try { 64 System.out.println( f.getShare() ); 65 } catch( Exception e ) { 66 e.printStackTrace(); System.out.println(); 67 } 68 System.out.print( "exists() : " ); 69 try { 70 System.out.println( f.exists() ); 71 } catch( Exception e ) { 72 e.printStackTrace(); System.out.println(); 73 } 74 System.out.print( "isDirectory() : " ); 75 try { 76 System.out.println( f.isDirectory() ); 77 } catch( Exception e ) { 78 e.printStackTrace(); System.out.println(); 79 } 80 System.out.print( "isFile() : " ); 81 try { 82 System.out.println( f.isFile() ); 83 } catch( Exception e ) { 84 e.printStackTrace(); System.out.println(); 85 } 86 System.out.print( "length() : " ); 87 try { 88 System.out.println( f.length() ); 89 } catch( Exception e ) { 90 e.printStackTrace(); System.out.println(); 91 } 92 System.out.print( "lastModified() : " ); 93 try { 94 System.out.println( (new Date ( f.lastModified() ))); 95 } catch( Exception e ) { 96 e.printStackTrace(); System.out.println(); 97 } 98 System.out.print( "toURL().toString() : " ); 99 try { 100 System.out.println( f.toURL() ); 101 } catch( Exception e ) { 102 e.printStackTrace(); System.out.println(); 103 } 104 105 System.in.read(); 106 } 107 108 public static void main( String argv[] ) throws Exception { 109 String workgroup, server, share, path, file; 110 111 if( argv.length < 5 ) { 112 System.err.println( "TestSmbURL workgroup server share path file" ); 113 System.exit( 1 ); 114 } 115 116 workgroup = argv[0]; 117 server = argv[1]; 118 share = argv[2]; 119 path = argv[3]; 120 file = argv[4]; 121 122 130 131 System.out.println(); 132 System.out.println( "-- BASICS: ONE ARGUMENT --" ); 133 System.out.println(); 134 test( "smb://" + server + "/" + share + "/" + path + "/" + file, null ); 135 test( "smb://" + server + "/" + share + "/" + path + "/", null ); 136 test( "smb://" + server + "/" + share + "/", null ); 137 test( "smb://" + server + "/", null ); 138 test( "smb://" + workgroup + "/", null ); 139 test( "smb://", null ); 140 141 System.out.println(); 142 System.out.println( "-- BASICS: TWO ARGUMENTS --" ); 143 System.out.println(); 144 test( "smb://" + server + "/" + share + "/" + path + "/", file); 145 test( "smb://" + server + "/" + share + "/", path + "/" + file); 146 test( "smb://" + server + "/", share + "/" + path + "/" + file); 147 test( "smb://", server + "/" + share + "/" + path + "/" + file); 148 test( "smb://", "smb://" + server + "/" + share + "/" + path + "/" + file); 149 test( "smb://", "smb://" + server + "/"); 150 test( "smb://", "smb://" + workgroup + "/"); 151 test( "smb://", "smb://"); 152 test( "smb://" + server + "/share/", "smb://"); 153 154 System.out.println(); 155 System.out.println( "-- CANONICALIZATION --" ); 156 System.out.println(); 157 test( "smb://" + server + "/" + share + "/foo/../" + path + "/" + file, null ); 158 test( "smb://" + server + "/foo/bar/.././../" + share + "/" + path + "/" + file, null ); 159 test( "smb://" + server + "/foo/bar/.././.././" + share + "/fake/../" + path + "/" + file, null ); 160 test( "smb://" + server + "/foo/bar/.././.././", share + "/fake/../" + path + "/" + file); 161 test( "smb://", server + "/foo/bar/.././.././" + share + "/fake/../" + path + "/" + file); 162 } 163 } 164 165 | Popular Tags |