Skip to content

Instantly share code, notes, and snippets.

@salrashid123
Last active August 22, 2022 14:40
Show Gist options
  • Save salrashid123/f617838c95796805fdec59e5d81ca9bf to your computer and use it in GitHub Desktop.
Save salrashid123/f617838c95796805fdec59e5d81ca9bf to your computer and use it in GitHub Desktop.
aws s3 client example for gcs
package com.test;
import java.util.List;
import java.util.logging.ConsoleHandler;
import java.util.logging.Level;
import java.util.logging.Logger;
import com.amazonaws.auth.AWSStaticCredentialsProvider;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.client.builder.AwsClientBuilder;
import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.AmazonS3ClientBuilder;
import com.amazonaws.services.s3.model.Bucket;
import com.amazonaws.services.s3.model.PutObjectResult;
public class TestApp {
public static void main(String[] args) {
TestApp tc = new TestApp();
}
private static final String bucketName = "mineral-minutia-820-test";
public TestApp() {
try {
ConsoleHandler consoleHandler = new ConsoleHandler();
consoleHandler.setLevel(Level.ALL);
Logger wl = Logger.getLogger("org.apache.http.wire");
wl.setLevel(Level.ALL);
wl.addHandler(consoleHandler);
Logger sl = Logger.getLogger("com.amazonaws.services");
sl.setLevel(Level.ALL);
sl.addHandler(consoleHandler);
Logger gl = Logger.getLogger("com.amazonaws.auth");
gl.setLevel(Level.ALL);
gl.addHandler(consoleHandler);
Logger al = Logger.getLogger("com.amazonaws.request");
al.setLevel(Level.ALL);
al.addHandler(consoleHandler);
Logger rl = Logger.getLogger("com.amazonaws");
rl.setLevel(Level.ALL);
rl.addHandler(consoleHandler);
String googleAccessKeyId = "GOOG1EK6QKJU2V";
String googleAccessKeySecret = "lmxRGWMsjaT....";
BasicAWSCredentials googleCreds = new BasicAWSCredentials(googleAccessKeyId,
googleAccessKeySecret);
AmazonS3 s3Client = AmazonS3ClientBuilder.standard()
.withEndpointConfiguration(
new AwsClientBuilder.EndpointConfiguration(
"https://storage.googleapis.com", "auto"))
.withCredentials(new AWSStaticCredentialsProvider(googleCreds))
.build();
PutObjectResult putResult = s3Client.putObject(bucketName, "file.txt", "Lorem ipsum");
System.out.println("Uploaded object getContentMd5: " + putResult.getContentMd5());
System.out.println("Downlaoded object content: " + s3Client.getObjectAsString(bucketName, "file.txt"));
/*
* ObjectListing objects = s3Client.listObjects(bucketName);
* System.out.println("Objects:");
* for (S3ObjectSummary object : objects.getObjectSummaries())
* System.out.println(object.toString());
*
*
* PutObjectRequest request = new PutObjectRequest(bucketName, "file.txt", new
* File("file.txt"));
* ObjectMetadata metadata = new ObjectMetadata();
* metadata.setContentType("text/plain");
* metadata.addUserMetadata("customdata", "helloworld");
* request.setStorageClass(StorageClass.Standard);
* request.setMetadata(metadata);
* s3Client.putObject(request);
*/
s3Client.shutdown();
} catch (Exception ex) {
System.out.println("Error: " + ex);
}
}
}
@salrashid123
Copy link
Author

<?xml version="1.0" encoding="UTF-8"?>


<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

  <modelVersion>4.0.0</modelVersion>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>

  <groupId>com.test.TestApp</groupId>
  <artifactId>TestApp</artifactId>

  <properties>
  </properties>

  <dependencies>

    <dependency>
      <groupId>com.google.auth</groupId>
      <artifactId>google-auth-library-oauth2-http</artifactId>
      <version>0.16.2</version>
    </dependency>

   <dependency>
      <groupId>com.amazonaws</groupId>
      <artifactId>aws-java-sdk-s3</artifactId>
      <version>1.11.596</version>
    </dependency>

  </dependencies>

  <build>
    <plugins>
     <plugin>
      <artifactId>maven-compiler-plugin</artifactId>
      <version>2.0.2</version>
      <configuration>
        <source>1.8</source>
        <target>1.8</target>
      </configuration>
     </plugin>

      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>exec-maven-plugin</artifactId>
        <version>1.2.1</version>
        <executions>
          <execution>
            <goals>
              <goal>java</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <mainClass>com.test.TestApp</mainClass>
        </configuration>
      </plugin>
    </plugins>
  </build>

</project>

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment