Class: IISConfig::AppPool
- Defined in:
- lib/iisconfig/app_pool.rb
Instance Method Summary collapse
- #add ⇒ Object
- #build_commands ⇒ Object
- #delete ⇒ Object
- #enable_32bit_app_on_win64(value = true) ⇒ Object
- #ftp_site(&block) ⇒ Object
-
#initialize ⇒ AppPool
constructor
A new instance of AppPool.
- #name(name = nil) ⇒ Object
- #pipeline_mode(mode = nil) ⇒ Object
- #process_model {|@process_model| ... } ⇒ Object
- #required_paths ⇒ Object
- #runtime_version(version = nil) ⇒ Object
- #site(&block) ⇒ Object
- #sites ⇒ Object
Methods inherited from IISObject
Constructor Details
#initialize ⇒ AppPool
Returns a new instance of AppPool.
10 11 12 13 14 15 16 17 |
# File 'lib/iisconfig/app_pool.rb', line 10 def initialize @pipeline_mode = :Classic @runtime_version = :'v2.0' @sites = [] @ftp_sites = [] @process_model = ProcessModel.new @enable_32bit_app_on_win64 = false end |
Instance Method Details
#add ⇒ Object
58 59 60 61 62 63 64 65 66 |
# File 'lib/iisconfig/app_pool.rb', line 58 def add args = [] args << 'ADD' args << 'APPPOOL' args << "/name:#{@name}" args << "/managedRuntimeVersion:#{@runtime_version}" args << "/managedPipelineMode:#{pipeline_mode}" args end |
#build_commands ⇒ Object
76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 |
# File 'lib/iisconfig/app_pool.rb', line 76 def build_commands commands = [] commands << delete if exist? :apppool, @name commands << add @process_model.settings.each do |d| commands << %W{SET CONFIG /section:applicationPools /[name='#{@name}'].processModel.#{d[:key]}:#{d[:value]}} end commands << %W{SET APPPOOL /apppool.name:#{@name} /enable32BitAppOnWin64:#{@enable_32bit_app_on_win64}} @sites.each do |s| s.app_pool @name.to_sym commands += s.build_commands end @ftp_sites.each do |s| s.app_pool @name.to_sym commands += s.build_commands end commands end |
#delete ⇒ Object
54 55 56 |
# File 'lib/iisconfig/app_pool.rb', line 54 def delete %W{DELETE APPPOOL #{@name}} end |
#enable_32bit_app_on_win64(value = true) ⇒ Object
34 35 36 |
# File 'lib/iisconfig/app_pool.rb', line 34 def enable_32bit_app_on_win64(value = true) @enable_32bit_app_on_win64 = value end |
#ftp_site(&block) ⇒ Object
46 47 48 |
# File 'lib/iisconfig/app_pool.rb', line 46 def ftp_site(&block) add_instance(@ftp_sites, IISConfig::FtpSite, block) end |
#name(name = nil) ⇒ Object
19 20 21 22 |
# File 'lib/iisconfig/app_pool.rb', line 19 def name(name = nil) @name = name unless name.nil? @name end |
#pipeline_mode(mode = nil) ⇒ Object
29 30 31 32 |
# File 'lib/iisconfig/app_pool.rb', line 29 def pipeline_mode(mode = nil) @pipeline_mode = mode unless mode.nil? @pipeline_mode end |
#process_model {|@process_model| ... } ⇒ Object
38 39 40 |
# File 'lib/iisconfig/app_pool.rb', line 38 def process_model yield @process_model end |
#required_paths ⇒ Object
68 69 70 71 72 73 74 |
# File 'lib/iisconfig/app_pool.rb', line 68 def required_paths paths = [] @sites.each do |s| paths += s.required_paths end paths end |
#runtime_version(version = nil) ⇒ Object
24 25 26 27 |
# File 'lib/iisconfig/app_pool.rb', line 24 def runtime_version(version = nil) @runtime_version = version unless version.nil? @runtime_version end |
#site(&block) ⇒ Object
42 43 44 |
# File 'lib/iisconfig/app_pool.rb', line 42 def site(&block) add_instance(@sites, IISConfig::Site, block) end |
#sites ⇒ Object
50 51 52 |
# File 'lib/iisconfig/app_pool.rb', line 50 def sites @sites end |