-
Notifications
You must be signed in to change notification settings - Fork 29
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1047 from zhx828/add-base-url
Allow configuring app base URL
- Loading branch information
Showing
7 changed files
with
53 additions
and
18 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,7 @@ | ||
package org.mskcc.cbio.oncokb.config; | ||
|
||
import org.mskcc.cbio.oncokb.config.application.ApplicationProperties; | ||
import org.mskcc.cbio.oncokb.config.application.EmailAddresses; | ||
import org.springframework.context.annotation.Bean; | ||
import org.springframework.context.annotation.Configuration; | ||
import springfox.documentation.builders.ApiInfoBuilder; | ||
|
@@ -11,13 +13,22 @@ | |
import springfox.documentation.spring.web.plugins.Docket; | ||
import springfox.documentation.swagger2.annotations.EnableSwagger2; | ||
|
||
/** | ||
* Created by Hongxin Zhang on 10/23/19. | ||
*/ | ||
import java.util.Optional; | ||
|
||
@Configuration | ||
@EnableSwagger2 | ||
public class Swagger2Config { | ||
final ApplicationProperties applicationProperties; | ||
final String contactAddress; | ||
|
||
public Swagger2Config(ApplicationProperties applicationProperties) { | ||
this.applicationProperties = applicationProperties; | ||
Optional<String> contractAddress = Optional.ofNullable(applicationProperties) | ||
.map(ApplicationProperties::getEmailAddresses) | ||
.map(EmailAddresses::getContactAddress); | ||
this.contactAddress = contractAddress.isPresent() ? contractAddress.get() : ""; | ||
} | ||
|
||
// based on the suggestion to overwrite the default Docket setup | ||
// https://github.com/jhipster/generator-jhipster/issues/10034 | ||
@Bean | ||
|
@@ -30,13 +41,14 @@ public Docket swaggerSpringfoxApiDocket() { | |
.paths(PathSelectors.regex("/.*")) | ||
.build().apiInfo(apiEndPointsInfo()); | ||
} | ||
|
||
private ApiInfo apiEndPointsInfo() { | ||
return new ApiInfoBuilder().title("OncoKB™ APIs") | ||
.description("OncoKB™ is a precision oncology knowledge base developed at Memorial Sloan Kettering Cancer Center that contains biological and clinical information about genomic alterations in cancer.") | ||
.contact(new Contact("OncoKB™", "https://www.oncokb.org", "[email protected]")) | ||
.contact(new Contact("OncoKB™", applicationProperties.getBaseUrl(), this.contactAddress)) | ||
.license("Terms of Use") | ||
.licenseUrl("https://www.oncokb.org/terms") | ||
.termsOfServiceUrl("https://www.oncokb.org/terms") | ||
.licenseUrl(applicationProperties.getBaseUrl() + "/terms") | ||
.termsOfServiceUrl(applicationProperties.getBaseUrl() + "/terms") | ||
.version("v1.0.0") | ||
.build(); | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
31 changes: 21 additions & 10 deletions
31
src/main/java/org/mskcc/cbio/oncokb/web/rest/errors/ErrorConstants.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,32 @@ | ||
package org.mskcc.cbio.oncokb.web.rest.errors; | ||
|
||
import org.mskcc.cbio.oncokb.config.application.ApplicationProperties; | ||
|
||
import java.net.URI; | ||
|
||
public final class ErrorConstants { | ||
|
||
public static final String ERR_CONCURRENCY_FAILURE = "error.concurrencyFailure"; | ||
public static final String ERR_VALIDATION = "error.validation"; | ||
public static final String PROBLEM_BASE_URL = "https://www.oncokb.org/problem"; | ||
public static final URI DEFAULT_TYPE = URI.create(PROBLEM_BASE_URL + "/problem-with-message"); | ||
public static final URI CONSTRAINT_VIOLATION_TYPE = URI.create(PROBLEM_BASE_URL + "/constraint-violation"); | ||
public static final URI INVALID_PASSWORD_TYPE = URI.create(PROBLEM_BASE_URL + "/invalid-password"); | ||
public static final URI EMAIL_ALREADY_USED_TYPE = URI.create(PROBLEM_BASE_URL + "/email-already-used"); | ||
public static final URI LOGIN_ALREADY_USED_TYPE = URI.create(PROBLEM_BASE_URL + "/login-already-used"); | ||
public static final URI TOKEN_EXPIRED_TYPE = URI.create(PROBLEM_BASE_URL + "/token-expired"); | ||
public static final URI LICENSE_AGREEMENT_NOT_ACCEPTED = URI.create(PROBLEM_BASE_URL + "/license-agreement-not-accepted"); | ||
public static final URI DATABASE_READ_ONLY = URI.create(PROBLEM_BASE_URL + "/database-read-only"); | ||
public static String PROBLEM_BASE_URL; | ||
public static URI DEFAULT_TYPE; | ||
public static URI CONSTRAINT_VIOLATION_TYPE; | ||
public static URI INVALID_PASSWORD_TYPE; | ||
public static URI EMAIL_ALREADY_USED_TYPE; | ||
public static URI LOGIN_ALREADY_USED_TYPE; | ||
public static URI TOKEN_EXPIRED_TYPE; | ||
public static URI LICENSE_AGREEMENT_NOT_ACCEPTED; | ||
public static URI DATABASE_READ_ONLY; | ||
|
||
private ErrorConstants() { | ||
private ErrorConstants(ApplicationProperties applicationProperties) { | ||
PROBLEM_BASE_URL = applicationProperties.getBaseUrl() + "/problem"; | ||
DEFAULT_TYPE = URI.create(PROBLEM_BASE_URL + "/problem-with-message"); | ||
CONSTRAINT_VIOLATION_TYPE = URI.create(PROBLEM_BASE_URL + "/constraint-violation"); | ||
INVALID_PASSWORD_TYPE = URI.create(PROBLEM_BASE_URL + "/invalid-password"); | ||
EMAIL_ALREADY_USED_TYPE = URI.create(PROBLEM_BASE_URL + "/email-already-used"); | ||
LOGIN_ALREADY_USED_TYPE = URI.create(PROBLEM_BASE_URL + "/login-already-used"); | ||
TOKEN_EXPIRED_TYPE = URI.create(PROBLEM_BASE_URL + "/token-expired"); | ||
LICENSE_AGREEMENT_NOT_ACCEPTED = URI.create(PROBLEM_BASE_URL + "/license-agreement-not-accepted"); | ||
DATABASE_READ_ONLY = URI.create(PROBLEM_BASE_URL + "/database-read-only"); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters