removed unused code, updated delete session to shutdown session as well and return if session was deleted or not

This commit is contained in:
Blake J. Harnden 2018-04-25 11:55:47 -07:00
parent c0b450789a
commit f431895357
2 changed files with 12 additions and 74 deletions

View file

@ -8,7 +8,7 @@ from core import logger
from core.coreobj import PyCoreNode, PyCoreNet from core.coreobj import PyCoreNode, PyCoreNet
from core.data import NodeData from core.data import NodeData
from core.enumerations import NodeTypes, EventTypes, LinkTypes from core.enumerations import NodeTypes, EventTypes, LinkTypes
from core.future.futuredata import InterfaceData, LinkOptions, NodeOptions from core.future.futuredata import LinkOptions, NodeOptions
from core.misc import nodeutils from core.misc import nodeutils
from core.session import Session from core.session import Session
from core.xml.xmlparser import core_document_parser from core.xml.xmlparser import core_document_parser
@ -34,35 +34,6 @@ signal.signal(signal.SIGUSR1, signal_handler)
signal.signal(signal.SIGUSR2, signal_handler) signal.signal(signal.SIGUSR2, signal_handler)
def get_interfaces(link_data):
"""
Creates interface data objects for the interfaces defined within link data.
:param core.data.LinkData link_data: data to create interface data from
:return: interface one and two data
:rtype: tuple[core.future.futuredata.InterfaceData]
"""
interface_one = InterfaceData(
_id=link_data.interface1_id,
name=link_data.interface1_name,
mac=link_data.interface1_mac,
ip4=link_data.interface1_ip4,
ip4_mask=link_data.interface1_ip4_mask,
ip6=link_data.interface1_ip6,
ip6_mask=link_data.interface1_ip6_mask,
)
interface_two = InterfaceData(
_id=link_data.interface2_id,
name=link_data.interface2_name,
mac=link_data.interface2_mac,
ip4=link_data.interface2_ip4,
ip4_mask=link_data.interface2_ip4_mask,
ip6=link_data.interface2_ip6,
ip6_mask=link_data.interface2_ip6_mask,
)
return interface_one, interface_two
def create_interface(node, network, interface_data): def create_interface(node, network, interface_data):
""" """
Create an interface for a node on a network using provided interface data. Create an interface for a node on a network using provided interface data.
@ -782,27 +753,6 @@ class FutureSession(Session):
""" """
self.mobility.handleevent(event_data) self.mobility.handleevent(event_data)
def create_node(self, cls, name=None, model=None):
"""
Create a node
:param cls:
:param name:
:param model:
:return:
"""
object_id = self.node_id_gen.next()
if not name:
name = "%s%s" % (cls.__name__, object_id)
node = self.add_object(cls=cls, name=name, objid=object_id)
node.type = model
if node.type:
self.services.addservicestonode(node, node.type, services_str=None)
return node
def create_emane_node(self, _id=None, node_options=NodeOptions()): def create_emane_node(self, _id=None, node_options=NodeOptions()):
""" """
Create an EMANE node for use within an EMANE network. Create an EMANE node for use within an EMANE network.
@ -909,16 +859,24 @@ class CoreEmu(object):
def delete_session(self, _id): def delete_session(self, _id):
""" """
Deletes a CORE session. Shutdown and delete a CORE session.
:param int _id: session id to delete :param int _id: session id to delete
:return: nothing :return: True if deleted, False otherwise
:rtype: bool
""" """
logger.info("deleting session: %s", _id) logger.info("deleting session: %s", _id)
session = self.sessions.pop(_id, None) session = self.sessions.pop(_id, None)
if not session: result = False
if session:
logger.info("shutting session down: %s", _id)
session.shutdown()
result = True
else:
logger.error("session to delete did not exist: %s", _id) logger.error("session to delete did not exist: %s", _id)
return result
def set_wireless_model(self, node, model): def set_wireless_model(self, node, model):
""" """
Convenience method for setting a wireless model. Convenience method for setting a wireless model.
@ -941,17 +899,3 @@ class CoreEmu(object):
for node in nodes: for node in nodes:
for common_network, interface_one, interface_two in node.commonnets(network): for common_network, interface_one, interface_two in node.commonnets(network):
common_network.link(interface_one, interface_two) common_network.link(interface_one, interface_two)
def add_interface(self, network, node, prefixes):
"""
Convenience method for adding an interface with a prefix based on node id.
:param network: network to add interface with
:param node: node to add interface to
:param core.future.futuredata.IpPrefixes prefixes: to get address from for interface
:return: created interface
"""
interface_data = prefixes.create_interface(node)
logger.info("adding interface: %s", interface_data.get_addresses())
interface_index = node.newnetif(network, interface_data.get_addresses(), ifindex=interface_data.id)
return node.netif(interface_index)

View file

@ -130,7 +130,6 @@ class FutureHandler(SocketServer.BaseRequestHandler):
self.session.broker.session_clients.remove(self) self.session.broker.session_clients.remove(self)
if not self.session.broker.session_clients and not self.session.is_active(): if not self.session.broker.session_clients and not self.session.is_active():
logger.info("no session clients left and not active, initiating shutdown") logger.info("no session clients left and not active, initiating shutdown")
self.session.shutdown()
self.coreemu.delete_session(self.session.session_id) self.coreemu.delete_session(self.session.session_id)
return SocketServer.BaseRequestHandler.finish(self) return SocketServer.BaseRequestHandler.finish(self)
@ -551,9 +550,6 @@ class FutureHandler(SocketServer.BaseRequestHandler):
except IOError: except IOError:
logger.exception("error dispatching reply") logger.exception("error dispatching reply")
def session_shutdown(self, session):
self.coreemu.delete_session(session.session_id)
def handle(self): def handle(self):
""" """
Handle a new connection request from a client. Dispatch to the Handle a new connection request from a client. Dispatch to the
@ -856,7 +852,6 @@ class FutureHandler(SocketServer.BaseRequestHandler):
try: try:
session.open_xml(file_name, start=True) session.open_xml(file_name, start=True)
except: except:
session.shutdown()
self.coreemu.delete_session(session.session_id) self.coreemu.delete_session(session.session_id)
raise raise
else: else:
@ -1189,7 +1184,6 @@ class FutureHandler(SocketServer.BaseRequestHandler):
self.remove_session_handlers() self.remove_session_handlers()
self.session.broker.session_clients.remove(self) self.session.broker.session_clients.remove(self)
if not self.session.broker.session_clients and not self.session.is_active(): if not self.session.broker.session_clients and not self.session.is_active():
self.session.shutdown()
self.coreemu.delete_session(self.session.session_id) self.coreemu.delete_session(self.session.session_id)
# set session to join # set session to join