MCPcopy Create free account
hub / github.com/deepseek-ai/3FS / handle

Method handle

src/client/cli/admin/AdminUserCtrl.cc:212–240  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

210 }
211
212 static CoTryTask<Dispatcher::OutputTable> handle(IEnv &ienv,
213 const argparse::ArgumentParser &parser,
214 const Dispatcher::Args &args) {
215 auto &env = dynamic_cast<AdminEnv &>(ienv);
216 ENSURE_USAGE(args.empty());
217 Dispatcher::OutputTable output;
218
219 auto uid = Uid(parser.get<uint32_t>("uid"));
220 auto token = parser.present<String>("--token").value_or("");
221 auto generateNewToken = parser.get<bool>("--new");
222 auto invalidateExistedToken = parser.get<bool>("--invalidate-existed-tokens");
223 auto maxActiveTokens = parser.get<uint32_t>("--max-active-tokens");
224 auto tokenLifetimeExtendLength = Duration(std::chrono::days(parser.get<uint32_t>("--last-token-lifetime-days")));
225
226 ENSURE_USAGE(!token.empty() + generateNewToken == 1, "must set one of token and generate-token");
227
228 core::UserStore store;
229 auto handler = [&](kv::IReadWriteTransaction &txn) -> CoTryTask<meta::UserAttr> {
230 CO_RETURN_ON_ERROR(co_await ensureAdmin(txn, store, env.userInfo.token));
231 co_return co_await store
232 .setUserToken(txn, uid, token, invalidateExistedToken, maxActiveTokens, tokenLifetimeExtendLength);
233 };
234 auto commitRes = co_await kv::WithTransaction(getRetryStrategy())
235 .run(env.kvEngineGetter()->createReadWriteTransaction(), std::move(handler));
236 CO_RETURN_ON_ERROR(commitRes);
237 printUserAttr(output, uid, *commitRes);
238
239 co_return output;
240 }
241};
242
243struct UserStatHandler {

Callers

nothing calls this directly

Calls 10

DurationClass · 0.85
ensureAdminFunction · 0.85
WithTransactionClass · 0.85
printUserAttrFunction · 0.85
value_orMethod · 0.80
setUserTokenMethod · 0.80
getRetryStrategyFunction · 0.70
emptyMethod · 0.45
runMethod · 0.45

Tested by

no test coverage detected