Example usage for com.amazonaws.services.s3.model RoutingRule setRedirect

List of usage examples for com.amazonaws.services.s3.model RoutingRule setRedirect

Introduction

In this page you can find the example usage for com.amazonaws.services.s3.model RoutingRule setRedirect.

Prototype

public void setRedirect(RedirectRule redirect) 

Source Link

Document

Set the redirect information.

Usage

From source file:com.eucalyptus.cloudformation.resources.standard.actions.AWSS3BucketResourceAction.java

License:Open Source License

private BucketWebsiteConfiguration convertWebsiteConfiguration(S3WebsiteConfiguration websiteConfiguration) {
    BucketWebsiteConfiguration bucketWebsiteConfiguration = new BucketWebsiteConfiguration();
    bucketWebsiteConfiguration.setErrorDocument(websiteConfiguration.getErrorDocument());
    bucketWebsiteConfiguration.setIndexDocumentSuffix(websiteConfiguration.getIndexDocument());
    if (websiteConfiguration.getRedirectAllRequestsTo() != null) {
        RedirectRule redirectAllRequestsTo = new RedirectRule();
        redirectAllRequestsTo.setHostName(websiteConfiguration.getRedirectAllRequestsTo().getHostName());
        redirectAllRequestsTo.setProtocol(websiteConfiguration.getRedirectAllRequestsTo().getProtocol());
        bucketWebsiteConfiguration.setRedirectAllRequestsTo(redirectAllRequestsTo);
    }//from   w ww  .j  a v a2  s.c  o m
    if (websiteConfiguration.getRoutingRules() != null) {
        List<RoutingRule> routingRules = Lists.newArrayList();
        for (S3WebsiteConfigurationRoutingRule s3WebsiteConfigurationRoutingRule : websiteConfiguration
                .getRoutingRules()) {
            RoutingRule routingRule = new RoutingRule();
            if (s3WebsiteConfigurationRoutingRule.getRoutingRuleCondition() != null) {
                RoutingRuleCondition condition = new RoutingRuleCondition();
                condition.setHttpErrorCodeReturnedEquals(s3WebsiteConfigurationRoutingRule
                        .getRoutingRuleCondition().getHttpErrorCodeReturnedEquals());
                condition.setKeyPrefixEquals(
                        s3WebsiteConfigurationRoutingRule.getRoutingRuleCondition().getKeyPrefixEquals());
                routingRule.setCondition(condition);
            }
            if (s3WebsiteConfigurationRoutingRule.getRedirectRule() != null) {
                RedirectRule redirect = new RedirectRule();
                redirect.setReplaceKeyWith(
                        s3WebsiteConfigurationRoutingRule.getRedirectRule().getReplaceKeyWith());
                redirect.setReplaceKeyPrefixWith(
                        s3WebsiteConfigurationRoutingRule.getRedirectRule().getReplaceKeyPrefixWith());
                redirect.setProtocol(s3WebsiteConfigurationRoutingRule.getRedirectRule().getProtocol());
                redirect.setHttpRedirectCode(
                        s3WebsiteConfigurationRoutingRule.getRedirectRule().getHttpRedirectCode());
                redirect.setHostName(s3WebsiteConfigurationRoutingRule.getRedirectRule().getHostName());
                routingRule.setRedirect(redirect);
            }
            routingRules.add(routingRule);
        }
        bucketWebsiteConfiguration.setRoutingRules(routingRules);
    }
    return bucketWebsiteConfiguration;
}