예제 #1
0
        public PinnedProject FindPinForAssembly(string assemblyName)
        {
            PinnedProject pinnedProject;

            if (IsAssemblyInPinnedRepo(assemblyName, out pinnedProject))
            {
                return(pinnedProject);
            }

            if (PinRegistry.IsAssemblyPinned(assemblyName))
            {
                var assembly = AssemblyRegistry.GetAssembly(assemblyName);
                if (assembly == null)
                {
                    throw new ApplicationException("I don't know where the assembly '" + assemblyName + "' is. Have you built it on your machine?");
                }

                return(new PinnedProject
                {
                    Pin = PinRegistry.GetAssemblyPin(assemblyName),
                    Project = assembly.Projects.OrderByDescending(p => p.Timestamp).First()
                });
            }

            return(null);
        }
예제 #2
0
        public bool IsAssemblyPinned(string assemblyName)
        {
            PinnedProject notUsed;

            return(PinRegistry.IsAssemblyPinned(assemblyName) || IsAssemblyInPinnedRepo(assemblyName, out notUsed));
        }