In Files

Class/Module Index [+]

Quicksearch

PhusionPassenger

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.


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.


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.


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-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.

Public Class Methods

advertised_concurrency_level() click to toggle source
# File lib/phusion_passenger/public_api.rb, line 52
def advertised_concurrency_level
        @@advertised_concurrency_level
end
advertised_concurrency_level=(value) click to toggle source
# File lib/phusion_passenger/public_api.rb, line 56
def advertised_concurrency_level=(value)
        @@advertised_concurrency_level = value
end
apache2_doc_path() click to toggle source
# File lib/phusion_passenger.rb, line 156
def self.apache2_doc_path
        return "#{doc_dir}/#{APACHE2_DOC_NAME}"
end
benchmark(env = nil, title = "Benchmarking") click to toggle source
# File lib/phusion_passenger/public_api.rb, line 60
def benchmark(env = nil, title = "Benchmarking")
        log = lookup_analytics_log(env)
        if log
                log.measure("BENCHMARK: #{title}") do
                        yield
                end
        else
                yield
        end
end
binaries_ca_cert_path() click to toggle source
# File lib/phusion_passenger.rb, line 177
def self.binaries_ca_cert_path
        return "#{resources_dir}/oss-binaries.phusionpassenger.com.crt"
end
call_event(name, *args) click to toggle source
# File lib/phusion_passenger/public_api.rb, line 38
def call_event(name, *args)
        callback_list_for_event(name).each do |callback|
                callback.call(*args)
        end
end
index_doc_path() click to toggle source
# File lib/phusion_passenger.rb, line 152
def self.index_doc_path
        return "#{doc_dir}/#{INDEX_DOC_NAME}"
end
install_framework_extensions!(*args) click to toggle source
# File lib/phusion_passenger/public_api.rb, line 44
def install_framework_extensions!(*args)
        require 'active_support/version' if defined?(::ActiveSupport) && !defined?(::ActiveSupport::VERSION)
        if defined?(::ActiveSupport) && ::ActiveSupport::VERSION::MAJOR >= 3
                require 'phusion_passenger/active_support3_extensions/init'
                ActiveSupport3Extensions.init!(PhusionPassenger::App.options, *args)
        end
end
installed_from_release_package?() click to toggle source

Whether the current Phusion Passenger installation is installed from a release package, e.g. an official gem or official tarball. Retruns false if e.g. the gem was built by the user, or if this install is from a git repository.

# File lib/phusion_passenger.rb, line 130
def self.installed_from_release_package?
        File.exist?("#{resources_dir}/release.txt")
end
locate_directories(source_root_or_location_configuration_file = nil) click to toggle source

Follows the logic of ext/common/ResourceLocator.h, so don't forget to modify that too.

# File lib/phusion_passenger.rb, line 77
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  = parse_ini_file(filename)
                
                @natively_packaged     = get_bool_option(filename, options, 'natively_packaged')
                REQUIRED_LOCATIONS_INI_FIELDS.each do |field|
                        instance_variable_set("@#{field}", get_option(filename, options, field.to_s).freeze)
                end
                OPTIONAL_LOCATIONS_INI_FIELDS.each do |field|
                        instance_variable_set("@#{field}", get_option(filename, options, field.to_s, false).freeze)
                end
        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
                @ruby_libdir           = File.dirname(FILE_LOCATION)
                @node_libdir           = "#{@source_root}/node_lib".freeze
                @apache2_module_path   = "#{@source_root}/buildout/apache2/mod_passenger.so".freeze
                @ruby_extension_source_dir = "#{@source_root}/ext/ruby"
                @nginx_module_source_dir   = "#{@source_root}/ext/nginx"
                @download_cache_dir    = "#{@source_root}/download_cache"
                REQUIRED_LOCATIONS_INI_FIELDS.each do |field|
                        if instance_variable_get("@#{field}").nil?
                                raise "BUG: @#{field} not set"
                        end
                end
        end
end
log_cache_hit(env, name) click to toggle source
# File lib/phusion_passenger/public_api.rb, line 71
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
log_cache_miss(env, name, generation_time = nil) click to toggle source
# File lib/phusion_passenger/public_api.rb, line 81
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
natively_packaged?() click to toggle source
# File lib/phusion_passenger.rb, line 122
def self.natively_packaged?
        return @natively_packaged
end
nginx_doc_path() click to toggle source
# File lib/phusion_passenger.rb, line 160
def self.nginx_doc_path
        return "#{doc_dir}/#{NGINX_DOC_NAME}"
end
on_event(name, &block) click to toggle source
# File lib/phusion_passenger/public_api.rb, line 34
def on_event(name, &block)
        callback_list_for_event(name) << block
end
originally_packaged?() click to toggle source

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 118
def self.originally_packaged?
        return !@natively_packaged
end
source_root() click to toggle source

When originally packaged, returns the source root. When natively packaged, returns the location of the location configuration file.

# File lib/phusion_passenger.rb, line 136
def self.source_root
        return @source_root
end
standalone_doc_path() click to toggle source
# File lib/phusion_passenger.rb, line 164
def self.standalone_doc_path
        return "#{doc_dir}/#{STANDALONE_DOC_NAME}"
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.