88from core .coreobj import PyCoreNode , PyCoreNet
99from core .data import NodeData
1010from core .enumerations import NodeTypes , EventTypes , LinkTypes
11- from core .future .futuredata import InterfaceData , LinkOptions , NodeOptions
11+ from core .future .futuredata import LinkOptions , NodeOptions
1212from core .misc import nodeutils
1313from core .session import Session
1414from core .xml .xmlparser import core_document_parser
@@ -34,35 +34,6 @@ def signal_handler(signal_number, _):
3434signal .signal (signal .SIGUSR2 , signal_handler )
3535
3636
37- def get_interfaces (link_data ):
38- """
39- Creates interface data objects for the interfaces defined within link data.
40-
41- :param core.data.LinkData link_data: data to create interface data from
42- :return: interface one and two data
43- :rtype: tuple[core.future.futuredata.InterfaceData]
44- """
45- interface_one = InterfaceData (
46- _id = link_data .interface1_id ,
47- name = link_data .interface1_name ,
48- mac = link_data .interface1_mac ,
49- ip4 = link_data .interface1_ip4 ,
50- ip4_mask = link_data .interface1_ip4_mask ,
51- ip6 = link_data .interface1_ip6 ,
52- ip6_mask = link_data .interface1_ip6_mask ,
53- )
54- interface_two = InterfaceData (
55- _id = link_data .interface2_id ,
56- name = link_data .interface2_name ,
57- mac = link_data .interface2_mac ,
58- ip4 = link_data .interface2_ip4 ,
59- ip4_mask = link_data .interface2_ip4_mask ,
60- ip6 = link_data .interface2_ip6 ,
61- ip6_mask = link_data .interface2_ip6_mask ,
62- )
63- return interface_one , interface_two
64-
65-
6637def create_interface (node , network , interface_data ):
6738 """
6839 Create an interface for a node on a network using provided interface data.
@@ -782,27 +753,6 @@ def mobility_event(self, event_data):
782753 """
783754 self .mobility .handleevent (event_data )
784755
785- def create_node (self , cls , name = None , model = None ):
786- """
787- Create a node
788-
789- :param cls:
790- :param name:
791- :param model:
792- :return:
793- """
794- object_id = self .node_id_gen .next ()
795-
796- if not name :
797- name = "%s%s" % (cls .__name__ , object_id )
798-
799- node = self .add_object (cls = cls , name = name , objid = object_id )
800- node .type = model
801- if node .type :
802- self .services .addservicestonode (node , node .type , services_str = None )
803-
804- return node
805-
806756 def create_emane_node (self , _id = None , node_options = NodeOptions ()):
807757 """
808758 Create an EMANE node for use within an EMANE network.
@@ -909,16 +859,24 @@ def create_session(self, _id=None, master=True):
909859
910860 def delete_session (self , _id ):
911861 """
912- Deletes a CORE session.
862+ Shutdown and delete a CORE session.
913863
914864 :param int _id: session id to delete
915- :return: nothing
865+ :return: True if deleted, False otherwise
866+ :rtype: bool
916867 """
917868 logger .info ("deleting session: %s" , _id )
918869 session = self .sessions .pop (_id , None )
919- if not session :
870+ result = False
871+ if session :
872+ logger .info ("shutting session down: %s" , _id )
873+ session .shutdown ()
874+ result = True
875+ else :
920876 logger .error ("session to delete did not exist: %s" , _id )
921877
878+ return result
879+
922880 def set_wireless_model (self , node , model ):
923881 """
924882 Convenience method for setting a wireless model.
@@ -941,17 +899,3 @@ def wireless_link_all(self, network, nodes):
941899 for node in nodes :
942900 for common_network , interface_one , interface_two in node .commonnets (network ):
943901 common_network .link (interface_one , interface_two )
944-
945- def add_interface (self , network , node , prefixes ):
946- """
947- Convenience method for adding an interface with a prefix based on node id.
948-
949- :param network: network to add interface with
950- :param node: node to add interface to
951- :param core.future.futuredata.IpPrefixes prefixes: to get address from for interface
952- :return: created interface
953- """
954- interface_data = prefixes .create_interface (node )
955- logger .info ("adding interface: %s" , interface_data .get_addresses ())
956- interface_index = node .newnetif (network , interface_data .get_addresses (), ifindex = interface_data .id )
957- return node .netif (interface_index )
0 commit comments