package com.netifera.platform.net.wifi.internal.pcap; import com.netifera.platform.net.pcap.ICaptureInterface; import com.netifera.platform.net.pcap.IPacketCapture; import com.netifera.platform.net.pcap.IPacketHandler; import com.netifera.platform.net.wifi.pcap.IWifiPacketCapture; import com.netifera.platform.net.wifi.pcap.IWifiPacketCaptureFactory; import com.netifera.platform.net.wifi.pcap.IWirelessCaptureInterface; public class WirelessCaptureInterface implements IWirelessCaptureInterface { final private ICaptureInterface pcapInterface; final private IWifiPacketCaptureFactory wifiFactory; WirelessCaptureInterface(IWifiPacketCaptureFactory wifiPcapFactory, ICaptureInterface iface) { this.pcapInterface = iface; this.wifiFactory = wifiPcapFactory; } public boolean isMonitorModeCapable() { // TODO Auto-generated method stub return false; } public boolean captureAvailable() { return pcapInterface.captureAvailable(); } public String getName() { return pcapInterface.getName(); } public ICaptureInterface getInterface() { return pcapInterface; } public String toString() { return "Wireless: " + pcapInterface.toString(); } public IPacketCapture pcapCreate(int snaplen, boolean promiscuous, int timeout, IPacketHandler handler) { final IWifiPacketCapture capture = wifiFactory.create(this, snaplen, promiscuous, timeout, handler); capture.enableMonitorMode(true); return capture; } }