Sha256: a656fdacbab3384ed80f07a8f959d9b1324090d504b518f84c5827787761810e

Contents?: true

Size: 1.16 KB

Versions: 24

Compression:

Stored size: 1.16 KB

Contents

module Fog
  module Compute
    class Cloudstack
      class EgressFirewallRule < Fog::Model
        identity  :id,                    :aliases => 'id'
        attribute :protocol,              :aliases => 'protocol'
        attribute :network_id,            :aliases => 'networkid'
        attribute :state,                 :aliases => 'state'
        attribute :cidr_list,             :aliases => 'cidrlist'
        attribute :tags,                  :type => :array
        attribute :job_id,                :aliases => 'jobid'   # only on create

        def save
          requires :protocol, :network_id

          options = {
            'protocol'    => protocol,
            'networkid'   => network_id,
            'cidrlist'    => cidr_list,
          }

          response = service.create_egress_firewall_rule(options)
          merge_attributes(response['createegressfirewallruleresponse'])
        end

        def destroy
          requires :id

          response = service.delete_egress_firewall_rule('id' => id )
          success_status = response['deleteegressfirewallruleresponse']['success']

          success_status == 'true'
        end

      end
    end
  end
end

Version data entries

24 entries across 22 versions & 3 rubygems

Version Path
fog-2.1.0 lib/fog/cloudstack/models/compute/egress_firewall_rule.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.5.0/gems/fog-1.42.1/lib/fog/cloudstack/models/compute/egress_firewall_rule.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.4.0/gems/fog-1.42.1/lib/fog/cloudstack/models/compute/egress_firewall_rule.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.3.0/gems/fog-1.42.1/lib/fog/cloudstack/models/compute/egress_firewall_rule.rb
fog-1.42.1 lib/fog/cloudstack/models/compute/egress_firewall_rule.rb
fog-2.0.0 lib/fog/cloudstack/models/compute/egress_firewall_rule.rb
fog-1.42.0 lib/fog/cloudstack/models/compute/egress_firewall_rule.rb
fog-1.41.0 lib/fog/cloudstack/models/compute/egress_firewall_rule.rb
fog-1.40.0 lib/fog/cloudstack/models/compute/egress_firewall_rule.rb
fog-1.39.0 lib/fog/cloudstack/models/compute/egress_firewall_rule.rb
fog-1.38.0 lib/fog/cloudstack/models/compute/egress_firewall_rule.rb
fog-1.37.0 lib/fog/cloudstack/models/compute/egress_firewall_rule.rb
fog-1.36.0 lib/fog/cloudstack/models/compute/egress_firewall_rule.rb
fog-1.35.0 lib/fog/cloudstack/models/compute/egress_firewall_rule.rb
fog-2.0.0.pre.0 lib/fog/cloudstack/models/compute/egress_firewall_rule.rb
vagrant-cloudstack-1.2.0 vendor/bundle/gems/fog-1.32.0/lib/fog/cloudstack/models/compute/egress_firewall_rule.rb
fog-1.34.0 lib/fog/cloudstack/models/compute/egress_firewall_rule.rb
fog-1.33.0 lib/fog/cloudstack/models/compute/egress_firewall_rule.rb
fog-1.32.0 lib/fog/cloudstack/models/compute/egress_firewall_rule.rb
fog-1.31.0 lib/fog/cloudstack/models/compute/egress_firewall_rule.rb