Skip to content

Instantly share code, notes, and snippets.

@devender-yadav
Created July 28, 2018 20:00
Show Gist options
  • Save devender-yadav/75aa17e176e1f5f765d3bcbc845ff1e4 to your computer and use it in GitHub Desktop.
Save devender-yadav/75aa17e176e1f5f765d3bcbc845ff1e4 to your computer and use it in GitHub Desktop.
Translate non-English text to English using AWS Translate
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.AWSStaticCredentialsProvider;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.regions.Regions;
import com.amazonaws.services.translate.AmazonTranslate;
import com.amazonaws.services.translate.AmazonTranslateClientBuilder;
import com.amazonaws.services.translate.model.TranslateTextRequest;
import com.amazonaws.services.translate.model.TranslateTextResult;
public class AmazonTranslateUtil {
private AmazonTranslateUtil() {
}
private static AmazonTranslate translateClient;
private static final String ACCESS_KEY = "****";
private static final String SECRET_KEY = "****";
private static void initialize() {
if (translateClient == null) {
System.out.println("AWS translateClient initialized!!");
AWSCredentials credentials = new BasicAWSCredentials(ACCESS_KEY, SECRET_KEY);
// Region can be changed as per the need.
translateClient = AmazonTranslateClientBuilder.standard()
.withCredentials(new AWSStaticCredentialsProvider(credentials)).withRegion(Regions.US_EAST_1)
.build();
}
}
// Here text is non-English text
public static String translate(String text, String languageCode) {
initialize();
TranslateTextRequest request = new TranslateTextRequest().withText(text).withSourceLanguageCode(languageCode)
.withTargetLanguageCode("en");
TranslateTextResult result = translateClient.translateText(request);
return result.getTranslatedText();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment