Skip to content

Commit a5105d6

Browse files
committed
Inline App::new() fn
Using the `AppBuilder` directly gives us more flexibility for additional fields in the future.
1 parent d9d463c commit a5105d6

File tree

3 files changed

+20
-21
lines changed

3 files changed

+20
-21
lines changed

src/app.rs

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -166,25 +166,6 @@ impl<S: app_builder::State> AppBuilder<S> {
166166
}
167167

168168
impl App {
169-
/// Creates a new `App` with a given `Config` and an optional HTTP `Client`
170-
///
171-
/// Configures and sets up:
172-
///
173-
/// - GitHub OAuth
174-
/// - Database connection pools
175-
/// - A `git2::Repository` instance from the index repo checkout (that server.rs ensures exists)
176-
pub fn new(config: config::Server, emails: Emails, github: Box<dyn GitHubClient>) -> App {
177-
App::builder()
178-
.databases_from_config(&config.db)
179-
.github(github)
180-
.github_oauth_from_config(&config)
181-
.emails(emails)
182-
.storage_from_config(&config.storage)
183-
.rate_limiter_from_config(config.rate_limiter.clone())
184-
.config(Arc::new(config))
185-
.build()
186-
}
187-
188169
/// A unique key to generate signed cookies
189170
pub fn session_key(&self) -> &cookie::Key {
190171
&self.config.session_key

src/bin/server.rs

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,17 @@ fn main() -> anyhow::Result<()> {
3333
let github = RealGitHubClient::new(client);
3434
let github = Box::new(github);
3535

36-
let app = Arc::new(App::new(config, emails, github));
36+
let app = App::builder()
37+
.databases_from_config(&config.db)
38+
.github(github)
39+
.github_oauth_from_config(&config)
40+
.emails(emails)
41+
.storage_from_config(&config.storage)
42+
.rate_limiter_from_config(config.rate_limiter.clone())
43+
.config(Arc::new(config))
44+
.build();
45+
46+
let app = Arc::new(app);
3747

3848
// Start the background thread periodically logging instance metrics.
3949
log_instance_metrics_thread(app.clone());

src/tests/util/test_app.rs

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -488,7 +488,15 @@ fn build_app(config: config::Server, github: Option<MockGitHubClient>) -> (Arc<A
488488
let github = github.unwrap_or_else(|| MOCK_GITHUB_DATA.as_mock_client());
489489
let github = Box::new(github);
490490

491-
let app = App::new(config, emails, github);
491+
let app = App::builder()
492+
.databases_from_config(&config.db)
493+
.github(github)
494+
.github_oauth_from_config(&config)
495+
.emails(emails)
496+
.storage_from_config(&config.storage)
497+
.rate_limiter_from_config(config.rate_limiter.clone())
498+
.config(Arc::new(config))
499+
.build();
492500

493501
let app = Arc::new(app);
494502
let router = crate::build_handler(Arc::clone(&app));

0 commit comments

Comments
 (0)