org.mule.endpoint.UrlEndpointURIBuilder Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of mule-core Show documentation
Show all versions of mule-core Show documentation
Mule server and core classes
/*
* Copyright (c) MuleSoft, Inc. All rights reserved. http://www.mulesoft.com
* The software in this package is published under the terms of the CPAL v1.0
* license, a copy of which has been included with this distribution in the
* LICENSE.txt file.
*/
package org.mule.endpoint;
import org.mule.api.endpoint.MalformedEndpointException;
import org.mule.util.StringUtils;
import java.net.URI;
import java.util.Properties;
/**
* UrlEndpointURIBuilder
is the default endpointUri strategy suitable for
* most connectors
*/
public class UrlEndpointURIBuilder extends AbstractEndpointURIBuilder
{
@Override
protected void setEndpoint(URI uri, Properties props) throws MalformedEndpointException
{
address = "";
if (uri.getHost() != null)
{
// set the endpointUri to be a proper url if host and port are set
this.address = uri.getScheme() + "://" + uri.getHost();
if (uri.getPort() != -1)
{
address += ":" + uri.getPort();
}
}
if (StringUtils.isNotBlank(uri.getRawPath()))
{
address += uri.getRawPath();
}
if (StringUtils.isNotBlank(uri.getRawQuery()))
{
address += "?" + uri.getRawQuery();
}
}
}