-##
-# Geniwrapper uses a PLCAPI connection to perform operations on the registry,
-# such as creating and deleting slices. This connection requires an account
-# on the PLC server with full administrator access.
-#
-# The Url parameter controls whether the connection uses PLCAPI directly (i.e.
-# Geniwrapper is located on the same machine as PLC), or uses a XMLRPC connection
-# to the PLC machine. If you wish to use the API directly, then remove the Url
-# field from the dictionary.
-
-def get_pl_auth():
- config = Config()
- pl_auth = {
- 'Username': config.GENI_PLC_USER,
- 'AuthMethod': 'capability',
- 'AuthString': config.GENI_PLC_PASSWORD,
- "Url": config.GENI_PLC_URL
- }
- return pl_auth
+ aggr_mgr_port = 2603
+ if (hasattr(self,'OPENFLOW_AGGREGATE_MANAGER_PORT')):
+ aggr_mgr_port = self.OPENFLOW_AGGREGATE_MANAGER_PORT
+
+ return (aggr_mgr_ip,aggr_mgr_port)
+
+ def get_aggregate_type(self):
+ if (hasattr(self,'SFA_AGGREGATE_TYPE')):
+ return self.SFA_AGGREGATE_TYPE
+ else:
+ return "pl"
+
+ def get_interface_hrn(self):
+ if (hasattr(self,'SFA_INTERFACE_HRN')):
+ return self.SFA_INTERFACE_HRN
+ else:
+ return "plc"
+
+ def get_plc_dbinfo(self):
+ return {
+ 'dbname' : self.SFA_PLC_DB_NAME,
+ 'address' : self.SFA_PLC_DB_HOST,
+ 'port' : self.SFA_PLC_DB_PORT,
+ 'user' : self.SFA_PLC_DB_USER,
+ 'password' : self.SFA_PLC_DB_PASSWORD
+ }
+
+ # TODO: find a better place to put this method
+ def get_max_aggrMgr_info(self):
+ am_apiclient_path = '/usr/local/MAXGENI_AM_APIClient'
+ if (hasattr(self,'MAXGENI_AM_APICLIENT_PATH')):
+ am_client_path = self.MAXGENI_AM_APICLIENT_PATH
+
+ am_url = 'https://geni.dragon.maxgigapop.net:8443/axis2/services/AggregateGENI'
+ if (hasattr(self,'MAXGENI_AM_URL')):
+ am_url = self.MAXGENI_AM_URL
+
+ return (am_apiclient_path,am_url)
+
+ ##
+ # SFA uses a PLCAPI connection to perform operations on the registry,
+ # such as creating and deleting slices. This connection requires an account
+ # on the PLC server with full administrator access.
+ #
+ # The Url parameter controls whether the connection uses PLCAPI directly (i.e.
+ # SFA is located on the same machine as PLC), or uses a XMLRPC connection
+ # to the PLC machine. If you wish to use the API directly, then remove the Url
+ # field from the dictionary.
+
+ def get_plc_auth(self):
+ return {
+ 'AuthMethod': 'capability',
+ 'Username': self.SFA_PLC_USER,
+ 'AuthString': self.SFA_PLC_PASSWORD,
+ "Url": self.SFA_PLC_URL
+ }