Skip to content

Commit 15d735b

Browse files
Refactor ReactSurface to use TaskInterface (facebook#38081)
Summary: Pull Request resolved: facebook#38081 Changelog: [Internal] As part of refactoring ReactSurface, ensuring the methods expose interfaces instead of internal classes, e.g. use TaskInterface instead of Task, Reviewed By: cortinico Differential Revision: D47026648 fbshipit-source-id: 5fc42693b307af057b51a869133c52de0b1dca3a
1 parent 04af0b9 commit 15d735b

File tree

3 files changed

+14
-5
lines changed

3 files changed

+14
-5
lines changed

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridgeless/ReactSurface.java

+4-2
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,8 @@ public SurfaceHandler getSurfaceHandler() {
137137
return mSurfaceView.get();
138138
}
139139

140-
public Task<Void> prerender() {
140+
@Override
141+
public TaskInterface prerender() {
141142
ReactHost host = mReactHost.get();
142143
if (host == null) {
143144
return Task.forError(
@@ -164,7 +165,8 @@ public TaskInterface start() {
164165
return host.startSurface(this);
165166
}
166167

167-
public Task<Void> stop() {
168+
@Override
169+
public TaskInterface stop() {
168170
ReactHost host = mReactHost.get();
169171
if (host == null) {
170172
return Task.forError(

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/interfaces/ReactSurfaceInterface.kt

+6
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,15 @@ interface ReactSurfaceInterface {
1414
// the API of this interface will be completed as we analyze and refactor API of ReactSurface,
1515
// ReactRootView, etc.
1616

17+
// Prerender this surface
18+
fun prerender(): TaskInterface
19+
1720
// Start running this surface
1821
fun start(): TaskInterface
1922

23+
// Stop running this surface
24+
fun stop(): TaskInterface
25+
2026
// Get React root view of this surface
2127
fun getView(): ViewGroup?
2228
}

packages/react-native/ReactAndroid/src/test/java/com/facebook/react/bridgeless/ReactSurfaceTest.java

+4-3
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ public void testAttachThrowExeption() {
7777
@Test
7878
public void testPrerender() throws InterruptedException {
7979
mReactSurface.attach(mReactHost);
80-
Task<Void> task = mReactSurface.prerender();
80+
Task<Void> task = (Task<Void>) mReactSurface.prerender();
8181
task.waitForCompletion();
8282

8383
verify(mReactHost).prerenderSurface(mReactSurface);
@@ -102,7 +102,7 @@ public void testStop() throws InterruptedException {
102102
Task<Void> task = (Task<Void>) mReactSurface.start();
103103
task.waitForCompletion();
104104

105-
task = mReactSurface.stop();
105+
task = (Task<Void>) mReactSurface.stop();
106106
task.waitForCompletion();
107107

108108
verify(mReactHost).stopSurface(mReactSurface);
@@ -152,7 +152,8 @@ public void testStartStopHandlerCalls() throws InterruptedException {
152152

153153
assertThat(mReactSurface.isRunning()).isTrue();
154154

155-
mReactSurface.stop().waitForCompletion();
155+
task = (Task<Void>) mReactSurface.stop();
156+
task.waitForCompletion();
156157

157158
assertThat(mReactSurface.isRunning()).isFalse();
158159
}

0 commit comments

Comments
 (0)