test_class.declarator: sw
test_class.modifier: protected
test_class.original_string: protected OFSwitch sw;
test_class.type: OFSwitch
test_class.var_name: sw
test_class.declarator: factory = OFFactories.getFactory(OFVersion.OF_13)
test_class.modifier: protected
test_class.original_string: protected OFFactory factory = OFFactories.getFactory(OFVersion.OF_13);
test_class.type: OFFactory
test_class.var_name: factory
test_class.file: src/agents/apps/floodlight/floodlight-1.2/src/test/java/net/floodlightcontroller/core/internal/OFSwitchTest.java
test_class.identifier: OFSwitchTest
test_case.body: @Test
  	public void testHasAnotherMaster() {
  		URI cokeUri = URIUtil.createURI("1.2.3.4", 6653);
  		InetSocketAddress address = (InetSocketAddress) sw.getConnection(OFAuxId.MAIN).getLocalInetAddress();
  		URI pepsiUri = URIUtil.createURI(address.getHostName(), address.getPort());
  
  		updateControllerConnections(sw, OFControllerRole.ROLE_SLAVE, OFBsnControllerConnectionState.BSN_CONTROLLER_CONNECTION_STATE_CONNECTED, cokeUri.toString(),
  				OFControllerRole.ROLE_MASTER, OFBsnControllerConnectionState.BSN_CONTROLLER_CONNECTION_STATE_CONNECTED, pepsiUri.toString());
  
  		// From the perspective of pepsi, the cluster currently does NOT have another master controller
  		assertFalse(sw.hasAnotherMaster());
  
  		// Switch the controller connections so that pepsi is no longer master
  		updateControllerConnections(sw, OFControllerRole.ROLE_MASTER, OFBsnControllerConnectionState.BSN_CONTROLLER_CONNECTION_STATE_CONNECTED, cokeUri.toString(),
  				OFControllerRole.ROLE_SLAVE, OFBsnControllerConnectionState.BSN_CONTROLLER_CONNECTION_STATE_CONNECTED, pepsiUri.toString());
  
  		// From the perspective of pepsi, the cluster currently has another master controller
  		assertTrue(sw.hasAnotherMaster());
  	}
test_case.class_method_signature: OFSwitchTest.testHasAnotherMaster()
test_case.full_signature: @Test public void testHasAnotherMaster()
test_case.identifier: testHasAnotherMaster
test_case.invocations: createURI getLocalInetAddress getConnection createURI getHostName getPort updateControllerConnections toString toString assertFalse hasAnotherMaster updateControllerConnections toString toString assertTrue hasAnotherMaster
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testHasAnotherMaster()
focal_class.declarator: log =
  			LoggerFactory.getLogger(OFSwitch.class)
focal_class.modifier: protected static final
focal_class.original_string: protected static final Logger log =
  			LoggerFactory.getLogger(OFSwitch.class);
focal_class.type: Logger
focal_class.var_name: log
focal_class.declarator: attributes
focal_class.modifier: protected final
focal_class.original_string: protected final ConcurrentMap<Object, Object> attributes;
focal_class.type: ConcurrentMap<Object, Object>
focal_class.var_name: attributes
focal_class.declarator: switchManager
focal_class.modifier: protected final
focal_class.original_string: protected final IOFSwitchManager switchManager;
focal_class.type: IOFSwitchManager
focal_class.var_name: switchManager
focal_class.declarator: capabilities
focal_class.modifier: protected
focal_class.original_string: protected Set<OFCapabilities> capabilities;
focal_class.type: Set<OFCapabilities>
focal_class.var_name: capabilities
focal_class.declarator: buffers
focal_class.modifier: protected
focal_class.original_string: protected long buffers;
focal_class.type: long
focal_class.var_name: buffers
focal_class.declarator: actions
focal_class.modifier: protected
focal_class.original_string: protected Set<OFActionType> actions;
focal_class.type: Set<OFActionType>
focal_class.var_name: actions
focal_class.declarator: tables
focal_class.modifier: protected
focal_class.original_string: protected Collection<TableId> tables;
focal_class.type: Collection<TableId>
focal_class.var_name: tables
focal_class.declarator: nTables
focal_class.modifier: protected
focal_class.original_string: protected short nTables;
focal_class.type: short
focal_class.var_name: nTables
focal_class.declarator: datapathId
focal_class.modifier: protected final
focal_class.original_string: protected final DatapathId datapathId;
focal_class.type: DatapathId
focal_class.var_name: datapathId
focal_class.declarator: tableFeaturesByTableId
focal_class.modifier: private
focal_class.original_string: private Map<TableId, TableFeatures> tableFeaturesByTableId;
focal_class.type: Map<TableId, TableFeatures>
focal_class.var_name: tableFeaturesByTableId
focal_class.declarator: startDriverHandshakeCalled = false
focal_class.modifier: private
focal_class.original_string: private boolean startDriverHandshakeCalled = false;
focal_class.type: boolean
focal_class.var_name: startDriverHandshakeCalled
focal_class.declarator: connections
focal_class.modifier: private final
focal_class.original_string: private final Map<OFAuxId, IOFConnectionBackend> connections;
focal_class.type: Map<OFAuxId, IOFConnectionBackend>
focal_class.var_name: connections
focal_class.declarator: controllerConnections
focal_class.modifier: private volatile
focal_class.original_string: private volatile Map<URI, Map<OFAuxId, OFBsnControllerConnection>> controllerConnections;
focal_class.type: Map<URI, Map<OFAuxId, OFBsnControllerConnection>>
focal_class.var_name: controllerConnections
focal_class.declarator: factory
focal_class.modifier: protected
focal_class.original_string: protected OFFactory factory;
focal_class.type: OFFactory
focal_class.var_name: factory
focal_class.declarator: portManager
focal_class.modifier: private final
focal_class.original_string: private final PortManager portManager;
focal_class.type: PortManager
focal_class.var_name: portManager
focal_class.declarator: connected
focal_class.modifier: private volatile
focal_class.original_string: private volatile boolean connected;
focal_class.type: boolean
focal_class.var_name: connected
focal_class.declarator: role
focal_class.modifier: private volatile
focal_class.original_string: private volatile OFControllerRole role;
focal_class.type: OFControllerRole
focal_class.var_name: role
focal_class.declarator: flowTableFull = false
focal_class.modifier: private
focal_class.original_string: private boolean flowTableFull = false;
focal_class.type: boolean
focal_class.var_name: flowTableFull
focal_class.declarator: description
focal_class.modifier: protected
focal_class.original_string: protected SwitchDescription description;
focal_class.type: SwitchDescription
focal_class.var_name: description
focal_class.declarator: status
focal_class.modifier: private
focal_class.original_string: private SwitchStatus status;
focal_class.type: SwitchStatus
focal_class.var_name: status
focal_class.declarator: OFSWITCH_APP_ID = ident(5)
focal_class.modifier: public static final
focal_class.original_string: public static final int OFSWITCH_APP_ID = ident(5);
focal_class.type: int
focal_class.var_name: OFSWITCH_APP_ID
focal_class.declarator: maxTableToGetTableMissFlow = TableId.of(4)
focal_class.modifier: private
focal_class.original_string: private TableId maxTableToGetTableMissFlow = TableId.of(4);
focal_class.type: TableId
focal_class.var_name: maxTableToGetTableMissFlow
focal_class.file: src/agents/apps/floodlight/floodlight-1.2/src/main/java/net/floodlightcontroller/core/internal/OFSwitch.java
focal_class.identifier: OFSwitch
focal_class.interfaces: implements IOFSwitchBackend
focal_class.class_method_signature: OFSwitch.OFSwitch(IOFConnectionBackend connection, @Nonnull OFFactory factory, @Nonnull IOFSwitchManager switchManager,
  			@Nonnull DatapathId datapathId)
focal_class.full_signature: public  OFSwitch(IOFConnectionBackend connection, @Nonnull OFFactory factory, @Nonnull IOFSwitchManager switchManager,
  			@Nonnull DatapathId datapathId)
focal_class.identifier: OFSwitch
focal_class.modifiers: public
focal_class.parameters: (IOFConnectionBackend connection, @Nonnull OFFactory factory, @Nonnull IOFSwitchManager switchManager,
  			@Nonnull DatapathId datapathId)
focal_class.signature:  OFSwitch(IOFConnectionBackend connection, @Nonnull OFFactory factory, @Nonnull IOFSwitchManager switchManager,
  			@Nonnull DatapathId datapathId)
focal_class.class_method_signature: OFSwitch.ident(int i)
focal_class.full_signature: private static int ident(int i)
focal_class.identifier: ident
focal_class.modifiers: private static
focal_class.parameters: (int i)
focal_class.return: int
focal_class.signature: int ident(int i)
focal_class.class_method_signature: OFSwitch.getOFFactory()
focal_class.full_signature: @Override public OFFactory getOFFactory()
focal_class.identifier: getOFFactory
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: OFFactory
focal_class.signature: OFFactory getOFFactory()
focal_class.class_method_signature: OFSwitch.attributeEquals(String name, Object other)
focal_class.full_signature: @Override public boolean attributeEquals(String name, Object other)
focal_class.identifier: attributeEquals
focal_class.modifiers: @Override public
focal_class.parameters: (String name, Object other)
focal_class.return: boolean
focal_class.signature: boolean attributeEquals(String name, Object other)
focal_class.class_method_signature: OFSwitch.getAttribute(String name)
focal_class.full_signature: @Override public Object getAttribute(String name)
focal_class.identifier: getAttribute
focal_class.modifiers: @Override public
focal_class.parameters: (String name)
focal_class.return: Object
focal_class.signature: Object getAttribute(String name)
focal_class.class_method_signature: OFSwitch.setAttribute(String name, Object value)
focal_class.full_signature: @Override public void setAttribute(String name, Object value)
focal_class.identifier: setAttribute
focal_class.modifiers: @Override public
focal_class.parameters: (String name, Object value)
focal_class.return: void
focal_class.signature: void setAttribute(String name, Object value)
focal_class.class_method_signature: OFSwitch.removeAttribute(String name)
focal_class.full_signature: @Override public Object removeAttribute(String name)
focal_class.identifier: removeAttribute
focal_class.modifiers: @Override public
focal_class.parameters: (String name)
focal_class.return: Object
focal_class.signature: Object removeAttribute(String name)
focal_class.class_method_signature: OFSwitch.hasAttribute(String name)
focal_class.full_signature: @Override public boolean hasAttribute(String name)
focal_class.identifier: hasAttribute
focal_class.modifiers: @Override public
focal_class.parameters: (String name)
focal_class.return: boolean
focal_class.signature: boolean hasAttribute(String name)
focal_class.class_method_signature: OFSwitch.registerConnection(IOFConnectionBackend connection)
focal_class.full_signature: @Override public void registerConnection(IOFConnectionBackend connection)
focal_class.identifier: registerConnection
focal_class.modifiers: @Override public
focal_class.parameters: (IOFConnectionBackend connection)
focal_class.return: void
focal_class.signature: void registerConnection(IOFConnectionBackend connection)
focal_class.class_method_signature: OFSwitch.getConnections()
focal_class.full_signature: @Override public ImmutableList<IOFConnection> getConnections()
focal_class.identifier: getConnections
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: ImmutableList<IOFConnection>
focal_class.signature: ImmutableList<IOFConnection> getConnections()
focal_class.class_method_signature: OFSwitch.removeConnections()
focal_class.full_signature: @Override public void removeConnections()
focal_class.identifier: removeConnections
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void removeConnections()
focal_class.class_method_signature: OFSwitch.removeConnection(IOFConnectionBackend connection)
focal_class.full_signature: @Override public void removeConnection(IOFConnectionBackend connection)
focal_class.identifier: removeConnection
focal_class.modifiers: @Override public
focal_class.parameters: (IOFConnectionBackend connection)
focal_class.return: void
focal_class.signature: void removeConnection(IOFConnectionBackend connection)
focal_class.class_method_signature: OFSwitch.getConnection(OFAuxId auxId)
focal_class.full_signature: public IOFConnection getConnection(OFAuxId auxId)
focal_class.identifier: getConnection
focal_class.modifiers: public
focal_class.parameters: (OFAuxId auxId)
focal_class.return: IOFConnection
focal_class.signature: IOFConnection getConnection(OFAuxId auxId)
focal_class.class_method_signature: OFSwitch.getConnection(LogicalOFMessageCategory category)
focal_class.full_signature: public IOFConnection getConnection(LogicalOFMessageCategory category)
focal_class.identifier: getConnection
focal_class.modifiers: public
focal_class.parameters: (LogicalOFMessageCategory category)
focal_class.return: IOFConnection
focal_class.signature: IOFConnection getConnection(LogicalOFMessageCategory category)
focal_class.class_method_signature: OFSwitch.write(OFMessage m)
focal_class.full_signature: @Override public boolean write(OFMessage m)
focal_class.identifier: write
focal_class.modifiers: @Override public
focal_class.parameters: (OFMessage m)
focal_class.return: boolean
focal_class.signature: boolean write(OFMessage m)
focal_class.class_method_signature: OFSwitch.write(Iterable<OFMessage> msglist)
focal_class.full_signature: @Override public Collection<OFMessage> write(Iterable<OFMessage> msglist)
focal_class.identifier: write
focal_class.modifiers: @Override public
focal_class.parameters: (Iterable<OFMessage> msglist)
focal_class.return: Collection<OFMessage>
focal_class.signature: Collection<OFMessage> write(Iterable<OFMessage> msglist)
focal_class.class_method_signature: OFSwitch.write(OFMessage m, LogicalOFMessageCategory category)
focal_class.full_signature: @Override public boolean write(OFMessage m, LogicalOFMessageCategory category)
focal_class.identifier: write
focal_class.modifiers: @Override public
focal_class.parameters: (OFMessage m, LogicalOFMessageCategory category)
focal_class.return: boolean
focal_class.signature: boolean write(OFMessage m, LogicalOFMessageCategory category)
focal_class.class_method_signature: OFSwitch.write(Iterable<OFMessage> msgList, LogicalOFMessageCategory category)
focal_class.full_signature: @Override public Collection<OFMessage> write(Iterable<OFMessage> msgList, LogicalOFMessageCategory category)
focal_class.identifier: write
focal_class.modifiers: @Override public
focal_class.parameters: (Iterable<OFMessage> msgList, LogicalOFMessageCategory category)
focal_class.return: Collection<OFMessage>
focal_class.signature: Collection<OFMessage> write(Iterable<OFMessage> msgList, LogicalOFMessageCategory category)
focal_class.class_method_signature: OFSwitch.getConnectionByCategory(LogicalOFMessageCategory category)
focal_class.full_signature: @Override public OFConnection getConnectionByCategory(LogicalOFMessageCategory category)
focal_class.identifier: getConnectionByCategory
focal_class.modifiers: @Override public
focal_class.parameters: (LogicalOFMessageCategory category)
focal_class.return: OFConnection
focal_class.signature: OFConnection getConnectionByCategory(LogicalOFMessageCategory category)
focal_class.class_method_signature: OFSwitch.writeRequest(OFRequest<R> request, LogicalOFMessageCategory category)
focal_class.full_signature: @Override public ListenableFuture<R> writeRequest(OFRequest<R> request, LogicalOFMessageCategory category)
focal_class.identifier: writeRequest
focal_class.modifiers: @Override public
focal_class.parameters: (OFRequest<R> request, LogicalOFMessageCategory category)
focal_class.return: ListenableFuture<R>
focal_class.signature: ListenableFuture<R> writeRequest(OFRequest<R> request, LogicalOFMessageCategory category)
focal_class.class_method_signature: OFSwitch.writeRequest(OFRequest<R> request)
focal_class.full_signature: @Override public ListenableFuture<R> writeRequest(OFRequest<R> request)
focal_class.identifier: writeRequest
focal_class.modifiers: @Override public
focal_class.parameters: (OFRequest<R> request)
focal_class.return: ListenableFuture<R>
focal_class.signature: ListenableFuture<R> writeRequest(OFRequest<R> request)
focal_class.class_method_signature: OFSwitch.disconnect()
focal_class.full_signature: @Override public void disconnect()
focal_class.identifier: disconnect
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void disconnect()
focal_class.class_method_signature: OFSwitch.setFeaturesReply(OFFeaturesReply featuresReply)
focal_class.full_signature: @Override public void setFeaturesReply(OFFeaturesReply featuresReply)
focal_class.identifier: setFeaturesReply
focal_class.modifiers: @Override public
focal_class.parameters: (OFFeaturesReply featuresReply)
focal_class.return: void
focal_class.signature: void setFeaturesReply(OFFeaturesReply featuresReply)
focal_class.class_method_signature: OFSwitch.setPortDescStats(OFPortDescStatsReply reply)
focal_class.full_signature: @Override public void setPortDescStats(OFPortDescStatsReply reply)
focal_class.identifier: setPortDescStats
focal_class.modifiers: @Override public
focal_class.parameters: (OFPortDescStatsReply reply)
focal_class.return: void
focal_class.signature: void setPortDescStats(OFPortDescStatsReply reply)
focal_class.class_method_signature: OFSwitch.getEnabledPorts()
focal_class.full_signature: @Override public Collection<OFPortDesc> getEnabledPorts()
focal_class.identifier: getEnabledPorts
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Collection<OFPortDesc>
focal_class.signature: Collection<OFPortDesc> getEnabledPorts()
focal_class.class_method_signature: OFSwitch.getEnabledPortNumbers()
focal_class.full_signature: @Override public Collection<OFPort> getEnabledPortNumbers()
focal_class.identifier: getEnabledPortNumbers
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Collection<OFPort>
focal_class.signature: Collection<OFPort> getEnabledPortNumbers()
focal_class.class_method_signature: OFSwitch.getPort(OFPort portNumber)
focal_class.full_signature: @Override public OFPortDesc getPort(OFPort portNumber)
focal_class.identifier: getPort
focal_class.modifiers: @Override public
focal_class.parameters: (OFPort portNumber)
focal_class.return: OFPortDesc
focal_class.signature: OFPortDesc getPort(OFPort portNumber)
focal_class.class_method_signature: OFSwitch.getPort(String portName)
focal_class.full_signature: @Override public OFPortDesc getPort(String portName)
focal_class.identifier: getPort
focal_class.modifiers: @Override public
focal_class.parameters: (String portName)
focal_class.return: OFPortDesc
focal_class.signature: OFPortDesc getPort(String portName)
focal_class.class_method_signature: OFSwitch.processOFPortStatus(OFPortStatus ps)
focal_class.full_signature: @Override public OrderedCollection<PortChangeEvent> processOFPortStatus(OFPortStatus ps)
focal_class.identifier: processOFPortStatus
focal_class.modifiers: @Override public
focal_class.parameters: (OFPortStatus ps)
focal_class.return: OrderedCollection<PortChangeEvent>
focal_class.signature: OrderedCollection<PortChangeEvent> processOFPortStatus(OFPortStatus ps)
focal_class.class_method_signature: OFSwitch.processOFTableFeatures(List<OFTableFeaturesStatsReply> replies)
focal_class.full_signature: @Override public void processOFTableFeatures(List<OFTableFeaturesStatsReply> replies)
focal_class.identifier: processOFTableFeatures
focal_class.modifiers: @Override public
focal_class.parameters: (List<OFTableFeaturesStatsReply> replies)
focal_class.return: void
focal_class.signature: void processOFTableFeatures(List<OFTableFeaturesStatsReply> replies)
focal_class.class_method_signature: OFSwitch.getSortedPorts()
focal_class.full_signature: @Override public Collection<OFPortDesc> getSortedPorts()
focal_class.identifier: getSortedPorts
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Collection<OFPortDesc>
focal_class.signature: Collection<OFPortDesc> getSortedPorts()
focal_class.class_method_signature: OFSwitch.getPorts()
focal_class.full_signature: @Override public Collection<OFPortDesc> getPorts()
focal_class.identifier: getPorts
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Collection<OFPortDesc>
focal_class.signature: Collection<OFPortDesc> getPorts()
focal_class.class_method_signature: OFSwitch.comparePorts(Collection<OFPortDesc> ports)
focal_class.full_signature: @Override public OrderedCollection<PortChangeEvent> comparePorts(Collection<OFPortDesc> ports)
focal_class.identifier: comparePorts
focal_class.modifiers: @Override public
focal_class.parameters: (Collection<OFPortDesc> ports)
focal_class.return: OrderedCollection<PortChangeEvent>
focal_class.signature: OrderedCollection<PortChangeEvent> comparePorts(Collection<OFPortDesc> ports)
focal_class.class_method_signature: OFSwitch.setPorts(Collection<OFPortDesc> ports)
focal_class.full_signature: @Override public OrderedCollection<PortChangeEvent> setPorts(Collection<OFPortDesc> ports)
focal_class.identifier: setPorts
focal_class.modifiers: @Override public
focal_class.parameters: (Collection<OFPortDesc> ports)
focal_class.return: OrderedCollection<PortChangeEvent>
focal_class.signature: OrderedCollection<PortChangeEvent> setPorts(Collection<OFPortDesc> ports)
focal_class.class_method_signature: OFSwitch.portEnabled(OFPort portNumber)
focal_class.full_signature: @Override public boolean portEnabled(OFPort portNumber)
focal_class.identifier: portEnabled
focal_class.modifiers: @Override public
focal_class.parameters: (OFPort portNumber)
focal_class.return: boolean
focal_class.signature: boolean portEnabled(OFPort portNumber)
focal_class.class_method_signature: OFSwitch.portEnabled(String portName)
focal_class.full_signature: @Override public boolean portEnabled(String portName)
focal_class.identifier: portEnabled
focal_class.modifiers: @Override public
focal_class.parameters: (String portName)
focal_class.return: boolean
focal_class.signature: boolean portEnabled(String portName)
focal_class.class_method_signature: OFSwitch.getId()
focal_class.full_signature: @Override public DatapathId getId()
focal_class.identifier: getId
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: DatapathId
focal_class.signature: DatapathId getId()
focal_class.class_method_signature: OFSwitch.toString()
focal_class.full_signature: @Override public String toString()
focal_class.identifier: toString
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toString()
focal_class.class_method_signature: OFSwitch.getAttributes()
focal_class.full_signature: @Override public ConcurrentMap<Object, Object> getAttributes()
focal_class.identifier: getAttributes
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: ConcurrentMap<Object, Object>
focal_class.signature: ConcurrentMap<Object, Object> getAttributes()
focal_class.class_method_signature: OFSwitch.getConnectedSince()
focal_class.full_signature: @Override public Date getConnectedSince()
focal_class.identifier: getConnectedSince
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Date
focal_class.signature: Date getConnectedSince()
focal_class.class_method_signature: OFSwitch.writeStatsRequest(OFStatsRequest<REPLY> request)
focal_class.full_signature: @Override public ListenableFuture<List<REPLY>> writeStatsRequest(OFStatsRequest<REPLY> request)
focal_class.identifier: writeStatsRequest
focal_class.modifiers: @Override public
focal_class.parameters: (OFStatsRequest<REPLY> request)
focal_class.return: ListenableFuture<List<REPLY>>
focal_class.signature: ListenableFuture<List<REPLY>> writeStatsRequest(OFStatsRequest<REPLY> request)
focal_class.class_method_signature: OFSwitch.writeStatsRequest(OFStatsRequest<REPLY> request, LogicalOFMessageCategory category)
focal_class.full_signature: @Override public ListenableFuture<List<REPLY>> writeStatsRequest(OFStatsRequest<REPLY> request, LogicalOFMessageCategory category)
focal_class.identifier: writeStatsRequest
focal_class.modifiers: @Override public
focal_class.parameters: (OFStatsRequest<REPLY> request, LogicalOFMessageCategory category)
focal_class.return: ListenableFuture<List<REPLY>>
focal_class.signature: ListenableFuture<List<REPLY>> writeStatsRequest(OFStatsRequest<REPLY> request, LogicalOFMessageCategory category)
focal_class.class_method_signature: OFSwitch.addInternalStatsReplyListener(final ListenableFuture<List<REPLY>> future, OFStatsRequest<REPLY> request)
focal_class.full_signature: private ListenableFuture<List<REPLY>> addInternalStatsReplyListener(final ListenableFuture<List<REPLY>> future, OFStatsRequest<REPLY> request)
focal_class.identifier: addInternalStatsReplyListener
focal_class.modifiers: private
focal_class.parameters: (final ListenableFuture<List<REPLY>> future, OFStatsRequest<REPLY> request)
focal_class.return: ListenableFuture<List<REPLY>>
focal_class.signature: ListenableFuture<List<REPLY>> addInternalStatsReplyListener(final ListenableFuture<List<REPLY>> future, OFStatsRequest<REPLY> request)
focal_class.class_method_signature: OFSwitch.cancelAllPendingRequests()
focal_class.full_signature: @Override public void cancelAllPendingRequests()
focal_class.identifier: cancelAllPendingRequests
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void cancelAllPendingRequests()
focal_class.class_method_signature: OFSwitch.isConnected()
focal_class.full_signature: @Override public boolean isConnected()
focal_class.identifier: isConnected
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isConnected()
focal_class.class_method_signature: OFSwitch.isActive()
focal_class.full_signature: @Override public boolean isActive()
focal_class.identifier: isActive
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isActive()
focal_class.class_method_signature: OFSwitch.getControllerRole()
focal_class.full_signature: @Override public OFControllerRole getControllerRole()
focal_class.identifier: getControllerRole
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: OFControllerRole
focal_class.signature: OFControllerRole getControllerRole()
focal_class.class_method_signature: OFSwitch.setControllerRole(OFControllerRole role)
focal_class.full_signature: @Override public void setControllerRole(OFControllerRole role)
focal_class.identifier: setControllerRole
focal_class.modifiers: @Override public
focal_class.parameters: (OFControllerRole role)
focal_class.return: void
focal_class.signature: void setControllerRole(OFControllerRole role)
focal_class.class_method_signature: OFSwitch.getInetAddress()
focal_class.full_signature: @Override public SocketAddress getInetAddress()
focal_class.identifier: getInetAddress
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: SocketAddress
focal_class.signature: SocketAddress getInetAddress()
focal_class.class_method_signature: OFSwitch.getBuffers()
focal_class.full_signature: @Override public long getBuffers()
focal_class.identifier: getBuffers
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: long
focal_class.signature: long getBuffers()
focal_class.class_method_signature: OFSwitch.getActions()
focal_class.full_signature: @Override public Set<OFActionType> getActions()
focal_class.identifier: getActions
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Set<OFActionType>
focal_class.signature: Set<OFActionType> getActions()
focal_class.class_method_signature: OFSwitch.getCapabilities()
focal_class.full_signature: @Override public Set<OFCapabilities> getCapabilities()
focal_class.identifier: getCapabilities
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Set<OFCapabilities>
focal_class.signature: Set<OFCapabilities> getCapabilities()
focal_class.class_method_signature: OFSwitch.getTables()
focal_class.full_signature: @Override public Collection<TableId> getTables()
focal_class.identifier: getTables
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Collection<TableId>
focal_class.signature: Collection<TableId> getTables()
focal_class.class_method_signature: OFSwitch.getNumTables()
focal_class.full_signature: @Override public short getNumTables()
focal_class.identifier: getNumTables
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: short
focal_class.signature: short getNumTables()
focal_class.class_method_signature: OFSwitch.getSwitchDescription()
focal_class.full_signature: @Override public SwitchDescription getSwitchDescription()
focal_class.identifier: getSwitchDescription
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: SwitchDescription
focal_class.signature: SwitchDescription getSwitchDescription()
focal_class.class_method_signature: OFSwitch.setTableFull(boolean isFull)
focal_class.full_signature: @Override public void setTableFull(boolean isFull)
focal_class.identifier: setTableFull
focal_class.modifiers: @Override public
focal_class.parameters: (boolean isFull)
focal_class.return: void
focal_class.signature: void setTableFull(boolean isFull)
focal_class.class_method_signature: OFSwitch.startDriverHandshake()
focal_class.full_signature: @Override public void startDriverHandshake()
focal_class.identifier: startDriverHandshake
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void startDriverHandshake()
focal_class.class_method_signature: OFSwitch.isDriverHandshakeComplete()
focal_class.full_signature: @Override public boolean isDriverHandshakeComplete()
focal_class.identifier: isDriverHandshakeComplete
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isDriverHandshakeComplete()
focal_class.class_method_signature: OFSwitch.processDriverHandshakeMessage(OFMessage m)
focal_class.full_signature: @Override public void processDriverHandshakeMessage(OFMessage m)
focal_class.identifier: processDriverHandshakeMessage
focal_class.modifiers: @Override public
focal_class.parameters: (OFMessage m)
focal_class.return: void
focal_class.signature: void processDriverHandshakeMessage(OFMessage m)
focal_class.class_method_signature: OFSwitch.setSwitchProperties(SwitchDescription description)
focal_class.full_signature: @Override public void setSwitchProperties(SwitchDescription description)
focal_class.identifier: setSwitchProperties
focal_class.modifiers: @Override public
focal_class.parameters: (SwitchDescription description)
focal_class.return: void
focal_class.signature: void setSwitchProperties(SwitchDescription description)
focal_class.class_method_signature: OFSwitch.getStatus()
focal_class.full_signature: @Override public SwitchStatus getStatus()
focal_class.identifier: getStatus
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: SwitchStatus
focal_class.signature: SwitchStatus getStatus()
focal_class.class_method_signature: OFSwitch.setStatus(SwitchStatus switchStatus)
focal_class.full_signature: @Override public void setStatus(SwitchStatus switchStatus)
focal_class.identifier: setStatus
focal_class.modifiers: @Override public
focal_class.parameters: (SwitchStatus switchStatus)
focal_class.return: void
focal_class.signature: void setStatus(SwitchStatus switchStatus)
focal_class.class_method_signature: OFSwitch.updateControllerConnections(OFBsnControllerConnectionsReply controllerCxnsReply)
focal_class.full_signature: @Override public void updateControllerConnections(OFBsnControllerConnectionsReply controllerCxnsReply)
focal_class.identifier: updateControllerConnections
focal_class.modifiers: @Override public
focal_class.parameters: (OFBsnControllerConnectionsReply controllerCxnsReply)
focal_class.return: void
focal_class.signature: void updateControllerConnections(OFBsnControllerConnectionsReply controllerCxnsReply)
focal_class.class_method_signature: OFSwitch.hasAnotherMaster()
focal_class.full_signature: @Override public boolean hasAnotherMaster()
focal_class.identifier: hasAnotherMaster
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean hasAnotherMaster()
focal_class.class_method_signature: OFSwitch.getTableFeatures(TableId table)
focal_class.full_signature: @Override public TableFeatures getTableFeatures(TableId table)
focal_class.identifier: getTableFeatures
focal_class.modifiers: @Override public
focal_class.parameters: (TableId table)
focal_class.return: TableFeatures
focal_class.signature: TableFeatures getTableFeatures(TableId table)
focal_class.class_method_signature: OFSwitch.getMaxTableForTableMissFlow()
focal_class.full_signature: @Override public TableId getMaxTableForTableMissFlow()
focal_class.identifier: getMaxTableForTableMissFlow
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: TableId
focal_class.signature: TableId getMaxTableForTableMissFlow()
focal_class.class_method_signature: OFSwitch.setMaxTableForTableMissFlow(TableId max)
focal_class.full_signature: @Override public TableId setMaxTableForTableMissFlow(TableId max)
focal_class.identifier: setMaxTableForTableMissFlow
focal_class.modifiers: @Override public
focal_class.parameters: (TableId max)
focal_class.return: TableId
focal_class.signature: TableId setMaxTableForTableMissFlow(TableId max)
focal_class.class_method_signature: OFSwitch.getLatency()
focal_class.full_signature: @Override public U64 getLatency()
focal_class.identifier: getLatency
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: U64
focal_class.signature: U64 getLatency()
focal_method.body: @Override
  	public boolean hasAnotherMaster() {
  
  		//TODO: refactor get connection to not throw illegal arg exceptions
  		IOFConnection mainCxn = this.getConnection(OFAuxId.MAIN);
  
  		if(mainCxn != null) {
  
  			// Determine the local URI
  			InetSocketAddress address = (InetSocketAddress) mainCxn.getLocalInetAddress();
  			URI localURI = URIUtil.createURI(address.getHostName(), address.getPort());
  
  			for(Entry<URI,Map<OFAuxId, OFBsnControllerConnection>> entry : this.controllerConnections.entrySet()) {
  
  				// Don't check our own controller connections
  				URI uri = entry.getKey();
  				if(!localURI.equals(uri)){
  
  					// We only care for the MAIN connection
  					Map<OFAuxId, OFBsnControllerConnection> cxns = this.controllerConnections.get(uri);
  					OFBsnControllerConnection controllerCxn = cxns.get(OFAuxId.MAIN);
  
  					if(controllerCxn != null) {
  						// If the controller id disconnected or not master we know it is not connected
  						if(controllerCxn.getState() == OFBsnControllerConnectionState.BSN_CONTROLLER_CONNECTION_STATE_CONNECTED
  								&& controllerCxn.getRole() == OFControllerRole.ROLE_MASTER){
  							return true;
  						}
  					} else {
  						log.warn("Unable to find controller connection with aux id "
  								+ "MAIN for switch {} on controller with URI {}.",
  								this, uri);
  					}
  				}
  			}
  		}
  		return false;
  	}
focal_method.class_method_signature: OFSwitch.hasAnotherMaster()
focal_method.full_signature: @Override public boolean hasAnotherMaster()
focal_method.identifier: hasAnotherMaster
focal_method.invocations: getConnection getLocalInetAddress createURI getHostName getPort entrySet getKey equals get get getState getRole warn
focal_method.modifiers: @Override public
focal_method.parameters: ()
focal_method.return: boolean
focal_method.signature: boolean hasAnotherMaster()