Github user sjcorbett commented on a diff in the pull request:
https://github.com/apache/incubator-brooklyn/pull/353#discussion_r21027888
--- Diff:
core/src/main/java/brooklyn/location/access/PortForwardManagerClient.java ---
@@ -89,69 +95,275 @@ protected PortForwardManager getDelegate() {
return _delegate;
}
+ @Override
public int acquirePublicPort(String publicIpId) {
return getDelegate().acquirePublicPort(publicIpId);
}
- public PortMapping acquirePublicPortExplicit(String publicIpId, int
port) {
- return getDelegate().acquirePublicPortExplicit(publicIpId, port);
+ @Override
+ public void associate(String publicIpId, HostAndPort publicEndpoint,
Location l, int privatePort) {
+ getDelegate().associate(publicIpId, publicEndpoint, l,
privatePort);
}
- public PortMapping getPortMappingWithPublicSide(String publicIpId, int
publicPort) {
- return getDelegate().getPortMappingWithPublicSide(publicIpId,
publicPort);
+ @Override
+ public void associate(String publicIpId, HostAndPort publicEndpoint,
int privatePort) {
+ getDelegate().associate(publicIpId, publicEndpoint, privatePort);
}
- public Collection<PortMapping> getPortMappingWithPublicIpId(String
publicIpId) {
- return getDelegate().getPortMappingWithPublicIpId(publicIpId);
+ @Override
+ public HostAndPort lookup(Location l, int privatePort) {
+ return getDelegate().lookup(l, privatePort);
+ }
+
+ @Override
+ public HostAndPort lookup(String publicIpId, int privatePort) {
+ return getDelegate().lookup(publicIpId, privatePort);
}
- public PortMapping forgetPortMapping(String publicIpId, int
publicPort) {
+ @Override
+ public boolean forgetPortMapping(String publicIpId, int publicPort) {
return getDelegate().forgetPortMapping(publicIpId, publicPort);
}
- public boolean forgetPortMapping(PortMapping m) {
- return getDelegate().forgetPortMapping(m);
+ @Override
+ public boolean forgetPortMappings(Location location) {
+ return getDelegate().forgetPortMappings(location);
+ }
+
+ @Override
+ public String getId() {
+ return getDelegate().getId();
+ }
+
+ @Override
+ public String getScope() {
+ return getDelegate().getScope();
+ }
+
+ @Override
+ public boolean isClient() {
+ return true;
}
+ @Override
+ public String toVerboseString() {
+ return
getClass().getName()+"[wrapping="+getDelegate().toVerboseString()+"]";
+ }
+
+
+
///////////////////////////////////////////////////////////////////////////////////
+ // Deprecated
+
///////////////////////////////////////////////////////////////////////////////////
+
+ /**
+ * Reserves a unique public port for the purpose of forwarding to the
given target,
+ * associated with a given location for subsequent lookup purpose.
+ * <p>
+ * If already allocated, returns the previously allocated.
+ *
+ * @deprecated since 0.7.0; use {@link #acquirePublicPort(String)},
and then use {@link #associate(String, HostAndPort, int)} or {@link
#associate(String, HostAndPort, Location, int)}
+ */
+ @Deprecated
+ public int acquirePublicPort(String publicIpId, Location l, int
privatePort) {
+ return getDelegate().acquirePublicPort(publicIpId, l, privatePort);
+ }
+
+ /**
+ * Returns old mapping if it existed, null if it is new.
+ *
+ * @deprecated since 0.7.0; use {@link #associate(String, HostAndPort,
int)} or {@link #associate(String, HostAndPort, Location, int)}
+ */
+ @Deprecated
+ public PortMapping acquirePublicPortExplicit(String publicIpId, int
publicPort) {
+ return getDelegate().acquirePublicPortExplicit(publicIpId,
publicPort);
+ }
+
+ /**
+ * Records a location and private port against a publicIp and public
port,
+ * to support {@link #lookup(Location, int)}.
+ * <p>
+ * Superfluous if {@link #acquirePublicPort(String, Location, int)}
was used,
+ * but strongly recommended if {@link
#acquirePublicPortExplicit(String, int)} was used
+ * e.g. if the location is not known ahead of time.
+ *
+ * @deprecated Use {@link #associate(String, HostAndPort, Location,
int)}
+ */
+ @Deprecated
+ public void associate(String publicIpId, int publicPort, Location l,
int privatePort) {
+ getDelegate().associate(publicIpId, publicPort, l, privatePort);
+ }
+
+ /**
+ * Records a public hostname or address to be associated with the
given publicIpId for lookup purposes.
+ * <p>
+ * Conceivably this may have to be access-location specific.
+ *
+ * @deprecated Use {@link #associate(String, HostAndPort, int)} or
{@link #associate(String, HostAndPort, Location, int)}
+ */
+ @Deprecated
public void recordPublicIpHostname(String publicIpId, String
hostnameOrPublicIpAddress) {
getDelegate().recordPublicIpHostname(publicIpId,
hostnameOrPublicIpAddress);
}
+ /**
+ * Returns a recorded public hostname or address.
+ *
+ * @deprecated Use {@link #lookup(String, int)} or {@link
#lookup(Location, int)}
+ */
+ @Deprecated
public String getPublicIpHostname(String publicIpId) {
return getDelegate().getPublicIpHostname(publicIpId);
}
-
+
+ /**
+ * Clears a previous call to {@link #recordPublicIpHostname(String,
String)}.
+ *
+ * @deprecated Use {@link #forgetPortMapping(String, int)} or {@link
#forgetPortMapping(Location, int)}
--- End diff --
As before, `forgetPortMapping(Location, int)` doesn't exist.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---