本文整理汇总了Java中org.openflow.vendor.nicira.OFNiciraVendorData.NX_VENDOR_ID属性的典型用法代码示例。如果您正苦于以下问题:Java OFNiciraVendorData.NX_VENDOR_ID属性的具体用法?Java OFNiciraVendorData.NX_VENDOR_ID怎么用?Java OFNiciraVendorData.NX_VENDOR_ID使用的例子?那么, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在类org.openflow.vendor.nicira.OFNiciraVendorData
的用法示例。
在下文中一共展示了OFNiciraVendorData.NX_VENDOR_ID属性的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: extractNiciraRoleReply
/**
* Extract the role from an OFVendor message.
*
* Extract the role from an OFVendor message if the message is a
* Nicira role reply. Otherwise return null.
*
* @param h The channel handler receiving the message
* @param vendorMessage The vendor message to parse.
* @return The role in the message if the message is a Nicira role
* reply, null otherwise.
* @throws SwitchStateException If the message is a Nicira role reply
* but the numeric role value is unknown.
* FIXME: The message parser should make sure that the Nicira role is
* actually valid. Why do we need to take care of it ?!?
*/
protected Role extractNiciraRoleReply(OFChannelHandler h,
OFVendor vendorMessage) {
int vendor = vendorMessage.getVendor();
if (vendor != OFNiciraVendorData.NX_VENDOR_ID)
return null;
if (! (vendorMessage.getVendorData() instanceof OFRoleReplyVendorData))
return null;
OFRoleReplyVendorData roleReplyVendorData =
(OFRoleReplyVendorData) vendorMessage.getVendorData();
Role role = Role.fromNxRole(roleReplyVendorData.getRole());
if (role == null) {
String msg = String.format("Switch: [%s], State: [%s], "
+ "received NX_ROLE_REPLY with invalid role "
+ "value %d",
h.getSwitchInfoString(),
this.toString(),
roleReplyVendorData.getRole());
throw new SwitchStateException(msg);
}
return role;
}
示例2: initVendorMessages
private void initVendorMessages() {
// Configure openflowj to be able to parse the role request/reply
// vendor messages.
OFBasicVendorId niciraVendorId = new OFBasicVendorId(
OFNiciraVendorData.NX_VENDOR_ID, 4);
OFVendorId.registerVendorId(niciraVendorId);
OFBasicVendorDataType roleRequestVendorData =
new OFBasicVendorDataType(
OFRoleRequestVendorData.NXT_ROLE_REQUEST,
OFRoleRequestVendorData.getInstantiable());
niciraVendorId.registerVendorDataType(roleRequestVendorData);
OFBasicVendorDataType roleReplyVendorData =
new OFBasicVendorDataType(
OFRoleReplyVendorData.NXT_ROLE_REPLY,
OFRoleReplyVendorData.getInstantiable());
niciraVendorId.registerVendorDataType(roleReplyVendorData);
}
开发者ID:vishalshubham,项目名称:Multipath-Hedera-system-in-Floodlight-controller,代码行数:17,代码来源:Controller.java
示例3: extractNiciraRoleRequest
/**
* Extracts the vendor-specific (Nicira) role.
*
* @param chan the channel
* @param vendorMessage the vendor message
* @return the role
*/
private Role extractNiciraRoleRequest(Channel chan, OFVendor vendorMessage) {
int vendor = vendorMessage.getVendor();
if (vendor != OFNiciraVendorData.NX_VENDOR_ID) {
return null;
}
if (!(vendorMessage.getVendorData() instanceof OFRoleRequestVendorData)) {
return null;
}
OFRoleRequestVendorData roleRequestVendorData = (OFRoleRequestVendorData) vendorMessage
.getVendorData();
Role role = Role.fromNxRole(roleRequestVendorData.getRole());
if (role == null) {
String msg = String.format("Controller: [%s], State: [%s], "
+ "received NX_ROLE_REPLY with invalid role " + "value %d",
chan.getRemoteAddress(), this.toString(),
roleRequestVendorData.getRole());
throw new ControllerStateException(msg);
}
return role;
}
示例4: handleVendorMessage
protected boolean handleVendorMessage(OFVendor vendorMessage) {
boolean shouldHandleMessage = false;
int vendor = vendorMessage.getVendor();
switch (vendor) {
case OFNiciraVendorData.NX_VENDOR_ID:
OFNiciraVendorData niciraVendorData =
(OFNiciraVendorData)vendorMessage.getVendorData();
int dataType = niciraVendorData.getDataType();
switch (dataType) {
case OFRoleReplyVendorData.NXT_ROLE_REPLY:
OFRoleReplyVendorData roleReplyVendorData =
(OFRoleReplyVendorData) niciraVendorData;
handleRoleReplyMessage(vendorMessage,
roleReplyVendorData);
break;
default:
log.warn("Unhandled Nicira VENDOR message; " +
"data type = {}", dataType);
break;
}
break;
default:
log.warn("Unhandled VENDOR message; vendor id = {}", vendor);
break;
}
return shouldHandleMessage;
}
开发者ID:vishalshubham,项目名称:Multipath-Hedera-system-in-Floodlight-controller,代码行数:28,代码来源:Controller.java
示例5: processOFVendor
@Override
void processOFVendor(final ControllerChannelHandler h,
final OFVendor m) {
if (m.getVendor() == OFNiciraVendorData.NX_VENDOR_ID
&& m.getVendorData() instanceof OFRoleRequestVendorData) {
h.sw.handleRoleIO(m, h.channel);
} else {
this.unhandledMessageReceived(h, m);
}
}
示例6: handleVendorMessage
protected boolean handleVendorMessage(OFVendor vendorMessage) {
boolean shouldHandleMessage = false;
int vendor = vendorMessage.getVendor();
switch (vendor) {
case OFNiciraVendorData.NX_VENDOR_ID:
OFNiciraVendorData niciraVendorData =
(OFNiciraVendorData)vendorMessage.getVendorData();
int dataType = niciraVendorData.getDataType();
switch (dataType) {
case OFRoleReplyVendorData.NXT_ROLE_REPLY:
OFRoleReplyVendorData roleReplyVendorData =
(OFRoleReplyVendorData) niciraVendorData;
roleChanger.handleRoleReplyMessage(sw,
vendorMessage, roleReplyVendorData);
break;
default:
log.warn("Unhandled Nicira VENDOR message; " +
"data type = {}", dataType);
break;
}
break;
default:
shouldHandleMessage = true;
break;
}
return shouldHandleMessage;
}