2894 |
05 Nov 14 |
nicklas |
1 |
package net.sf.basedb.reggie.logo; |
2894 |
05 Nov 14 |
nicklas |
2 |
|
2894 |
05 Nov 14 |
nicklas |
3 |
import java.io.File; |
2894 |
05 Nov 14 |
nicklas |
4 |
import java.io.FileInputStream; |
2894 |
05 Nov 14 |
nicklas |
5 |
import java.io.IOException; |
2894 |
05 Nov 14 |
nicklas |
6 |
import java.io.InputStream; |
2894 |
05 Nov 14 |
nicklas |
7 |
|
2894 |
05 Nov 14 |
nicklas |
8 |
import net.sf.basedb.reggie.Reggie; |
2894 |
05 Nov 14 |
nicklas |
9 |
|
2894 |
05 Nov 14 |
nicklas |
10 |
/** |
2894 |
05 Nov 14 |
nicklas |
External logotype definition. Configuration is made in |
2894 |
05 Nov 14 |
nicklas |
reggie-config.xml under the logos/* settings. The value for |
2894 |
05 Nov 14 |
nicklas |
each setting is the full path to the logo file. |
2894 |
05 Nov 14 |
nicklas |
14 |
|
2894 |
05 Nov 14 |
nicklas |
@author nicklas |
2894 |
05 Nov 14 |
nicklas |
@since 2.18 |
2894 |
05 Nov 14 |
nicklas |
17 |
*/ |
2894 |
05 Nov 14 |
nicklas |
18 |
public class ExternalLogo |
2894 |
05 Nov 14 |
nicklas |
19 |
extends Logo |
2894 |
05 Nov 14 |
nicklas |
20 |
{ |
2894 |
05 Nov 14 |
nicklas |
21 |
|
2894 |
05 Nov 14 |
nicklas |
22 |
|
2894 |
05 Nov 14 |
nicklas |
23 |
private final String configPath; |
2894 |
05 Nov 14 |
nicklas |
24 |
|
2894 |
05 Nov 14 |
nicklas |
25 |
public ExternalLogo(String configPath) |
2894 |
05 Nov 14 |
nicklas |
26 |
{ |
2894 |
05 Nov 14 |
nicklas |
27 |
this.configPath = configPath; |
2894 |
05 Nov 14 |
nicklas |
28 |
} |
2894 |
05 Nov 14 |
nicklas |
29 |
|
2894 |
05 Nov 14 |
nicklas |
30 |
@Override |
2894 |
05 Nov 14 |
nicklas |
31 |
public boolean exists() |
2894 |
05 Nov 14 |
nicklas |
32 |
{ |
3129 |
10 Feb 15 |
nicklas |
33 |
String path = Reggie.getConfig().getConfig(configPath, null, null); |
2894 |
05 Nov 14 |
nicklas |
34 |
return path == null ? false : new File(path).exists(); |
2894 |
05 Nov 14 |
nicklas |
35 |
} |
2894 |
05 Nov 14 |
nicklas |
36 |
|
2894 |
05 Nov 14 |
nicklas |
37 |
@Override |
2894 |
05 Nov 14 |
nicklas |
38 |
public InputStream getLogo() |
2894 |
05 Nov 14 |
nicklas |
39 |
{ |
2894 |
05 Nov 14 |
nicklas |
40 |
InputStream in = null; |
3129 |
10 Feb 15 |
nicklas |
41 |
String path = Reggie.getConfig().getConfig(configPath, null, null); |
2894 |
05 Nov 14 |
nicklas |
42 |
if (path != null) |
2894 |
05 Nov 14 |
nicklas |
43 |
{ |
2894 |
05 Nov 14 |
nicklas |
44 |
File f = new File(path); |
2894 |
05 Nov 14 |
nicklas |
45 |
try |
2894 |
05 Nov 14 |
nicklas |
46 |
{ |
2894 |
05 Nov 14 |
nicklas |
47 |
if (f.exists()) in = new FileInputStream(f); |
2894 |
05 Nov 14 |
nicklas |
48 |
} |
2894 |
05 Nov 14 |
nicklas |
49 |
catch (IOException ex) |
2894 |
05 Nov 14 |
nicklas |
50 |
{} |
2894 |
05 Nov 14 |
nicklas |
51 |
} |
2894 |
05 Nov 14 |
nicklas |
52 |
return in; |
2894 |
05 Nov 14 |
nicklas |
53 |
} |
2894 |
05 Nov 14 |
nicklas |
54 |
|
2894 |
05 Nov 14 |
nicklas |
55 |
} |