Package org.jboss.forge.furnace.lifecycle

Examples of org.jboss.forge.furnace.lifecycle.AddonLifecycleProvider


         long start = System.currentTimeMillis();

         lifecycleProviderEntry = detectLifecycleProvider();
         if (lifecycleProviderEntry != null)
         {
            final AddonLifecycleProvider lifecycleProvider = lifecycleProviderEntry.getProvider();
            ClassLoaders.executeIn(addon.getClassLoader(), new Callable<Void>()
            {
               @Override
               public Void call() throws Exception
               {
                  lifecycleProvider.initialize(furnace, furnace.getAddonRegistry(getRepositories()),
                           lifecycleProviderEntry.getAddon());
                  lifecycleProvider.start(addon);
                  stateManager.setServiceRegistry(addon, lifecycleProvider.getServiceRegistry(addon));
                  stateManager.setEventManager(addon, lifecycleProvider.getEventManager(addon));

                  for (AddonDependency dependency : addon.getDependencies())
                  {
                     if (dependency.getDependency().getStatus().isLoaded())
                        Addons.waitUntilStarted(dependency.getDependency());
                  }

                  lifecycleProvider.postStartup(addon);
                  for (AddonView view : stateManager.getViewsOf(addon))
                  {
                     for (Addon a : view.getAddons(notThisAddonFilter))
                     {
                        a.getEventManager().fireEvent(new PostStartup(addon));
View Full Code Here


         logger.info("< Stopping container [" + addon.getId() + "] [" + addon.getRepository().getRootDirectory() + "]");
         long start = System.currentTimeMillis();

         if (lifecycleProviderEntry != null)
         {
            final AddonLifecycleProvider lifecycleProvider = lifecycleProviderEntry.getProvider();
            ClassLoaders.executeIn(addon.getClassLoader(), new Callable<Void>()
            {

               @Override
               public Void call() throws Exception
               {
                  try
                  {
                     for (AddonView view : stateManager.getViewsOf(addon))
                     {
                        for (Addon a : view.getAddons(notThisAddonFilter))
                        {
                           try
                           {
                              a.getEventManager().fireEvent(new PreShutdown(addon));
                           }
                           catch (Throwable t)
                           {
                              logger.log(Level.FINE, "Failed to execute pre-shutdown task for [" + addon
                                       + "] in event manager from " + a.getId(), t);
                           }
                        }
                     }
                     lifecycleProvider.preShutdown(addon);
                  }
                  catch (Throwable e)
                  {
                     logger.log(Level.FINE, "Failed to execute pre-shutdown task for [" + addon + "]", e);
                  }
                  lifecycleProvider.stop(addon);
                  return null;
               }
            });
         }
View Full Code Here

                        AddonLifecycleProvider.class, classLoader);

               Iterator<AddonLifecycleProvider> iterator = serviceLoader.iterator();
               while (serviceLoader != null && iterator.hasNext())
               {
                  AddonLifecycleProvider provider = iterator.next();

                  if (ClassLoaders.ownsClass(classLoader, provider.getClass()))
                  {
                     ControlType controlType = provider.getControlType();
                     if (ControlType.ALL.equals(controlType))
                     {
                        result = new AddonLifecycleProviderEntry(addon, provider);
                     }
                     if (ControlType.SELF.equals(controlType))
View Full Code Here

                     AddonLifecycleProvider.class, classLoader);

            Iterator<AddonLifecycleProvider> iterator = serviceLoader.iterator();
            if (serviceLoader != null && iterator.hasNext())
            {
               AddonLifecycleProvider provider = iterator.next();
               if (ClassLoaders.ownsClass(classLoader, provider.getClass()))
               {
                  if (ControlType.ALL.equals(provider.getControlType()))
                  {
                     result = new AddonLifecycleProviderEntry(dependency, provider);
                  }
                  if (ControlType.DEPENDENTS.equals(provider.getControlType()))
                  {
                     result = new AddonLifecycleProviderEntry(dependency, provider);
                  }

                  if (result != null && iterator.hasNext())
View Full Code Here

         long start = System.currentTimeMillis();

         lifecycleProviderEntry = detectLifecycleProvider();
         if (lifecycleProviderEntry != null)
         {
            final AddonLifecycleProvider lifecycleProvider = lifecycleProviderEntry.getProvider();
            ClassLoaders.executeIn(addon.getClassLoader(), new Callable<Void>()
            {
               @Override
               public Void call() throws Exception
               {
                  lifecycleProvider.initialize(furnace, furnace.getAddonRegistry(getRepositories()),
                           lifecycleProviderEntry.getAddon());
                  lifecycleProvider.start(addon);
                  stateManager.setServiceRegistry(addon, lifecycleProvider.getServiceRegistry(addon));

                  for (AddonDependency dependency : addon.getDependencies())
                  {
                     if (dependency.getDependency().getStatus().isLoaded())
                        Addons.waitUntilStarted(dependency.getDependency());
                  }

                  lifecycleProvider.postStartup(addon);
                  return null;
               }
            });
         }
View Full Code Here

         logger.info("< Stopping container [" + addon.getId() + "] [" + addon.getRepository().getRootDirectory() + "]");
         long start = System.currentTimeMillis();

         if (lifecycleProviderEntry != null)
         {
            final AddonLifecycleProvider lifecycleProvider = lifecycleProviderEntry.getProvider();
            ClassLoaders.executeIn(addon.getClassLoader(), new Callable<Void>()
            {
               @Override
               public Void call() throws Exception
               {
                  try
                  {
                     lifecycleProvider.postStartup(addon);
                  }
                  catch (Throwable e)
                  {
                     logger.log(Level.SEVERE, "Failed to execute pre-shutdown task for [" + addon + "]", e);
                  }
                  lifecycleProvider.stop(addon);
                  return null;
               }
            });
         }
View Full Code Here

                        AddonLifecycleProvider.class, classLoader);

               Iterator<AddonLifecycleProvider> iterator = serviceLoader.iterator();
               if (serviceLoader != null && iterator.hasNext())
               {
                  AddonLifecycleProvider provider = iterator.next();

                  if (ClassLoaders.ownsClass(classLoader, provider.getClass()))
                  {
                     if (ControlType.ALL.equals(provider.getControlType()))
                     {
                        result = new AddonLifecycleProviderEntry(addon, provider);
                     }
                     if (ControlType.SELF.equals(provider.getControlType()))
                     {
                        result = new AddonLifecycleProviderEntry(addon, provider);
                     }

                     if (result != null && iterator.hasNext())
View Full Code Here

                     AddonLifecycleProvider.class, classLoader);

            Iterator<AddonLifecycleProvider> iterator = serviceLoader.iterator();
            if (serviceLoader != null && iterator.hasNext())
            {
               AddonLifecycleProvider provider = iterator.next();
               if (ClassLoaders.ownsClass(classLoader, provider.getClass()))
               {
                  if (ControlType.ALL.equals(provider.getControlType()))
                  {
                     result = new AddonLifecycleProviderEntry(dependency, provider);
                  }
                  if (ControlType.DEPENDENTS.equals(provider.getControlType()))
                  {
                     result = new AddonLifecycleProviderEntry(dependency, provider);
                  }

                  if (result != null && iterator.hasNext())
View Full Code Here

         long start = System.currentTimeMillis();

         lifecycleProviderEntry = detectLifecycleProvider();
         if (lifecycleProviderEntry != null)
         {
            final AddonLifecycleProvider lifecycleProvider = lifecycleProviderEntry.getProvider();
            ClassLoaders.executeIn(addon.getClassLoader(), new Callable<Void>()
            {
               @Override
               public Void call() throws Exception
               {
                  lifecycleProvider.initialize(furnace, furnace.getAddonRegistry(getRepositories()),
                           lifecycleProviderEntry.getAddon());
                  lifecycleProvider.start(addon);
                  stateManager.setServiceRegistry(addon, lifecycleProvider.getServiceRegistry(addon));
                  stateManager.setEventManager(addon, lifecycleProvider.getEventManager(addon));

                  for (AddonDependency dependency : addon.getDependencies())
                  {
                     if (dependency.getDependency().getStatus().isLoaded())
                        Addons.waitUntilStarted(dependency.getDependency());
                  }

                  lifecycleProvider.postStartup(addon);
                  return null;
               }
            });
         }
View Full Code Here

         logger.info("< Stopping container [" + addon.getId() + "] [" + addon.getRepository().getRootDirectory() + "]");
         long start = System.currentTimeMillis();

         if (lifecycleProviderEntry != null)
         {
            final AddonLifecycleProvider lifecycleProvider = lifecycleProviderEntry.getProvider();
            ClassLoaders.executeIn(addon.getClassLoader(), new Callable<Void>()
            {
               @Override
               public Void call() throws Exception
               {
                  try
                  {
                     lifecycleProvider.preShutdown(addon);
                  }
                  catch (Throwable e)
                  {
                     logger.log(Level.FINE, "Failed to execute pre-shutdown task for [" + addon + "]", e);
                  }
                  lifecycleProvider.stop(addon);
                  return null;
               }
            });
         }
View Full Code Here

TOP

Related Classes of org.jboss.forge.furnace.lifecycle.AddonLifecycleProvider

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.