Class: IISConfig::Site
Instance Method Summary
collapse
Methods inherited from IISObject
#exist?, #start_provider_exist?
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
|