mirror of
https://github.com/angryip/ipscan.git
synced 2025-10-26 11:18:17 +00:00
Added pull-up method refactoring
This commit is contained in:
parent
a61b443f29
commit
75c272e706
@ -18,6 +18,7 @@ import net.azib.ipscan.core.state.StateMachine.Transition;
|
||||
import net.azib.ipscan.core.state.StateTransitionListener;
|
||||
import net.azib.ipscan.gui.ResultTable;
|
||||
import net.azib.ipscan.gui.StatusBar;
|
||||
import net.azib.ipscan.gui.feeders.AbstractFeederGUI;
|
||||
import net.azib.ipscan.gui.feeders.FeederGUIRegistry;
|
||||
import org.eclipse.swt.SWT;
|
||||
import org.eclipse.swt.events.SelectionEvent;
|
||||
@ -48,6 +49,7 @@ public class StartStopScanningAction implements SelectionListener, ScanningProgr
|
||||
private ResultTable resultTable;
|
||||
private FeederGUIRegistry feederRegistry;
|
||||
private Button button;
|
||||
private AbstractFeederGUI abstractFeederGUI;
|
||||
|
||||
Image[] buttonImages = new Image[ScanningState.values().length];
|
||||
String[] buttonTexts = new String[ScanningState.values().length];
|
||||
@ -80,7 +82,7 @@ public class StartStopScanningAction implements SelectionListener, ScanningProgr
|
||||
|
||||
public StartStopScanningAction(ScannerDispatcherThreadFactory scannerThreadFactory, StateMachine stateMachine, ResultTable resultTable,
|
||||
StatusBar statusBar, FeederGUIRegistry feederRegistry, PingerRegistry pingerRegistry,
|
||||
Button startStopButton, GUIConfig guiConfig) {
|
||||
Button startStopButton, GUIConfig guiConfig, AbstractFeederGUI abstractFeederGUI) {
|
||||
this(startStopButton.getDisplay());
|
||||
|
||||
this.scannerThreadFactory = scannerThreadFactory;
|
||||
@ -92,6 +94,7 @@ public class StartStopScanningAction implements SelectionListener, ScanningProgr
|
||||
this.stateMachine = stateMachine;
|
||||
this.guiConfig = guiConfig;
|
||||
this.taskBarItem = getTaskBarItem();
|
||||
this.abstractFeederGUI = abstractFeederGUI;
|
||||
|
||||
// add listeners to all state changes
|
||||
stateMachine.addTransitionListener(this);
|
||||
@ -160,7 +163,7 @@ public class StartStopScanningAction implements SelectionListener, ScanningProgr
|
||||
resultTable.removeAll();
|
||||
|
||||
try {
|
||||
scannerThread = scannerThreadFactory.createScannerThread(feederRegistry.createFeeder(), StartStopScanningAction.this, createResultsCallback(state));
|
||||
scannerThread = scannerThreadFactory.createScannerThread(abstractFeederGUI.createFeeder(), StartStopScanningAction.this, createResultsCallback(state));
|
||||
stateMachine.startScanning();
|
||||
mainWindowTitle = statusBar.getShell().getText();
|
||||
}
|
||||
|
||||
@ -94,6 +94,10 @@ public abstract class AbstractFeederGUI extends Composite implements FeederCreat
|
||||
}).start();
|
||||
}
|
||||
|
||||
public Feeder createFeeder() {
|
||||
return createFeeder();
|
||||
}
|
||||
|
||||
protected void afterLocalHostInfoFilled(InterfaceAddress localInterface) {
|
||||
}
|
||||
}
|
||||
|
||||
@ -79,14 +79,6 @@ public class FeederGUIRegistry implements FeederRegistry {
|
||||
throw new FeederException("Feeder not found: " + feederId);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return new Feeder initialized using the currently selected Feeder GUI
|
||||
*/
|
||||
public Feeder createFeeder() {
|
||||
lastFeeder = current().createFeeder();
|
||||
return lastFeeder;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param selection selected table items to derive IP addresses from
|
||||
* @return initialized instance of RescanFeeder
|
||||
|
||||
@ -47,18 +47,4 @@ public class FeederGUIRegistryTest {
|
||||
assertNotNull(registry.lastFeeder);
|
||||
assertNotNull(registry.lastFeeder.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void createFeederRemembersTheLastOne() throws Exception {
|
||||
Feeder lastFeeder = registry.createFeeder();
|
||||
assertSame(lastFeeder, registry.lastFeeder);
|
||||
assertNotSame(lastFeeder, registry.createFeeder());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void createRescanFeederGetsOriginalFeeder() throws Exception {
|
||||
Feeder lastFeeder = registry.createFeeder();
|
||||
Feeder rescanFeeder = registry.createRescanFeeder(new TableItem[] {mock(TableItem.class)});
|
||||
assertEquals(lastFeeder.getId(), rescanFeeder.getId());
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user