コード例 #1
0
        public void Availability()
        {
            AvailabilitySearchReq request = new AvailabilitySearchReq();
            AvailabilitySearchRsp rsp;

            request = SetupRequestForSearch(request);

            AirAvailabilitySearchPortTypeClient client = new AirAvailabilitySearchPortTypeClient("AirAvailabilitySearchPort", WsdlService.AIR_ENDPOINT);

            client.ClientCredentials.UserName.UserName = Helper.RetrunUsername();
            client.ClientCredentials.UserName.Password = Helper.ReturnPassword();
            try
            {
                var httpHeaders = Helper.ReturnHttpHeader();
                client.Endpoint.EndpointBehaviors.Add(new HttpHeadersEndpointBehavior(httpHeaders));

                rsp = client.service(request);
                Console.WriteLine(rsp.AirItinerarySolution.Count());
                Console.WriteLine(rsp.AirSegmentList.Count());
            }
            catch (Exception se)
            {
                Console.WriteLine("Error : " + se.Message);
                client.Abort();
            }

            //these checks are just sanity that we can make an availability request
            //assertThat(rsp.getAirItinerarySolution().size(), is(not(0)));
            //assertThat(rsp.getAirSegmentList().getAirSegment().size(), is(not(0)));
        }
コード例 #2
0
        public AvailabilitySearchRsp Availability()
        {
            AvailabilitySearchReq request = new AvailabilitySearchReq();
            AvailabilitySearchRsp rsp     = new AvailabilitySearchRsp();

            request = SetupRequestForSearch(request);

            AirAvailabilitySearchPortTypeClient client = new AirAvailabilitySearchPortTypeClient("AirAvailabilitySearchPort", WsdlService.AIR_ENDPOINT);

            client.ClientCredentials.UserName.UserName = Helper.RetrunUsername();
            client.ClientCredentials.UserName.Password = Helper.ReturnPassword();
            try
            {
                var httpHeaders = Helper.ReturnHttpHeader();
                client.Endpoint.EndpointBehaviors.Add(new HttpHeadersEndpointBehavior(httpHeaders));

                rsp = client.service(null, request);
                // Console.WriteLine(rsp.AirItinerarySolution.Count());
                // Console.WriteLine(rsp.AirSegmentList.Count());
            }
            catch (Exception se)
            {
                Console.WriteLine("Error : " + se.Message);
                client.Abort();
            }

            return(rsp);
        }
コード例 #3
0
        private AvailabilitySearchReq SetupRequestForSearch(AvailabilitySearchReq request)
        {
            // TODO Auto-generated method stub

            //add in the tport branch code
            request.TargetBranch = CommonUtility.GetConfigValue(ProjectConstants.G_TARGET_BRANCH);

            //set the GDS via a search modifier
            String[] gds = new String[] { "1G" };
            AirSearchModifiers modifiers = AirReq.CreateModifiersWithProviders(gds);

            AirReq.AddPointOfSale(request, MY_APP_NAME);

            //try to limit the size of the return... not supported by 1G!
            modifiers.MaxSolutions = string.Format("25");
            request.AirSearchModifiers = modifiers;

            //travel is for denver to san fransisco 2 months from now, one week trip
            SearchAirLeg outbound = AirReq.CreateSearchLeg(origin, destination);
            AirReq.AddSearchDepartureDate(outbound, Helper.daysInFuture(60));
            AirReq.AddSearchEconomyPreferred(outbound);

            //coming back
            SearchAirLeg ret = AirReq.CreateSearchLeg(destination, origin);
            AirReq.AddSearchDepartureDate(ret, Helper.daysInFuture(70));
            //put traveller in econ
            AirReq.AddSearchEconomyPreferred(ret);            
            

            request.Items = new SearchAirLeg[2];
            request.Items.SetValue(outbound, 0);
            request.Items.SetValue(ret, 1);

            return request;
        }
コード例 #4
0
        public void Availability()
        {
		    AvailabilitySearchReq request = new AvailabilitySearchReq();
		    AvailabilitySearchRsp rsp;
		
		    request = SetupRequestForSearch(request);

            AirAvailabilitySearchPortTypeClient client = new AirAvailabilitySearchPortTypeClient("AirAvailabilitySearchPort", WsdlService.AIR_ENDPOINT);
            client.ClientCredentials.UserName.UserName = Helper.RetrunUsername();
            client.ClientCredentials.UserName.Password = Helper.ReturnPassword();
            try
            {
                var httpHeaders = Helper.ReturnHttpHeader();
                client.Endpoint.EndpointBehaviors.Add(new HttpHeadersEndpointBehavior(httpHeaders));

                rsp = client.service(request);
                Console.WriteLine(rsp.AirItinerarySolution.Count());
                Console.WriteLine(rsp.AirSegmentList.Count());
            }
            catch (Exception se)
            {
                Console.WriteLine("Error : " + se.Message);
                client.Abort();
            }
            
		    //these checks are just sanity that we can make an availability request
		    //assertThat(rsp.getAirItinerarySolution().size(), is(not(0)));
		    //assertThat(rsp.getAirSegmentList().getAirSegment().size(), is(not(0)));
	    }
コード例 #5
0
        private AvailabilitySearchReq SetupRequestForSearch(AvailabilitySearchReq request)
        {
            // TODO Auto-generated method stub

            //add in the tport branch code
            request.TargetBranch = CommonUtility.GetConfigValue(ProjectConstants.G_TARGET_BRANCH);

            //set the GDS via a search modifier
            String[]           gds       = new String[] { "1G" };
            AirSearchModifiers modifiers = AirReq.CreateModifiersWithProviders(gds);

            AirReq.AddPointOfSale(request, MY_APP_NAME);

            //try to limit the size of the return... not supported by 1G!
            modifiers.MaxSolutions     = string.Format("25");
            request.AirSearchModifiers = modifiers;

            //travel is for denver to san fransisco 2 months from now, one week trip
            SearchAirLeg outbound = AirReq.CreateSearchLeg(origin, destination);

            AirReq.AddSearchDepartureDate(outbound, Helper.daysInFuture(60));
            AirReq.AddSearchEconomyPreferred(outbound);

            //coming back
            SearchAirLeg ret = AirReq.CreateSearchLeg(destination, origin);

            AirReq.AddSearchDepartureDate(ret, Helper.daysInFuture(70));
            //put traveller in econ
            AirReq.AddSearchEconomyPreferred(ret);


            request.Items = new SearchAirLeg[2];
            request.Items.SetValue(outbound, 0);
            request.Items.SetValue(ret, 1);

            return(request);
        }
コード例 #6
0
        public JsonResult Availability(SearchModel searchModel)
        {
            origin      = searchModel.Origin;
            destination = searchModel.Destination;

            AvailabilitySearchReq request = new AvailabilitySearchReq();
            AvailabilitySearchRsp rsp;

            request = SetupRequestForSearch(request, searchModel);

            AirAvailabilitySearchPortTypeClient client = new AirAvailabilitySearchPortTypeClient("AirAvailabilitySearchPort", WsdlService.AIR_ENDPOINT);

            client.ClientCredentials.UserName.UserName = Helper.RetrunUsername();
            client.ClientCredentials.UserName.Password = Helper.ReturnPassword();
            try
            {
                var httpHeaders = Helper.ReturnHttpHeader();
                client.Endpoint.EndpointBehaviors.Add(new HttpHeadersEndpointBehavior(httpHeaders));

                rsp = client.service(null, request);
                AirAvailabilityResponseMain response = ConverToModel(rsp);
                //Console.WriteLine(rsp.AirItinerarySolution.Count());
                //Console.WriteLine(rsp.AirSegmentList.Count());

                return(Json(response, JsonRequestBehavior.AllowGet));
            }
            catch (Exception se)
            {
                //Console.WriteLine("Error : " + se.Message);
                client.Abort();
                throw se;
            }

            //these checks are just sanity that we can make an availability request
            //assertThat(rsp.getAirItinerarySolution().size(), is(not(0)));
            //assertThat(rsp.getAirSegmentList().getAirSegment().size(), is(not(0)));
        }
コード例 #7
0
        /// <summary>
        /// Get Universal Record
        /// </summary>
        /// <returns></returns>
        ///
        private AvailabilitySearchRsp GetAirAvailability()
        {
            AvailabilitySearchRsp response = null;



            string someTraceId = "doesntmatter-8176";
            string originApp   = "UAPI";

            AvailabilitySearchReq req = new AvailabilitySearchReq();

            req.TraceId      = someTraceId;
            req.AuthorizedBy = "user";
            req.TargetBranch = "P7001182";
            req.RetrieveProviderReservationDetails = true;

            ATPI.TWME.SP.Lib.AirService.BillingPointOfSaleInfo billSetInfo = new ATPI.TWME.SP.Lib.AirService.BillingPointOfSaleInfo();
            billSetInfo.OriginApplication = originApp;

            Airport org = new Airport()
            {
                Code = "SYD"
            };
            Airport dest = new Airport()
            {
                Code = "MEL"
            };

            SearchAirLeg leg = new SearchAirLeg();


            AddDepartureDate(leg, daysInFuture(1));

            List <typeSearchLocation> locs = new List <typeSearchLocation>();

            locs.Add(new typeSearchLocation()
            {
                Item = org
            });

            leg.SearchOrigin = locs.ToArray();

            List <typeSearchLocation> locs1 = new List <typeSearchLocation>();

            locs1.Add(new typeSearchLocation()
            {
                Item = dest
            });

            leg.SearchDestination = locs1.ToArray();


            req.BillingPointOfSaleInfo = billSetInfo;

            req.Items = new object[1] {
                leg
            };

            var mod = new AirSearchModifiers();

            mod.PreferredProviders = new List <ATPI.TWME.SP.Lib.AirService.Provider>()
            {
                new ATPI.TWME.SP.Lib.AirService.Provider()
                {
                    Code = "1G"
                }
            }.ToArray();

            req.AirSearchModifiers = mod;


            try
            {
                BasicHttpBinding binding = new BasicHttpBinding(BasicHttpSecurityMode.Transport);

                binding.Security.Transport.ProxyCredentialType  = HttpProxyCredentialType.Basic;
                binding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Basic;
                string          uri             = "https://americas.universal-api.pp.travelport.com/B2BGateway/connect/uAPI/AirService";
                EndpointAddress endpointAddress = new EndpointAddress(uri);

                AirAvailabilitySearchPortTypeClient client = new AirAvailabilitySearchPortTypeClient(binding, endpointAddress);
                if (client.ClientCredentials != null)
                {
                    client.ClientCredentials.UserName.UserName = "******";
                    client.ClientCredentials.UserName.Password = "******";
                }

                response = client.service(null, req);
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(response);
        }