Reference Guide

Table Of Contents
} else {
device.setActiveState(ActiveState.OFF);
}
update(device);
}
}
void stopHandlingControllerEvents(ControllerService controllerService) {
controllerService.removeDataPathListener(dataPathListener);
}
private class DataPathListenerImpl implements DataPathListener {
@Override
public void queueEvent(QueueEvent event) {
}
@Override
public void event(DataPathEvent event) {
if (event.type() == OpenflowEventType.DATAPATH_CONNECTED ||
event.type() == OpenflowEventType.DATAPATH_DISCONNECTED) {
Switch device = etByMacAddress(event.dpid().getMacAddress());
if (device != null) {
if (event.type()== OpenflowEventType.DATAPATH_CONNECTED){
device.setActiveState(ActiveState.ON);
} else {
device.setActiveState(ActiveState.OFF);
}
update(device);
}
}
}
}
}
SwitchComponent.java Consuming ControllerService:
package com.hp.hm.impl;
import com.hp.of.ctl.ControllerService;
...
@Component
@Service
public class SwitchComponent implements SwitchService {
...
@Reference(policy = ReferencePolicy.DYNAMIC,
cardinality = ReferenceCardinality.MANDATORY_UNARY)
224