Esempio n. 1
0
 /// <summary>
 /// Parse the comm message and create build request.
 /// </summary>
 /// <param name="msg"></param>
 private void ProcessbuildRequest(CommMessage msg)
 {
     if (msg != null)
     {
         string requestFile = msg.Arguments[CommCommands.BuildReqArguements.PROJECT];
         requestFile = Path.Combine(this.CommunicationObject.GetBaseDirectory(), requestFile);
         if (File.Exists(requestFile))
         {
             try
             {
                 ClientRequestDO requestDO = ClientRequestDO.GenerateClientRequestFromXML(requestFile);
                 if (requestDO != null)
                 {
                     BuildRequestDO request = new BuildRequestDO
                     {
                         ClientID          = msg.Arguments[CommCommands.CLIENTDETAILS],
                         Language          = ParseLanguage(requestDO.Language),
                         FilesToBuild      = requestDO.BuildFiles.ToList(),
                         CompilerOptions   = requestDO.CompilerOptions,
                         ClientRequestFile = Path.GetFileName(requestFile)
                     };
                     this.Compile(request);
                 }
             }
             catch (Exception) { }
         }
     }
 }
Esempio n. 2
0
        /// <summary>
        /// Add files to current client request.
        /// </summary>
        /// <param name="isTestFile">Whether file is test file or build file.</param>
        private void AddFileToCurrentRequest(bool isTestFile = false)
        {
            var    items      = (List <ListItem>)BrowseRepositoryListBox.SelectedItems.Cast <ListItem>().ToList();
            string baseDir    = (string)this.CurrentDirectoryLabel.Content;
            int    filesAdded = 0;

            for (int i = 0; i < items.Count; i++)
            {
                if (items[i].Type == CommCommands.RepositoryArgs.FILENAME)
                {
                    HashSet <String> correctHashSet = null;
                    string           item           = baseDir + items[i].Item;
                    if (item.Length > 2)
                    {
                        item = item.Substring(2);
                    }
                    correctHashSet = isTestFile ? ClientRequestDO.GetCurrentRequest().TestDrivers : ClientRequestDO.GetCurrentRequest().BuildFiles;
                    filesAdded    += correctHashSet.Add(item) ? 1 : 0;
                }
            }
            if (isTestFile)
            {
                OutputToConsole(filesAdded + " files added to test drivers.");
            }
            else
            {
                OutputToConsole(filesAdded + " files added to build files.");
            }
        }
Esempio n. 3
0
 /// <summary>
 /// Create new build request automated.
 /// </summary>
 private void CreateNewBuildRequest()
 {
     this.ProcessNewRequest();
     ClientRequestDO.GetCurrentRequest().BuildFiles.Add(@"TestProjectWithWarnings\Warnings.cs");
     ClientRequestDO.GetCurrentRequest().BuildFiles.Add(@"TestProjectWithWarnings\TestDriver1.cs");
     ClientRequestDO.GetCurrentRequest().TestDrivers.Add(@"TestProjectWithWarnings\TestDriver1.cs");
     OutputToConsole("Added 2 files to build files and 1 to test driver.");
     OutputToConsole(@"\tTestProjectWithWarnings\Warnings.cs");
     OutputToConsole(@"\tTestProjectWithWarnings\TestDriver1.cs");
     OutputToConsole("TestDrivers => ");
     OutputToConsole(@"\tTestProjectWithWarnings\TestDriver1.cs");
     SaveNewRequestToRepository(true);
     BrowseRepositoryListBox.SelectedIndex = 1;
     BrowseDirectory(BrowseRepositoryListBox);
 }
Esempio n. 4
0
 /// <summary>
 /// Process new request.
 /// </summary>
 private void ProcessNewRequest()
 {
     if (ClientRequestDO.NewRequest())
     {
         OutputToConsole("New request created. You can add files to it.", MessagePassingCommunuication.Identity.Client);
         NewRequestBtn.Content     = "Cancel Request";
         AddBuildFileBtn.IsEnabled = true;
         AddTestFileBtn.IsEnabled  = true;
         SaveFileBtn.IsEnabled     = true;
     }
     else
     {
         ClientRequestDO.CancelRequest();
         OutputToConsole("Request canceled.", MessagePassingCommunuication.Identity.Client);
         NewRequestBtn.Content     = "New Request";
         AddBuildFileBtn.IsEnabled = false;
         AddTestFileBtn.IsEnabled  = false;
         SaveFileBtn.IsEnabled     = false;
     }
 }
Esempio n. 5
0
 /// <summary>
 /// Logic to send file to repository.
 /// </summary>
 private void SaveNewRequestToRepository(bool displayXMLToConsole = false)
 {
     try
     {
         string fileName  = "ClientReq_" + DateTime.Now.ToString("ddMMyy_hhmmss") + ".xml";
         bool   fileSaved = false;
         if (ClientRequestDO.GetCurrentRequest() != null)
         {
             ClientRequestDO.GenerateXML(fileName, out string xmlOutput);
             if (displayXMLToConsole)
             {
                 OutputToConsole(xmlOutput);
             }
         }
         if (File.Exists(fileName))
         {
             fileSaved = this.dispatcher.SendFile(fileName, this.dispatcher.GetURL(Identity.Repository));
             if (fileSaved)
             {
                 File.Delete(fileName);
                 NewRequestBtn.Content     = "New Request";
                 AddBuildFileBtn.IsEnabled = false;
                 AddTestFileBtn.IsEnabled  = false;
                 SaveFileBtn.IsEnabled     = false;
                 OutputToConsole("Client request saved to repository: " + fileName);
             }
             else
             {
                 OutputToConsole("Something went wrong. File (" + fileName + ") not saved.");
             }
         }
     }
     catch (Exception)
     {
     }
 }