@@ -0,0 +1,2056 @@
+/*%0A * Copyright 2016-2018 shardingsphere.io.%0A * %3Cp%3E%0A * Licensed under the Apache License, Version 2.0 (the %22License%22);%0A * you may not use this file except in compliance with the License.%0A * You may obtain a copy of the License at%0A *%0A *     http://www.apache.org/licenses/LICENSE-2.0%0A *%0A * Unless required by applicable law or agreed to in writing, software%0A * distributed under the License is distributed on an %22AS IS%22 BASIS,%0A * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.%0A * See the License for the specific language governing permissions and%0A * limitations under the License.%0A * %3C/p%3E%0A */%0A%0Apackage io.shardingsphere.core.property.dialect;%0A%0Aimport io.shardingsphere.core.constant.DatabaseType;%0Aimport io.shardingsphere.core.exception.ShardingException;%0Aimport io.shardingsphere.core.property.DataSourceProperty;%0Aimport io.shardingsphere.core.property.DataSourcePropertyParser;%0A%0Aimport java.net.URI;%0A%0A/**%0A * Oracle data source property parser.%0A *%0A * @author panjuan%0A */%0Apublic final class OracleDataSourcePropertyParser extends DataSourcePropertyParser %7B%0A    %0A    private static final Integer DEFAULT_PORT = 1521;%0A    %0A    @Override%0A    protected DataSourceProperty parseJDBCUrl(final String url) %7B%0A        String cleanUrl = url.substring(5);%0A        if (cleanUrl.contains(%22oracle:thin:@//%22)) %7B%0A            cleanUrl = cleanUrl.replace(%22oracle:thin:@//%22, %22oracle://%22);%0A        %7D else if (cleanUrl.contains(%22oracle:thin:@%22)) %7B%0A            cleanUrl = cleanUrl.replace(%22oracle:thin:@%22, %22oracle://%22);%0A        %7D%0A    %0A        String%5B%5D parts = cleanUrl.split(%22:%22);%0A        if (4 == parts.length) %7B%0A            cleanUrl = parts%5B0%5D + %22:%22 + parts%5B1%5D + %22:%22 + parts%5B2%5D + %22/%22 + parts%5B3%5D;%0A        %7D%0A        URI uri = URI.create(cleanUrl);%0A        if (null == uri.getHost()) %7B%0A            throw new ShardingException(%22The URL of JDBC is not supported.%22);%0A        %7D%0A        return new DataSourceProperty(uri.getHost(), -1 == uri.getPort() ? DEFAULT_PORT : uri.getPort(),%0A                uri.getPath().substring(1), DatabaseType.Oracle);%0A    %7D%0A%7D%0A

add OracleDataSourcePropertyParser