public class NginxControllerImpl extends AbstractControllerImpl implements NginxController, NginxController.NginxControllerInternal
NginxController entity.| Modifier and Type | Class and Description |
|---|---|
static class |
NginxControllerImpl.UrlMappingsMemberTrackerPolicy |
AbstractControllerImpl.ServerPoolMemberTrackerPolicyAbstractEntity.BasicConfigurationSupport, AbstractEntity.BasicSensorSupportNginxController.NginxControllerInternalSoftwareProcess.ChildStartableMode, SoftwareProcess.RestartSoftwareParameters, SoftwareProcess.StopSoftwareParametersEntity.SensorSupportBrooklynObject.TagSupportConfigurable.ConfigurationSupportStartable.RestartEffectorBody, Startable.StartEffectorBody, Startable.StopEffectorBodyEntityInternal.FeedSupport, EntityInternal.SensorSupportInternalBrooklynObjectInternal.ConfigurationSupportInternalCHILD_ADDED, CHILD_REMOVED, EFFECTOR_ADDED, EFFECTOR_CHANGED, EFFECTOR_REMOVED, GROUP_ADDED, GROUP_REMOVED, LOCATION_ADDED, LOCATION_REMOVED, POLICY_ADDED, POLICY_REMOVED, SENSOR_ADDED, SENSOR_REMOVEDACCESS_LOG_LOCATION, DEPLOY, DOWNLOAD_ADDON_URLS, DOWNLOAD_URL, ERROR_LOG_LOCATION, GET_CURRENT_CONFIGURATION, HTTP_POLL_PERIOD, NGINX_URL_ANSWERS_NICELY, PCRE_VERSION, PID_FILE, SERVER_CONF_GENERATOR, SERVER_CONF_TEMPLATE_URL, STATIC_CONTENT_ARCHIVE_URL, STICKY, STICKY_VERSION, SUGGESTED_VERSION, WITH_CC_OPT, WITH_LD_OPTDOMAIN_NAME, SERVICE_UP_URL_PATH, SSL_CONFIGADDRESS, CHILDREN_STARTABLE_MODE, CUSTOMIZE_LATCH, DONT_REQUIRE_TTY_FOR_SUDO, ENTITY_STARTED, EXPANDED_INSTALL_DIR, HOSTNAME, INSTALL_DIR, INSTALL_FILES, INSTALL_LATCH, INSTALL_RESOURCES_LATCH, INSTALL_TEMPLATES, INSTALL_UNIQUE_LABEL, LAUNCH_LATCH, LIFECYCLE_EFFECTOR_TASKS, MAXIMUM_REBIND_SENSOR_CONNECT_DELAY, OPEN_IPTABLES, POST_INSTALL_COMMAND, POST_LAUNCH_COMMAND, PRE_INSTALL_COMMAND, PRE_INSTALL_FILES, PRE_INSTALL_TEMPLATES, PRE_LAUNCH_COMMAND, PROVISIONING_LOCATION, PROVISIONING_PROPERTIES, REQUIRED_OPEN_LOGIN_PORTS, RETRIEVE_USAGE_METRICS, RUN_DIR, RUNTIME_FILES, RUNTIME_RESOURCES_LATCH, RUNTIME_TEMPLATES, SERVICE_PROCESS_IS_RUNNING, SERVICE_STATE_ACTUAL, SERVICE_STATE_EXPECTED, SETUP_LATCH, SHELL_ENVIRONMENT, SKIP_ENTITY_START_IF_RUNNING, SKIP_INSTALLATION, START_LATCH, START_TIMEOUT, STOP_IPTABLES, SUBNET_ADDRESS, SUBNET_HOSTNAME, SUGGESTED_INSTALL_DIR, SUGGESTED_RUN_DIRHOST_AND_PORT_SENSOR, HOSTNAME, HOSTNAME_SENSOR, MAIN_URI, PORT_NUMBER_SENSOR, PROTOCOL, PROXY_HTTP_PORT, PROXY_HTTPS_PORT, RELOAD, ROOT_URL, SERVER_POOL, SERVER_POOL_TARGETS, UPDATE, URL_MAPPINGSRESTART, SERVICE_UP, START, STOP| Constructor and Description |
|---|
NginxControllerImpl() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
appendSslConfig(java.lang.String id,
java.lang.StringBuilder out,
java.lang.String prefix,
ProxySslConfig ssl,
boolean sslBlock,
boolean certificateBlock) |
void |
connectSensors()
For binding to the running app (e.g.
|
void |
deploy(java.lang.String archiveUrl) |
void |
doExtraConfigurationDuringStart() |
java.lang.String |
getConfigFile() |
java.lang.String |
getCurrentConfiguration() |
NginxDriver |
getDriver() |
java.lang.Class<?> |
getDriverInterface() |
java.lang.String |
getShortName()
gets a short name, for human-friendly identification e.g.
|
java.lang.Iterable<UrlMapping> |
getUrlMappings() |
void |
installSslKeys(java.lang.String id,
ProxySslConfig ssl)
Installs SSL keys named as
id.crt and id.key where nginx can find them. |
boolean |
isSticky() |
void |
reconfigureService()
Implementations should update the configuration so that 'serverPoolAddresses' are targeted.
|
void |
reload() |
bind, getDomain, getHostAndPortSensor, getHostnameSensor, getPort, getPortNumberSensor, getProtocol, getServerPoolAddresses, getSslConfig, getUrl, init, isActive, isSsl, onManagementNoLongerMaster, update, updateAsync, updateNeededonManagementStarted, onManagementStarting, populateServiceNotUpDiagnostics, rebind, restart, start, stop, waitForEntityStart, waitForServiceUp, waitForServiceUp, waitForServiceUp, waitForServiceUpaddChild, addChild, addEnricher, addEnricher, addFeed, addGroup, addLocations, addPolicy, addPolicy, clearLocations, clearParent, config, configure, configure, configure, configure, configure, destroy, emit, emitInternal, equals, feeds, firstLocation, getAllAttributes, getAllConfig, getAllConfigBag, getApplication, getApplicationId, getAttribute, getAttributeByNameParts, getChildren, getConfig, getConfig, getConfig, getConfig, getConfigMap, getConfigRaw, getConfigRaw, getCreationTime, getDisplayName, getEffector, getEnrichers, getEntityType, getExecutionContext, getFeedSupport, getGroups, getIconUrl, getLocalConfigBag, getLocations, getManagementContext, getManagementSupport, getMutableEntityType, getParent, getPolicies, getProxy, getProxyIfAvailable, getRebindSupport, getSubscriptionContext, hashCode, invalidateReferences, invoke, invoke, invoke, modifyAttribute, onManagementBecomingMaster, onManagementStopped, refreshInheritedConfig, removeAllEnrichers, removeAllPolicies, removeAttribute, removeChild, removeEnricher, removeGroup, removeLocations, removePolicy, requestPersist, resetProxy, sensors, setAttribute, setAttribute, setAttributeWithoutPublishing, setConfig, setConfig, setConfig, setConfig, setConfig, setConfig, setConfigEvenIfOwned, setConfigEvenIfOwned, setDisplayName, setManagementContext, setParent, setProxy, subscribe, subscribeToChildren, subscribeToMembers, toMetadataRecord, toString, unsubscribe, unsubscribegetCatalogItemId, getId, setCatalogItemId, tagsgetDomain, getHostAndPortSensor, getHostnameSensor, getPort, getPortNumberSensor, getProtocol, getServerPoolAddresses, getSslConfig, getUrl, isActive, isSslpopulateServiceNotUpDiagnosticsbind, updateaddChild, addChild, addEnricher, addEnricher, addFeed, addGroup, addPolicy, addPolicy, clearParent, getApplication, getApplicationId, getAttribute, getChildren, getConfig, getConfig, getConfigRaw, getConfigRaw, getCreationTime, getDisplayName, getEnrichers, getEntityType, getGroups, getIconUrl, getId, getLocations, getParent, getPolicies, invoke, removeChild, removeEnricher, removeGroup, removePolicy, sensors, setParentgetCatalogItemId, tagsconfig, setConfigrestart, start, stopsetCatalogItemIdpublic void reload()
reload in interface LoadBalancerreload in class AbstractControllerImplpublic boolean isSticky()
isSticky in interface NginxControllerpublic void connectSensors()
SoftwareProcessImplImplementations should be idempotent (ie tell whether sensors already connected), though the framework is pretty good about not calling when already connected. TODO improve the framework's feed system to detect duplicate additions
public java.lang.Class<?> getDriverInterface()
getDriverInterface in interface DriverDependentEntitypublic NginxDriver getDriver()
getDriver in interface DriverDependentEntitygetDriver in class SoftwareProcessImplpublic void doExtraConfigurationDuringStart()
doExtraConfigurationDuringStart in interface NginxController.NginxControllerInternalpublic java.lang.String getCurrentConfiguration()
getCurrentConfiguration in interface NginxControllerpublic void deploy(java.lang.String archiveUrl)
deploy in interface NginxControllerpublic void reconfigureService()
AbstractControllerImplpublic void installSslKeys(java.lang.String id,
ProxySslConfig ssl)
id.crt and id.key where nginx can find them.
Currently skips re-installs (does not support changing)
public java.lang.String getConfigFile()
getConfigFile in interface NginxControllerpublic java.lang.Iterable<UrlMapping> getUrlMappings()
getUrlMappings in interface NginxControllerpublic java.lang.String getShortName()
HasShortNamegetShortName in interface HasShortNamepublic boolean appendSslConfig(java.lang.String id,
java.lang.StringBuilder out,
java.lang.String prefix,
ProxySslConfig ssl,
boolean sslBlock,
boolean certificateBlock)
appendSslConfig in interface NginxController