Source code for openstack_dashboard.dashboards.project.vpn.tabs

# Copyright 2013, Mirantis 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.

from django.utils.translation import ugettext_lazy as _

from horizon import exceptions
from horizon import tabs

from openstack_dashboard import api

from openstack_dashboard.dashboards.project.vpn import tables


[docs]class IPSecSiteConnectionsTab(tabs.TableTab): table_classes = (tables.IPSecSiteConnectionsTable,) name = _("IPSec Site Connections") slug = "ipsecsiteconnections" template_name = ("horizon/common/_detail_table.html")
[docs] def get_ipsecsiteconnectionstable_data(self): try: tenant_id = self.request.user.tenant_id ipsecsiteconnections = api.vpn.ipsecsiteconnection_list( self.tab_group.request, tenant_id=tenant_id) except Exception: ipsecsiteconnections = [] exceptions.handle( self.tab_group.request, _('Unable to retrieve IPSec Site Connections list.')) return ipsecsiteconnections
[docs]class VPNServicesTab(tabs.TableTab): table_classes = (tables.VPNServicesTable,) name = _("VPN Services") slug = "vpnservices" template_name = ("horizon/common/_detail_table.html")
[docs] def get_vpnservicestable_data(self): try: tenant_id = self.request.user.tenant_id vpnservices = api.vpn.vpnservice_list( self.tab_group.request, tenant_id=tenant_id) except Exception: vpnservices = [] exceptions.handle(self.tab_group.request, _('Unable to retrieve VPN Services list.')) return vpnservices
[docs]class IKEPoliciesTab(tabs.TableTab): table_classes = (tables.IKEPoliciesTable,) name = _("IKE Policies") slug = "ikepolicies" template_name = ("horizon/common/_detail_table.html")
[docs] def get_ikepoliciestable_data(self): try: tenant_id = self.request.user.tenant_id ikepolicies = api.vpn.ikepolicy_list( self.tab_group.request, tenant_id=tenant_id) except Exception: ikepolicies = [] exceptions.handle(self.tab_group.request, _('Unable to retrieve IKE Policies list.')) return ikepolicies
[docs]class IPSecPoliciesTab(tabs.TableTab): table_classes = (tables.IPSecPoliciesTable,) name = _("IPSec Policies") slug = "ipsecpolicies" template_name = ("horizon/common/_detail_table.html")
[docs] def get_ipsecpoliciestable_data(self): try: tenant_id = self.request.user.tenant_id ipsecpolicies = api.vpn.ipsecpolicy_list( self.tab_group.request, tenant_id=tenant_id) except Exception: ipsecpolicies = [] exceptions.handle(self.tab_group.request, _('Unable to retrieve IPSec Policies list.')) return ipsecpolicies
[docs]class VPNTabs(tabs.TabGroup): slug = "vpntabs" tabs = (IKEPoliciesTab, IPSecPoliciesTab, VPNServicesTab, IPSecSiteConnectionsTab,) sticky = True
[docs]class IKEPolicyDetailsTab(tabs.Tab): name = _("IKE Policy Details") slug = "ikepolicydetails" template_name = "project/vpn/_ikepolicy_details.html"
[docs] def get_context_data(self, request): ikepolicy = self.tab_group.kwargs['ikepolicy'] return {'ikepolicy': ikepolicy}
[docs]class IKEPolicyDetailsTabs(tabs.TabGroup): slug = "ikepolicytabs" tabs = (IKEPolicyDetailsTab,)
[docs]class IPSecPolicyDetailsTab(tabs.Tab): name = _("IPSec Policy Details") slug = "ipsecpolicydetails" template_name = "project/vpn/_ipsecpolicy_details.html"
[docs] def get_context_data(self, request): ipsecpolicy = self.tab_group.kwargs['ipsecpolicy'] return {'ipsecpolicy': ipsecpolicy}
[docs]class IPSecPolicyDetailsTabs(tabs.TabGroup): slug = "ipsecpolicytabs" tabs = (IPSecPolicyDetailsTab,)
[docs]class VPNServiceDetailsTab(tabs.Tab): name = _("VPN Service Details") slug = "vpnservicedetails" template_name = "project/vpn/_vpnservice_details.html"
[docs] def get_context_data(self, request): vpnservice = self.tab_group.kwargs['vpnservice'] return {'vpnservice': vpnservice}
[docs]class VPNServiceDetailsTabs(tabs.TabGroup): slug = "vpnservicetabs" tabs = (VPNServiceDetailsTab,)
[docs]class IPSecSiteConnectionDetailsTab(tabs.Tab): name = _("IPSec Site Connection Details") slug = "ipsecsiteconnectiondetails" template_name = "project/vpn/_ipsecsiteconnection_details.html"
[docs] def get_context_data(self, request): ipsecsiteconnection = self.tab_group.kwargs['ipsecsiteconnection'] return {'ipsecsiteconnection': ipsecsiteconnection}
[docs]class IPSecSiteConnectionDetailsTabs(tabs.TabGroup): slug = "ipsecsiteconnectiontabs" tabs = (IPSecSiteConnectionDetailsTab,)

Project Source