Class: Trinidad::Lifecycle::Default
- Inherits:
-
Base
- Object
- Base
- Trinidad::Lifecycle::Default
show all
- Defined in:
- lib/trinidad/lifecycle/lifecycle_listener_default.rb
Instance Attribute Summary
Attributes inherited from Base
#webapp
Instance Method Summary
collapse
Methods inherited from Base
#configure_logging, #initialize, #lifecycleEvent, #remove_defaults
Instance Method Details
#add_application_jars(class_loader) ⇒ Object
66
67
68
69
70
71
72
73
74
|
# File 'lib/trinidad/lifecycle/lifecycle_listener_default.rb', line 66
def add_application_jars(class_loader)
return unless @webapp.libs_dir
resources_dir = File.join(@webapp.web_app_dir, @webapp.libs_dir, '**', '*.jar')
Dir[resources_dir].each do |resource|
class_loader.addURL(java.io.File.new(resource).to_url)
end
end
|
#add_application_java_classes(class_loader) ⇒ Object
76
77
78
79
80
81
|
# File 'lib/trinidad/lifecycle/lifecycle_listener_default.rb', line 76
def add_application_java_classes(class_loader)
return unless @webapp.classes_dir
resources_dir = File.join(@webapp.web_app_dir, @webapp.classes_dir)
class_loader.addURL(java.io.File.new(resources_dir).to_url)
end
|
#configure_context_loader(context) ⇒ Object
55
56
57
58
59
60
61
62
63
64
|
# File 'lib/trinidad/lifecycle/lifecycle_listener_default.rb', line 55
def configure_context_loader(context)
class_loader = @webapp.class_loader
add_application_jars(class_loader)
add_application_java_classes(class_loader)
loader = Trinidad::Tomcat::WebappLoader.new(class_loader)
loader.container = context
context.loader = loader
end
|
4
5
6
7
8
9
10
11
12
13
|
# File 'lib/trinidad/lifecycle/lifecycle_listener_default.rb', line 4
def configure_defaults(context)
super
deployment_descriptor = configure_deployment_descriptor(context)
unless deployment_descriptor
configure_rack_servlet(context)
configure_rack_listener(context)
end
configure_init_params(context)
configure_context_loader(context)
end
|
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
# File 'lib/trinidad/lifecycle/lifecycle_listener_default.rb', line 15
def configure_deployment_descriptor(context)
if descriptor = @webapp.default_deployment_descriptor
listeners = context.findLifecycleListeners
context_config = listeners && listeners.find do |listener|
listener.is_a?(Trinidad::Tomcat::ContextConfig)
end
unless context_config
context_config = Trinidad::Tomcat::ContextConfig.new
context.addLifecycleListener(context_config)
end
context_config.setDefaultWebXml(descriptor)
end
descriptor
end
|
49
50
51
52
53
|
# File 'lib/trinidad/lifecycle/lifecycle_listener_default.rb', line 49
def configure_init_params(context)
@webapp.init_params.each do |name, value|
context.addParameter(name, value)
end
end
|
45
46
47
|
# File 'lib/trinidad/lifecycle/lifecycle_listener_default.rb', line 45
def configure_rack_listener(context)
context.addApplicationListener(@webapp.rack_listener) unless @webapp.servlet[:instance]
end
|
32
33
34
35
36
37
38
39
40
41
42
43
|
# File 'lib/trinidad/lifecycle/lifecycle_listener_default.rb', line 32
def configure_rack_servlet(context)
wrapper = context.create_wrapper
if @webapp.servlet[:instance]
wrapper.servlet = @webapp.servlet[:instance]
else
wrapper.servlet_class = @webapp.servlet[:class]
end
wrapper.name = @webapp.servlet[:name]
context.add_child(wrapper)
context.add_servlet_mapping('/*', wrapper.name)
end
|