nothing special - maybe different settings...
here it depends on the tool if 'blame' works in an useful manner (in case
of moved parts).

regards,
gerhard



2012/6/13 Mark Struberg <[email protected]>

> btw, what git client do you use?
>
> When moving methods you create 100% inserts. Normally (with the git cmd
> line client) moving a method preserves the history.
> Will try with mine quickly.
>
>
> LieGrue,
> strub
>
>
>
> ----- Original Message -----
> > From: "[email protected]" <[email protected]>
> > To: [email protected]
> > Cc:
> > Sent: Wednesday, June 13, 2012 12:06 AM
> > Subject: git commit: DELTASPIKE-191 additional hints
> >
> > Updated Branches:
> >   refs/heads/master 6d7f4c936 -> c0f45e4ba
> >
> >
> > DELTASPIKE-191 additional hints
> >
> >
> > Project:
> http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/repo
> > Commit:
> >
> http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/commit/c0f45e4b
> > Tree:
> http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/tree/c0f45e4b
> > Diff:
> http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/diff/c0f45e4b
> >
> > Branch: refs/heads/master
> > Commit: c0f45e4ba2c89cb4318f43bbf3d21ef66eed4261
> > Parents: 6d7f4c9
> > Author: gpetracek <[email protected]>
> > Authored: Wed Jun 13 00:04:27 2012 +0200
> > Committer: gpetracek <[email protected]>
> > Committed: Wed Jun 13 00:04:27 2012 +0200
> >
> > ----------------------------------------------------------------------
> > .../core/api/provider/BeanManagerProvider.java     |   77 ++++++++-------
> > 1 files changed, 40 insertions(+), 37 deletions(-)
> > ----------------------------------------------------------------------
> >
> >
> >
> http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/blob/c0f45e4b/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/provider/BeanManagerProvider.java
> > ----------------------------------------------------------------------
> > diff --git
> >
> a/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/provider/BeanManagerProvider.java
> >
> b/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/provider/BeanManagerProvider.java
> > index 023b25a..089260a 100644
> > ---
> >
> a/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/provider/BeanManagerProvider.java
> > +++
> >
> b/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/provider/BeanManagerProvider.java
> > @@ -51,16 +51,15 @@ import org.apache.deltaspike.core.util.ClassUtils;
> >   * <p><b>Attention:</b> This method is intended for being
> > used in user code at runtime.
> >   * If this method gets used during Container boot (in an Extension),
> > non-portable
> >   * behaviour results. During bootstrapping an Extension shall @Inject
> > BeanManager to get
> > - * access to the underlying BeanManager (see e.g. {@link
> > #cleanFinalBeanManagerMap(AfterDeploymentValidation)} ).
> > + * access to the underlying BeanManager (see e.g. {@link
> > #cleanupFinalBeanManagers} ).
> >   * This is the only way to guarantee to get the right
> >   * BeanManager in more complex Container scenarios.</p>
> >   */
> > public class BeanManagerProvider implements Extension
> > {
> > -    private static BeanManagerProvider bmpSingleton = null;
> > -
> >      private static Logger logger =
> > Logger.getLogger(BeanManagerProvider.class.getName());
> >
> > +    private static BeanManagerProvider bmpSingleton = null;
> >
> >      /**
> >       * This data container is used for storing the BeanManager for each
> > @@ -95,8 +94,6 @@ public class BeanManagerProvider implements Extension
> >       */
> >      private volatile Map<ClassLoader, BeanManagerInfo> bmInfos = new
> > ConcurrentHashMap<ClassLoader, BeanManagerInfo>();
> >
> > -
> > -
> >      /**
> >       * Returns if the {@link BeanManagerProvider} has been initialized.
> >       * Usually it isn't needed to call this method in application code.
> > @@ -128,6 +125,7 @@ public class BeanManagerProvider implements Extension
> >              // CodiStartupBroadcaster.broadcastStartup();
> >              // here bmp might not be null (depends on the broadcasters)
> >          }
> > +
> >          if (bmpSingleton == null)
> >          {
> >              throw new IllegalStateException("No " +
> > BeanManagerProvider.class.getName() + " in place! " +
> > @@ -149,34 +147,11 @@ public class BeanManagerProvider implements
> Extension
> >      {
> >          setBeanManagerProvider(this);
> >
> > -        ClassLoader cl = ClassUtils.getClassLoader(null);
> > -        BeanManagerInfo bmi = getBeanManagerInfo(cl);
> > +        BeanManagerInfo bmi =
> > getBeanManagerInfo(ClassUtils.getClassLoader(null));
> >          bmi.loadTimeBm =  beanManager;
> >      }
> >
> >      /**
> > -     * Get or create the BeanManagerInfo for the given ClassLoader
> > -     */
> > -    private BeanManagerInfo getBeanManagerInfo(ClassLoader cl)
> > -    {
> > -        BeanManagerInfo bmi = bmpSingleton.bmInfos.get(cl);
> > -        if (bmi == null)
> > -        {
> > -            synchronized (this)
> > -            {
> > -                bmi = bmpSingleton.bmInfos.get(cl);
> > -                if (bmi == null)
> > -                {
> > -                    bmi = new BeanManagerInfo();
> > -                    bmpSingleton.bmInfos.put(cl, bmi);
> > -                }
> > -            }
> > -        }
> > -
> > -        return bmi;
> > -    }
> > -
> > -    /**
> >       * The active {@link BeanManager} for the current application
> (/{@link
> > ClassLoader}). This method will throw an
> >       * {@link IllegalStateException} if the BeanManager cannot be found.
> >       *
> > @@ -185,11 +160,9 @@ public class BeanManagerProvider implements
> Extension
> >       */
> >      public BeanManager getBeanManager()
> >      {
> > -        ClassLoader classLoader = ClassUtils.getClassLoader(null);
> > +        BeanManagerInfo bmi =
> > getBeanManagerInfo(ClassUtils.getClassLoader(null));
> >
> > -        BeanManagerInfo bmi = getBeanManagerInfo(classLoader);
> > -
> > -        // warn the user if he tries to use the BeanManager before
> container
> > starupt
> > +        // warn the user if he tries to use the BeanManager before
> container
> > startup
> >          if (!bmi.booted)
> >          {
> >              logger.warning("When using the BeanManager to retrieve Beans
> > before the Container is started," +
> > @@ -207,18 +180,21 @@ public class BeanManagerProvider implements
> Extension
> >                  {
> >                      // first we look for a BeanManager from JNDI
> >                      result = resolveBeanManagerViaJndi();
> > +
> >                      if (result == null)
> >                      {
> >                          // if none found, we take the one we got from
> the
> > Extension loading
> >                          result = bmi.loadTimeBm;
> >                      }
> > +
> >                      if (result == null)
> >                      {
> >                          throw new IllegalStateException("Unable to find
> > BeanManager. " +
> >                                  "Please ensure that you configured the
> CDI
> > implementation of your choice properly.");
> >                      }
> >
> > -                    // finally store the resolved BeanManager in the
> result
> > cache
> > +                    // store the resolved BeanManager in the result
> cache until
> > #cleanupFinalBeanManagers gets called
> > +                    // -> afterwards the next call of #getBeanManager
> will
> > trigger the final lookup
> >                      bmi.finalBm = result;
> >                  }
> >              }
> > @@ -227,7 +203,6 @@ public class BeanManagerProvider implements Extension
> >          return result;
> >      }
> >
> > -
> >      /**
> >       * By cleaning the final BeanManager map after the Deployment got
> > Validated,
> >       * we prevent premature loading of information from JNDI in cases
> where the
> > @@ -236,12 +211,17 @@ public class BeanManagerProvider implements
> Extension
> >       * This might happen if someone uses the BeanManagerProvider during
> > Extension
> >       * startup.
> >       */
> > -    public void cleanFinalBeanManagerMap(@Observes
> AfterDeploymentValidation
> > adv)
> > +    public void cleanupFinalBeanManagers(@Observes
> AfterDeploymentValidation
> > adv)
> >      {
> >          for (BeanManagerInfo bmi : bmpSingleton.bmInfos.values())
> >          {
> >              bmi.finalBm = null;
> >              bmi.booted = true;
> > +
> > +            /*possible issue with >weld< based servers:
> > +            if #getBeanManager gets called in a custom
> > AfterDeploymentValidation observer >after< this observer,
> > +            the wrong bean-manager might get stored (not deterministic
> due to
> > the unspecified order of observers).
> > +            finally a bean-manager for a single bda will be stored and
> returned
> > (which isn't the bm exposed via jndi).*/
> >          }
> >      }
> >
> > @@ -264,7 +244,7 @@ public class BeanManagerProvider implements Extension
> >       *
> >       * @return current {@link BeanManager} which is provided via JNDI
> >       */
> > -    BeanManager resolveBeanManagerViaJndi()
> > +    private BeanManager resolveBeanManagerViaJndi()
> >      {
> >          try
> >          {
> > @@ -280,6 +260,29 @@ public class BeanManagerProvider implements
> Extension
> >      }
> >
> >      /**
> > +     * Get or create the BeanManagerInfo for the given ClassLoader
> > +     */
> > +    private BeanManagerInfo getBeanManagerInfo(ClassLoader cl)
> > +    {
> > +        BeanManagerInfo bmi = bmpSingleton.bmInfos.get(cl);
> > +
> > +        if (bmi == null)
> > +        {
> > +            synchronized (this)
> > +            {
> > +                bmi = bmpSingleton.bmInfos.get(cl);
> > +                if (bmi == null)
> > +                {
> > +                    bmi = new BeanManagerInfo();
> > +                    bmpSingleton.bmInfos.put(cl, bmi);
> > +                }
> > +            }
> > +        }
> > +
> > +        return bmi;
> > +    }
> > +
> > +    /**
> >       * This function exists to prevent findbugs to complain about
> >       * setting a static member from a non-static function.
> >       *
> >
>

Reply via email to