import org.opendaylight.openflowjava.protocol.api.connection.ConnectionAdapter;
import org.opendaylight.openflowjava.protocol.api.connection.ConnectionReadyListener;
+import org.opendaylight.openflowplugin.openflow.md.OFConstants;
import org.opendaylight.openflowplugin.openflow.md.core.session.OFSessionUtil;
import org.opendaylight.openflowplugin.openflow.md.core.session.PortFeaturesUtil;
import org.opendaylight.openflowplugin.openflow.md.core.session.SessionContext;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.Port;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.PortStatus;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.PortStatusMessage;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.multipart.request.body.MultipartRequestDescBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.multipart.request.body.MultipartRequestGroupFeaturesBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.multipart.request.body.MultipartRequestMeterFeaturesBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.multipart.request.body.MultipartRequestPortDescBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.multipart.request.body.MultipartRequestDescCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.multipart.request.body.MultipartRequestGroupFeaturesCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.multipart.request.body.MultipartRequestMeterFeaturesCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.multipart.request.body.MultipartRequestPortDescCaseBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.system.rev130927.DisconnectEvent;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.system.rev130927.SwitchIdleEvent;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.system.rev130927.SystemNotificationsListener;
@Override
public void onPacketInMessage(PacketInMessage message) {
- queueKeeper.push(message, this);
+ queueKeeper.push(message, this, QueueKeeper.QueueType.UNORDERED);
}
@Override
OFSessionUtil.registerSession(this, featureOutput, negotiatedVersion);
requestDesc();
requestPorts();
- requestGroupFeatures();
- requestMeterFeatures();
+ if(version == OFConstants.OFP_VERSION_1_3){
+ requestGroupFeatures();
+ requestMeterFeatures();
+ }
}
/*
builder.setType(MultipartType.OFPMPDESC);
builder.setVersion(getVersion());
builder.setFlags(new MultipartRequestFlags(false));
- builder.setMultipartRequestBody(new MultipartRequestDescBuilder().build());
+ builder.setMultipartRequestBody(new MultipartRequestDescCaseBuilder().build());
builder.setXid(getSessionContext().getNextXid());
getConnectionAdapter().multipartRequest(builder.build());
}
builder.setType(MultipartType.OFPMPPORTDESC);
builder.setVersion(getVersion());
builder.setFlags(new MultipartRequestFlags(false));
- builder.setMultipartRequestBody(new MultipartRequestPortDescBuilder().build());
+ builder.setMultipartRequestBody(new MultipartRequestPortDescCaseBuilder().build());
builder.setXid(getSessionContext().getNextXid());
getConnectionAdapter().multipartRequest(builder.build());
}
mprInput.setFlags(new MultipartRequestFlags(false));
mprInput.setXid(getSessionContext().getNextXid());
- MultipartRequestGroupFeaturesBuilder mprGroupFeaturesBuild = new MultipartRequestGroupFeaturesBuilder();
+ MultipartRequestGroupFeaturesCaseBuilder mprGroupFeaturesBuild =
+ new MultipartRequestGroupFeaturesCaseBuilder();
mprInput.setMultipartRequestBody(mprGroupFeaturesBuild.build());
LOG.debug("Send group features statistics request :{}",mprGroupFeaturesBuild);
mprInput.setFlags(new MultipartRequestFlags(false));
mprInput.setXid(getSessionContext().getNextXid());
- MultipartRequestMeterFeaturesBuilder mprMeterFeaturesBuild = new MultipartRequestMeterFeaturesBuilder();
+ MultipartRequestMeterFeaturesCaseBuilder mprMeterFeaturesBuild =
+ new MultipartRequestMeterFeaturesCaseBuilder();
mprInput.setMultipartRequestBody(mprMeterFeaturesBuild.build());
LOG.debug("Send meter features statistics request :{}",mprMeterFeaturesBuild);