()
| 99 | } |
| 100 | |
| 101 | func (n Node) Label() string { |
| 102 | if n.Dummy { |
| 103 | return n.Annotations |
| 104 | } |
| 105 | |
| 106 | switch n.Type { |
| 107 | case SSID: |
| 108 | s := n.Entity.(string) |
| 109 | allPrint := true |
| 110 | |
| 111 | for _, rn := range s { |
| 112 | if !unicode.IsPrint(rune(rn)) { |
| 113 | allPrint = false |
| 114 | break |
| 115 | } |
| 116 | } |
| 117 | |
| 118 | if !allPrint { |
| 119 | s = fmt.Sprintf("0x%x", s) |
| 120 | } |
| 121 | return s |
| 122 | case BLEServer: |
| 123 | return fmt.Sprintf("%s\\n(%s)", |
| 124 | n.Entity.(map[string]interface{})["mac"].(string), |
| 125 | n.Entity.(map[string]interface{})["vendor"].(string)) |
| 126 | case Station: |
| 127 | return fmt.Sprintf("%s\\n(%s)", |
| 128 | n.Entity.(map[string]interface{})["mac"].(string), |
| 129 | n.Entity.(map[string]interface{})["vendor"].(string)) |
| 130 | case AccessPoint: |
| 131 | return fmt.Sprintf("%s\\n%s\\n(%s)", |
| 132 | n.Entity.(map[string]interface{})["hostname"].(string), |
| 133 | n.Entity.(map[string]interface{})["mac"].(string), |
| 134 | n.Entity.(map[string]interface{})["vendor"].(string)) |
| 135 | case Endpoint: |
| 136 | return fmt.Sprintf("%s\\n(%s %s)", |
| 137 | n.Entity.(map[string]interface{})["ipv4"].(string), |
| 138 | n.Entity.(map[string]interface{})["mac"].(string), |
| 139 | n.Entity.(map[string]interface{})["vendor"].(string)) |
| 140 | case Gateway: |
| 141 | return fmt.Sprintf("%s\\n(%s %s)", |
| 142 | n.Entity.(map[string]interface{})["ipv4"].(string), |
| 143 | n.Entity.(map[string]interface{})["mac"].(string), |
| 144 | n.Entity.(map[string]interface{})["vendor"].(string)) |
| 145 | } |
| 146 | return "?" |
| 147 | } |
| 148 | |
| 149 | func (n Node) Dot(isTarget bool) string { |
| 150 | style := nodeDotStyles[n.Type] |
no outgoing calls
no test coverage detected