blob: 15703d2e2828397f0fbd1e9c7344d286632143cd [file] [log] [blame]
from neutronv2.common import send
from neutronv2.arg_converter import get_by_name_or_uuid_multiple
try:
from urllib.parse import urlencode
except ImportError:
from urllib import urlencode
@send('get')
def agent_get_details(agent_id, **kwargs):
url = '/agents/{}?{}'.format(agent_id, urlencode(kwargs))
return url, {}
@send('put')
def agent_update(agent_id, **kwargs):
url = '/agents/{}'.format(agent_id)
json = {
'agent': kwargs,
}
return url, {'json': json}
@send('delete')
def agent_delete(agent_id, **kwargs):
url = '/agents/{}'.format(agent_id)
return url, {}
@send('get')
def l3_agent_router_list(agent_id, **kwargs):
url = '/agents/{}/l3-routers'.format(agent_id)
return url, {}
@get_by_name_or_uuid_multiple([('router', 'router_id')])
@send('post')
def l3_agent_router_schedule(router_id, agent_id, **kwargs):
url = '/agents/{}/l3-routers'.format(agent_id)
json = {
'router_id': router_id,
}
return url, {'json': json}
@get_by_name_or_uuid_multiple([('router', 'router_id')])
@send('delete')
def l3_agent_router_remove(router_id, agent_id, **kwargs):
url = '/agents/{}/l3-routers/{}'.format(agent_id, router_id)
return url, {}
@get_by_name_or_uuid_multiple([('router', 'router_id')])
@send('get')
def l3_agent_by_router_list(router_id, **kwargs):
url = '/routers/{}/l3-agents'.format(router_id)
return url, {}
@send('get')
def dhcp_agent_list_networks(agent_id, **kwargs):
url = '/agents/{}/dhcp-networks'.format(agent_id)
return url, {}
@get_by_name_or_uuid_multiple([('network', 'network_id')])
@send('post')
def dhcp_agent_network_schedule(network_id, agent_id, **kwargs):
url = '/agents/{}/dhcp-networks'.format(agent_id)
json = {
'network_id': network_id,
}
return url, {'json': json}
@get_by_name_or_uuid_multiple([('network', 'network_id')])
@send('delete')
def dhcp_agent_network_remove(network_id, agent_id, **kwargs):
url = '/agents/{}/dhcp-networks/{}'.format(agent_id, network_id)
return url, {}
@get_by_name_or_uuid_multiple([('network', 'network_id')])
@send('get')
def dhcp_agent_by_network_list(network_id, **kwargs):
url = '/networks/{}/dhcp-agents'.format(network_id)
return url, {}