Yuta HIGUCHI | 238fa2a | 2014-05-01 09:56:46 -0700 | [diff] [blame] | 1 | package net.onrc.onos.apps.proxyarp.web; |
Jonathan Hart | 5afde49 | 2013-10-01 12:30:53 +1300 | [diff] [blame] | 2 | |
| 3 | import java.util.List; |
| 4 | |
Yuta HIGUCHI | 238fa2a | 2014-05-01 09:56:46 -0700 | [diff] [blame] | 5 | import net.onrc.onos.apps.proxyarp.IProxyArpService; |
| 6 | |
Jonathan Hart | 5afde49 | 2013-10-01 12:30:53 +1300 | [diff] [blame] | 7 | import org.restlet.resource.Get; |
| 8 | import org.restlet.resource.ServerResource; |
| 9 | |
Jonathan Hart | 7c9a2fb | 2014-03-27 09:51:41 -0700 | [diff] [blame] | 10 | /** |
| 11 | * REST resource to view the IP to MAC mappings in the ARP cache. |
Jonathan Hart | 7c9a2fb | 2014-03-27 09:51:41 -0700 | [diff] [blame] | 12 | */ |
Jonathan Hart | 5afde49 | 2013-10-01 12:30:53 +1300 | [diff] [blame] | 13 | public class ArpCacheResource extends ServerResource { |
| 14 | |
Jonathan Hart | 7c9a2fb | 2014-03-27 09:51:41 -0700 | [diff] [blame] | 15 | /** |
| 16 | * Handler for a REST call to retrieve the ARP cache. |
Ray Milkey | 269ffb9 | 2014-04-03 14:43:30 -0700 | [diff] [blame] | 17 | * |
Jonathan Hart | 7c9a2fb | 2014-03-27 09:51:41 -0700 | [diff] [blame] | 18 | * @return list of mappings formatted as a human-readable string. |
| 19 | */ |
| 20 | @Get("json") |
| 21 | public List<String> getArpCache() { |
| 22 | IProxyArpService arp = (IProxyArpService) getContext().getAttributes() |
| 23 | .get(IProxyArpService.class.getCanonicalName()); |
| 24 | |
| 25 | return arp.getMappings(); |
| 26 | } |
Jonathan Hart | 5afde49 | 2013-10-01 12:30:53 +1300 | [diff] [blame] | 27 | |
| 28 | } |