private ISourceControlFileSystemProvider GetUnderlyingTfsProvider()
        {
            if (_cachedTfsFileSystemProvider == null)
            {
                var assemblyDirectory = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);

                string assemblyName = VsVersionHelper.IsVisualStudio2010 ? "NuGet.TeamFoundationServer10.dll" : "NuGet.TeamFoundationServer.dll";

                try
                {
                    var assembly = Assembly.LoadFrom(Path.Combine(assemblyDirectory, assemblyName));
                    if (assembly != null)
                    {
                        var type = assembly.GetType(typeName, throwOnError: false);
                        if (type != null)
                        {
                            _cachedTfsFileSystemProvider = (ISourceControlFileSystemProvider)Activator.CreateInstance(type);
                        }
                    }
                }
                catch (Exception ex)
                {
                    ExceptionHelper.WriteToActivityLog(ex);
                    _cachedTfsFileSystemProvider = null;
                }
            }

            return _cachedTfsFileSystemProvider;
        }
Ejemplo n.º 2
0
        private ISourceControlFileSystemProvider GetUnderlyingTfsProvider()
        {
            if (_cachedTfsFileSystemProvider == null)
            {
                var assemblyDirectory = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);

                string assemblyName = VsVersionHelper.IsVisualStudio2010 ? "NuGet.TeamFoundationServer10.dll" : "NuGet.TeamFoundationServer.dll";

                try
                {
                    var assembly = Assembly.LoadFrom(Path.Combine(assemblyDirectory, assemblyName));
                    if (assembly != null)
                    {
                        var type = assembly.GetType(typeName, throwOnError: false);
                        if (type != null)
                        {
                            _cachedTfsFileSystemProvider = (ISourceControlFileSystemProvider)Activator.CreateInstance(type);
                        }
                    }
                }
                catch (Exception ex)
                {
                    ExceptionHelper.WriteToActivityLog(ex);
                    _cachedTfsFileSystemProvider = null;
                }
            }

            return(_cachedTfsFileSystemProvider);
        }
Ejemplo n.º 3
0
        private static IFileSystem GetFileSystemFromProvider(ISourceControlFileSystemProvider provider, string path, SourceControlBindings binding)
        {
            try {
                return provider.GetFileSystem(path, binding);
            }
            catch {
                // Ignore exceptions that can happen when some binaries are missing. e.g. TfsSourceControlFileSystemProvider
                // would throw a jitting error if TFS is not installed
            }

            return null;
        }
Ejemplo n.º 4
0
        private static IFileSystem GetFileSystemFromProvider(ISourceControlFileSystemProvider provider, string path, SourceControlBindings binding)
        {
            try {
                return(provider.GetFileSystem(path, binding));
            }
            catch {
                // Ignore exceptions that can happen when some binaries are missing. e.g. TfsSourceControlFileSystemProvider
                // would throw a jitting error if TFS is not installed
            }

            return(null);
        }
Ejemplo n.º 5
0
        private ISourceControlFileSystemProvider GetUnderlyingTfsProvider()
        {
            if (_cachedTfsFileSystemProvider == null)
            {
                string assemblyName;
                if (VsVersionHelper.IsVisualStudio2010)
                {
                    assemblyName = "NuGet.TeamFoundationServer10";
                }
                else if (VsVersionHelper.IsVisualStudio2012)
                {
                    assemblyName = "NuGet.TeamFoundationServer11";
                }
                else if (VsVersionHelper.IsVisualStudio2013)
                {
                    assemblyName = "NuGet.TeamFoundationServer12";
                }
                else
                {
                    var message = string.Format(
                        CultureInfo.CurrentCulture,
                        VsResources.Error_UnsupportedVSVersion,
                        VsVersionHelper.FullVsEdition);
                    throw new InvalidOperationException(message);
                }

                try
                {
                    Assembly assembly = RuntimeHelpers.LoadAssemblySmart(assemblyName);

                    if (assembly != null)
                    {
                        var type = assembly.GetType(typeName, throwOnError: false);
                        if (type != null)
                        {
                            _cachedTfsFileSystemProvider = (ISourceControlFileSystemProvider)Activator.CreateInstance(type);
                        }
                    }
                }
                catch (Exception ex)
                {
                    ExceptionHelper.WriteToActivityLog(ex);
                    _cachedTfsFileSystemProvider = null;
                }
            }

            return(_cachedTfsFileSystemProvider);
        }
        private ISourceControlFileSystemProvider GetUnderlyingTfsProvider()
        {
            if (_cachedTfsFileSystemProvider == null)
            {
                string assemblyName;

#if VS10 || VS11
                if (VsVersionHelper.IsVisualStudio2010)
                {
                    assemblyName = "NuGet.TeamFoundationServer10";
                }
                else 
                {
                    // VS 2012
                    assemblyName = "NuGet.TeamFoundationServer11";
                }
#endif

#if VS12
                assemblyName = "NuGet.TeamFoundationServer12";
#endif

#if VS14
                assemblyName = "NuGet.TeamFoundationServer14";
#endif

                try
                {
                    Assembly assembly = RuntimeHelpers.LoadAssemblySmart(assemblyName);

                    if (assembly != null)
                    {
                        var type = assembly.GetType(typeName, throwOnError: false);
                        if (type != null)
                        {
                            _cachedTfsFileSystemProvider = (ISourceControlFileSystemProvider)Activator.CreateInstance(type);
                        }
                    }
                }
                catch (Exception ex)
                {
                    ExceptionHelper.WriteToActivityLog(ex);
                    _cachedTfsFileSystemProvider = null;
                }
            }

            return _cachedTfsFileSystemProvider;
        }
        private ISourceControlFileSystemProvider GetUnderlyingTfsProvider()
        {
            if (_cachedTfsFileSystemProvider == null)
            {
                string assemblyName;
                if (VsVersionHelper.IsVisualStudio2010)
                {
                    assemblyName = "NuGet.TeamFoundationServer10";
                }
                else if (VsVersionHelper.IsVisualStudio2012)
                {
                    assemblyName = "NuGet.TeamFoundationServer11";
                }
                else if (VsVersionHelper.IsVisualStudio2013)
                {
                    assemblyName = "NuGet.TeamFoundationServer12";
                }
                else
                {
                    var message = string.Format(
                        CultureInfo.CurrentCulture,
                        VsResources.Error_UnsupportedVSVersion,
                        VsVersionHelper.FullVsEdition);
                    throw new InvalidOperationException(message);
                }

                try
                {
                    Assembly assembly = RuntimeHelpers.LoadAssemblySmart(assemblyName);

                    if (assembly != null)
                    {
                        var type = assembly.GetType(typeName, throwOnError: false);
                        if (type != null)
                        {
                            _cachedTfsFileSystemProvider = (ISourceControlFileSystemProvider)Activator.CreateInstance(type);
                        }
                    }
                }
                catch (Exception ex)
                {
                    ExceptionHelper.WriteToActivityLog(ex);
                    _cachedTfsFileSystemProvider = null;
                }
            }

            return _cachedTfsFileSystemProvider;
        }
        private ISourceControlFileSystemProvider GetUnderlyingTfsProvider()
        {
            if (_cachedTfsFileSystemProvider == null)
            {
                string assemblyName;

#if VS10 || VS11
                if (VsVersionHelper.IsVisualStudio2010)
                {
                    assemblyName = "NuGet.TeamFoundationServer10";
                }
                else
                {
                    // VS 2012
                    assemblyName = "NuGet.TeamFoundationServer11";
                }
#endif

#if VS12
                assemblyName = "NuGet.TeamFoundationServer12";
#endif

#if VS14
                assemblyName = "NuGet.TeamFoundationServer14";
#endif

                try
                {
                    Assembly assembly = RuntimeHelpers.LoadAssemblySmart(assemblyName);

                    if (assembly != null)
                    {
                        var type = assembly.GetType(typeName, throwOnError: false);
                        if (type != null)
                        {
                            _cachedTfsFileSystemProvider = (ISourceControlFileSystemProvider)Activator.CreateInstance(type);
                        }
                    }
                }
                catch (Exception ex)
                {
                    ExceptionHelper.WriteToActivityLog(ex);
                    _cachedTfsFileSystemProvider = null;
                }
            }

            return(_cachedTfsFileSystemProvider);
        }
Ejemplo n.º 9
0
        public ISourceControlFileSystem GetFileSystem(string path, SourceControlBindings binding)
        {
            ISourceControlFileSystemProvider tfsProvider = GetUnderlyingTfsProvider();

            return(tfsProvider != null?tfsProvider.GetFileSystem(path, binding) : null);
        }