package jetbrains.mps.ide.httpsupport.manager.plugin;
/*Generated by MPS */
import org.jetbrains.io.CustomPortServerManagerBase;
import org.apache.log4j.Logger;
import org.apache.log4j.LogManager;
import org.apache.log4j.Level;
public class MPSIntegrationPortManager extends CustomPortServerManagerBase {
private static final Logger LOG = LogManager.getLogger(MPSIntegrationPortManager.class);
public static final int PORT_FIRST = 63330;
public static final int PORT_LAST = 63340;
public int port = PORT_FIRST;
@Override
public int getPort() {
return port;
}
@Override
public void cannotBind(Exception e, int port) {
if (port >= PORT_LAST) {
if (LOG.isEnabledFor(Level.ERROR)) {
LOG.error("Cannot bind to any port in range " + PORT_FIRST + ".." + (PORT_LAST - 1) + ". Integration with YouTrack/TeamCity is disabled ");
}
this.port = -1;
return;
}
this.port = port + 1;
portChanged();
}
@Override
public boolean isAvailableExternally() {
return true;
}
public static int getCurrentPort() {
return EP_NAME.findExtension(MPSIntegrationPortManager.class).getPort();
}
}