code: public static synchronized <T> ThreadLocal<T> register(ThreadLocal<T> threadLocal) {
          threadLocals.add(threadLocal);
          return threadLocal;
      }
docs: Registers {@link ThreadLocal} objects in use by the AWS SDK so that their values can
  be removed via the {@link #remove()} method.
  
  <p>To avoid memory leaks and reduce contention this method should only be called when
  setting static final locations (for example finals in enums or static final fields).
  
  @param threadLocal ThreadLocal to register
  @return the input ThreadLocal