Class: IISConfig::Site
Instance Method Summary collapse
- #add ⇒ Object
- #app_pool(pool) ⇒ Object
- #application(&block) ⇒ Object
- #binding(binding) ⇒ Object
- #build_commands ⇒ Object
- #delete ⇒ Object
-
#initialize ⇒ Site
constructor
A new instance of Site.
- #name(name = nil) ⇒ Object
- #path(path) ⇒ Object
- #physical_path(path) ⇒ Object
- #required_paths ⇒ Object
- #virtual_directory(&block) ⇒ Object
Methods inherited from IISObject
Constructor Details
#initialize ⇒ Site
Returns a new instance of Site.
8 9 10 11 12 13 |
# File 'lib/iisconfig/site.rb', line 8 def initialize @bindings = [] @applications = [] @virtual_directories = [] @path = '/' end |
Instance Method Details
#add ⇒ Object
48 49 50 51 52 53 54 55 56 57 |
# File 'lib/iisconfig/site.rb', line 48 def add args = [] args << 'ADD' args << 'SITE' args << "/name:#{@name}" args << "/bindings:\"#{@bindings.join('","')}\"" args << "/physicalPath:#{@physical_path.gsub(/\//, '\\')}" args end |
#app_pool(pool) ⇒ Object
28 29 30 |
# File 'lib/iisconfig/site.rb', line 28 def app_pool(pool) @app_pool = pool end |
#application(&block) ⇒ Object
36 37 38 |
# File 'lib/iisconfig/site.rb', line 36 def application(&block) add_instance(@applications, IISConfig::Application, block) end |
#binding(binding) ⇒ Object
20 21 22 |
# File 'lib/iisconfig/site.rb', line 20 def binding(binding) @bindings << binding end |
#build_commands ⇒ Object
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/iisconfig/site.rb', line 65 def build_commands() commands = [] commands << delete if exist? :site, @name commands << add commands << %W{SET SITE /site.name:#{@name} /[path='#{@path}'].applicationPool:#{@app_pool}} unless @app_pool.nil? commands << %W{SET SITE /site.name:#{@name} /[path='#{@path}']} if @app_pool.nil? @applications.each do |s| commands += s.build_commands @name, @app_pool end @virtual_directories.each do |s| commands += s.build_commands "#{name}/" end commands end |
#delete ⇒ Object
44 45 46 |
# File 'lib/iisconfig/site.rb', line 44 def delete %W{DELETE SITE #{@name}} end |
#name(name = nil) ⇒ Object
15 16 17 18 |
# File 'lib/iisconfig/site.rb', line 15 def name(name = nil) @name = name unless name.nil? @name end |
#path(path) ⇒ Object
24 25 26 |
# File 'lib/iisconfig/site.rb', line 24 def path(path) @path = path end |
#physical_path(path) ⇒ Object
32 33 34 |
# File 'lib/iisconfig/site.rb', line 32 def physical_path(path) @physical_path = path end |
#required_paths ⇒ Object
59 60 61 62 63 |
# File 'lib/iisconfig/site.rb', line 59 def required_paths paths = [] paths << @physical_path paths end |
#virtual_directory(&block) ⇒ Object
40 41 42 |
# File 'lib/iisconfig/site.rb', line 40 def virtual_directory(&block) add_instance(@virtual_directories, IISConfig::VirtualDirectory, block) end |