Sha256: 9fa5791bbb19e68cf6d54b0f1e61bbca728c3e2ddfafd1e1a43b9c70de563430

Contents?: true

Size: 1.72 KB

Versions: 24

Compression:

Stored size: 1.72 KB

Contents

module Fog
  module Compute
    class Cloudstack

      class Real
        # Creates a port forwarding rule
        #
        # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/createPortForwardingRule.html]
        def create_port_forwarding_rule(*args)
          options = {}
          if args[0].is_a? Hash
            options = args[0]
            options.merge!('command' => 'createPortForwardingRule')
          else
            options.merge!('command' => 'createPortForwardingRule',
            'virtualmachineid' => args[0],
            'protocol' => args[1],
            'privateport' => args[2],
            'ipaddressid' => args[3],
            'publicport' => args[4])
          end
          request(options)
        end
      end

    class Mock
      def create_port_forwarding_rule(*args)
        port_forwarding_rule_id = "43192143-5828-6831-58286837474"
        port_forwarding_rule = {
          'id'                      => port_forwarding_rule_id,
          'privateport' => "110",
          'privateendport' => "110",
          'protocol' => "tcp",
          'publicport' => "111",
          'publicendport' => "111",
          'virtualmachineid' => "8f4627c5-1fdd-4504-8a92-f61b4e9cb3e3",
          'virtualmachinename' => "Pop3LoadBalancer",
          'virtualmachinedisplayname' => "Pop3LoadBalancer",
          'ipaddressid' => "f1f1f1f1-f1f1-f1f1-f1f1-f1f1f1f1f1",
          'ipaddress' => "192.168.200.201",
          'state' => "Active",
          'cidrlist' => "",
          'tags' => []
        }

        self.data[:port_forwarding_rules][port_forwarding_rule_id]= port_forwarding_rule
        {'createportforwardingruleresponse' => port_forwarding_rule}

      end
    end

    end
  end
end

Version data entries

24 entries across 22 versions & 3 rubygems

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