001 002package com.commercetools.history.defaultconfig; 003 004import java.util.List; 005import java.util.function.Supplier; 006 007import javax.annotation.Nullable; 008 009import com.commercetools.history.client.ApiRoot; 010import com.commercetools.history.client.ByProjectKeyRequestBuilder; 011import com.commercetools.history.client.HistoryCorrelationIdProvider; 012 013import io.vrap.rmf.base.client.*; 014import io.vrap.rmf.base.client.http.CorrelationIdProvider; 015import io.vrap.rmf.base.client.http.Middleware; 016import io.vrap.rmf.base.client.oauth2.ClientCredentials; 017 018/** 019 * @deprecated use {@link HistoryApiRootBuilder} instead 020 */ 021@Deprecated 022public class HistoryApiFactory { 023 024 public static ByProjectKeyRequestBuilder createForProject(final String projectKey, 025 final ClientCredentials credentials, final String tokenEndpoint, final String apiEndpoint) { 026 return HistoryApiRootBuilder.of() 027 .defaultClient(apiEndpoint, credentials, tokenEndpoint) 028 .addCorrelationIdProvider(new HistoryCorrelationIdProvider(projectKey)) 029 .buildForProject(projectKey); 030 } 031 032 public static ByProjectKeyRequestBuilder createForProject(final String projectKey, 033 final Supplier<ApiHttpClient> clientSupplier) { 034 return create(clientSupplier).withProjectKeyValue(projectKey); 035 } 036 037 public static ApiRoot create(final ClientCredentials credentials, final String tokenEndpoint, 038 final String apiEndpoint) { 039 return HistoryApiRootBuilder.of().defaultClient(apiEndpoint, credentials, tokenEndpoint).build(); 040 } 041 042 public static ApiRoot create(final VrapHttpClient httpClient, final ClientCredentials credentials, 043 final String tokenEndpoint, final String apiEndpoint) { 044 return HistoryApiRootBuilder.of(httpClient).defaultClient(apiEndpoint, credentials, tokenEndpoint).build(); 045 } 046 047 public static ApiRoot create(final VrapHttpClient httpClient, final ClientCredentials credentials, 048 final String tokenEndpoint, final String apiEndpoint, final List<Middleware> middlewares) { 049 return HistoryApiRootBuilder.of(httpClient) 050 .defaultClient(apiEndpoint, credentials, tokenEndpoint) 051 .addMiddlewares(middlewares) 052 .build(); 053 } 054 055 public static ApiRoot create(final ClientCredentials credentials, final String tokenEndpoint, 056 final String apiEndpoint, final CorrelationIdProvider correlationIdProvider) { 057 return HistoryApiRootBuilder.of() 058 .defaultClient(apiEndpoint, credentials, tokenEndpoint) 059 .addCorrelationIdProvider(correlationIdProvider) 060 .build(); 061 } 062 063 public static ApiRoot create(final VrapHttpClient httpClient, final ClientCredentials credentials, 064 final String tokenEndpoint, final String apiEndpoint, final CorrelationIdProvider correlationIdProvider) { 065 return HistoryApiRootBuilder.of(httpClient) 066 .defaultClient(apiEndpoint, credentials, tokenEndpoint) 067 .addCorrelationIdProvider(correlationIdProvider) 068 .build(); 069 } 070 071 public static ApiRoot create(final VrapHttpClient httpClient, final ClientCredentials credentials, 072 final String tokenEndpoint, final String apiEndpoint, final List<Middleware> middlewares, 073 final CorrelationIdProvider correlationIdProvider) { 074 return HistoryApiRootBuilder.of(httpClient) 075 .defaultClient(apiEndpoint, credentials, tokenEndpoint) 076 .addCorrelationIdProvider(correlationIdProvider) 077 .addMiddlewares(middlewares) 078 .build(); 079 } 080 081 public static ApiRoot create(final Supplier<ApiHttpClient> clientSupplier) { 082 return ApiRoot.fromClient(clientSupplier.get()); 083 } 084 085 public static ApiRoot create(final ClientCredentials credentials) { 086 return HistoryApiRootBuilder.of().defaultClient(credentials).build(); 087 } 088 089 public static ApiRoot create(final ClientCredentials credentials, ServiceRegionConfig serviceRegion) { 090 return HistoryApiRootBuilder.of().defaultClient(credentials, serviceRegion).build(); 091 } 092 093 public static ApiHttpClient defaultClient(final ClientCredentials credentials) { 094 return HistoryApiRootBuilder.of().defaultClient(credentials).buildClient(); 095 } 096 097 public static ApiHttpClient defaultClient(final ClientCredentials credentials, final String tokenEndpoint, 098 final String apiEndpoint) { 099 return HistoryApiRootBuilder.of().defaultClient(apiEndpoint, credentials, tokenEndpoint).buildClient(); 100 } 101 102 public static ApiHttpClient defaultClient(final ClientCredentials credentials, final String tokenEndpoint, 103 final String apiEndpoint, final List<Middleware> middlewares) { 104 return HistoryApiRootBuilder.of() 105 .defaultClient(apiEndpoint, credentials, tokenEndpoint) 106 .addMiddlewares(middlewares) 107 .buildClient(); 108 } 109 110 public static ApiHttpClient defaultClient(final VrapHttpClient httpClient, final ClientCredentials credentials, 111 final String tokenEndpoint, final String apiEndpoint) { 112 return HistoryApiRootBuilder.of(httpClient) 113 .defaultClient(apiEndpoint, credentials, tokenEndpoint) 114 .buildClient(); 115 } 116 117 public static ApiHttpClient defaultClient(final ClientCredentials credentials, final String tokenEndpoint, 118 final String apiEndpoint, final CorrelationIdProvider correlationIdProvider) { 119 return HistoryApiRootBuilder.of() 120 .defaultClient(apiEndpoint, credentials, tokenEndpoint) 121 .addCorrelationIdProvider(correlationIdProvider) 122 .buildClient(); 123 } 124 125 public static ApiHttpClient defaultClient(final ClientCredentials credentials, final String tokenEndpoint, 126 final String apiEndpoint, final List<Middleware> middlewares, 127 final CorrelationIdProvider correlationIdProvider) { 128 return HistoryApiRootBuilder.of() 129 .defaultClient(apiEndpoint, credentials, tokenEndpoint) 130 .addCorrelationIdProvider(correlationIdProvider) 131 .addMiddlewares(middlewares) 132 .buildClient(); 133 } 134 135 public static ApiHttpClient defaultClient(final VrapHttpClient httpClient, final ClientCredentials credentials, 136 final String tokenEndpoint, final String apiEndpoint, final CorrelationIdProvider correlationIdProvider) { 137 return HistoryApiRootBuilder.of(httpClient) 138 .defaultClient(apiEndpoint, credentials, tokenEndpoint) 139 .addCorrelationIdProvider(correlationIdProvider) 140 .buildClient(); 141 } 142 143 public static ApiHttpClient defaultClient(final VrapHttpClient httpClient, final ClientCredentials credentials, 144 final String tokenEndpoint, final String apiEndpoint, final List<Middleware> middlewares) { 145 return HistoryApiRootBuilder.of(httpClient) 146 .defaultClient(apiEndpoint, credentials, tokenEndpoint) 147 .addMiddlewares(middlewares) 148 .buildClient(); 149 } 150 151 public static ApiHttpClient defaultClient(final VrapHttpClient httpClient, final ClientCredentials credentials, 152 final String tokenEndpoint, final String apiEndpoint, final List<Middleware> middlewares, 153 @Nullable final CorrelationIdProvider correlationIdProvider) { 154 return HistoryApiRootBuilder.of(httpClient) 155 .defaultClient(apiEndpoint, credentials, tokenEndpoint) 156 .addCorrelationIdProvider(correlationIdProvider) 157 .addMiddlewares(middlewares) 158 .buildClient(); 159 } 160 161 public static ApiHttpClient defaultClient(final VrapHttpClient httpClient, final ClientCredentials credentials, 162 final String tokenEndpoint, final String apiEndpoint, final Supplier<String> userAgentSupplier, 163 final List<Middleware> middlewares, @Nullable final CorrelationIdProvider correlationIdProvider) { 164 return HistoryApiRootBuilder.of(httpClient) 165 .defaultClient(apiEndpoint, credentials, tokenEndpoint) 166 .addCorrelationIdProvider(correlationIdProvider) 167 .withUserAgentSupplier(userAgentSupplier) 168 .addMiddlewares(middlewares) 169 .buildClient(); 170 } 171 172 public static ApiHttpClient defaultClient(final Supplier<VrapHttpClient> httpClientSupplier, 173 final ClientCredentials credentials, final String tokenEndpoint, final String apiEndpoint, 174 final List<Middleware> middlewares, @Nullable final CorrelationIdProvider correlationIdProvider) { 175 return HistoryApiRootBuilder.of(httpClientSupplier.get()) 176 .defaultClient(apiEndpoint, credentials, tokenEndpoint) 177 .addCorrelationIdProvider(correlationIdProvider) 178 .addMiddlewares(middlewares) 179 .buildClient(); 180 } 181 182 public static ApiHttpClient defaultClient(final Supplier<VrapHttpClient> httpClientSupplier, 183 final ClientCredentials credentials, final String tokenEndpoint, final String apiEndpoint, 184 final Supplier<String> userAgentSupplier, final List<Middleware> middlewares, 185 @Nullable final CorrelationIdProvider correlationIdProvider) { 186 return HistoryApiRootBuilder.of(httpClientSupplier.get()) 187 .defaultClient(apiEndpoint, credentials, tokenEndpoint) 188 .addCorrelationIdProvider(correlationIdProvider) 189 .withUserAgentSupplier(userAgentSupplier) 190 .addMiddlewares(middlewares) 191 .buildClient(); 192 } 193}