Exemplo n.º 1
0
 /// <summary>
 /// Initialization of the package; this method is called right after the package is sited, so this is the place
 /// where you can put all the initilaization code that rely on services provided by VisualStudio.
 /// </summary>
 public static void Initialize(IServiceProvider serviceProvider)
 {
     lock (syncLock)
     {
         try
         {
             if (!initialized)
             {
                 LogWriterFactory.AddVSListeners();
                 if (serviceProvider is Package)
                 {
                     RuntimeHelper.ServiceProvider = serviceProvider;
                     monitor = new ProjectMappingManagerMonitor(serviceProvider, ProjectMappingManager.Instance);
                     LoadAssemblies();
                     InitializeServices(serviceProvider);
                     initialized = true;
                 }
             }
         }
         catch (Exception e)
         {
             Logger.Write(e);
         }
     }
 }
Exemplo n.º 2
0
 /// <summary>
 /// Release resources.
 /// </summary>
 public static void Shutdown()
 {
     lock (syncLock)
     {
         try
         {
             if (initialized &&
                 monitor != null)
             {
                 monitor.Dispose();
                 monitor = null;
             }
             GlobalCache.Reset();
             initialized = false;
         }
         catch (Exception e)
         {
             Logger.Write(e);
         }
     }
 }