Record(SubmitRecord r, AccountLoader accounts) { this.status = r.status; this.errorMessage = r.errorMessage; if (r.labels != null) { for (SubmitRecord.Label n : r.labels) { AccountInfo who = n.appliedBy != null ? accounts.get(n.appliedBy) : new AccountInfo(null); label(n, who); } } }
@Override public ServiceUserInfo apply(ServiceUserResource rsrc) throws ResourceNotFoundException, OrmException { ProjectLevelConfig storage = projectCache.getAllProjects().getConfig(pluginName + ".db"); String username = rsrc.getUser().getUserName(); Config db = storage.get(); if (!db.getSubsections(USER).contains(username)) { throw new ResourceNotFoundException(username); } ServiceUserInfo info = new ServiceUserInfo(getAccount.get().apply(rsrc)); AccountLoader al = accountLoader.create(true); info.createdBy = al.get(new Account.Id(db.getInt(USER, username, KEY_CREATOR_ID, -1))); al.fill(); info.createdAt = db.getString(USER, username, KEY_CREATED_AT); info.inactive = !rsrc.getUser().getAccount().isActive() ? true : null; Response<GroupInfo> response = getOwner.apply(rsrc); if (response.statusCode() == SC_OK) { info.owner = response.value(); } return info; }