Main.java Source code

Java tutorial

Introduction

Here is the source code for Main.java

Source

//package com.java2s;
//License from project: Open Source License 

public class Main {
    static final public String HTTP_PROTOCOL = "http://";
    static final public String HTTPS_PROTOCOL = "https://";

    static public String computeEffectiveDatabaseUrl(String serverUrl, String userName, String password,
            String databaseName) throws Exception {

        if (null == databaseName) {
            throw new Exception("Can not specify a db URL without a database name");
        }

        String effectiveServerUrl = computeEffectiveServerUrl(serverUrl, userName, password);
        if ("".equals(effectiveServerUrl)) {
            return databaseName;
        }

        if (effectiveServerUrl.endsWith("/")) {
            return effectiveServerUrl + databaseName;
        }

        return effectiveServerUrl + "/" + databaseName;
    }

    static public String computeEffectiveServerUrl(String serverUrl, String userName, String password)
            throws Exception {

        if (null == userName && null != password) {
            throw new Exception("Can not specify a password without a user name");
        }
        if (null != userName && null == password) {
            throw new Exception("Can not specify a user name without a password");
        }
        if (null != userName && null == serverUrl) {
            throw new Exception("Can not specify a user name/password without a server URL");
        }
        if (null == serverUrl) {
            return "";
        }

        String serverUrlWithoutProtocol = null;
        String protocol = null;
        if (serverUrl.startsWith(HTTP_PROTOCOL)) {
            protocol = HTTP_PROTOCOL;
            serverUrlWithoutProtocol = serverUrl.substring(HTTP_PROTOCOL.length());

        } else if (serverUrl.startsWith(HTTPS_PROTOCOL)) {
            protocol = HTTPS_PROTOCOL;
            serverUrlWithoutProtocol = serverUrl.substring(HTTPS_PROTOCOL.length());

        } else {
            throw new Exception("Server URL must specify a protocol (http:// or https://)");
        }

        if (null != userName) {
            serverUrl = protocol + userName + ":" + password + "@" + serverUrlWithoutProtocol;
        }

        return serverUrl;
    }
}