File: GetType.java

package info (click to toggle)
jcifs 1.3.17-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 2,860 kB
  • ctags: 3,997
  • sloc: java: 23,131; xml: 3,672; ansic: 386; sh: 171; makefile: 27
file content (53 lines) | stat: -rw-r--r-- 1,599 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
import jcifs.netbios.NbtAddress;
import jcifs.smb.SmbFile;
import java.util.Date;

public class GetType {

    static final String[] types = { "TYPE_FILESYSTEM", "TYPE_WORKGROUP",
        "TYPE_SERVER", "TYPE_SHARE", "TYPE_NAMED_PIPE", "TYPE_PRINTER", "TYPE_COMM" };

    public static void main( String[] argv ) throws Exception {

        SmbFile file = new SmbFile( argv[0] );
        int type;

        switch( file.getType() ) {
            case SmbFile.TYPE_FILESYSTEM:
                type = 0;
                break;
            case SmbFile.TYPE_WORKGROUP:
                type = 1;
                break;
            case SmbFile.TYPE_SERVER:
                type = 2;
                break;
            case SmbFile.TYPE_SHARE:
                type = 3;
                break;
            case SmbFile.TYPE_NAMED_PIPE:
                type = 4;
                break;
            case SmbFile.TYPE_PRINTER:
                type = 5;
                break;
            case SmbFile.TYPE_COMM:
                type = 6;
                break;
            default:
                throw new RuntimeException( "Unknown service type: " + file.getType() );
        }
        System.out.println( types[type] );
        System.out.println();

        long t1 = System.currentTimeMillis();
        String[] files = file.list();
        long t2 = System.currentTimeMillis() - t1;

        for( int i = 0; i < files.length; i++ ) {
            System.out.print( " " + files[i] );
        }
        System.out.println();
        System.out.println( files.length + " files in " + t2 + "ms" );
    }
}