Add callback for Connection/Disconnection to Metro

Reviewed By: bnham

Differential Revision: D6447126

fbshipit-source-id: d4c8a4dfb65c2a378f7fe696c8617ff5f3c6cb68
This commit is contained in:
Paco Estevez Garcia
2017-12-07 09:52:08 -08:00
committed by Facebook Github Bot
parent 8547b7e111
commit 3d5dc872a4
4 changed files with 55 additions and 2 deletions
@@ -25,6 +25,7 @@ import com.facebook.react.modules.systeminfo.AndroidInfoHelpers;
import com.facebook.react.packagerconnection.FileIoHandler;
import com.facebook.react.packagerconnection.JSPackagerClient;
import com.facebook.react.packagerconnection.NotificationOnlyHandler;
import com.facebook.react.packagerconnection.ReconnectingWebSocket.ConnectionCallback;
import com.facebook.react.packagerconnection.RequestHandler;
import com.facebook.react.packagerconnection.RequestOnlyHandler;
import com.facebook.react.packagerconnection.Responder;
@@ -92,6 +93,8 @@ public class DevServerHelper {
}
public interface PackagerCommandListener {
void onPackagerConnected();
void onPackagerDisconnected();
void onPackagerReloadCommand();
void onPackagerDevMenuCommand();
void onCaptureHeapCommand(final Responder responder);
@@ -163,10 +166,24 @@ public class DevServerHelper {
});
handlers.putAll(new FileIoHandler().handlers());
ConnectionCallback onPackagerConnectedCallback =
new ConnectionCallback() {
@Override
public void onConnected() {
commandListener.onPackagerConnected();
}
@Override
public void onDisconnected() {
commandListener.onPackagerDisconnected();
}
};
mPackagerClient = new JSPackagerClient(
clientId,
mSettings.getPackagerConnectionSettings(),
handlers);
handlers,
onPackagerConnectedCallback);
mPackagerClient.init();
return null;
@@ -723,6 +723,16 @@ public class DevSupportManagerImpl implements
return mLastErrorStack;
}
@Override
public void onPackagerConnected() {
// No-op
}
@Override
public void onPackagerDisconnected() {
// No-op
}
@Override
public void onPackagerReloadCommand() {
// Disable debugger to resume the JsVM & avoid thread locks while reloading