Source:
public Analytics build() { Gson gson = new GsonBuilder() .registerTypeAdapterFactory(new AutoValueAdapterFactory()) .registerTypeAdapter(Date.class, new ISO8601DateAdapter()) .create(); if (endpoint == null) { endpoint = DEFAULT_ENDPOINT; } if (client == null) { client = Platform.get().defaultClient(); } if (log == null) { log = Log.NONE; } if (flushIntervalInMillis == 0) { flushIntervalInMillis = Platform.get().defaultFlushIntervalInMillis(); } if (flushQueueSize == 0) { flushQueueSize = Platform.get().defaultFlushQueueSize(); } if (messageTransformers == null) { messageTransformers = Collections.emptyList(); } else { messageTransformers = Collections.unmodifiableList(messageTransformers); } if (messageInterceptors == null) { messageInterceptors = Collections.emptyList(); } else { messageInterceptors = Collections.unmodifiableList(messageInterceptors); } if (networkExecutor == null) { networkExecutor = Platform.get().defaultNetworkExecutor(); } if (threadFactory == null) { threadFactory = Platform.get().defaultThreadFactory(); } if (callbacks == null) { callbacks = Collections.emptyList(); } else { callbacks = Collections.unmodifiableList(callbacks); } RestAdapter restAdapter = new RestAdapter.Builder() .setConverter(new GsonConverter(gson)) .setEndpoint(endpoint) .setClient(client) .setRequestInterceptor(new RequestInterceptor() { @Override public void intercept(RequestFacade request) { request.addHeader(USER_AGENT_HEADER, userAgent); request.addHeader(AUTHORIZATION_HEADER, Credentials.basic(writeKey, "")); } }) .setLogLevel(RestAdapter.LogLevel.FULL) .setLog(new RestAdapter.Log() { @Override public void log(String message) { log.print(Log.Level.VERBOSE, "%s", message); } }) .build(); SegmentService segmentService = restAdapter.create(SegmentService.class); AnalyticsClient analyticsClient = AnalyticsClient.create(segmentService, flushQueueSize, flushIntervalInMillis, log, threadFactory, networkExecutor, callbacks); return new Analytics(analyticsClient, messageTransformers, messageInterceptors, log); }

Target:
public Analytics build() { Gson gson = new GsonBuilder() .registerTypeAdapterFactory(new AutoValueAdapterFactory()) .registerTypeAdapter(Date.class, new ISO8601DateAdapter()) .create(); if (endpoint == null) { endpoint = DEFAULT_ENDPOINT; } if (client == null) { client = Platform.get().defaultClient(); } if (log == null) { log = Log.NONE; } if (flushIntervalInMillis == 0) { flushIntervalInMillis = Platform.get().defaultFlushIntervalInMillis(); } if (flushQueueSize == 0) { flushQueueSize = Platform.get().defaultFlushQueueSize(); } if (messageTransformers == null) { messageTransformers = Collections.emptyList(); } else { messageTransformers = Collections.unmodifiableList(messageTransformers); } if (messageInterceptors == null) { messageInterceptors = Collections.emptyList(); } else { messageInterceptors = Collections.unmodifiableList(messageInterceptors); } if (networkExecutor == null) { networkExecutor = Platform.get().defaultNetworkExecutor(); } if (threadFactory == null) { threadFactory = Platform.get().defaultThreadFactory(); } if (callbacks == null) { callbacks = Collections.emptyList(); } else { callbacks = Collections.unmodifiableList(callbacks); } RestAdapter restAdapter = new RestAdapter.Builder() .setConverter(new GsonConverter(gson)) .setEndpoint(endpoint) .setClient(client) .setRequestInterceptor(new AnalyticsRequestInterceptor(writeKey, userAgent)) .setLogLevel(RestAdapter.LogLevel.FULL) .setLog(new RestAdapter.Log() { @Override public void log(String message) { log.print(Log.Level.VERBOSE, "%s", message); } }) .build(); SegmentService segmentService = restAdapter.create(SegmentService.class); AnalyticsClient analyticsClient = AnalyticsClient.create(segmentService, flushQueueSize, flushIntervalInMillis, log, threadFactory, networkExecutor, callbacks); return new Analytics(analyticsClient, messageTransformers, messageInterceptors, log); }