Java 类net.floodlightcontroller.core.internal.OFSwitchAppHandshakePlugin.PluginResultType 实例源码
项目:fresco_floodlight
文件:OFSwitchHandlerTestBase.java
/**
* Tests a situation where a plugin returns a DISCONNECT result. This means
* we should disconnect the connection and the state should not change.
*
* @throws Exception
*/
@Test
public void failedAppHandshake() throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
assertThat(state.getCurrentPlugin(), CoreMatchers.<OFSwitchAppHandshakePlugin>equalTo(handshakePlugin));
PluginResult result = new PluginResult(PluginResultType.DISCONNECT);
handshakePlugin.exitPlugin(result);
assertThat(connection.isConnected(), equalTo(false));
}
项目:fresco_floodlight
文件:OFSwitchHandshakeHandlerVer10Test.java
@Override
@Test
public void moveToWaitInitialRole()
throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
reset(sw);
expect(sw.getAttribute(IOFSwitchBackend.SWITCH_SUPPORTS_NX_ROLE)).andReturn(true).anyTimes();
replay(sw);
reset(roleManager);
expect(roleManager.getOFControllerRole()).andReturn(OFControllerRole.ROLE_MASTER).anyTimes();
replay(roleManager);
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
PluginResult result = new PluginResult(PluginResultType.CONTINUE);
state.exitPlugin(result);
assertThat(connection.retrieveMessage(), instanceOf(getRoleRequestClass()));
assertThat(switchHandler.getStateForTesting(), CoreMatchers.instanceOf(OFSwitchHandshakeHandler.WaitInitialRoleState.class));
}
项目:iTAP-controller
文件:OFSwitchHandlerTestBase.java
/**
* Tests a situation where a plugin returns a DISCONNECT result. This means
* we should disconnect the connection and the state should not change.
*
* @throws Exception
*/
@Test
public void failedAppHandshake() throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
assertThat(state.getCurrentPlugin(), CoreMatchers.<OFSwitchAppHandshakePlugin>equalTo(handshakePlugin));
PluginResult result = new PluginResult(PluginResultType.DISCONNECT);
handshakePlugin.exitPlugin(result);
assertThat(connection.isConnected(), equalTo(false));
}
项目:iTAP-controller
文件:OFSwitchHandshakeHandlerVer10Test.java
@Override
@Test
public void moveToWaitInitialRole()
throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
reset(sw);
expect(sw.getAttribute(IOFSwitchBackend.SWITCH_SUPPORTS_NX_ROLE)).andReturn(true).anyTimes();
replay(sw);
reset(roleManager);
expect(roleManager.getOFControllerRole()).andReturn(OFControllerRole.ROLE_MASTER).anyTimes();
replay(roleManager);
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
PluginResult result = new PluginResult(PluginResultType.CONTINUE);
state.exitPlugin(result);
assertThat(connection.retrieveMessage(), instanceOf(getRoleRequestClass()));
assertThat(switchHandler.getStateForTesting(), CoreMatchers.instanceOf(OFSwitchHandshakeHandler.WaitInitialRoleState.class));
}
项目:SDN-Multicast
文件:OFSwitchHandlerTestBase.java
/**
* Tests a situation where a plugin returns a DISCONNECT result. This means
* we should disconnect the connection and the state should not change.
*
* @throws Exception
*/
@Test
public void failedAppHandshake() throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
assertThat(state.getCurrentPlugin(), CoreMatchers.<OFSwitchAppHandshakePlugin>equalTo(handshakePlugin));
PluginResult result = new PluginResult(PluginResultType.DISCONNECT);
handshakePlugin.exitPlugin(result);
assertThat(connection.isConnected(), equalTo(false));
}
项目:SDN-Multicast
文件:OFSwitchHandshakeHandlerVer10Test.java
@Override
@Test
public void moveToWaitInitialRole()
throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
reset(sw);
expect(sw.getAttribute(IOFSwitchBackend.SWITCH_SUPPORTS_NX_ROLE)).andReturn(true).anyTimes();
replay(sw);
reset(roleManager);
expect(roleManager.getOFControllerRole()).andReturn(OFControllerRole.ROLE_MASTER).anyTimes();
replay(roleManager);
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
PluginResult result = new PluginResult(PluginResultType.CONTINUE);
state.exitPlugin(result);
assertThat(connection.retrieveMessage(), instanceOf(getRoleRequestClass()));
assertThat(switchHandler.getStateForTesting(), CoreMatchers.instanceOf(OFSwitchHandshakeHandler.WaitInitialRoleState.class));
}
项目:arscheduler
文件:OFSwitchHandlerTestBase.java
/**
* Tests a situation where a plugin returns a DISCONNECT result. This means
* we should disconnect the connection and the state should not change.
*
* @throws Exception
*/
@Test
public void failedAppHandshake() throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
assertThat(state.getCurrentPlugin(), CoreMatchers.<OFSwitchAppHandshakePlugin>equalTo(handshakePlugin));
PluginResult result = new PluginResult(PluginResultType.DISCONNECT);
handshakePlugin.exitPlugin(result);
assertThat(connection.isConnected(), equalTo(false));
}
项目:arscheduler
文件:OFSwitchHandshakeHandlerVer10Test.java
@Override
@Test
public void moveToWaitInitialRole()
throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
reset(sw);
expect(sw.getAttribute(IOFSwitchBackend.SWITCH_SUPPORTS_NX_ROLE)).andReturn(true).anyTimes();
replay(sw);
reset(roleManager);
expect(roleManager.getOFControllerRole()).andReturn(OFControllerRole.ROLE_MASTER).anyTimes();
replay(roleManager);
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
PluginResult result = new PluginResult(PluginResultType.CONTINUE);
state.exitPlugin(result);
assertThat(connection.retrieveMessage(), instanceOf(getRoleRequestClass()));
assertThat(switchHandler.getStateForTesting(), CoreMatchers.instanceOf(OFSwitchHandshakeHandler.WaitInitialRoleState.class));
}
项目:floodlight1.2-delay
文件:OFSwitchHandlerTestBase.java
/**
* Tests a situation where a plugin returns a DISCONNECT result. This means
* we should disconnect the connection and the state should not change.
*
* @throws Exception
*/
@Test
public void failedAppHandshake() throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
assertThat(state.getCurrentPlugin(), CoreMatchers.<OFSwitchAppHandshakePlugin>equalTo(handshakePlugin));
PluginResult result = new PluginResult(PluginResultType.DISCONNECT);
handshakePlugin.exitPlugin(result);
assertThat(connection.isConnected(), equalTo(false));
}
项目:floodlight1.2-delay
文件:OFSwitchHandshakeHandlerVer10Test.java
@Override
@Test
public void moveToWaitInitialRole()
throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
reset(sw);
expect(sw.getAttribute(IOFSwitchBackend.SWITCH_SUPPORTS_NX_ROLE)).andReturn(true).anyTimes();
replay(sw);
reset(roleManager);
expect(roleManager.getOFControllerRole()).andReturn(OFControllerRole.ROLE_MASTER).anyTimes();
replay(roleManager);
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
PluginResult result = new PluginResult(PluginResultType.CONTINUE);
state.exitPlugin(result);
assertThat(connection.retrieveMessage(), instanceOf(getRoleRequestClass()));
assertThat(switchHandler.getStateForTesting(), CoreMatchers.instanceOf(OFSwitchHandshakeHandler.WaitInitialRoleState.class));
}
项目:floodlight-hardware
文件:OFSwitchHandlerTestBase.java
/**
* Tests a situation where a plugin returns a DISCONNECT result. This means
* we should disconnect the connection and the state should not change.
*
* @throws Exception
*/
@Test
public void failedAppHandshake() throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
assertThat(state.getCurrentPlugin(), CoreMatchers.<OFSwitchAppHandshakePlugin>equalTo(handshakePlugin));
PluginResult result = new PluginResult(PluginResultType.DISCONNECT);
handshakePlugin.exitPlugin(result);
assertThat(connection.isConnected(), equalTo(false));
}
项目:floodlight-hardware
文件:OFSwitchHandshakeHandlerVer10Test.java
@Override
@Test
public void moveToWaitInitialRole()
throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
reset(sw);
expect(sw.getAttribute(IOFSwitchBackend.SWITCH_SUPPORTS_NX_ROLE)).andReturn(true).anyTimes();
replay(sw);
reset(roleManager);
expect(roleManager.getOFControllerRole()).andReturn(OFControllerRole.ROLE_MASTER).anyTimes();
replay(roleManager);
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
PluginResult result = new PluginResult(PluginResultType.CONTINUE);
state.exitPlugin(result);
assertThat(connection.retrieveMessage(), instanceOf(getRoleRequestClass()));
assertThat(switchHandler.getStateForTesting(), CoreMatchers.instanceOf(OFSwitchHandshakeHandler.WaitInitialRoleState.class));
}
项目:ACAMPController
文件:OFSwitchHandlerTestBase.java
/**
* Tests a situation where a plugin returns a DISCONNECT result. This means
* we should disconnect the connection and the state should not change.
*
* @throws Exception
*/
@Test
public void failedAppHandshake() throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
assertThat(state.getCurrentPlugin(), CoreMatchers.<OFSwitchAppHandshakePlugin>equalTo(handshakePlugin));
PluginResult result = new PluginResult(PluginResultType.DISCONNECT);
handshakePlugin.exitPlugin(result);
assertThat(connection.isConnected(), equalTo(false));
}
项目:ACAMPController
文件:OFSwitchHandshakeHandlerVer10Test.java
@Override
@Test
public void moveToWaitInitialRole()
throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
reset(sw);
expect(sw.getAttribute(IOFSwitchBackend.SWITCH_SUPPORTS_NX_ROLE)).andReturn(true).anyTimes();
replay(sw);
reset(roleManager);
expect(roleManager.getOFControllerRole()).andReturn(OFControllerRole.ROLE_MASTER).anyTimes();
replay(roleManager);
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
PluginResult result = new PluginResult(PluginResultType.CONTINUE);
state.exitPlugin(result);
assertThat(connection.retrieveMessage(), instanceOf(getRoleRequestClass()));
assertThat(switchHandler.getStateForTesting(), CoreMatchers.instanceOf(OFSwitchHandshakeHandler.WaitInitialRoleState.class));
}
项目:fast-failover-demo
文件:OFSwitchHandlerTestBase.java
/**
* Tests a situation where a plugin returns a DISCONNECT result. This means
* we should disconnect the connection and the state should not change.
*
* @throws Exception
*/
@Test
public void failedAppHandshake() throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
assertThat(state.getCurrentPlugin(), CoreMatchers.<OFSwitchAppHandshakePlugin>equalTo(handshakePlugin));
PluginResult result = new PluginResult(PluginResultType.DISCONNECT);
handshakePlugin.exitPlugin(result);
assertThat(connection.isConnected(), equalTo(false));
}
项目:fast-failover-demo
文件:OFSwitchHandshakeHandlerVer10Test.java
@Override
@Test
public void moveToWaitInitialRole()
throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
reset(sw);
expect(sw.getAttribute(IOFSwitchBackend.SWITCH_SUPPORTS_NX_ROLE)).andReturn(true).anyTimes();
replay(sw);
reset(roleManager);
expect(roleManager.getOFControllerRole()).andReturn(OFControllerRole.ROLE_MASTER).anyTimes();
replay(roleManager);
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
PluginResult result = new PluginResult(PluginResultType.CONTINUE);
state.exitPlugin(result);
assertThat(connection.retrieveMessage(), instanceOf(getRoleRequestClass()));
assertThat(switchHandler.getStateForTesting(), CoreMatchers.instanceOf(OFSwitchHandshakeHandler.WaitInitialRoleState.class));
}
项目:floodlightLB
文件:OFSwitchHandlerTestBase.java
/**
* Tests a situation where a plugin returns a DISCONNECT result. This means
* we should disconnect the connection and the state should not change.
*
* @throws Exception
*/
@Test
public void failedAppHandshake() throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
assertThat(state.getCurrentPlugin(), CoreMatchers.<OFSwitchAppHandshakePlugin>equalTo(handshakePlugin));
PluginResult result = new PluginResult(PluginResultType.DISCONNECT);
handshakePlugin.exitPlugin(result);
assertThat(connection.isConnected(), equalTo(false));
}
项目:floodlightLB
文件:OFSwitchHandshakeHandlerVer10Test.java
@Override
@Test
public void moveToWaitInitialRole()
throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
reset(sw);
expect(sw.getAttribute(IOFSwitchBackend.SWITCH_SUPPORTS_NX_ROLE)).andReturn(true).anyTimes();
replay(sw);
reset(roleManager);
expect(roleManager.getOFControllerRole()).andReturn(OFControllerRole.ROLE_MASTER).anyTimes();
replay(roleManager);
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
PluginResult result = new PluginResult(PluginResultType.CONTINUE);
state.exitPlugin(result);
assertThat(connection.retrieveMessage(), instanceOf(getRoleRequestClass()));
assertThat(switchHandler.getStateForTesting(), CoreMatchers.instanceOf(OFSwitchHandshakeHandler.WaitInitialRoleState.class));
}
项目:DSC
文件:OFSwitchHandlerTestBase.java
/**
* Tests a situation where a plugin returns a DISCONNECT result. This means
* we should disconnect the connection and the state should not change.
*
* @throws Exception
*/
@Test
public void failedAppHandshake() throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
assertThat(state.getCurrentPlugin(), CoreMatchers.<OFSwitchAppHandshakePlugin>equalTo(handshakePlugin));
PluginResult result = new PluginResult(PluginResultType.DISCONNECT);
handshakePlugin.exitPlugin(result);
assertThat(connection.isConnected(), equalTo(false));
}
项目:DSC
文件:OFSwitchHandshakeHandlerVer10Test.java
@Override
@Test
public void moveToWaitInitialRole()
throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
reset(sw);
expect(sw.getAttribute(IOFSwitchBackend.SWITCH_SUPPORTS_NX_ROLE)).andReturn(true).anyTimes();
replay(sw);
reset(roleManager);
expect(roleManager.getOFControllerRole(null)).andReturn(OFControllerRole.ROLE_MASTER).anyTimes();
replay(roleManager);
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
PluginResult result = new PluginResult(PluginResultType.CONTINUE);
state.exitPlugin(result);
assertThat(connection.retrieveMessage(), instanceOf(getRoleRequestClass()));
assertThat(switchHandler.getStateForTesting(), CoreMatchers.instanceOf(OFSwitchHandshakeHandler.WaitInitialRoleState.class));
}
项目:floodlight
文件:OFSwitchHandlerTestBase.java
/**
* Tests a situation where a plugin returns a DISCONNECT result. This means
* we should disconnect the connection and the state should not change.
*
* @throws Exception
*/
@Test
public void failedAppHandshake() throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
assertThat(state.getCurrentPlugin(), CoreMatchers.<OFSwitchAppHandshakePlugin>equalTo(handshakePlugin));
PluginResult result = new PluginResult(PluginResultType.DISCONNECT);
handshakePlugin.exitPlugin(result);
assertThat(connection.isConnected(), equalTo(false));
}
项目:floodlight
文件:OFSwitchHandshakeHandlerVer10Test.java
@Override
@Test
public void moveToWaitInitialRole()
throws Exception {
moveToWaitAppHandshakeState();
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(WaitAppHandshakeState.class));
reset(sw);
expect(sw.getAttribute(IOFSwitchBackend.SWITCH_SUPPORTS_NX_ROLE)).andReturn(true).anyTimes();
replay(sw);
reset(roleManager);
expect(roleManager.getOFControllerRole()).andReturn(OFControllerRole.ROLE_MASTER).anyTimes();
replay(roleManager);
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
PluginResult result = new PluginResult(PluginResultType.CONTINUE);
state.exitPlugin(result);
assertThat(connection.retrieveMessage(), instanceOf(getRoleRequestClass()));
assertThat(switchHandler.getStateForTesting(), CoreMatchers.instanceOf(OFSwitchHandshakeHandler.WaitInitialRoleState.class));
}
项目:fresco_floodlight
文件:OFSwitchHandshakeHandler.java
/**
* Called by handshake plugins to signify that they have finished their
* sub handshake.
*
* @param result
* the result of the sub handshake
*/
void exitPlugin(PluginResult result) {
// Proceed
if (result.getResultType() == PluginResultType.CONTINUE) {
if (log.isDebugEnabled()) {
log.debug("Switch " + getSwitchInfoString() + " app handshake plugin {} returned {}."
+ " Proceeding normally..",
this.plugin.getClass().getSimpleName(), result);
}
enterNextPlugin();
// Stop
} else if (result.getResultType() == PluginResultType.DISCONNECT) {
log.error("Switch " + getSwitchInfoString() + " app handshake plugin {} returned {}. "
+ "Disconnecting switch.",
this.plugin.getClass().getSimpleName(), result);
mainConnection.disconnect();
} else if (result.getResultType() == PluginResultType.QUARANTINE) {
log.warn("Switch " + getSwitchInfoString() + " app handshake plugin {} returned {}. "
+ "Putting switch into quarantine state.",
this.plugin.getClass().getSimpleName(),
result);
setState(new QuarantineState(result.getReason()));
}
}
项目:fresco_floodlight
文件:PluginResult.java
public PluginResult(@Nonnull PluginResultType result, String reason) {
Preconditions.checkNotNull(result, "result must not be null");
if(result != PluginResultType.QUARANTINE && reason != null)
throw new IllegalStateException("Reason can only be set for Quarantine PluginResult");
this.result = result;
this.reason = reason;
}
项目:fresco_floodlight
文件:OFSwitchHandlerTestBase.java
public void setUpFeaturesReply() {
getFeaturesReply();
this.featuresReply = getFeaturesReply();
// Plugin set
IAppHandshakePluginFactory factory = createMock(IAppHandshakePluginFactory.class);
PluginResult result = new PluginResult(PluginResultType.QUARANTINE, "test quarantine");
handshakePlugin = new TestHandshakePlugin(result, 5);
expect(factory.createPlugin()).andReturn(handshakePlugin).anyTimes();
replay(factory);
plugins = ImmutableList.of(factory);
}
项目:fresco_floodlight
文件:OFSwitchHandlerTestBase.java
/**
* Tests a situation where a switch returns a QUARANTINE result. This means
* we should move the handshake handler to a quarantine state and also
* quarantine the switch in the controller.
*
* @throws Exception
*/
@Test
public void moveQuarantine() throws Exception {
moveToWaitAppHandshakeState();
reset(switchManager);
switchManager.switchStatusChanged(sw, SwitchStatus.HANDSHAKE, SwitchStatus.QUARANTINED);
expectLastCall().once();
replay(switchManager);
assertThat(switchHandler.getStateForTesting(), CoreMatchers.instanceOf(WaitAppHandshakeState.class));
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
assertThat(state.getCurrentPlugin(), CoreMatchers.<OFSwitchAppHandshakePlugin>equalTo(handshakePlugin));
reset(sw);
expect(sw.getStatus()).andReturn(SwitchStatus.HANDSHAKE);
sw.setStatus(SwitchStatus.QUARANTINED);
expectLastCall().once();
replay(sw);
PluginResult result = new PluginResult(PluginResultType.QUARANTINE, "test quarantine");
handshakePlugin.exitPlugin(result);
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(QuarantineState.class));
verify(switchManager);
}
项目:fresco_floodlight
文件:OFSwitchHandlerTestBase.java
@Test
public void validAppHandshakePluginReason() throws Exception {
try{
new PluginResult(PluginResultType.QUARANTINE,"This should not cause an exception");
}catch(IllegalStateException e) {
fail("This should cause an illegal state exception");
}
}
项目:iTAP-controller
文件:OFSwitchHandshakeHandler.java
/**
* Called by handshake plugins to signify that they have finished their
* sub handshake.
*
* @param result
* the result of the sub handshake
*/
void exitPlugin(PluginResult result) {
// Proceed
if (result.getResultType() == PluginResultType.CONTINUE) {
if (log.isDebugEnabled()) {
log.debug("Switch " + getSwitchInfoString() + " app handshake plugin {} returned {}."
+ " Proceeding normally..",
this.plugin.getClass().getSimpleName(), result);
}
enterNextPlugin();
// Stop
} else if (result.getResultType() == PluginResultType.DISCONNECT) {
log.error("Switch " + getSwitchInfoString() + " app handshake plugin {} returned {}. "
+ "Disconnecting switch.",
this.plugin.getClass().getSimpleName(), result);
mainConnection.disconnect();
} else if (result.getResultType() == PluginResultType.QUARANTINE) {
log.warn("Switch " + getSwitchInfoString() + " app handshake plugin {} returned {}. "
+ "Putting switch into quarantine state.",
this.plugin.getClass().getSimpleName(),
result);
setState(new QuarantineState(result.getReason()));
}
}
项目:iTAP-controller
文件:PluginResult.java
public PluginResult(@Nonnull PluginResultType result, String reason) {
Preconditions.checkNotNull(result, "result must not be null");
if(result != PluginResultType.QUARANTINE && reason != null)
throw new IllegalStateException("Reason can only be set for Quarantine PluginResult");
this.result = result;
this.reason = reason;
}
项目:iTAP-controller
文件:OFSwitchHandlerTestBase.java
@Before
public void setUpFeaturesReply() {
getFeaturesReply();
this.featuresReply = getFeaturesReply();
// Plugin set
IAppHandshakePluginFactory factory = createMock(IAppHandshakePluginFactory.class);
PluginResult result = new PluginResult(PluginResultType.QUARANTINE, "test quarantine");
handshakePlugin = new TestHandshakePlugin(result, 5);
expect(factory.createPlugin()).andReturn(handshakePlugin).anyTimes();
replay(factory);
plugins = ImmutableList.of(factory);
}
项目:iTAP-controller
文件:OFSwitchHandlerTestBase.java
/**
* Tests a situation where a switch returns a QUARANTINE result. This means
* we should move the handshake handler to a quarantine state and also
* quarantine the switch in the controller.
*
* @throws Exception
*/
@Test
public void moveQuarantine() throws Exception {
moveToWaitAppHandshakeState();
reset(switchManager);
switchManager.switchStatusChanged(sw, SwitchStatus.HANDSHAKE, SwitchStatus.QUARANTINED);
expectLastCall().once();
replay(switchManager);
assertThat(switchHandler.getStateForTesting(), CoreMatchers.instanceOf(WaitAppHandshakeState.class));
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
assertThat(state.getCurrentPlugin(), CoreMatchers.<OFSwitchAppHandshakePlugin>equalTo(handshakePlugin));
reset(sw);
expect(sw.getStatus()).andReturn(SwitchStatus.HANDSHAKE);
sw.setStatus(SwitchStatus.QUARANTINED);
expectLastCall().once();
replay(sw);
PluginResult result = new PluginResult(PluginResultType.QUARANTINE, "test quarantine");
handshakePlugin.exitPlugin(result);
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(QuarantineState.class));
verify(switchManager);
}
项目:iTAP-controller
文件:OFSwitchHandlerTestBase.java
@Test
public void validAppHandshakePluginReason() throws Exception {
try{
new PluginResult(PluginResultType.QUARANTINE,"This should not cause an exception");
}catch(IllegalStateException e) {
fail("This should cause an illegal state exception");
}
}
项目:SDN-Multicast
文件:OFSwitchHandshakeHandler.java
/**
* Called by handshake plugins to signify that they have finished their
* sub handshake.
*
* @param result
* the result of the sub handshake
*/
void exitPlugin(PluginResult result) {
// Proceed
if (result.getResultType() == PluginResultType.CONTINUE) {
if (log.isDebugEnabled()) {
log.debug("Switch " + getSwitchInfoString() + " app handshake plugin {} returned {}."
+ " Proceeding normally..",
this.plugin.getClass().getSimpleName(), result);
}
enterNextPlugin();
// Stop
} else if (result.getResultType() == PluginResultType.DISCONNECT) {
log.error("Switch " + getSwitchInfoString() + " app handshake plugin {} returned {}. "
+ "Disconnecting switch.",
this.plugin.getClass().getSimpleName(), result);
mainConnection.disconnect();
} else if (result.getResultType() == PluginResultType.QUARANTINE) {
log.warn("Switch " + getSwitchInfoString() + " app handshake plugin {} returned {}. "
+ "Putting switch into quarantine state.",
this.plugin.getClass().getSimpleName(),
result);
setState(new QuarantineState(result.getReason()));
}
}
项目:SDN-Multicast
文件:PluginResult.java
public PluginResult(@Nonnull PluginResultType result, String reason) {
Preconditions.checkNotNull(result, "result must not be null");
if(result != PluginResultType.QUARANTINE && reason != null)
throw new IllegalStateException("Reason can only be set for Quarantine PluginResult");
this.result = result;
this.reason = reason;
}
项目:SDN-Multicast
文件:OFSwitchHandlerTestBase.java
public void setUpFeaturesReply() {
getFeaturesReply();
this.featuresReply = getFeaturesReply();
// Plugin set
IAppHandshakePluginFactory factory = createMock(IAppHandshakePluginFactory.class);
PluginResult result = new PluginResult(PluginResultType.QUARANTINE, "test quarantine");
handshakePlugin = new TestHandshakePlugin(result, 5);
expect(factory.createPlugin()).andReturn(handshakePlugin).anyTimes();
replay(factory);
plugins = ImmutableList.of(factory);
}
项目:SDN-Multicast
文件:OFSwitchHandlerTestBase.java
/**
* Tests a situation where a switch returns a QUARANTINE result. This means
* we should move the handshake handler to a quarantine state and also
* quarantine the switch in the controller.
*
* @throws Exception
*/
@Test
public void moveQuarantine() throws Exception {
moveToWaitAppHandshakeState();
reset(switchManager);
switchManager.switchStatusChanged(sw, SwitchStatus.HANDSHAKE, SwitchStatus.QUARANTINED);
expectLastCall().once();
replay(switchManager);
assertThat(switchHandler.getStateForTesting(), CoreMatchers.instanceOf(WaitAppHandshakeState.class));
WaitAppHandshakeState state = (WaitAppHandshakeState) switchHandler.getStateForTesting();
assertThat(state.getCurrentPlugin(), CoreMatchers.<OFSwitchAppHandshakePlugin>equalTo(handshakePlugin));
reset(sw);
expect(sw.getStatus()).andReturn(SwitchStatus.HANDSHAKE);
sw.setStatus(SwitchStatus.QUARANTINED);
expectLastCall().once();
replay(sw);
PluginResult result = new PluginResult(PluginResultType.QUARANTINE, "test quarantine");
handshakePlugin.exitPlugin(result);
assertThat(switchHandler.getStateForTesting(),
CoreMatchers.instanceOf(QuarantineState.class));
verify(switchManager);
}
项目:SDN-Multicast
文件:OFSwitchHandlerTestBase.java
@Test
public void validAppHandshakePluginReason() throws Exception {
try{
new PluginResult(PluginResultType.QUARANTINE,"This should not cause an exception");
}catch(IllegalStateException e) {
fail("This should cause an illegal state exception");
}
}
项目:arscheduler
文件:OFSwitchHandshakeHandler.java
/**
* Called by handshake plugins to signify that they have finished their
* sub handshake.
*
* @param result
* the result of the sub handshake
*/
void exitPlugin(PluginResult result) {
// Proceed
if (result.getResultType() == PluginResultType.CONTINUE) {
if (log.isDebugEnabled()) {
log.debug("Switch " + getSwitchInfoString() + " app handshake plugin {} returned {}."
+ " Proceeding normally..",
this.plugin.getClass().getSimpleName(), result);
}
enterNextPlugin();
// Stop
} else if (result.getResultType() == PluginResultType.DISCONNECT) {
log.error("Switch " + getSwitchInfoString() + " app handshake plugin {} returned {}. "
+ "Disconnecting switch.",
this.plugin.getClass().getSimpleName(), result);
mainConnection.disconnect();
} else if (result.getResultType() == PluginResultType.QUARANTINE) {
log.warn("Switch " + getSwitchInfoString() + " app handshake plugin {} returned {}. "
+ "Putting switch into quarantine state.",
this.plugin.getClass().getSimpleName(),
result);
setState(new QuarantineState(result.getReason()));
}
}
项目:arscheduler
文件:PluginResult.java
public PluginResult(@Nonnull PluginResultType result, String reason) {
Preconditions.checkNotNull(result, "result must not be null");
if(result != PluginResultType.QUARANTINE && reason != null)
throw new IllegalStateException("Reason can only be set for Quarantine PluginResult");
this.result = result;
this.reason = reason;
}
项目:arscheduler
文件:OFSwitchHandlerTestBase.java
public void setUpFeaturesReply() {
getFeaturesReply();
this.featuresReply = getFeaturesReply();
// Plugin set
IAppHandshakePluginFactory factory = createMock(IAppHandshakePluginFactory.class);
PluginResult result = new PluginResult(PluginResultType.QUARANTINE, "test quarantine");
handshakePlugin = new TestHandshakePlugin(result, 5);
expect(factory.createPlugin()).andReturn(handshakePlugin).anyTimes();
replay(factory);
plugins = ImmutableList.of(factory);
}