示例#1
0
        /// <summary>
        /// Launch Crowling
        /// </summary>
        /// <param name="request">the request</param>
        /// <returns>the Message represent result of crowling</returns>
        public async Task <CrowlingMessage> LaunchCrowling(CrowlingRequest request)
        {
            var provider = this.GetProvider(request);

            if (provider == null)
            {
                return(null);
            }
            return(await provider.LaunchCrowling(request.IndeedRequest));
        }
示例#2
0
        public async Task <ActionResult <CrowlingMessage> > Launch(CrowlingRequest request)
        {
            if (request == null)
            {
                return(BadRequest());
            }
            await _crowlerService.LaunchCrowling(new Modele.CrowlingRequest()
            {
                CrowlingProviderType = Modele.CrowlingProviderTypeEnum.Indeed,
                IndeedRequest        = new Modele.Indeed.IndeedCrowlingRequest {
                    What = ".net", Where = "Bordeaux"
                }
            });

            return(new CrowlingMessage());
        }
示例#3
0
        /// <summary>
        /// Get Provider Type
        /// </summary>
        /// <param name="request">The request</param>
        /// <returns>Instance of desired provider</returns>
        private ICrowlingProvider GetProvider(CrowlingRequest request)
        {
            if (request == null)
            {
                return(null);
            }

            switch (request.CrowlingProviderType)
            {
            case CrowlingProviderTypeEnum.Indeed:
                return(_crowlingProvider);

            default:
                break;
            }

            return(null);
        }