blob: 68f9200b555bc0449fb6f28c152d8e2233e2ca36 (
plain)
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
|
// URLPathEntry.java -- search path element for URL's
/* Copyright (C) 1999 Cygnus Solutions
This file is part of libgcj.
This software is copyrighted work licensed under the terms of the
Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
details. */
/* Author: Kresten Krab Thorup <krab@gnu.org> */
package gnu.gcj.util.path;
import java.util.*;
import java.util.zip.*;
import java.io.*;
import java.net.*;
final class URLPathEntry extends PathEntry {
final URL base;
URLPathEntry (URL f) {
base = f;
}
public String toString () { return base.toString (); }
URL getURL (String file) {
try {
URL res = new URL (base, file);
InputStream is = res.openStream (); // exc if not found
is.close ();
return res;
} catch (java.io.IOException x) {
return null;
}
}
InputStream getStream (String file) {
try {
URL res = new URL (base, file);
return res.openStream ();
} catch (java.io.IOException x) {
return null;
}
}
byte[] getBytes (String file) {
try {
URL res = new URL (base, file);
URLConnection conn = res.openConnection ();
int len = conn.getContentLength ();
if (len == -1) return null;
return readbytes (conn.getInputStream (), len);
} catch (java.io.IOException x) {
return null;
}
}
}
|