1
2
3
4
5
6
7
8
9
10
11 package org.mule.util;
12
13 import org.mule.RegistryContext;
14 import org.mule.api.MuleContext;
15 import org.mule.api.agent.Agent;
16 import org.mule.config.MuleManifest;
17 import org.mule.config.i18n.CoreMessages;
18
19 import java.net.InetAddress;
20 import java.net.UnknownHostException;
21 import java.util.Collection;
22 import java.util.Iterator;
23 import java.util.Map;
24 import java.util.jar.Manifest;
25
26 public class ServerStartupSplashScreen extends SplashScreen
27 {
28 protected void doHeader(MuleContext context)
29 {
30 String notset = CoreMessages.notSet().getMessage();
31
32
33 Manifest mf = MuleManifest.getManifest();
34 Map att = mf.getMainAttributes();
35 if (att.values().size() > 0)
36 {
37 header.add(StringUtils.defaultString(MuleManifest.getProductDescription(), notset));
38 header.add(CoreMessages.version().getMessage() + " Build: "
39 + StringUtils.defaultString(MuleManifest.getBuildNumber(), notset));
40
41 header.add(StringUtils.defaultString(MuleManifest.getVendorName(), notset));
42 header.add(StringUtils.defaultString(MuleManifest.getProductMoreInfo(), notset));
43 }
44 else
45 {
46 header.add(CoreMessages.versionNotSet().getMessage());
47 }
48 header.add(" ");
49 if (context.getStartDate() > 0)
50 {
51 header.add(CoreMessages.serverStartedAt(context.getStartDate()).getMessage());
52 }
53 header.add("Server ID: " + context.getConfiguration().getId());
54
55
56 header.add("JDK: " + System.getProperty("java.version") + " (" + System.getProperty("java.vm.info")
57 + ")");
58 String patch = System.getProperty("sun.os.patch.level", null);
59 header.add("OS: " + System.getProperty("os.name")
60 + (patch != null && !"unknown".equalsIgnoreCase(patch) ? " - " + patch : "") + " ("
61 + System.getProperty("os.version") + ", " + System.getProperty("os.arch") + ")");
62 try
63 {
64 InetAddress host = InetAddress.getLocalHost();
65 header.add("Host: " + host.getHostName() + " (" + host.getHostAddress() + ")");
66 }
67 catch (UnknownHostException e)
68 {
69
70 }
71 header.add(" ");
72 }
73
74 protected void doFooter(MuleContext context)
75 {
76
77 if (!body.isEmpty())
78 {
79 footer.add(" ");
80 }
81
82 Collection agents = RegistryContext.getRegistry().lookupObjects(Agent.class);
83 if (agents.size() == 0)
84 {
85 footer.add(CoreMessages.agentsRunning().getMessage() + " "
86 + CoreMessages.none().getMessage());
87 }
88 else
89 {
90 footer.add(CoreMessages.agentsRunning().getMessage());
91 Agent umoAgent;
92 for (Iterator iterator = agents.iterator(); iterator.hasNext();)
93 {
94 umoAgent = (Agent) iterator.next();
95 footer.add(" " + umoAgent.getDescription());
96 }
97 }
98 }
99 }