mirror of https://github.com/apache/activemq.git
add ability to do port mapping when publishing connector uris; important in restricting environments
This commit is contained in:
parent
ccc85af301
commit
40af36e934
|
@ -19,6 +19,7 @@ package org.apache.activemq.broker;
|
||||||
import java.net.InetAddress;
|
import java.net.InetAddress;
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
import java.net.UnknownHostException;
|
import java.net.UnknownHostException;
|
||||||
|
import java.util.HashMap;
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
|
|
||||||
import org.apache.activemq.util.InetAddressUtil;
|
import org.apache.activemq.util.InetAddressUtil;
|
||||||
|
@ -34,6 +35,7 @@ public class PublishedAddressPolicy {
|
||||||
|
|
||||||
private String clusterClientUriQuery;
|
private String clusterClientUriQuery;
|
||||||
private PublishedHostStrategy publishedHostStrategy = PublishedHostStrategy.DEFAULT;
|
private PublishedHostStrategy publishedHostStrategy = PublishedHostStrategy.DEFAULT;
|
||||||
|
private HashMap<Integer, Integer> portMapping = new HashMap<Integer, Integer>();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Defines the value of the published host value.
|
* Defines the value of the published host value.
|
||||||
|
@ -70,6 +72,9 @@ public class PublishedAddressPolicy {
|
||||||
String userInfo = getPublishedUserInfoValue(connectorURI.getUserInfo());
|
String userInfo = getPublishedUserInfoValue(connectorURI.getUserInfo());
|
||||||
String host = getPublishedHostValue(connectorURI.getHost());
|
String host = getPublishedHostValue(connectorURI.getHost());
|
||||||
int port = connectorURI.getPort();
|
int port = connectorURI.getPort();
|
||||||
|
if (portMapping.containsKey(port)) {
|
||||||
|
port = portMapping.get(port);
|
||||||
|
}
|
||||||
String path = getPublishedPathValue(connectorURI.getPath());
|
String path = getPublishedPathValue(connectorURI.getPath());
|
||||||
String fragment = getPublishedFragmentValue(connectorURI.getFragment());
|
String fragment = getPublishedFragmentValue(connectorURI.getFragment());
|
||||||
|
|
||||||
|
@ -197,4 +202,11 @@ public class PublishedAddressPolicy {
|
||||||
public void setPublishedHostStrategy(String strategy) {
|
public void setPublishedHostStrategy(String strategy) {
|
||||||
this.publishedHostStrategy = PublishedHostStrategy.getValue(strategy);
|
this.publishedHostStrategy = PublishedHostStrategy.getValue(strategy);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param portMapping map the ports in restrictive environments
|
||||||
|
*/
|
||||||
|
public void setPortMapping(HashMap<Integer, Integer> portMapping) {
|
||||||
|
this.portMapping = portMapping;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue