Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
PRESIDECMS-1388 swap out internal https calls for plain http during h…
…eartbeat initialization if less than lucee 5

(or if feature.s.sslInternalHttpCalls.enabled = false)
  • Loading branch information
DominicWatson committed Nov 20, 2018
1 parent 4aa7bb7 commit 52a804a
Show file tree
Hide file tree
Showing 6 changed files with 22 additions and 4 deletions.
8 changes: 8 additions & 0 deletions system/config/Config.cfc
Expand Up @@ -340,6 +340,7 @@ component {
, adminCsrfProtection = { enabled=true , siteTemplates=[ "*" ] }
, fullPageCaching = { enabled=false, siteTemplates=[ "*" ] }
, healthchecks = { enabled=true , siteTemplates=[ "*" ] }
, sslInternalHttpCalls = { enabled=_luceeGreaterThanFour(), siteTemplates=[ "*" ] }
, "devtools.reload" = { enabled=true , siteTemplates=[ "*" ], widgets=[] }
, "devtools.cache" = { enabled=true , siteTemplates=[ "*" ], widgets=[] }
, "devtools.extension" = { enabled=true , siteTemplates=[ "*" ], widgets=[] }
Expand Down Expand Up @@ -788,4 +789,11 @@ component {

return "3.8.2";
}

private boolean function _luceeGreaterThanFour() {
var luceeVersion = server.lucee.version ?: "";
var major = Val( ListFirst( luceeVersion, "." ) );

return major > 4;
}
}
10 changes: 10 additions & 0 deletions system/services/concurrency/AbstractHeartBeat.cfc
Expand Up @@ -103,6 +103,16 @@ component {
theThread.setName( "PresideAdhocTaskManagerHeartBeat" );
}

private string function _buildInternalLink() {
var link = $getRequestContext().buildLink( argumentCollection=arguments );

if ( link.reFindNoCase( "^https" ) && !$isFeatureEnabled( "sslInternalHttpCalls" ) ) {
return link.reReplaceNoCase( "^https", "http" );
}

return link;
}

// GETTERS / SETTERS
private string function _getThreadName() {
return _threadName;
Expand Down
2 changes: 1 addition & 1 deletion system/services/concurrency/HealthcheckHeartBeat.cfc
Expand Up @@ -45,7 +45,7 @@ component extends="AbstractHeartBeat" {
}

public void function startInNewRequest() {
var startUrl = $getRequestContext().buildLink( linkTo="taskmanager.runtasks.startHealthCheckHeartbeat" );
var startUrl = _buildInternalLink( linkTo="taskmanager.runtasks.startHealthCheckHeartbeat" );

thread name=CreateUUId() startUrl=startUrl {
do {
Expand Down
2 changes: 1 addition & 1 deletion system/services/concurrency/PresideAdhocTaskHeartBeat.cfc
Expand Up @@ -32,7 +32,7 @@ component extends="AbstractHeartBeat" {
}

public void function startInNewRequest() {
var startUrl = $getRequestContext().buildLink( linkTo="taskmanager.runtasks.startAdhocTaskManagerHeartbeat" );
var startUrl = _buildInternalLink( linkTo="taskmanager.runtasks.startAdhocTaskManagerHeartbeat" );

thread name=CreateUUId() startUrl=startUrl {
var attemptLimit = 10;
Expand Down
2 changes: 1 addition & 1 deletion system/services/concurrency/PresideEmailQueueHeartBeat.cfc
Expand Up @@ -42,7 +42,7 @@ component extends="AbstractHeartBeat" {
}

public void function startInNewRequest() {
var startUrl = $getRequestContext().buildLink( linkTo="taskmanager.runtasks.startEmailQueueHeartbeat" );
var startUrl = _buildInternalLink( linkTo="taskmanager.runtasks.startEmailQueueHeartbeat" );

thread name=CreateUUId() startUrl=startUrl {
var attemptLimit = 10;
Expand Down
Expand Up @@ -38,7 +38,7 @@ component extends="AbstractHeartBeat" {
}

public void function startInNewRequest() {
var startUrl = $getRequestContext().buildLink( linkTo="taskmanager.runtasks.startTaskManagerHeartbeat" );
var startUrl = _buildInternalLink( linkTo="taskmanager.runtasks.startTaskManagerHeartbeat" );

thread name=CreateUUId() startUrl=startUrl {
var attemptLimit = 10;
Expand Down

0 comments on commit 52a804a

Please sign in to comment.