cleanup: don't repeat yourself, calculate effective ssh port in one place only

This commit is contained in:
Herr Ritschwumm
2016-01-27 20:09:23 +01:00
parent afa79d01b1
commit 0a759f6127
8 changed files with 11 additions and 10 deletions

View File

@@ -74,7 +74,7 @@ trait SystemSettingsControllerBase extends ControllerBase {
if(form.ssh && !SshServer.isActive && form.baseUrl.isDefined){ if(form.ssh && !SshServer.isActive && form.baseUrl.isDefined){
SshServer.start( SshServer.start(
form.sshPort.getOrElse(SystemSettingsService.DefaultSshPort), form.sshPortOrDefault,
form.baseUrl.get) form.baseUrl.get)
} else if(!form.ssh && SshServer.isActive){ } else if(!form.ssh && SshServer.isActive){
SshServer.stop() SshServer.stop()

View File

@@ -136,6 +136,7 @@ object SystemSettingsService {
url.substring(0, url.length - (request.getRequestURI.length - request.getContextPath.length)) url.substring(0, url.length - (request.getRequestURI.length - request.getContextPath.length))
} }
}.stripSuffix("/") }.stripSuffix("/")
def sshPortOrDefault:Int = sshPort.getOrElse(DefaultSshPort)
} }
case class Ldap( case class Ldap(

View File

@@ -41,7 +41,7 @@ object WikiService {
def httpUrl(repository: RepositoryInfo) = repository.httpUrl.replaceFirst("\\.git\\Z", ".wiki.git") def httpUrl(repository: RepositoryInfo) = repository.httpUrl.replaceFirst("\\.git\\Z", ".wiki.git")
def sshUrl(repository: RepositoryInfo, settings: SystemSettingsService.SystemSettings, userName: String) = def sshUrl(repository: RepositoryInfo, settings: SystemSettingsService.SystemSettings, userName: String) =
repository.sshUrl(settings.sshPort.getOrElse(SystemSettingsService.DefaultSshPort), userName).replaceFirst("\\.git\\Z", ".wiki.git") repository.sshUrl(settings.sshPortOrDefault, userName).replaceFirst("\\.git\\Z", ".wiki.git")
} }
trait WikiService { trait WikiService {

View File

@@ -15,7 +15,7 @@ class NoShell extends Factory[Command] with SystemSettingsService {
override def start(env: Environment): Unit = { override def start(env: Environment): Unit = {
val user = env.getEnv.get("USER") val user = env.getEnv.get("USER")
val port = loadSystemSettings().sshPort.getOrElse(SystemSettingsService.DefaultSshPort) val port = loadSystemSettings().sshPortOrDefault
val message = val message =
""" """
| Welcome to | Welcome to

View File

@@ -60,7 +60,7 @@ class SshServerListener extends ServletContextListener with SystemSettingsServic
case None => case None =>
logger.error("Could not start SshServer because the baseUrl is not configured.") logger.error("Could not start SshServer because the baseUrl is not configured.")
case Some(baseUrl) => case Some(baseUrl) =>
SshServer.start(settings.sshPort.getOrElse(SystemSettingsService.DefaultSshPort), baseUrl) SshServer.start(settings.sshPortOrDefault, baseUrl)
} }
} }
} }

View File

@@ -191,8 +191,8 @@ $(function(){
$('#repository-url-ssh').click(function(){ $('#repository-url-ssh').click(function(){
$('#repository-url-proto').text('SSH'); $('#repository-url-proto').text('SSH');
$('#repository-url').val('@repository.sshUrl(settings.sshPort.getOrElse(SystemSettingsService.DefaultSshPort), loginAccount.get.userName)'); $('#repository-url').val('@repository.sshUrl(settings.sshPortOrDefault, loginAccount.get.userName)');
$('#repository-clone-url').attr('href', '@repository.sshOpenRepoUrl(context.platform, settings.sshPort.getOrElse(SystemSettingsService.DefaultSshPort), loginAccount.get.userName)'); $('#repository-clone-url').attr('href', '@repository.sshOpenRepoUrl(context.platform, settings.sshPortOrDefault, loginAccount.get.userName)');
$('#repository-url-copy').attr('data-clipboard-text', $('#repository-url').val()); $('#repository-url-copy').attr('data-clipboard-text', $('#repository-url').val());
}); });
} }

View File

@@ -178,7 +178,7 @@ $(function(){
$('#repository-url-copy').attr('data-clipboard-text', $('#repository-url').val()); $('#repository-url-copy').attr('data-clipboard-text', $('#repository-url').val());
// Update command guidance // Update command guidance
$('#merge-command').text($('#merge-command').text().replace( $('#merge-command').text($('#merge-command').text().replace(
'@forkedRepository.sshUrl(settings.sshPort.getOrElse(SystemSettingsService.DefaultSshPort), loginAccount.get.userName)', '@forkedRepository.sshUrl(settings.sshPortOrDefault, loginAccount.get.userName)',
'@forkedRepository.httpUrl' '@forkedRepository.httpUrl'
)); ));
$('#merge-command-copy-1').attr('data-clipboard-text', $('#merge-command').text()); $('#merge-command-copy-1').attr('data-clipboard-text', $('#merge-command').text());
@@ -186,12 +186,12 @@ $(function(){
$('#repository-url-ssh').click(function(){ $('#repository-url-ssh').click(function(){
// Update URL box // Update URL box
$('#repository-url').val('@forkedRepository.sshUrl(settings.sshPort.getOrElse(SystemSettingsService.DefaultSshPort), loginAccount.get.userName)'); $('#repository-url').val('@forkedRepository.sshUrl(settings.sshPortOrDefault, loginAccount.get.userName)');
$('#repository-url-copy').attr('data-clipboard-text', $('#repository-url').val()); $('#repository-url-copy').attr('data-clipboard-text', $('#repository-url').val());
// Update command guidance // Update command guidance
$('#merge-command').text($('#merge-command').text().replace( $('#merge-command').text($('#merge-command').text().replace(
'@forkedRepository.httpUrl', '@forkedRepository.httpUrl',
'@forkedRepository.sshUrl(settings.sshPort.getOrElse(SystemSettingsService.DefaultSshPort), loginAccount.get.userName)' '@forkedRepository.sshUrl(settings.sshPortOrDefault, loginAccount.get.userName)'
)); ));
$('#merge-command-copy-1').attr('data-clipboard-text', $('#merge-command').text()); $('#merge-command-copy-1').attr('data-clipboard-text', $('#merge-command').text());
}); });

View File

@@ -13,7 +13,7 @@
via <a href="@repository.httpUrl" class="git-protocol-selector">HTTP</a> via <a href="@repository.httpUrl" class="git-protocol-selector">HTTP</a>
@if(settings.ssh && loginAccount.isDefined){ @if(settings.ssh && loginAccount.isDefined){
or or
<a href="@repository.sshUrl(settings.sshPort.getOrElse(SystemSettingsService.DefaultSshPort), loginAccount.get.userName)" class="git-protocol-selector">SSH</a> <a href="@repository.sshUrl(settings.sshPortOrDefault, loginAccount.get.userName)" class="git-protocol-selector">SSH</a>
} }
</div> </div>
<h3 style="margin-top: 30px;">Create a new repository on the command line</h3> <h3 style="margin-top: 30px;">Create a new repository on the command line</h3>