Registers the {@link Interval} converter.
@param builder The GSON builder to register the converter with.
@return A reference to {@code builder}.
508660
public static GsonBuilder registerInterval(GsonBuilder builder)
  {
    if (builder == null) { throw new NullPointerException("builder cannot be null"); }

    builder.registerTypeAdapter(INTERVAL_TYPE, new IntervalConverter());

    return builder;
  }
931946
@Nonnull
	public static LSrtIntConsumer srtIntConsumerFrom(Consumer<LSrtIntConsumerBuilder> buildingFunction) {
		LSrtIntConsumerBuilder builder = new LSrtIntConsumerBuilder();
		buildingFunction.accept(builder);
		return builder.build();
	}
435794
public <T extends AbstractGoogleJsonClient.Builder> T fromApiKey(T builder, String apiKey) {
    Preconditions.checkNotNull(builder);
    Preconditions.checkNotNull(apiKey);
    return prepareBuilder(builder, null, new CommonGoogleClientRequestInitializer(apiKey));
  }
1191324
@Nonnull
	public static <T> LToCharFunction<T> toCharFunctionFrom(Consumer<LToCharFunctionBuilder<T>> buildingFunction) {
		LToCharFunctionBuilder builder = new LToCharFunctionBuilder();
		buildingFunction.accept(builder);
		return builder.build();
	}
880713
public IntervalConverter getIntervalConverter(Object object) {
        IntervalConverter converter =
            (IntervalConverter)iIntervalConverters.select(object == null ? null : object.getClass());
        if (converter != null) {
            return converter;
        }
        throw new IllegalArgumentException("No interval converter found for type: " +
            (object == null ? "null" : object.getClass().getName()));
    }
34059
public ComponentBuilder moveComponent(final ComponentBuilder builder) {
        if (builder.getAnalysisJobBuilder() != this) {
            builder.getAnalysisJobBuilder().removeComponent(builder);

            // when moving the component to a different scope we need to first
            // reset
            // the prior input
            builder.clearInputColumns();

            addComponent(builder);
            builder.setAnalysisJobBuilder(this);
        }

        return builder;
    }
15726
@Nonnull
	public static <T> ToIntFunction<T> toIntFunctionFrom(Consumer<ToIntFunctionBuilder<T>> buildingFunction) {
		ToIntFunctionBuilder builder = new ToIntFunctionBuilder();
		buildingFunction.accept(builder);
		return builder.build();
	}
1095216
public static GsonBuilder registerDateTime(GsonBuilder builder)
  {
    if (builder == null) { throw new NullPointerException("builder cannot be null"); }

    builder.registerTypeAdapter(DATE_TIME_TYPE, new DateTimeConverter());

    return builder;
  }
582591
@Nonnull
	public static <T1, T2, R> LBiObjFltFunction<T1, T2, R> biObjFltFunctionFrom(Consumer<LBiObjFltFunctionBuilder<T1, T2, R>> buildingFunction) {
		LBiObjFltFunctionBuilder builder = new LBiObjFltFunctionBuilder();
		buildingFunction.accept(builder);
		return builder.build();
	}
1177600
@Nonnull
	public static IntSupplier intSupplierFrom(Consumer<IntSupplierBuilder> buildingFunction) {
		IntSupplierBuilder builder = new IntSupplierBuilder();
		buildingFunction.accept(builder);
		return builder.build();
	}
808765
@Nonnull
	public static <T1, T2, R> LBiObjCharFunction<T1, T2, R> biObjCharFunctionFrom(Consumer<LBiObjCharFunctionBuilder<T1, T2, R>> buildingFunction) {
		LBiObjCharFunctionBuilder builder = new LBiObjCharFunctionBuilder();
		buildingFunction.accept(builder);
		return builder.build();
	}
175003
private void configureRetryIntervalFunction(BackendProperties properties, RetryConfig.Builder<Object> builder) {
		if (properties.getWaitDuration() != 0) {
			long waitDuration = properties.getWaitDuration();
			if (properties.getEnableExponentialBackoff()) {
				if (properties.getExponentialBackoffMultiplier() != 0) {
					builder.intervalFunction(IntervalFunction.ofExponentialBackoff(waitDuration, properties.getExponentialBackoffMultiplier()));
				} else {
					builder.intervalFunction(IntervalFunction.ofExponentialBackoff(properties.getWaitDuration()));
				}
			} else if (properties.getEnableRandomizedWait()) {
				if (properties.getRandomizedWaitFactor() != 0) {
					builder.intervalFunction(IntervalFunction.ofRandomized(waitDuration, properties.getRandomizedWaitFactor()));
				} else {
					builder.intervalFunction(IntervalFunction.ofRandomized(waitDuration));
				}
			} else {
				builder.waitDuration(Duration.ofMillis(properties.getWaitDuration()));
			}
		}
	}
503551
public <T> void registerConverter(final Class<T> clazz, final CellConverterFactory<T> converterFactory) {
        ArgUtils.notNull(clazz, "clazz");
        ArgUtils.notNull(converterFactory, "converterFactory");
        
        converterFactoryMap.put(clazz, converterFactory);
    }
855064
@Nonnull
	public static LLongToFltFunction longToFltFunctionFrom(Consumer<LLongToFltFunctionBuilder> buildingFunction) {
		LLongToFltFunctionBuilder builder = new LLongToFltFunctionBuilder();
		buildingFunction.accept(builder);
		return builder.build();
	}
246734
@Nonnull
	public static <T, R> LObjIntBoolFunction<T, R> objIntBoolFunctionFrom(Consumer<LObjIntBoolFunctionBuilder<T, R>> buildingFunction) {
		LObjIntBoolFunctionBuilder builder = new LObjIntBoolFunctionBuilder();
		buildingFunction.accept(builder);
		return builder.build();
	}
701891
public final <S, T> void registerConverter(ConverterKey<S,T> key, Converter<S, T> converter) {	

        if (key.getInputClass() == null) {
            throw new IllegalArgumentException("Input Class must not be null");
        }
        if (key.getOutputClass() == null) {
            throw new IllegalArgumentException("Output Class must not be null");
        }
        if (converter == null) {
            throw new IllegalArgumentException("Converter must not be null");
        }

        if (key.getQualifierAnnotation() == null) {
            throw new IllegalArgumentException("Qualifier must not be null");
        }

        Converter<?,?> old = registeredConverters.putIfAbsent(key, converter);
        if (old != null && (!isSameConverter(old, converter))) {
        	throw new IllegalStateException("Converter already registered for key: " + key);
        }
    }
1203748
public static @NonNull GsonBuilder populate(final @NonNull GsonBuilder builder) {
    builder
      .registerTypeHierarchyAdapter(Component.class, INSTANCE)
      .registerTypeAdapter(ClickEvent.Action.class, new NameMapSerializer<>("click action", ClickEvent.Action.NAMES))
      .registerTypeAdapter(HoverEvent.Action.class, new NameMapSerializer<>("hover action", HoverEvent.Action.NAMES))
      .registerTypeAdapter(TextColorWrapper.class, new TextColorWrapper.Serializer())
      .registerTypeAdapter(TextColor.class, new NameMapSerializer<>("text color", TextColor.NAMES))
      .registerTypeAdapter(TextDecoration.class, new NameMapSerializer<>("text decoration", TextDecoration.NAMES));
    return builder;
  }