28
28
import java .util .concurrent .ThreadPoolExecutor ;
29
29
import java .util .concurrent .TimeUnit ;
30
30
31
+ import lombok .AccessLevel ;
32
+ import lombok .Getter ;
33
+ import lombok .NonNull ;
31
34
import org .janusgraph .diskstorage .configuration .Configuration ;
32
35
import org .janusgraph .graphdb .configuration .GraphDatabaseConfiguration ;
33
36
import org .janusgraph .util .stats .MetricManager ;
36
39
import com .amazonaws .auth .AWSCredentials ;
37
40
import com .amazonaws .auth .AWSCredentialsProvider ;
38
41
import com .amazonaws .auth .AWSStaticCredentialsProvider ;
39
- import com .google .common .annotations .VisibleForTesting ;
40
- import com .google .common .base .Preconditions ;
41
42
import com .google .common .base .Strings ;
42
43
import com .google .common .util .concurrent .RateLimiter ;
43
44
import com .google .common .util .concurrent .RateLimiterCreator ;
@@ -59,17 +60,17 @@ public class Client {
59
60
private final Map <String , Long > capacityRead = new HashMap <>();
60
61
private final Map <String , Long > capacityWrite = new HashMap <>();
61
62
private final Map <String , BackendDataModel > dataModel = new HashMap <>();
63
+ @ Getter (AccessLevel .PACKAGE )
62
64
private final boolean forceConsistentRead ;
65
+ @ Getter (AccessLevel .PACKAGE )
63
66
private final boolean enableParallelScan ;
64
67
private final Map <String , Integer > scanLimit = new HashMap <>();
68
+ @ Getter
65
69
private final DynamoDBDelegate delegate ;
66
- @ VisibleForTesting
67
- final String endpoint ;
68
- final String signingRegion ;
69
70
70
71
private final String prefix ;
71
72
72
- public Client (org . janusgraph . diskstorage . configuration . Configuration config ) {
73
+ public Client (final Configuration config ) {
73
74
final String credentialsClassName = config .get (Constants .DYNAMODB_CREDENTIALS_CLASS_NAME );
74
75
final Class <?> clazz ;
75
76
try {
@@ -145,15 +146,15 @@ public Client(org.janusgraph.diskstorage.configuration.Configuration config) {
145
146
storeNames .addAll (config .getContainedNamespaces (Constants .DYNAMODB_STORES_NAMESPACE ));
146
147
storeNames .forEach (storeName -> setupStore (config , prefix , readRateLimit , writeRateLimit , storeName ));
147
148
148
- endpoint = JanusGraphConfigUtil .getNullableConfigValue (config , Constants .DYNAMODB_CLIENT_ENDPOINT );
149
- signingRegion = JanusGraphConfigUtil .getNullableConfigValue (config , Constants .DYNAMODB_CLIENT_SIGNING_REGION );
150
- delegate = new DynamoDBDelegate ( endpoint , signingRegion , credentialsProvider ,
149
+ delegate = new DynamoDBDelegate ( JanusGraphConfigUtil .getNullableConfigValue (config , Constants .DYNAMODB_CLIENT_ENDPOINT ),
150
+ JanusGraphConfigUtil .getNullableConfigValue (config , Constants .DYNAMODB_CLIENT_SIGNING_REGION ),
151
+ credentialsProvider ,
151
152
clientConfig , config , readRateLimit , writeRateLimit , maxRetries , retryMillis , prefix , metricsPrefix , controlPlaneRateLimiter );
152
153
}
153
154
154
- public static final ThreadPoolExecutor getPoolFromNs (Configuration ns ) {
155
+ public static final ThreadPoolExecutor getPoolFromNs (final Configuration ns ) {
155
156
final int maxQueueSize = ns .get (Constants .DYNAMODB_CLIENT_EXECUTOR_QUEUE_MAX_LENGTH );
156
- final ThreadFactory factory = new ThreadFactoryBuilder ().setNameFormat ("delegate -%d" ).build ();
157
+ final ThreadFactory factory = new ThreadFactoryBuilder ().setNameFormat ("getDelegate -%d" ).build ();
157
158
//begin adaptation of constructor at
158
159
//https://github.com/buka/titan/blob/master/src/main/java/com/thinkaurelius/titan/diskstorage/dynamodb/DynamoDBClient.java#L104
159
160
final int maxPoolSize = ns .get (Constants .DYNAMODB_CLIENT_EXECUTOR_MAX_POOL_SIZE );
@@ -168,8 +169,8 @@ public static final ThreadPoolExecutor getPoolFromNs(Configuration ns) {
168
169
return executor ;
169
170
}
170
171
171
- private void setupStore (org . janusgraph . diskstorage . configuration . Configuration config , String prefix ,
172
- final Map <String , RateLimiter > readRateLimit , final Map <String , RateLimiter > writeRateLimit , String store ) {
172
+ private void setupStore (final Configuration config , final String prefix ,
173
+ final Map <String , RateLimiter > readRateLimit , final Map <String , RateLimiter > writeRateLimit , final String store ) {
173
174
174
175
final String dataModel = config .get (Constants .STORES_DATA_MODEL , store );
175
176
final int scanLimit = config .get (Constants .STORES_SCAN_LIMIT , store );
@@ -188,25 +189,11 @@ private void setupStore(org.janusgraph.diskstorage.configuration.Configuration c
188
189
this .scanLimit .put (actualTableName , scanLimit );
189
190
}
190
191
191
- public DynamoDBDelegate delegate () {
192
- return delegate ;
193
- }
194
-
195
- public boolean forceConsistentRead () {
196
- return forceConsistentRead ;
197
- }
198
-
199
- public boolean enableParallelScan () {
200
- return enableParallelScan ;
201
- }
202
-
203
- public long readCapacity (String tableName ) {
204
- Preconditions .checkNotNull (tableName , "table name may not be null when looking up read capacity" );
192
+ long readCapacity (final @ NonNull String tableName ) {
205
193
return capacityRead .get (tableName );
206
194
}
207
195
208
- public long writeCapacity (String tableName ) {
209
- Preconditions .checkNotNull (tableName , "table name may not be null when looking up write capacity" );
196
+ long writeCapacity (final @ NonNull String tableName ) {
210
197
return capacityWrite .get (tableName );
211
198
}
212
199
@@ -218,15 +205,15 @@ public int scanLimit(String tableName) {
218
205
return scanLimit .get (tableName );
219
206
}
220
207
221
- private static final AWSCredentialsProvider createCredentialsProvider (Class <?> clazz , String [] credentialsProviderConstructorArgs ) {
208
+ private static AWSCredentialsProvider createCredentialsProvider (Class <?> clazz , String [] credentialsProviderConstructorArgs ) {
222
209
return (AWSCredentialsProvider ) createInstance (clazz , credentialsProviderConstructorArgs );
223
210
}
224
211
225
- private static final AWSCredentials createCredentials (Class <?> clazz , String [] credentialsConstructorArgs ) {
212
+ private static AWSCredentials createCredentials (Class <?> clazz , String [] credentialsConstructorArgs ) {
226
213
return (AWSCredentials ) createInstance (clazz , credentialsConstructorArgs );
227
214
}
228
215
229
- private static final Object createInstance (Class <?> clazz , String [] constructorArgs ) {
216
+ private static Object createInstance (Class <?> clazz , String [] constructorArgs ) {
230
217
Class <?>[] constructorTypes ;
231
218
String [] actualArgs = constructorArgs ;
232
219
if (null == constructorArgs ) {
0 commit comments