관리-도구
편집 파일: AutoGeneratedManifestGeneration.cpp
/* * Phusion Passenger - https://www.phusionpassenger.com/ * Copyright (c) 2017-2018 Phusion Holding B.V. * * "Passenger", "Phusion Passenger" and "Union Station" are registered * trademarks of Phusion Holding B.V. * * 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. */ #ifdef INTELLISENSE // This include does nothing, but keeps IntelliSense happy. #include <ap_config.h> #endif /* * DirConfig/AutoGeneratedManifestGeneration.cpp is automatically generated from DirConfig/AutoGeneratedManifestGeneration.cpp.cxxcodebuilder, * using definitions from src/ruby_supportlib/phusion_passenger/apache2/config_options.rb. * Edits to DirConfig/AutoGeneratedManifestGeneration.cpp will be lost. * * To update DirConfig/AutoGeneratedManifestGeneration.cpp: * rake apache2 * * To force regeneration of DirConfig/AutoGeneratedManifestGeneration.cpp: * rm -f src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp * rake src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp */ #include "../ConfigGeneral/ManifestGeneration.h" namespace Passenger { namespace Apache2Module { inline void ConfigManifestGenerator::autoGenerated_generateConfigManifestForDirConfig(server_rec *serverRec, core_server_config *csconf,core_dir_config *cdconf, DirConfig *pdconf, DirConfigContext context) { Json::Value *appOptionsContainer = NULL; Json::Value *locOptionsContainer = NULL; if (pdconf->mAllowEncodedSlashesExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*locOptionsContainer, "PassengerAllowEncodedSlashes", sizeof("PassengerAllowEncodedSlashes") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mAllowEncodedSlashesSourceFile, pdconf->mAllowEncodedSlashesSourceLine); hierarchyMember["value"] = pdconf->mAllowEncodedSlashes == Apache2Module::ENABLED; } if (pdconf->mAppEnvExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerAppEnv", sizeof("PassengerAppEnv") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mAppEnvSourceFile, pdconf->mAppEnvSourceLine); hierarchyMember["value"] = Json::Value( pdconf->mAppEnv.data(), pdconf->mAppEnv.data() + pdconf->mAppEnv.size()); } if (pdconf->mAppGroupNameExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerAppGroupName", sizeof("PassengerAppGroupName") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mAppGroupNameSourceFile, pdconf->mAppGroupNameSourceLine); hierarchyMember["value"] = Json::Value( pdconf->mAppGroupName.data(), pdconf->mAppGroupName.data() + pdconf->mAppGroupName.size()); } if (pdconf->mAppLogFileExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerAppLogFile", sizeof("PassengerAppLogFile") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mAppLogFileSourceFile, pdconf->mAppLogFileSourceLine); hierarchyMember["value"] = Json::Value( pdconf->mAppLogFile.data(), pdconf->mAppLogFile.data() + pdconf->mAppLogFile.size()); } if (pdconf->mAppRootExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerAppRoot", sizeof("PassengerAppRoot") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mAppRootSourceFile, pdconf->mAppRootSourceLine); hierarchyMember["value"] = Json::Value( pdconf->mAppRoot.data(), pdconf->mAppRoot.data() + pdconf->mAppRoot.size()); } if (pdconf->mAppStartCommandExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerAppStartCommand", sizeof("PassengerAppStartCommand") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mAppStartCommandSourceFile, pdconf->mAppStartCommandSourceLine); hierarchyMember["value"] = Json::Value( pdconf->mAppStartCommand.data(), pdconf->mAppStartCommand.data() + pdconf->mAppStartCommand.size()); } if (pdconf->mAppTypeExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerAppType", sizeof("PassengerAppType") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mAppTypeSourceFile, pdconf->mAppTypeSourceLine); hierarchyMember["value"] = Json::Value( pdconf->mAppType.data(), pdconf->mAppType.data() + pdconf->mAppType.size()); } if (pdconf->mBaseURIsExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerBaseURI", sizeof("PassengerBaseURI") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mBaseURIsSourceFile, pdconf->mBaseURIsSourceLine); hierarchyMember["value"] = strCollectionToJson< std::set<std::string>, std::string >( pdconf->mBaseURIs); } if (pdconf->mBufferResponseExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*locOptionsContainer, "PassengerBufferResponse", sizeof("PassengerBufferResponse") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mBufferResponseSourceFile, pdconf->mBufferResponseSourceLine); hierarchyMember["value"] = pdconf->mBufferResponse == Apache2Module::ENABLED; } if (pdconf->mBufferUploadExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*locOptionsContainer, "PassengerBufferUpload", sizeof("PassengerBufferUpload") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mBufferUploadSourceFile, pdconf->mBufferUploadSourceLine); hierarchyMember["value"] = pdconf->mBufferUpload == Apache2Module::ENABLED; } if (pdconf->mCustomErrorPageExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerCustomErrorPage", sizeof("PassengerCustomErrorPage") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mCustomErrorPageSourceFile, pdconf->mCustomErrorPageSourceLine); hierarchyMember["value"] = Json::Value( pdconf->mCustomErrorPage.data(), pdconf->mCustomErrorPage.data() + pdconf->mCustomErrorPage.size()); } if (pdconf->mDirectInstanceRequestAddressExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerDirectInstanceRequestAddress", sizeof("PassengerDirectInstanceRequestAddress") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mDirectInstanceRequestAddressSourceFile, pdconf->mDirectInstanceRequestAddressSourceLine); hierarchyMember["value"] = Json::Value( pdconf->mDirectInstanceRequestAddress.data(), pdconf->mDirectInstanceRequestAddress.data() + pdconf->mDirectInstanceRequestAddress.size()); } if (pdconf->mEnabledExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*locOptionsContainer, "PassengerEnabled", sizeof("PassengerEnabled") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mEnabledSourceFile, pdconf->mEnabledSourceLine); hierarchyMember["value"] = pdconf->mEnabled == Apache2Module::ENABLED; } if (pdconf->mErrorOverrideExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*locOptionsContainer, "PassengerErrorOverride", sizeof("PassengerErrorOverride") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mErrorOverrideSourceFile, pdconf->mErrorOverrideSourceLine); hierarchyMember["value"] = pdconf->mErrorOverride == Apache2Module::ENABLED; } if (pdconf->mForceMaxConcurrentRequestsPerProcessExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerForceMaxConcurrentRequestsPerProcess", sizeof("PassengerForceMaxConcurrentRequestsPerProcess") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mForceMaxConcurrentRequestsPerProcessSourceFile, pdconf->mForceMaxConcurrentRequestsPerProcessSourceLine); hierarchyMember["value"] = pdconf->mForceMaxConcurrentRequestsPerProcess; } if (pdconf->mFriendlyErrorPagesExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerFriendlyErrorPages", sizeof("PassengerFriendlyErrorPages") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mFriendlyErrorPagesSourceFile, pdconf->mFriendlyErrorPagesSourceLine); hierarchyMember["value"] = pdconf->mFriendlyErrorPages == Apache2Module::ENABLED; } if (pdconf->mGroupExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerGroup", sizeof("PassengerGroup") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mGroupSourceFile, pdconf->mGroupSourceLine); hierarchyMember["value"] = Json::Value( pdconf->mGroup.data(), pdconf->mGroup.data() + pdconf->mGroup.size()); } if (pdconf->mHighPerformanceExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*locOptionsContainer, "PassengerHighPerformance", sizeof("PassengerHighPerformance") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mHighPerformanceSourceFile, pdconf->mHighPerformanceSourceLine); hierarchyMember["value"] = pdconf->mHighPerformance == Apache2Module::ENABLED; } if (pdconf->mLoadShellEnvvarsExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerLoadShellEnvvars", sizeof("PassengerLoadShellEnvvars") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mLoadShellEnvvarsSourceFile, pdconf->mLoadShellEnvvarsSourceLine); hierarchyMember["value"] = pdconf->mLoadShellEnvvars == Apache2Module::ENABLED; } if (pdconf->mLveMinUidExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerLveMinUid", sizeof("PassengerLveMinUid") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mLveMinUidSourceFile, pdconf->mLveMinUidSourceLine); hierarchyMember["value"] = pdconf->mLveMinUid; } if (pdconf->mMaxPreloaderIdleTimeExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerMaxPreloaderIdleTime", sizeof("PassengerMaxPreloaderIdleTime") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mMaxPreloaderIdleTimeSourceFile, pdconf->mMaxPreloaderIdleTimeSourceLine); hierarchyMember["value"] = pdconf->mMaxPreloaderIdleTime; } if (pdconf->mMaxRequestQueueSizeExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerMaxRequestQueueSize", sizeof("PassengerMaxRequestQueueSize") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mMaxRequestQueueSizeSourceFile, pdconf->mMaxRequestQueueSizeSourceLine); hierarchyMember["value"] = pdconf->mMaxRequestQueueSize; } if (pdconf->mMaxRequestsExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerMaxRequests", sizeof("PassengerMaxRequests") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mMaxRequestsSourceFile, pdconf->mMaxRequestsSourceLine); hierarchyMember["value"] = pdconf->mMaxRequests; } if (pdconf->mMeteorAppSettingsExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerMeteorAppSettings", sizeof("PassengerMeteorAppSettings") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mMeteorAppSettingsSourceFile, pdconf->mMeteorAppSettingsSourceLine); hierarchyMember["value"] = Json::Value( pdconf->mMeteorAppSettings.data(), pdconf->mMeteorAppSettings.data() + pdconf->mMeteorAppSettings.size()); } if (pdconf->mMinInstancesExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerMinInstances", sizeof("PassengerMinInstances") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mMinInstancesSourceFile, pdconf->mMinInstancesSourceLine); hierarchyMember["value"] = pdconf->mMinInstances; } if (pdconf->mMonitorLogFileExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerMonitorLogFile", sizeof("PassengerMonitorLogFile") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mMonitorLogFileSourceFile, pdconf->mMonitorLogFileSourceLine); hierarchyMember["value"] = strCollectionToJson< std::set<std::string>, std::string >( pdconf->mMonitorLogFile); } if (pdconf->mNodejsExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerNodejs", sizeof("PassengerNodejs") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mNodejsSourceFile, pdconf->mNodejsSourceLine); hierarchyMember["value"] = Json::Value( pdconf->mNodejs.data(), pdconf->mNodejs.data() + pdconf->mNodejs.size()); } if (pdconf->mPreloadBundlerExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerPreloadBundler", sizeof("PassengerPreloadBundler") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mPreloadBundlerSourceFile, pdconf->mPreloadBundlerSourceLine); hierarchyMember["value"] = pdconf->mPreloadBundler == Apache2Module::ENABLED; } if (pdconf->mPythonExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerPython", sizeof("PassengerPython") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mPythonSourceFile, pdconf->mPythonSourceLine); hierarchyMember["value"] = Json::Value( pdconf->mPython.data(), pdconf->mPython.data() + pdconf->mPython.size()); } if (pdconf->mRestartDirExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerRestartDir", sizeof("PassengerRestartDir") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mRestartDirSourceFile, pdconf->mRestartDirSourceLine); hierarchyMember["value"] = Json::Value( pdconf->mRestartDir.data(), pdconf->mRestartDir.data() + pdconf->mRestartDir.size()); } if (pdconf->mRubyExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerRuby", sizeof("PassengerRuby") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mRubySourceFile, pdconf->mRubySourceLine); hierarchyMember["value"] = Json::Value( pdconf->mRuby.data(), pdconf->mRuby.data() + pdconf->mRuby.size()); } if (pdconf->mSpawnMethodExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerSpawnMethod", sizeof("PassengerSpawnMethod") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mSpawnMethodSourceFile, pdconf->mSpawnMethodSourceLine); hierarchyMember["value"] = Json::Value( pdconf->mSpawnMethod.data(), pdconf->mSpawnMethod.data() + pdconf->mSpawnMethod.size()); } if (pdconf->mStartTimeoutExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerStartTimeout", sizeof("PassengerStartTimeout") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mStartTimeoutSourceFile, pdconf->mStartTimeoutSourceLine); hierarchyMember["value"] = pdconf->mStartTimeout; } if (pdconf->mStartupFileExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerStartupFile", sizeof("PassengerStartupFile") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mStartupFileSourceFile, pdconf->mStartupFileSourceLine); hierarchyMember["value"] = Json::Value( pdconf->mStartupFile.data(), pdconf->mStartupFile.data() + pdconf->mStartupFile.size()); } if (pdconf->mStickySessionsExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*locOptionsContainer, "PassengerStickySessions", sizeof("PassengerStickySessions") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mStickySessionsSourceFile, pdconf->mStickySessionsSourceLine); hierarchyMember["value"] = pdconf->mStickySessions == Apache2Module::ENABLED; } if (pdconf->mStickySessionsCookieAttributesExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*locOptionsContainer, "PassengerStickySessionsCookieAttributes", sizeof("PassengerStickySessionsCookieAttributes") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mStickySessionsCookieAttributesSourceFile, pdconf->mStickySessionsCookieAttributesSourceLine); hierarchyMember["value"] = Json::Value( pdconf->mStickySessionsCookieAttributes.data(), pdconf->mStickySessionsCookieAttributes.data() + pdconf->mStickySessionsCookieAttributes.size()); } if (pdconf->mStickySessionsCookieNameExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*locOptionsContainer, "PassengerStickySessionsCookieName", sizeof("PassengerStickySessionsCookieName") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mStickySessionsCookieNameSourceFile, pdconf->mStickySessionsCookieNameSourceLine); hierarchyMember["value"] = Json::Value( pdconf->mStickySessionsCookieName.data(), pdconf->mStickySessionsCookieName.data() + pdconf->mStickySessionsCookieName.size()); } if (pdconf->mUserExplicitlySet) { findOrCreateAppAndLocOptionsContainers(serverRec, csconf, cdconf, pdconf, context, &appOptionsContainer, &locOptionsContainer); Json::Value &optionContainer = findOrCreateOptionContainer(*appOptionsContainer, "PassengerUser", sizeof("PassengerUser") - 1); Json::Value &hierarchyMember = addOptionContainerHierarchyMember(optionContainer, pdconf->mUserSourceFile, pdconf->mUserSourceLine); hierarchyMember["value"] = Json::Value( pdconf->mUser.data(), pdconf->mUser.data() + pdconf->mUser.size()); } } } // namespace Apache2Module } // namespace Passenger