### Home Classes Methods

### In Files

- lib/phusion_passenger/public_api.rb
- lib/phusion_passenger/rack/out_of_band_gc.rb
- lib/phusion_passenger/rack/thread_handler_extension.rb
- lib/phusion_passenger/admin_tools/memory_stats.rb
- lib/phusion_passenger/admin_tools/server_instance.rb
- lib/phusion_passenger/platform_info/ruby.rb
- lib/phusion_passenger/platform_info/linux.rb
- lib/phusion_passenger/platform_info/compiler.rb
- lib/phusion_passenger/platform_info/depcheck.rb
- lib/phusion_passenger/platform_info/curl.rb
- lib/phusion_passenger/platform_info/operating_system.rb
- lib/phusion_passenger/platform_info/cxx_portability.rb
- lib/phusion_passenger/platform_info/binary_compatibility.rb
- lib/phusion_passenger/platform_info/zlib.rb
- lib/phusion_passenger/platform_info/apache.rb
- lib/phusion_passenger/plugin.rb
- lib/phusion_passenger/abstract_installer.rb
- lib/phusion_passenger/request_handler/thread_handler.rb
- lib/phusion_passenger/console_text_template.rb
- lib/phusion_passenger/utils/tmpio.rb
- lib/phusion_passenger/utils/unseekable_socket.rb
- lib/phusion_passenger/utils/ansi_colors.rb
- lib/phusion_passenger/utils/file_system_watcher.rb
- lib/phusion_passenger/utils/hosts_file_parser.rb
- lib/phusion_passenger/utils/tee_input.rb
- lib/phusion_passenger/utils/tmpdir.rb
- lib/phusion_passenger/constants.rb
- lib/phusion_passenger/request_handler.rb
- lib/phusion_passenger/message_channel.rb
- lib/phusion_passenger/admin_tools.rb
- lib/phusion_passenger/classic_rails/thread_handler_extension.rb
- lib/phusion_passenger/classic_rails/cgi_fixed.rb
- lib/phusion_passenger/preloader_shared_helpers.rb
- lib/phusion_passenger/loader_shared_helpers.rb
- lib/phusion_passenger/native_support.rb
- lib/phusion_passenger/platform_info.rb
- lib/phusion_passenger/standalone/package_runtime_command.rb
- lib/phusion_passenger/standalone/help_command.rb
- lib/phusion_passenger/standalone/command.rb
- lib/phusion_passenger/standalone/utils.rb
- lib/phusion_passenger/standalone/stop_command.rb
- lib/phusion_passenger/standalone/main.rb
- lib/phusion_passenger/standalone/app_finder.rb
- lib/phusion_passenger/standalone/runtime_installer.rb
- lib/phusion_passenger/standalone/config_file.rb
- lib/phusion_passenger/standalone/start_command.rb
- lib/phusion_passenger/standalone/version_command.rb
- lib/phusion_passenger/standalone/status_command.rb
- lib/phusion_passenger/utils.rb
- lib/phusion_passenger/message_client.rb
- lib/phusion_passenger/packaging.rb
- lib/phusion_passenger/rails3_extensions/init.rb
- lib/phusion_passenger/debug_logging.rb
- lib/phusion_passenger/analytics_logger.rb
- lib/phusion_passenger.rb

### Namespace

- MODULE PhusionPassenger::AdminTools
- MODULE PhusionPassenger::ClassicRails
- MODULE PhusionPassenger::DebugLogging
- MODULE PhusionPassenger::LoaderSharedHelpers
- MODULE PhusionPassenger::Packaging
- MODULE PhusionPassenger::PlatformInfo
- MODULE PhusionPassenger::PreloaderSharedHelpers
- MODULE PhusionPassenger::Rack
- MODULE PhusionPassenger::Rails3Extensions
- MODULE PhusionPassenger::SharedConstants
- MODULE PhusionPassenger::Standalone
- MODULE PhusionPassenger::Utils
- CLASS PhusionPassenger::AbstractInstaller
- CLASS PhusionPassenger::AnalyticsLogger
- CLASS PhusionPassenger::ConsoleTextTemplate
- CLASS PhusionPassenger::MessageChannel
- CLASS PhusionPassenger::MessageClient
- CLASS PhusionPassenger::NativeSupportLoader
- CLASS PhusionPassenger::Plugin
- CLASS PhusionPassenger::RequestHandler

### Methods

- ::agents_dir
- ::apache2_module_path
- ::benchmark
- ::bin_dir
- ::call_event
- ::doc_dir
- ::helper_scripts_dir
- ::include_dir
- ::install_framework_extensions!
- ::lib_dir
- ::locate_directories
- ::log_cache_hit
- ::log_cache_miss
- ::natively_packaged?
- ::nginx_addon_dir
- ::on_event
- ::originally_packaged?
- ::resources_dir
- ::ruby_extension_source_dir
- ::ruby_libdir
- ::source_root

### Class/Module Index

Quicksearch

- PhusionPassenger
- PhusionPassenger::AbstractInstaller
- PhusionPassenger::AbstractInstaller::Abort
- PhusionPassenger::AbstractInstaller::CommandError
- PhusionPassenger::AdminTools
- PhusionPassenger::AdminTools::MemoryStats
- PhusionPassenger::AdminTools::MemoryStats::Process
- PhusionPassenger::AdminTools::ServerInstance
- PhusionPassenger::AdminTools::ServerInstance::CorruptedDirectoryError
- PhusionPassenger::AdminTools::ServerInstance::GenerationsAbsentError
- PhusionPassenger::AdminTools::ServerInstance::Group
- PhusionPassenger::AdminTools::ServerInstance::Process
- PhusionPassenger::AdminTools::ServerInstance::RoleDeniedError
- PhusionPassenger::AdminTools::ServerInstance::StaleDirectoryError
- PhusionPassenger::AdminTools::ServerInstance::Stats
- PhusionPassenger::AdminTools::ServerInstance::UnsupportedGenerationStructureVersionError
- PhusionPassenger::AnalyticsLogger
- PhusionPassenger::AnalyticsLogger::Connection
- PhusionPassenger::AnalyticsLogger::Lock
- PhusionPassenger::AnalyticsLogger::Log
- PhusionPassenger::ClassicRails
- PhusionPassenger::ClassicRails::CGIFixed
- PhusionPassenger::ClassicRails::ThreadHandlerExtension
- PhusionPassenger::ConsoleTextTemplate
- PhusionPassenger::DebugLogging
- PhusionPassenger::LoaderSharedHelpers
- PhusionPassenger::MessageChannel
- PhusionPassenger::MessageChannel::InvalidHashError
- PhusionPassenger::MessageClient
- PhusionPassenger::NativeSupportLoader
- PhusionPassenger::Packaging
- PhusionPassenger::PlatformInfo
- PhusionPassenger::PlatformInfo::Depcheck
- PhusionPassenger::PlatformInfo::Depcheck::ConsoleRunner
- PhusionPassenger::PlatformInfo::Depcheck::Dependency
- PhusionPassenger::PlatformInfo::RuntimeError
- PhusionPassenger::Plugin
- PhusionPassenger::PreloaderSharedHelpers
- PhusionPassenger::Rack
- PhusionPassenger::Rack::OutOfBandGc
- PhusionPassenger::Rack::ThreadHandlerExtension
- PhusionPassenger::Rails3Extensions
- PhusionPassenger::Rails3Extensions::AnalyticsLogging
- PhusionPassenger::Rails3Extensions::AnalyticsLogging::ACExtension
- PhusionPassenger::Rails3Extensions::AnalyticsLogging::ASBenchmarkableExtension
- PhusionPassenger::Rails3Extensions::AnalyticsLogging::ExceptionLogger
- PhusionPassenger::RequestHandler
- PhusionPassenger::RequestHandler::ThreadHandler
- PhusionPassenger::RequestHandler::ThreadHandler::Interrupted
- PhusionPassenger::SharedConstants
- PhusionPassenger::Standalone
- PhusionPassenger::Standalone::AppFinder
- PhusionPassenger::Standalone::Command
- PhusionPassenger::Standalone::ConfigFile
- PhusionPassenger::Standalone::ConfigFile::DisallowedContextError
- PhusionPassenger::Standalone::HelpCommand
- PhusionPassenger::Standalone::Main
- PhusionPassenger::Standalone::PackageRuntimeCommand
- PhusionPassenger::Standalone::RuntimeInstaller
- PhusionPassenger::Standalone::StartCommand
- PhusionPassenger::Standalone::StatusCommand
- PhusionPassenger::Standalone::StopCommand
- PhusionPassenger::Standalone::Utils
- PhusionPassenger::Standalone::VersionCommand
- PhusionPassenger::Utils
- PhusionPassenger::Utils::AnsiColors
- PhusionPassenger::Utils::FileSystemWatcher
- PhusionPassenger::Utils::FileSystemWatcher::DirInfo
- PhusionPassenger::Utils::FileSystemWatcher::FileInfo
- PhusionPassenger::Utils::HostsFileParser
- PhusionPassenger::Utils::TeeInput
- PhusionPassenger::Utils::TmpIO
- PhusionPassenger::Utils::UnseekableSocket
- CommonLibraryBuilder
- Exception
- GC
- IO
- Object
- Signal

No matching classes.

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

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.

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.

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.

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

### Constants

FILE_LOCATION
GLOBAL_NAMESPACE_DIRNAME

  Directories ######

GLOBAL_STANDALONE_NAMESPACE_DIRNAME
GLOBAL_STANDALONE_RESOURCE_DIR

  System-wide directory for storing Phusion Passenger Standalone runtime files.

LOCAL_STANDALONE_RESOURCE_DIR

  Directory under $HOME for storing Phusion Passenger Standalone runtime files.

NGINX_SHA256_CHECKSUM
PACKAGE_NAME

  Version numbers ######

PASSENGER_ANALYTICS_WEB_LOG
PASSENGER_TXN_ID
PASSENGER_UNION_STATION_KEY
PCRE_SHA256_CHECKSUM
PLUGIN_DIRS

  Directories in which to look for plugins.

PREFERRED_NGINX_VERSION
PREFERRED_PCRE_VERSION
RACK_HIJACK_IO
STANDALONE_BINARIES_URL_ROOT

  Other resource locations ######

STANDALONE_INTERFACE_VERSION
USER_NAMESPACE_DIRNAME

  Subdirectory under $HOME to use for storing stuff.

VERSION_STRING

  Run 'rake ext/common/Constants.h' after changing this number.

### Public Class Methods

agents_dir() click to toggle source

    # File lib/phusion_passenger.rb, line 131
    def self.agents_dir
            return @agents_dir
    end

apache2_module_path() click to toggle source

    # File lib/phusion_passenger.rb, line 159
    def self.apache2_module_path
            return @apache2_module_path
    end

benchmark(env = nil, title = "Benchmarking") click to toggle source

    # 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

bin_dir() click to toggle source

    # File lib/phusion_passenger.rb, line 127
    def self.bin_dir
            return @bin_dir
    end

call_event(name, *args) click to toggle source

    # 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

doc_dir() click to toggle source

    # File lib/phusion_passenger.rb, line 151
    def self.doc_dir
            return @doc_dir
    end

helper_scripts_dir() click to toggle source

    # File lib/phusion_passenger.rb, line 139
    def self.helper_scripts_dir
            return @helper_scripts_dir
    end

include_dir() click to toggle source

    # File lib/phusion_passenger.rb, line 147
    def self.include_dir
            return @include_dir
    end

install_framework_extensions!(*args) click to toggle source

    # 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

lib_dir() click to toggle source

    # File lib/phusion_passenger.rb, line 135
    def self.lib_dir
            return @lib_dir
    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 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

log_cache_hit(env, name) click to toggle source

    # 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

log_cache_miss(env, name, generation_time = nil) click to toggle source

    # 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

natively_packaged?() click to toggle source

    # File lib/phusion_passenger.rb, line 117
    def self.natively_packaged?
            return @natively_packaged
    end

nginx_addon_dir() click to toggle source

    # 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

on_event(name, &block) click to toggle source

    # File lib/phusion_passenger/public_api.rb, line 33
    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 113
    def self.originally_packaged?
            return !@natively_packaged
    end

resources_dir() click to toggle source

    # File lib/phusion_passenger.rb, line 143
    def self.resources_dir
            return @resources_dir
    end

ruby_extension_source_dir() click to toggle source

    # File lib/phusion_passenger.rb, line 163
    def self.ruby_extension_source_dir
            return @ruby_extension_source_dir
    end

ruby_libdir() click to toggle source

    # File lib/phusion_passenger.rb, line 155
    def self.ruby_libdir
            @libdir ||= File.dirname(FILE_LOCATION)
    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 123
    def self.source_root
            return @source_root
    end

[Validate]

Generated with the Darkfish Rdoc Generator 2.