Source code for openstack_dashboard.dashboards.project.loadbalancers.tables

# vim: tabstop=4 shiftwidth=4 softtabstop=4

#    Copyright 2013, Big Switch Networks, Inc.
#
#    Licensed under the Apache License, Version 2.0 (the "License"); you may
#    not use this file except in compliance with the License. You may obtain
#    a copy of the License at
#
#         http://www.apache.org/licenses/LICENSE-2.0
#
#    Unless required by applicable law or agreed to in writing, software
#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
#    License for the specific language governing permissions and limitations
#    under the License.

import logging

from django.utils import http
from django.core.urlresolvers import reverse
from django.utils.translation import ugettext as _

from horizon import tables
from openstack_dashboard import api


LOG = logging.getLogger(__name__)











[docs]class PoolsTable(tables.DataTable): name = tables.Column("name", verbose_name=_("Name"), link="horizon:project:loadbalancers:pooldetails") description = tables.Column('description', verbose_name=_("Description")) subnet_name = tables.Column('subnet_name', verbose_name=_("Subnet")) protocol = tables.Column('protocol', verbose_name=_("Protocol")) vip_name = tables.Column('vip_name', verbose_name=_("VIP"), link=get_vip_link)
[docs] class Meta: name = "poolstable" verbose_name = _("Pools") table_actions = (AddPoolLink, DeletePoolLink) row_actions = (AddVipLink, DeleteVipLink, DeletePoolLink)
[docs]class MembersTable(tables.DataTable): address = tables.Column('address', verbose_name=_("IP Address"), link=get_member_link) protocol_port = tables.Column('protocol_port', verbose_name=_("Protocol Port")) pool_name = tables.Column("pool_name", verbose_name=_("Pool"), link=get_pool_link)
[docs] class Meta: name = "memberstable" verbose_name = _("Members") table_actions = (AddMemberLink, DeleteMemberLink) row_actions = (DeleteMemberLink,)
[docs]class MonitorsTable(tables.DataTable): id = tables.Column("id", verbose_name=_("ID"), link="horizon:project:loadbalancers:monitordetails") monitorType = tables.Column('type', verbose_name=_("Monitor Type"))
[docs] class Meta: name = "monitorstable" verbose_name = _("Monitors") table_actions = (AddMonitorLink, DeleteMonitorLink) row_actions = (DeleteMonitorLink,)