View Javadoc
1   package com.github.davidmoten.aws.lw.client;
2   
3   import java.util.Optional;
4   
5   import com.github.davidmoten.aws.lw.client.internal.CredentialsImpl;
6   import com.github.davidmoten.aws.lw.client.internal.Environment;
7   
8   public interface Credentials {
9       
10      String accessKey();
11  
12      String secretKey();
13  
14      Optional<String> sessionToken();
15  
16      static Credentials of(String accessKey, String secretKey) {
17          return new CredentialsImpl(accessKey, secretKey, Optional.empty());
18      }
19      
20      static Credentials of(String accessKey, String secretKey, String sessionToken) {
21          return new CredentialsImpl(accessKey, secretKey, Optional.of(sessionToken));
22      }
23  
24      static Credentials fromEnvironment() {
25          return Environment.instance().credentials();
26      }
27      
28      static Credentials fromSystemProperties() {
29          return new CredentialsImpl(System.getProperty("aws.accessKeyId"),
30                  System.getProperty("aws.secretKey"),
31                  Optional.empty());
32      }
33  
34  }