Esempio n. 1
0
        private static int RunAddReference(AddReferenceOptions options)
        {
            var solution = LoadSolution(options);
            var project  = FindProject(solution, options.Project) as CPlusPlusProject;

            if (project != null)
            {
                var currentReference = project.References.Where(r => r.Name == options.Name).FirstOrDefault();

                if (currentReference != null)
                {
                    project.UnloadedReferences[project.References.IndexOf(currentReference)] = new Reference
                    {
                        Name     = options.Name,
                        GitUrl   = options.GitUrl,
                        Revision = options.Revision
                    };
                    Console.WriteLine("Reference successfully updated.");
                }
                else
                {
                    var add = true;

                    if (string.IsNullOrEmpty(options.GitUrl))
                    {
                        var reference = FindProject(solution, options.Name);

                        if (reference == null)
                        {
                            add = false;
                        }
                    }

                    if (add)
                    {
                        project.UnloadedReferences.Add(new Reference
                        {
                            Name     = options.Name,
                            GitUrl   = options.GitUrl,
                            Revision = options.Revision
                        });
                        Console.WriteLine("Reference added successfully.");
                    }
                    else
                    {
                        Console.WriteLine("Local reference does not exist, try creating the project first.");
                    }
                }

                project.Save();
            }

            return(1);
        }
Esempio n. 2
0
		private static int RunAddReference(AddReferenceOptions options)
		{
			var solution = LoadSolution(options);
			var project = FindProject(solution, options.Project) as CPlusPlusProject;

			if (project != null)
			{
				var currentReference = project.References.Where(r => r.Name == options.Name).FirstOrDefault();

				if (currentReference != null)
				{
					project.UnloadedReferences[project.References.IndexOf(currentReference)] = new Reference
					{
						Name = options.Name,
						GitUrl = options.GitUrl,
						Revision = options.Revision
					};
					Console.WriteLine("Reference successfully updated.");
				}
				else
				{
					var add = true;

					if (string.IsNullOrEmpty(options.GitUrl))
					{
						var reference = FindProject(solution, options.Name);

						if (reference == null)
						{
							add = false;
						}
					}

					if (add)
					{
						project.UnloadedReferences.Add(new Reference
						{
							Name = options.Name,
							GitUrl = options.GitUrl,
							Revision = options.Revision
						});
						Console.WriteLine("Reference added successfully.");
					}
					else
					{
						Console.WriteLine("Local reference does not exist, try creating the project first.");
					}
				}

				project.Save();
			}

			return 1;
		}