private static long?InternalGetMoodleUserId ( string cpf, Modalidade modalidade, GetUserByUsernameClient client = null, HttpClient httpClient = null ) { long?moodleUserId = MoodleFromToCache.GetCachedMoodleUser(modalidade.IdModalidade, cpf); if (moodleUserId.HasValue) { return(moodleUserId.Value); } GetUserByUsernameClient getClient = client; if (getClient == null) { getClient = new GetUserByUsernameClient(); } if (httpClient != null) { getClient.AddHttpClient(httpClient); } getClient.AddBaseUrl(modalidade.MoodleUrl) .AddServiceUrl(modalidade.MoodleServiceUrl) .AddToken(modalidade.MoodleGetInfoServiceToken); GetByUsernameRequest request = new GetByUsernameRequest() { Username = cpf.DesformatarCpf() }; Task <UserResponse> task = getClient.Post(request); task.Wait(); UserResponse response = task.Result; if (response?.Id > 0) { MoodleFromToCache.AddUser(modalidade.IdModalidade, cpf, response.Id); } return(response?.Id); }
public override UserResponse VerifyIfExists(AbstractMoodleServiceClient client, string filter) { GetUserByUsernameClient verifyClient = (GetUserByUsernameClient)client; GetByUsernameRequest request = new GetByUsernameRequest() { Username = filter.DesformatarCpf() }; Task <UserResponse> task = verifyClient.Post(request); task.Wait(); LastUrl = client.LastUrl; UserResponse response = task.Result; return(response); }