2016-10-28 16 views
0

DefaultAWSCredentialsProviderChainを使用してs3管理対象着火クラスタを作成できますか?私は簡単にAWSCredentialsを実装し、ここhttp://apacheignite.gridgain.org/docs/aws-configのように、フードの下プロバイダのチェーンを使用してラッパークラスを作成することができます知っているs3でIgniteクラスタを管理するDefaultAWSCredentialsProviderChain()

DefaultAWSCredentialsProviderChain chain = new DefaultAWSCredentialsProviderChain(); 
    AWSCredentials creds = chain.getCredentials(); 

:Javaでは、あなたはこのようにそれを行うことができます。これを春だけでやる方法はありますか?ラッパーなしで?

編集:ここでImは使用するつもりおそらく何です:

import com.amazonaws.auth.AWSCredentials; 
import com.amazonaws.auth.DefaultAWSCredentialsProviderChain; 

/** 
* Created by Carlos Bribiescas on 10/28/16. 
*/ 
public class DefaultAWSCredentials implements AWSCredentials{ 
    private DefaultAWSCredentials() {} 

    private static class LazyHolder{ 
     private static AWSCredentials CREDENTIALS = new DefaultAWSCredentialsProviderChain().getCredentials(); 
    } 

    @Override 
    public String getAWSAccessKeyId() { 
     return LazyHolder.CREDENTIALS.getAWSAccessKeyId(); 
    } 

    @Override 
    public String getAWSSecretKey() { 
     return LazyHolder.CREDENTIALS.getAWSSecretKey(); 
    } 
} 

答えて

0

あなたはこのために春factory-beanfactory-methodを利用することができるはずです。

<bean id="aws.cred.chain" class="com.amazonaws.auth.DefaultAWSCredentialsProviderChain"/> 

<property name="ipFinder"> 
    <bean class="org.apache.ignite.spi.discovery.tcp.ipfinder.s3.TcpDiscoveryS3IpFinder"> 
     <property name="awsCredentials"> 
      <bean factory-bean="aws.cred.chain" factory-method="getCredentials"/> 
     </property> 
    </bean> 
</property> 
関連する問題