File tree Expand file tree Collapse file tree 1 file changed +13
-4
lines changed Expand file tree Collapse file tree 1 file changed +13
-4
lines changed Original file line number Diff line number Diff line change @@ -96,13 +96,22 @@ Controller::ExpectedOrError<JobId> Controller::submit_( drogon::HttpRequestPtr r
9696
9797Controller::ExpectedOrError<Job> Controller::getInfo_ ( drogon::HttpRequestPtr req )
9898{
99- const auto maybeJobId = req->getOptionalParameter <std::string>( " job_id" );
99+ const auto maybeJob
100+ = req->getOptionalParameter <std::string>( " job_id" )
101+ .and_then ( [this ] ( auto jobId ) -> std::optional<Job>
102+ {
103+ std::shared_lock lock ( jobsMutex_ );
104+ auto it = jobs_.find ( jobId );
105+ if ( it != jobs_.end () )
106+ return it->second ;
107+ else
108+ return std::nullopt ;
109+ } );
100110
101- if ( !maybeJobId )
111+ if ( !maybeJob )
102112 return std::unexpected<Error>{ { k404NotFound, " Job is not found" } };
103113
104- std::shared_lock lock ( jobsMutex_ );
105- return jobs_[*maybeJobId];
114+ return *maybeJob;
106115}
107116
108117drogon::HttpResponsePtr Controller::getResult_ ( drogon::HttpRequestPtr req )
You can’t perform that action at this time.
0 commit comments