Class: Kelbim::ELBWrapper::LoadBalancerCollection::LoadBalancer::ListenerCollection::Listener::PolicyCollection
- Inherits:
-
Object
- Object
- Kelbim::ELBWrapper::LoadBalancerCollection::LoadBalancer::ListenerCollection::Listener::PolicyCollection
- Includes:
- Logger::ClientHelper
- Defined in:
- lib/kelbim/wrapper/policy.rb,
lib/kelbim/wrapper/policy-collection.rb
Defined Under Namespace
Classes: Policy
Class Method Summary collapse
Instance Method Summary collapse
- #create(dsl) ⇒ Object
- #each ⇒ Object
-
#initialize(policies, listener, options) ⇒ PolicyCollection
constructor
of class methods.
Methods included from Logger::ClientHelper
Constructor Details
#initialize(policies, listener, options) ⇒ PolicyCollection
of class methods
41 42 43 44 45 |
# File 'lib/kelbim/wrapper/policy-collection.rb', line 41 def initialize(policies, listener, ) @policies = policies @listener = listener @options = end |
Class Method Details
.create_mock_policy(dsl, listener) ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/kelbim/wrapper/policy-collection.rb', line 11 def create_mock_policy(dsl, listener) dsl_type, dsl_name_or_attrs = dsl policy_type = PolicyTypes.symbol_to_string(dsl_type) plcy = OpenStruct.new(:type => policy_type) if PolicyTypes.name?(dsl_name_or_attrs) plcy.name = dsl_name_or_attrs plcy.attribute = {'<new policy attribute name>' => ['<new policy attribute value>']} else plcy.name = create_policy_name(listener, policy_type).sub(/\w+-\w+-\w+-\w+-\w+\Z/, '...') plcy.attributes = PolicyTypes.(dsl_type, dsl_name_or_attrs) end return plcy end |
.create_policy_name(listener, policy_type) ⇒ Object
27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/kelbim/wrapper/policy-collection.rb', line 27 def create_policy_name(listener, policy_type) [ listener.load_balancer.vpc_id || :classic, listener.load_balancer.name, listener.protocol, listener.port, listener.instance_protocol, listener.instance_port, policy_type, UUID.new.generate, ].join('-').gsub(/\s/, '_') end |
Instance Method Details
#create(dsl) ⇒ Object
53 54 55 56 57 58 59 60 61 |
# File 'lib/kelbim/wrapper/policy-collection.rb', line 53 def create(dsl) dsl_type, dsl_name_or_attrs = dsl log_id = "#{@listener.load_balancer.vpc_id || :classic} > #{@listener.load_balancer.name} > #{PolicyTypes.symbol_to_string(dsl_type)}: " log_id += PolicyTypes.name?(dsl_name_or_attrs) ? dsl_name_or_attrs : dsl_name_or_attrs.inspect log(:info, 'Create Policy', :cyan, log_id) plcy = @options.dry_run ? self.class.create_mock_policy(dsl, @listener) : create_policy(dsl) Policy.new(plcy, @listener, @options) end |