Exemplo n.º 1
0
        public static long?GetMoodleDisciplinaId
        (
            this Disciplina item,
            AppConfiguration configuration,
            Modalidade modalidade,
            GetCourseByNameClient client = null,
            HttpClient httpClient        = null
        )
        {
            string disciplinaNome     = GetNomeDisciplina(item, configuration, modalidade);
            long?  moodleDisciplineId = MoodleFromToCache.GetCachedMoodleCourse(modalidade.IdModalidade, disciplinaNome);

            if (moodleDisciplineId.HasValue)
            {
                return(moodleDisciplineId.Value);
            }

            GetCourseByNameClient getClient = client;

            if (getClient == null)
            {
                getClient = new GetCourseByNameClient();
            }

            if (httpClient != null)
            {
                getClient.AddHttpClient(httpClient);
            }

            getClient.AddBaseUrl(modalidade.MoodleUrl)
            .AddServiceUrl(modalidade.MoodleServiceUrl)
            .AddToken(modalidade.MoodleGetInfoServiceToken);

            GetByNameRequest request = new GetByNameRequest()
            {
                Name = item.DisciplinaNome
            };

            Task <CourseResponse> task = getClient.Post(request);

            task.Wait();

            CourseResponse response = task.Result;

            if (response?.Id > 0)
            {
                MoodleFromToCache.AddCourse(modalidade.IdModalidade, disciplinaNome, response.Id);
            }

            return(response?.Id);
        }
Exemplo n.º 2
0
        private static long?InternalGetMoodleCursoId
        (
            string cursoDescricao,
            Modalidade modalidade,
            GetCategoryByNameClient client = null,
            HttpClient httpClient          = null
        )
        {
            long?moodleCategoryId = MoodleFromToCache.GetCachedMoodleCategory(modalidade.IdModalidade, cursoDescricao);

            if (moodleCategoryId.HasValue)
            {
                return(moodleCategoryId.Value);
            }

            GetCategoryByNameClient getClient = client;

            if (getClient == null)
            {
                getClient = new GetCategoryByNameClient();
            }

            if (httpClient != null)
            {
                getClient.AddHttpClient(httpClient);
            }

            getClient.AddBaseUrl(modalidade.MoodleUrl)
            .AddServiceUrl(modalidade.MoodleServiceUrl)
            .AddToken(modalidade.MoodleGetInfoServiceToken);

            GetByNameRequest request = new GetByNameRequest()
            {
                Name = cursoDescricao
            };

            Task <CategoryResponse> task = getClient.Post(request);

            task.Wait();

            CategoryResponse response = task.Result;

            if (response?.Id > 0)
            {
                MoodleFromToCache.AddCategory(modalidade.IdModalidade, cursoDescricao, response.Id);
            }

            return(response?.Id);
        }
Exemplo n.º 3
0
        public override CourseResponse VerifyIfExists(AbstractMoodleServiceClient client, string filter)
        {
            GetCourseByNameClient verifyClient = (GetCourseByNameClient)client;

            GetByNameRequest request = new GetByNameRequest()
            {
                Name = filter
            };

            Task <CourseResponse> task = verifyClient.Post(request);

            task.Wait();

            LastUrl = client.LastUrl;
            CourseResponse response = task.Result;

            return(response);
        }
        public override CategoryResponse VerifyIfExists(string filter)
        {
            GetCategoryByNameClient client = new GetCategoryByNameClient();

            BuildMoodleClient(client, MoodleTokenType.LocalMoodleExternalApiGetInfoToken);

            GetByNameRequest request = new GetByNameRequest()
            {
                Name = filter
            };

            Task <CategoryResponse> task = client.Post(request);

            task.Wait();

            LastUrl = client.LastUrl;
            CategoryResponse response = task.Result;

            return(response);
        }
Exemplo n.º 5
0
 /*[SwaggerOperation("ByName")]
  * [SwaggerResponse(200)]
  * [SwaggerResponse(404)]*/
 public async Task <IActionResult> GetByName([FromBody] GetByNameRequest request)
 {
     request.SetData(_charactersRepository, _customerGuid);
     return(await request.Handle());
 }
 public override Task <GetByNameResponse> GetByName(GetByNameRequest request, ServerCallContext context)
 {
     return(base.GetByName(request, context));
 }