Java URI Parse parseRegionName(URI endpoint)

Here you can find the source of parseRegionName(URI endpoint)

Description

parse Region Name

License

Open Source License

Declaration

public static String parseRegionName(URI endpoint) 

Method Source Code


//package com.java2s;
/*//ww w.ja  v a  2s. com
 * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License").
 * You may not use this file except in compliance with the License.
 * A copy of the License is located at
 *
 *  http://aws.amazon.com/apache2.0
 *
 * or in the "license" file accompanying this file. This file is distributed
 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
 * express or implied. See the License for the specific language governing
 * permissions and limitations under the License.
 */

import java.net.URI;

public class Main {
    public static String parseRegionName(URI endpoint) {
        String host = endpoint.getHost();

        // If we don't recognize the domain, just return the default
        if (!host.endsWith(".amazonaws.com"))
            return "us-east-1";

        String serviceAndRegion = host.substring(0, host.indexOf(".amazonaws.com"));

        char separator = '.';
        if (serviceAndRegion.startsWith("s3"))
            separator = '-';

        if (serviceAndRegion.indexOf(separator) == -1)
            return "us-east-1";

        String region = serviceAndRegion.substring(serviceAndRegion.indexOf(separator) + 1);
        if ("us-gov".equals(region)) {
            return "us-gov-west-1";
        }

        return region;
    }
}

Related

  1. parseQuery(URI uri)
  2. parseQueryString(final URI uri, final M queryParams)
  3. parseQueryString(URI uri)
  4. parseQueryString(URI uri, M queryParams)
  5. parseRegionName(URI endpoint)
  6. parseRegionName(URI endpoint)
  7. parseRepositoryItemUri(URI uri)
  8. parseServiceName(URI endpoint)
  9. parseServiceName(URI endpoint)