Set the connection timeout duration
To increase the connection timeout for longer running operations, change the withSocketTimeout property of the ClientConfiguration object when the connection is created.
ClientConfiguration config = new ClientConfiguration().withSocketTimeout(15 * 60 * 1000);
AmazonS3 s3 = new AmazonS3Client(credentials, config);