Phusion Passenger - www.phusionpassenger.com/ Copyright (c) 2010-2013 Phusion
"Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
IMPORTANT: do not directly or indirectly require native_support; we can't compile it yet until we have a compiler, and installers usually check whether a compiler is installed.
Phusion Passenger - www.phusionpassenger.com/ Copyright (c) 2010 Phusion
"Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
We lazy load as many libraries as possible not only to improve startup performance, but also to ensure that we don't require libraries before we've passed the dependency checking stage of the runtime installer.
IMPORTANT: do not directly or indirectly require native_support; we can't compile it yet until we have a compiler, and the runtime installer is supposed to check whether a compiler is installed.
Phusion Passenger - www.phusionpassenger.com/ Copyright (c) 2010 Phusion
"Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Phusion Passenger - www.phusionpassenger.com/ Copyright (c) 2010-2013 Phusion
"Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Phusion Passenger - www.phusionpassenger.com/ Copyright (c) 2010 Phusion
"Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Phusion Passenger - www.phusionpassenger.com/ Copyright (c) 2010-2013 Phusion
"Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Phusion Passenger - www.phusionpassenger.com/ Copyright (c) 2010-2013 Phusion
"Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Phusion Passenger - www.phusionpassenger.com/ Copyright (c) 2010 Phusion
"Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Phusion Passenger - www.phusionpassenger.com/ Copyright (c) 2010 Phusion
"Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Phusion Passenger - www.phusionpassenger.com/ Copyright (c) 2010 Phusion
"Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Phusion Passenger - www.phusionpassenger.com/ Copyright (c) 2010 Phusion
"Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Phusion Passenger - www.phusionpassenger.com/ Copyright (c) 2010-2013 Phusion
"Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Directories ######
System-wide directory for storing Phusion Passenger Standalone runtime files.
Directory under $HOME for storing Phusion Passenger Standalone runtime files.
Version numbers ######
Directories in which to look for plugins.
Other resource locations ######
Subdirectory under $HOME to use for storing stuff.
Run 'rake ext/common/Constants.h' after changing this number.
# File lib/phusion_passenger.rb, line 131 def self.agents_dir return @agents_dir end
# File lib/phusion_passenger.rb, line 159 def self.apache2_module_path return @apache2_module_path end
# File lib/phusion_passenger/public_api.rb, line 51 def benchmark(env = nil, title = "Benchmarking") log = lookup_analytics_log(env) if log log.measure("BENCHMARK: #{title}") do yield end else yield end end
# File lib/phusion_passenger.rb, line 127 def self.bin_dir return @bin_dir end
# File lib/phusion_passenger/public_api.rb, line 37 def call_event(name, *args) callback_list_for_event(name).each do |callback| callback.call(*args) end end
# File lib/phusion_passenger.rb, line 151 def self.doc_dir return @doc_dir end
# File lib/phusion_passenger.rb, line 139 def self.helper_scripts_dir return @helper_scripts_dir end
# File lib/phusion_passenger.rb, line 147 def self.include_dir return @include_dir end
# File lib/phusion_passenger/public_api.rb, line 43 def install_framework_extensions!(*args) require 'rails/version' if defined?(::Rails) && !defined?(::Rails::VERSION) if defined?(::Rails) && ::Rails::VERSION::MAJOR == 3 require 'phusion_passenger/rails3_extensions/init' Rails3Extensions.init!(PhusionPassenger::App.options, *args) end end
# File lib/phusion_passenger.rb, line 135 def self.lib_dir return @lib_dir end
Follows the logic of ext/common/ResourceLocator.h, so don't forget to modify that too.
# File lib/phusion_passenger.rb, line 64 def self.locate_directories(source_root_or_location_configuration_file = nil) source_root_or_location_configuration_file ||= find_location_configuration_file root_or_file = @source_root = source_root_or_location_configuration_file if root_or_file && File.file?(root_or_file) filename = root_or_file options = {} in_locations_section = false File.open(filename, 'r') do |f| while !f.eof? line = f.readline line.strip! next if line.empty? if line =~ /\A\[(.+)\]\Z/ in_locations_section = $1 == 'locations' elsif in_locations_section && line =~ /=/ key, value = line.split(/ *= */, 2) options[key.freeze] = value.freeze end end end @natively_packaged = get_bool_option(filename, options, 'natively_packaged') @bin_dir = get_option(filename, options, 'bin').freeze @agents_dir = get_option(filename, options, 'agents').freeze @lib_dir = get_option(filename, options, 'libdir').freeze @helper_scripts_dir = get_option(filename, options, 'helper_scripts').freeze @resources_dir = get_option(filename, options, 'resources').freeze @include_dir = get_option(filename, options, 'includedir').freeze @doc_dir = get_option(filename, options, 'doc').freeze @apache2_module_path = get_option(filename, options, 'apache2_module').freeze @ruby_extension_source_dir = get_option(filename, options, 'ruby_extension_source').freeze else @source_root = File.dirname(File.dirname(FILE_LOCATION)) @natively_packaged = false @bin_dir = "#{@source_root}/bin".freeze @agents_dir = "#{@source_root}/buildout/agents".freeze @lib_dir = "#{@source_root}/buildout".freeze @helper_scripts_dir = "#{@source_root}/helper-scripts".freeze @resources_dir = "#{@source_root}/resources".freeze @include_dir = "#{@source_root}/ext".freeze @doc_dir = "#{@source_root}/doc".freeze @apache2_module_path = "#{@source_root}/buildout/apache2/mod_passenger.so".freeze @ruby_extension_source_dir = "#{@source_root}/ext/ruby" end end
# File lib/phusion_passenger/public_api.rb, line 62 def log_cache_hit(env, name) log = lookup_analytics_log(env) if log log.message("Cache hit: #{name}") return true else return false end end
# File lib/phusion_passenger/public_api.rb, line 72 def log_cache_miss(env, name, generation_time = nil) log = lookup_analytics_log(env) if log if generation_time log.message("Cache miss (#{generation_time.to_i}): #{name}") else log.message("Cache miss: #{name}") end return true else return false end end
# File lib/phusion_passenger.rb, line 117 def self.natively_packaged? return @natively_packaged end
# File lib/phusion_passenger.rb, line 167 def self.nginx_addon_dir if PhusionPassenger.natively_packaged? return "#{resources_dir}/ngx_http_passenger_module" else return "#{source_root}/ext/nginx" end end
# File lib/phusion_passenger/public_api.rb, line 33 def on_event(name, &block) callback_list_for_event(name) << block end
Returns whether this Phusion Passenger installation is in the 'originally packaged' configuration (as opposed to the 'natively packaged' configuration.
# File lib/phusion_passenger.rb, line 113 def self.originally_packaged? return !@natively_packaged end
# File lib/phusion_passenger.rb, line 143 def self.resources_dir return @resources_dir end
# File lib/phusion_passenger.rb, line 163 def self.ruby_extension_source_dir return @ruby_extension_source_dir end
Generated with the Darkfish Rdoc Generator 2.