Source code for SoftLayer.managers.firewall

"""
    SoftLayer.firewall
    ~~~~~~~~~~~~~~~~~~
    Firewall Manager/helpers

    :copyright: (c) 2013, SoftLayer Technologies, Inc. All rights reserved.
    :license: BSD, see LICENSE for more details.
"""


[docs]def has_firewall(vlan): return bool( vlan.get('dedicatedFirewallFlag', None) or vlan.get('highAvailabilityFirewallFlag', None) or vlan.get('firewallInterfaces', None) or vlan.get('firewallNetworkComponents', None) or vlan.get('firewallGuestNetworkComponents', None) )
[docs]class FirewallManager(object): def __init__(self, client): """ Manages firewalls. :param SoftLayer.API.Client client: the API client instance """ self.client = client
[docs] def get_firewalls(self): results = self.client['Account'].getObject( mask={ 'networkVlans': { 'firewallNetworkComponents': None, 'networkVlanFirewall': None, 'dedicatedFirewallFlag': None, 'firewallGuestNetworkComponents': None, 'firewallInterfaces': {}, 'firewallRules': None, 'highAvailabilityFirewallFlag': None, #'primarySubnet': None, } })['networkVlans'] return filter(has_firewall, results)