/[projects]/miscJava/CircuitBreaker/src/main/java/dk/thoerup/circuitbreaker/web/ListCircuitBreakers.java
ViewVC logotype

Diff of /miscJava/CircuitBreaker/src/main/java/dk/thoerup/circuitbreaker/web/ListCircuitBreakers.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 411 by torben, Wed Oct 7 15:56:01 2009 UTC revision 414 by torben, Wed Oct 7 19:24:06 2009 UTC
# Line 3  package dk.thoerup.curcuitbreaker.web; Line 3  package dk.thoerup.curcuitbreaker.web;
3    
4  import java.net.URLEncoder;  import java.net.URLEncoder;
5  import javax.servlet.http.HttpServletRequest;  import javax.servlet.http.HttpServletRequest;
6    
7    import dk.thoerup.curcuitbreaker.CircuitBreaker;
8  import dk.thoerup.curcuitbreaker.CircuitBreakerManager;  import dk.thoerup.curcuitbreaker.CircuitBreakerManager;
9    
10  public class ListCircuitBreakers {  public class ListCircuitBreakers {
# Line 13  public class ListCircuitBreakers { Line 15  public class ListCircuitBreakers {
15                  CircuitBreakerManager manager = CircuitBreakerManager.getManager();                  CircuitBreakerManager manager = CircuitBreakerManager.getManager();
16                                    
17                  sb.append("<html><head><title>CircuitBreakers</title></head>\n\n<body>");                  sb.append("<html><head><title>CircuitBreakers</title></head>\n\n<body>");
18                  sb.append("<h2>CircuitBreakers:</h>\n\n<ul>");                  sb.append("<h2>CircuitBreakers:</h2>\n\n");
19                    sb.append("<table border=\"1\"><tr><th>Name</th><th>Type</th><th>Status</th></tr>\n");
20                                    
21                  for (String breakerName : manager.getCircuitBreakerNames()) {                  for (String breakerName : manager.getCircuitBreakerNames()) {
22                          sb.append("<li><a href=\"").append( req.getRequestURI() ).append("?action=view&breaker=");                          CircuitBreaker breaker = manager.getCircuitBreaker(breakerName);
23                          String name = breakerName;                          String color = "white";
24                            
25                            if (breaker.getStateName().equalsIgnoreCase("open")) {
26                                    color = "red";
27                            } else if (breaker.getStateName().equalsIgnoreCase("Half-open")) {
28                                    color = "yellow";
29                            } else { //must be "closed"
30                                    color ="green";
31                            }
32                            
33                            String encodedName = breakerName;
34                          try {                          try {
35                                  name = URLEncoder.encode(breakerName,"UTF-8" );                                  encodedName = URLEncoder.encode(breakerName,"UTF-8" );
36                          } catch (Exception e) {                          } catch (Exception e) {
37                                  //if Encoding fails we just use normal name and cross our fingers                                  //if Encoding fails we just use normal name and cross our fingers
38                          }                          }
39                          sb.append( name );                          
40                          sb.append("\">").append(breakerName).append("</a></li>\n");                          sb.append("<tr>");
41                            sb.append("<td><a href=\"").append( req.getRequestURI() ).append("?action=view&breaker=");
42                            sb.append( encodedName ).append("\">").append(breakerName).append("</a></td>\n");
43                            sb.append("<td>").append( breaker.getClass().getSimpleName()).append("</td>\n");
44                            sb.append("<td style=\"background-color: ").append(color).append("\">&nbsp;</td>\n");
45                            sb.append("</tr>\n\n");
46                  }                  }
47                                    
48                  sb.append("</ul></body></html>\n");                  sb.append("</table></body></html>\n");
49                                    
50                  return sb.toString();                  return sb.toString();
51          }          }

Legend:
Removed from v.411  
changed lines
  Added in v.414

  ViewVC Help
Powered by ViewVC 1.1.20