Example #1
0
        private void DecodeLoad(ushort channelId)
        {
            var position = ReceiveUint();
            var index    = new TrackIndex {
                ChannelId = channelId, Position = position
            };

            var type        = DecodeTrackType();
            var description = ReceiveString();

            var duration = 0U;

            if (type.HasAudio())
            {
                duration = ReceiveUint();
            }

            var text = "";

            if (type.HasText())
            {
                text = ReceiveString();
            }

            var track = TrackFactory.Create(type, description, duration, text);

            Dispatch(new MarkerChangeArgs(channelId, MarkerType.Position, 0U));
            Dispatch(new TrackLoadArgs(index, track));
        }
Example #2
0
 public TrackPresenter(
     TrackFactory trackFactory,
     SignalBus signalBus)
 {
     _trackFactory = trackFactory;
     _signalBus    = signalBus;
 }
        public InputModel NewGameInput()
        {
            var allExternalThreats = ExternalThreatFactory.AllExternalThreats
                                     .Select(threat => new ExternalThreatModel(threat))
                                     .ToList();
            var allInternalThreats = InternalThreatFactory.AllInternalThreats
                                     .Select(threat => new InternalThreatModel(threat))
                                     .ToList();
            var inputModel = new InputModel
            {
                SingleActions         = ActionModel.AllSingleActionModels.OrderBy(action => action.FirstAction).ThenBy(action => action.SecondAction),
                DoubleActions         = ActionModel.AllSelectableDoubleActionModels.OrderBy(action => action.FirstAction).ThenBy(action => action.SecondAction),
                SpecializationActions = PlayerSpecializationActionModel.AllPlayerSpecializationActionModels
                                        .OrderBy(action => action.PlayerSpecialization)
                                        .ThenBy(player => player.Hotkey),
                Tracks = TrackFactory.CreateAllTracks()
                         .Select(track => new TrackSnapshotModel(track, new List <int>()))
                         .ToList(),
                AllInternalThreats    = new AllThreatsModel(allInternalThreats),
                AllExternalThreats    = new AllThreatsModel(allExternalThreats),
                PlayerSpecializations = EnumFactory.All <PlayerSpecialization>().ToList(),
                AllDamageTokens       = EnumFactory.All <DamageToken>(),
                DamageableZones       = EnumFactory.All <ZoneLocation>()
            };

            return(inputModel);
        }
Example #4
0
 public void Setup()
 {
     // Used in ReceiveCorrectDataFromTransponderReceiverDll:
     _fakeData = Substitute.For <ITransponderReceiver>();
     // Used in SpawnTrackFromTrackFactory:
     _uut = new TrackFactory(_fakeData);
 }
        public void AddFlight_FlightAirspace_ValidatorCalled()
        {
            var flightTrack = TrackFactory.CreateTestTrack();

            _uut.Add(flightTrack);

            _flightValidator.Received().Validate(_uut, flightTrack);
        }
Example #6
0
    private void CreateMainMenu()
    {
        menuTrackScene = TrackFactory.CreateMainMenuTrack(gameStats.testMainMenuTrackScene);
        MainMenuModelView menuModelView = UIFactory.CreateMainMenuModelView(canvas);

        menuModelView.OnStart += HandleGameCreation;
        menuModelView.OnExit  += HandleExitGame;
    }
        static void Main(string[] args)
        {
            //Dependencies for Airport
            DecodeFactory.DecodeFactory trackFactory = new TrackFactory();
            AirSpace airspace = new AirSpace
            {
                Height_from = 500,
                Height_to   = 20000,
                X           = 80000,
                Y           = 80000
            };
            IExceptionHandler exceptionHandler = new NullReferenceExceptionHandler();

            var receiver = TransponderReceiverFactory.CreateTransponderDataReceiver();

            var Airport = new Airport(receiver, trackFactory, airspace, exceptionHandler);

            //Dependencies for ATM
            IOccurenceDetector Detector  = new TrackOccurrenceDetector();
            IDisplay           Display   = new MonitorConsole();
            IOccurrenceLogger  Logger    = new OccurrenceLogger();
            IFormat            Formatter = new TrackFormater();
            IExceptionHandler  Exception = new NullReferenceExceptionHandler();
            IConsoleClear      Consoler  = new ConsoleClear();

            Air_Traffic_Monitor ATM = new Air_Traffic_Monitor(Airport, Detector, Display, Logger, Formatter, Consoler, Exception);


            #region DecodeFactory Test

            /*
             * var Aircrafts = new List<string>
             * {
             *  "BTR312;2004;18204;5500;20151006213456789",
             *  "BTR312;3200;18602;5500;20151006213456789",
             *  "BTR312;4200;18802;5500;20151006213456789"
             * };
             *
             * var factory = new TrackFactory();
             * var tracks = factory.CreateTracks(Aircrafts);
             *
             * foreach(var track in tracks)
             * {
             *  Console.WriteLine($"Tag: {track.Tag}");
             *  Console.WriteLine($"Current altitude: x:{track.CurrentPositionX.ToString()}, y:{track.CurrentPositionY.ToString()}");
             *  Console.WriteLine($"Current altitude (Meters): {track.CurrentAltitude.ToString()}");
             *  Console.WriteLine($"Current Horizontal Velocity (m/s): {track.CurrentHorizontalVelocity.ToString()}");
             *  Console.WriteLine($"Current Compass Course: {track.CurrentCompassCourse}");
             *  Console.WriteLine( $"Timestamp: {track.TimeStamp.ToString()}\n");
             *
             * }
             */
            #endregion


            Console.ReadLine();
        }
        public void SetUp()
        {
            receiver    = Substitute.For <ITransponderReceiver>();
            fakefactory = Substitute.For <TrackFactory>();

            fakeAirspaceController = Substitute.For <ITracksInAirSpaceController>();
            uut = new ReceivedDataController(receiver, fakeAirspaceController);

            track = "ATR423;39045;12932;14000;20180404000000000";
        }
        public void AddFlight_FlightIsWithinAirspace_AddedToList()
        {
            var flightTrack = TrackFactory.CreateTestTrack();

            _flightValidator.Validate(_uut, flightTrack).Returns(true);

            _uut.Add(flightTrack);

            Assert.That(_eventToTest.Tracks.Count(t => t.Tag == flightTrack.Tag), Is.EqualTo(1));
        }
        public void AddFlight_FlightAddedEvent_EventIsRaised()
        {
            var flightTrack = TrackFactory.CreateTestTrack();

            _flightValidator.Validate(_uut, flightTrack).Returns(true);

            _uut.Add(flightTrack);

            Assert.That(_eventRaised, Is.EqualTo(true));
        }
        public void SetUp()
        {
            _tracksInAirspace = Substitute.For <ITracksInAirSpaceController>();
            _track            = Substitute.For <ITrack>();
            _trackFactory     = new TrackFactory();
            _receiver         = Substitute.For <ITransponderReceiver>();
            _airspace         = Substitute.For <IAirspace>();
            _sortingPlanes    = Substitute.For <ISortingPlanesController>();
            _display          = Substitute.For <IDisplay>();

            _driver = new ReceivedDataController(_receiver, _tracksInAirspace);
        }
Example #12
0
        static void Main(string[] args)
        {
            Console.CursorVisible = false;
            Console.SetWindowSize(200, 60);

            var trackFactory = new TrackFactory(TransponderReceiverFactory.CreateTransponderDataReceiver());
            var airspace     = new Airspace(trackFactory);
            var separation   = new Separation(airspace);

            new Output(trackFactory, airspace, separation);

            Console.ReadKey();
        }
Example #13
0
 private void Form2_Load(object sender, EventArgs e)
 {
     if (TrackFactory.Init())
     {
         TrackFactory.SetUserInfo("User_001", "管理员");
         TrackFactory.Host = pnlContainer;
     }
     else
     {
         BaseMessageBox.ShowCustomerMessage(MessageBoxIcon.Exclamation, "警告", "系统初始化失败!");
     }
     _patInfoWidth = pnlPatInfo.Width;
 }
Example #14
0
 public TrackRepository()
     : base("tracks.json")
 {
     _factory = new TrackFactory();
     if (_items.Count == 0)
     {
         var items = _factory.GetList();
         foreach (var item in items)
         {
             base.Insert(item);
         }
     }
 }
        /// <summary>
        /// Arrange the Design instance of the Music Collection
        /// for use as the unit test context.
        /// </summary>
        /// <returns>An instance of the Design time Music Collection</returns>
        internal static MusicCollection Arrange_Db()
        {
            //  Instantiate the factories for creating the objects
            var _artistFactory = new ArtistFactory();
            var _wikiFactory = new WikiFactory();
            var _albumFactory = new AlbumFactory(_artistFactory, _wikiFactory);
            var _trackFactory = new TrackFactory(_artistFactory, _albumFactory);
            var _imageFactory = new ImageFactory();

            //  Instantiate the DesignMusicCollection which contains static data, used at design time, 
            //return new DesignMusicCollection(_artistFactory, _albumFactory, _trackFactory, _imageFactory);

            return null;
        }
Example #16
0
        protected override void DecodeItem(byte channelId)
        {
            // The client version of this command gets the item information.
            var position = ReceiveUint();
            var index    = new TrackIndex {
                ChannelId = channelId, Position = position
            };

            var type        = DecodeTrackType();
            var description = ReceiveString();
            var entry       = TrackFactory.Create(type, description);

            Dispatch(new TrackAddArgs(index, entry));
        }
Example #17
0
 public void OnStringInput(string why, string what)
 {
     if (why == INPUT_NEW_PLAYLIST)
     {
         Playlist pls = Playlist.Create(what);
         lists.Add(pls);
     }
     if (why == INPUT_NEW_TRACK)
     {
         Track t = TrackFactory.GetFactory().CreateTrack(what);
         currentList.Add(t);
         currentList.Save();
         currentTrack = t;
     }
 }
        public void AddFlight_FlightWithSameTagIsAlreadyWithinList_FlightIsReplaced()
        {
            var _testTrack1 = new FlightTrack("ABC123", "25684", "68556", "6666", "20190320191050000");

            //Have to manually create track to avoid exception being thrown
            _uut.ListOfFlights.Add(_testTrack1);

            var flightTrack = TrackFactory.CreateTestTrack();

            _flightValidator.Validate(_uut, flightTrack).Returns(true);

            _uut.Add(flightTrack);

            Assert.That(_eventToTest.Tracks.Count(t => t.Tag == flightTrack.Tag), Is.EqualTo(1));
        }
Example #19
0
        public void HandleFlightAddedEvent_FlightIsAdded_EventIsHandled()
        {
            var flightTracks = new List <ITrack>()
            {
                TrackFactory.CreateTestTrack(),
                TrackFactory.CreateTestTrack()
            };

            _airspace.FlightAddedEvent += Raise.EventWith(new FlightAddedEventArg()
            {
                Tracks = flightTracks
            });

            Assert.That(_eventHandled, Is.True);
        }
Example #20
0
        public void HandleFlightAddedEvent_FlightsReceived_ListOfFlightReceived()
        {
            var flightTracks = new List <ITrack>()
            {
                TrackFactory.CreateTestTrack(),
                TrackFactory.CreateTestTrack()
            };

            _airspace.FlightAddedEvent += Raise.EventWith(new FlightAddedEventArg()
            {
                Tracks = flightTracks
            });

            Assert.That(_flightAddedEventArg.Tracks, Is.EqualTo(flightTracks));
        }
        public void AddFlight_FlightFromListIsNoLongerWithinAirspace_RemoveFlight()
        {
            //_uut.ListOfFlights.Add(TrackFactory.CreateTestTrack());

            var flightTrackInvalid = TrackFactory.CreateTestTrack();
            var flightTrackValid   = TrackFactory.CreateTestTrack();

            _flightValidator.Validate(_uut, flightTrackInvalid).Returns(false);
            _flightValidator.Validate(_uut, flightTrackValid).Returns(true);

            _uut.Add(flightTrackInvalid);
            _uut.Add(flightTrackValid);//Nødvendighed at indsætte et valid track så testen bliver testbar

            Assert.That(_eventToTest.Tracks.Count(t => t.Tag == flightTrackInvalid.Tag), Is.EqualTo(1));
        }
Example #22
0
        public StationFeedback(RequiredInformation requiredInfo, JToken feedbackData)
        {
            var thumbsUpData = feedbackData["thumbsUp"];

            if (thumbsUpData != null)
            {
                ThumbsUp = from thumbUp in thumbsUpData select TrackFactory.CreateTrack(requiredInfo, thumbUp);
            }

            var thumbsDownData = feedbackData["thumbsDown"];

            if (thumbsDownData != null)
            {
                ThumbsDown = from thumbDown in thumbsDownData select TrackFactory.CreateTrack(requiredInfo, thumbDown);
            }
        }
Example #23
0
        public void AddTrack(IAddTrackView inForm)
        {
            TrackRepository trackRepository = TrackRepository.GetInstance();

            if (inForm.ShowViewModal() == true)
            {
                try
                {
                    string Name = inForm.TrackName;
                    if (string.IsNullOrEmpty(Name))
                    {
                        throw new ArgumentException("Track name is not selected!");
                    }

                    string Location = inForm.TrackLocation;
                    if (string.IsNullOrEmpty(Location))
                    {
                        throw new ArgumentException("Location is not selected!");
                    }

                    int Length = inForm.TrackLength;

                    if (Length < 0)
                    {
                        throw new ArgumentException("Length value not supported!");
                    }

                    int ID = trackRepository.GetNewID();

                    Track newTrack = TrackFactory.CreateTrack(ID, Name, Location, Length);

                    trackRepository.AddTrack(newTrack);
                }
                catch (TrackAlreadyExistsException)
                {
                    MessageBox.Show("Track already exists!");
                }
                catch (ArgumentException ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
        }
Example #24
0
        public Track(RequiredInformation requiredInfo, JToken trackData)
        {
            RequiredInfo = requiredInfo;

            AlbumArtUrl   = trackData.Value <string>("albumArtUrl") ?? string.Empty;
            AlbumIdentity = trackData.Value <string>("albumIdentity") ?? string.Empty;
            AlbumName     = trackData.Value <string>("albumName") ?? string.Empty;
            AllowFeedback = trackData.Value <bool?>("allowFeedback") ?? false;
            ArtistName    = trackData.Value <string>("artistName") ?? string.Empty;

            var audioUrlMap = trackData["audioUrlMap"];

            if (audioUrlMap != null)
            {
                AudioUrlMap = TrackFactory.CreateAudioMap(audioUrlMap);
            }

            CategoryDescriptor = trackData.Value <string>("categoryDescriptor") ?? string.Empty;

            var dateCreated = trackData["dateCreated"];

            if (dateCreated != null)
            {
                DateCreated = Time.FromJavaTimeStamp(dateCreated.Value <double?>("time") ?? 0);
            }

            FeedbackId        = trackData.Value <string>("feedbackId") ?? string.Empty;
            IsFeatured        = trackData.Value <bool?>("isFeatured") ?? false;
            IsPositive        = trackData.Value <bool?>("isPositive") ?? false;
            MusicId           = trackData.Value <string>("musicId") ?? string.Empty;
            MusicToken        = trackData.Value <string>("musicToken") ?? string.Empty;
            PandoraId         = trackData.Value <string>("pandoraId") ?? string.Empty;
            PandoraType       = trackData.Value <string>("pandoraType") ?? string.Empty;
            ProgramDescriptor = trackData.Value <string>("programDescriptor") ?? string.Empty;
            SongIdentity      = trackData.Value <string>("songIdentity") ?? string.Empty;
            SongName          = trackData.Value <string>("songName") ?? string.Empty;
            SongRating        = trackData.Value <int?>("songRating") ?? 0;
            StationId         = trackData.Value <string>("stationId") ?? string.Empty;
            TrackGain         = double.Parse(trackData.Value <string>("trackGain") ?? "0", CultureInfo.InvariantCulture);
            TrackToken        = trackData.Value <string>("trackToken") ?? string.Empty;
            TrackType         = trackData.Value <string>("trackType") ?? string.Empty;
        }
        static void Main(string[] args)
        {
            var AirspaceConfiguration = XMLAirspaceConfiguration.LoadAirspace(@"../../../AirspaceConfiguration.xml");

            Airspace airspace = new Airspace();

            airspace.HighestAltitude      = AirspaceConfiguration.HighestAltitude;
            airspace.LowestAltitude       = AirspaceConfiguration.LowestAltitude;
            airspace.NorthEastXCoordinate = AirspaceConfiguration.NorthEastXCoordinate;
            airspace.NorthEastYCoordinate = AirspaceConfiguration.NorthEastYCoordinate;
            airspace.SouthWestXCoordinate = AirspaceConfiguration.SouthWestXCoordinate;
            airspace.SouthWestYCoordinate = AirspaceConfiguration.SouthWestYCoordinate;

            ITransponderReceiver        transponderReceiver        = TransponderReceiverFactory.CreateTransponderDataReceiver();
            ITrackFactory               trackFactory               = new TrackFactory();
            ITransponderDataReciever    transponderDataReciever    = new TransponderDataReceiver(transponderReceiver, trackFactory);
            IAirspaceTrackChecker       airspaceTrackChecker       = new AirspaceTrackChecker(airspace);
            IAirspaceController         airspaceController         = new AirspaceController.AirspaceController(transponderDataReciever, airspaceTrackChecker);
            ITrackRemover               trackRemover               = new TrackRemover();
            ITrackManagement            trackManagement            = new TrackManagement();
            IFlightManagement           flightManagement           = new FlightManagement.FlightManagement(airspaceController, trackRemover, trackManagement);
            ICompassCalculator          compassCalculator          = new CompassCalculator();
            ICourseAnalyzer             courseAnalyzer             = new CourseAnalyzer(compassCalculator);
            IDistanceCalculator         distanceCalculator         = new DistanceCalculator();
            ITimeSpanCalculator         timeSpanCalculator         = new TimeSpanCalculator();
            IVelocityCalculator         velocityCalculator         = new VelocityCalculator(timeSpanCalculator, distanceCalculator);
            IVelocityAnalyzer           velocityAnalyzer           = new VelocityAnalyzer(velocityCalculator);
            IFlightAnalyzer             flightAnalyzer             = new FlightAnalyzer.FlightAnalyzer(flightManagement, courseAnalyzer, velocityAnalyzer);
            IAltitudeDistanceCalculator altitudeDistanceCalculator = new AltitudeDistanceCalculator();
            ICollisionAnalyzer          collisionAnalyzer          = new CollisionAnalyzer(distanceCalculator, altitudeDistanceCalculator);
            ISeparationStringBuilder    separationStringBuilder    = new SeparationStringBuilder();
            ICollisionController        collisionController        = new CollisionController.CollisionController(flightManagement, collisionAnalyzer, separationStringBuilder);
            IDisplay               display          = new ConsoleDisplay(flightAnalyzer, collisionController);
            IFileWriter            fileWriter       = new FileWriter();
            var                    currentDirectory = Directory.GetCurrentDirectory();
            var                    path             = Path.Combine(currentDirectory, "SeparationLog.txt");
            ISeparationEventLogger logger           = new CollisionController.Logger(collisionController, path, fileWriter);

            Console.ReadLine();
        }
Example #26
0
        private IEnumerable <ITrack> RetrievePlaylist(string stationToken)
        {
            var result = new List <ITrack>();

            try
            {
                var retrievePlaylistRequest = new JSONRequest(
                    MethodNames.station_getPlaylist,
                    false,
                    RequiredInfo,
                    new KeyValuePair <string, object>("stationToken", stationToken));
                var res = new JSONResult(retrievePlaylistRequest.StringRequestAsync().Result);

                if (res.IsFault)
                {
                    Messenger.Default.Send(new FaultMessage(res.Fault.Message));
                    return(null);
                }

                var data = res.Result;
                foreach (var item in data["items"])
                {
                    if (item["songName"] == null)
                    {
                        continue;
                    }

                    result.Add(TrackFactory.CreateTrack(RequiredInfo, item));
                }
            }
            catch (Exception ex)
            {
                Messenger.Default.Send(new FaultMessage(ex.Message, ex));
                return(null);
            }

            return(result);
        }
Example #27
0
 private void btnWareHouseOutReg_Click(object sender, EventArgs e)
 {
     TrackFactory.SwitchToPage(EnumDef.PageSelector.WareHouseOutReg);
 }
Example #28
0
 private void btnHighValueDispatch_Click(object sender, EventArgs e)
 {
     TrackFactory.SwitchToPage(EnumDef.PageSelector.HighValueDispatchReg);
 }
Example #29
0
 private void btnUseReg_Click(object sender, EventArgs e)
 {
     TrackFactory.SwitchToPage(EnumDef.PageSelector.OperationUseReg);
 }
Example #30
0
 private void btnFrontUse_Click(object sender, EventArgs e)
 {
     TrackFactory.SwitchToPage(EnumDef.PageSelector.OPerationFrontUse);
 }
Example #31
0
 private void btnOperationNote_Click(object sender, EventArgs e)
 {
     TrackFactory.SwitchToPage(EnumDef.PageSelector.OperationNoteQuery);
 }