summaryrefslogtreecommitdiffstats
path: root/simple/simple-http/src/test/java/org/simpleframework/http/socket/table/WebSocketTableSchema.java
blob: c8f4a68457e6290e1c813846ccfbaa3baa73d447 (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
package org.simpleframework.http.socket.table;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;

public class WebSocketTableSchema {
   
   private final Map<String, WebSocketTableColumnStyle> columns;

   public WebSocketTableSchema(Map<String, WebSocketTableColumnStyle> columns) {     
      this.columns = columns;
   }
   
   public List<String> columnNames(){
      return new ArrayList<String>(columns.keySet());
   }
   
   public boolean validColumn(String name) {
      return columns.containsKey(name);
   }
   
   public String createStyle() {
      StringBuilder builder = new StringBuilder();
      Set<String> keys = columns.keySet();
      int count = 0;
      
      for(String key : keys){
         WebSocketTableColumnStyle style = columns.get(key);
         String columnStyle = style.createStyle();
         
         if(count++ > 0) {
            builder.append("|");
         }
         builder.append(columnStyle);
      }
      return builder.toString();
   }
}