Beispiel #1
0
        /// <summary>
        /// Handles searches for a single aircraft.
        /// </summary>
        /// <param name="args"></param>
        private void SingleAircraftSearch(RequestReceivedEventArgs args)
        {
            if (args.Request.HttpMethod == "GET")
            {
                var    json = new SingleSearchResultsJson();
                string icao = null;

                try {
                    icao = (args.QueryString["icao"] ?? "").ToUpper();
                    if (icao != "")
                    {
                        json.Aircraft = _BaseStationDatabase.GetAircraftByCode(icao);
                        ++_SearchCount;
                        UpdateStatusTotals();
                    }
                } catch (Exception ex) {
                    json.Exception = LogException(ex, "Exception caught during DatabaseEditor SingleAircraftSearch ({0}): {1}", icao, ex.ToString());
                }

                SendJsonResponse(args, json);
            }
        }
        public SingleSearchResultsJson Get(string icao)
        {
            var result = new SingleSearchResultsJson();
            var plugin = Plugin.Singleton;

            if (!String.IsNullOrEmpty(icao) && CustomConvert.Icao24(icao) > 0)
            {
                try {
                    result.Aircraft = plugin.BaseStationDatabase.GetAircraftByCode(icao);
                    if (result.Aircraft == null)
                    {
                        result.Aircraft       = new BaseStationAircraft();
                        result.Aircraft.ModeS = icao.ToUpper();
                    }
                    plugin.IncrementSearchCount();
                    plugin.UpdateStatusTotals();
                } catch (Exception ex) {
                    result.Exception = plugin.LogException(ex, "Exception caught during DatabaseEditor SingleAircraftSearch ({0}): {1}", icao, ex.ToString());
                }
            }

            return(result);
        }