# SINCE 0.5.0\r
web.siteName =\r
\r
+# The canonical url of your Gitblit server to bs used in email notifications.\r
+# e.g. web.canonicalUrl = https://demo-gitblit.rhcloud.com\r
+#\r
+# SINCE 1.4.0\r
+web.canonicalUrl = \r
+\r
# You may specify a different logo image for the header but it must be 120x45px.\r
# If the specified file does not exist, the default Gitblit logo will be used.\r
#\r
\r
protected String gitblitUrl;\r
\r
- protected String repositoryUrl;\r
-\r
protected GroovyScriptEngine gse;\r
\r
private final IStoredSettings settings;\r
this.gitblitUrl = url;\r
}\r
\r
- protected void setRepositoryUrl(String url) {\r
- this.repositoryUrl = url;\r
- }\r
-\r
protected void sendRejection(final ReceiveCommand cmd, final String why, Object... objects) {\r
String text;\r
if (ArrayUtils.isEmpty(objects)) {\r
String repositoryName = "";
String origin = "";
String gitblitUrl = "";
- String repositoryUrl = "";
int timeout = 0;
if (req instanceof HttpServletRequest) {
repositoryName = request.getAttribute("gitblitRepositoryName").toString();
origin = request.getRemoteHost();
gitblitUrl = HttpUtils.getGitblitURL(request);
- repositoryUrl = request.getRequestURI();
// determine pushing user
String username = request.getRemoteUser();
throw new ServiceNotEnabledException();
}
+ String url = settings.getString(Keys.web.canonicalUrl, null);
+ if (StringUtils.isEmpty(url)) {
+ url = gitblitUrl;
+ }
+
final RepositoryModel repository = gitblit.getRepositoryModel(repositoryName);
final GitblitReceivePack rp = new GitblitReceivePack(gitblit, db, repository, user);
- rp.setGitblitUrl(gitblitUrl);
- rp.setRepositoryUrl(repositoryUrl);
+ rp.setGitblitUrl(url);
rp.setRefLogIdent(new PersonIdent(user.username, user.username + "@" + origin));
rp.setTimeout(timeout);
}
protected String getRepositoryUrl(HttpServletRequest request, String username, RepositoryModel repository) {
+ String gitblitUrl = settings.getString(Keys.web.canonicalUrl, null);
+ if (StringUtils.isEmpty(gitblitUrl)) {
+ gitblitUrl = HttpUtils.getGitblitURL(request);
+ }
StringBuilder sb = new StringBuilder();
- sb.append(HttpUtils.getGitblitURL(request));
+ sb.append(gitblitUrl);
sb.append(Constants.R_PATH);
sb.append(repository.name);
return;\r
}\r
\r
- String url = HttpUtils.getGitblitURL(request);\r
- federationManager.submitFederationProposal(proposal, url);\r
+ String gitblitUrl = settings.getString(Keys.web.canonicalUrl, null);\r
+ if (StringUtils.isEmpty(gitblitUrl)) {\r
+ gitblitUrl = HttpUtils.getGitblitURL(request);\r
+ }\r
+ federationManager.submitFederationProposal(proposal, gitblitUrl);\r
logger.info(MessageFormat.format(\r
"Submitted {0} federation proposal to pull {1} repositories from {2}",\r
proposal.tokenType.name(), proposal.repositories.size(), proposal.url));\r
\r
Object result = null;\r
if (FederationRequest.PULL_REPOSITORIES.equals(reqType)) {\r
- String gitblitUrl = HttpUtils.getGitblitURL(request);\r
+ String gitblitUrl = settings.getString(Keys.web.canonicalUrl, null);\r
+ if (StringUtils.isEmpty(gitblitUrl)) {\r
+ gitblitUrl = HttpUtils.getGitblitURL(request);\r
+ }\r
result = federationManager.getRepositories(gitblitUrl, token);\r
} else {\r
if (FederationRequest.PULL_SETTINGS.equals(reqType)) {\r
result = PROTOCOL_VERSION;\r
} else if (RpcRequest.LIST_REPOSITORIES.equals(reqType)) {\r
// Determine the Gitblit clone url\r
- String gitblitUrl = HttpUtils.getGitblitURL(request);\r
+ String gitblitUrl = settings.getString(Keys.web.canonicalUrl, null);\r
+ if (StringUtils.isEmpty(gitblitUrl)) {\r
+ gitblitUrl = HttpUtils.getGitblitURL(request);\r
+ }\r
StringBuilder sb = new StringBuilder();\r
sb.append(gitblitUrl);\r
sb.append(Constants.R_PATH);\r
} else if (RpcRequest.LIST_FEDERATION_SETS.equals(reqType)) {\r
// return the list of federation sets\r
if (allowAdmin && gitblit.canFederate()) {\r
- String gitblitUrl = HttpUtils.getGitblitURL(request);\r
+ String gitblitUrl = settings.getString(Keys.web.canonicalUrl, null);\r
+ if (StringUtils.isEmpty(gitblitUrl)) {\r
+ gitblitUrl = HttpUtils.getGitblitURL(request);\r
+ }\r
result = gitblit.getFederationSets(gitblitUrl);\r
} else {\r
response.sendError(notAllowedCode);\r
// parameterized parameters\r
urlPattern = "{0}/commit/?r={1}&h={2}";\r
}\r
- String gitblitUrl = HttpUtils.getGitblitURL(request);\r
+ String gitblitUrl = settings.getString(Keys.web.canonicalUrl, null);\r
+ if (StringUtils.isEmpty(gitblitUrl)) {\r
+ gitblitUrl = HttpUtils.getGitblitURL(request);\r
+ }\r
char fsc = settings.getChar(Keys.web.forwardSlashCharacter, '/');\r
\r
List<FeedEntryModel> entries = new ArrayList<FeedEntryModel>();\r