pass AbstractDraweeControllerBuilder and CallerContext to Nodes

Reviewed By: yungsters

Differential Revision: D4487352

fbshipit-source-id: cf4540a5b2f8fc1444ff7ff0ce2ce280538f4f7b
This commit is contained in:
Aaron Chiu
2017-01-30 23:18:07 -08:00
committed by Facebook Github Bot
parent 49729e9d2c
commit af111ab2ac
2 changed files with 45 additions and 16 deletions

View File

@@ -9,8 +9,27 @@
package com.facebook.react.flat;
import javax.annotation.Nullable;
import com.facebook.drawee.backends.pipeline.Fresco;
import com.facebook.drawee.controller.AbstractDraweeControllerBuilder;
public final class RCTImageViewManager extends FlatViewManager {
private @Nullable AbstractDraweeControllerBuilder mDraweeControllerBuilder;
private final @Nullable Object mCallerContext;
public RCTImageViewManager() {
this(null, null);
}
public RCTImageViewManager(
AbstractDraweeControllerBuilder draweeControllerBuilder,
Object callerContext) {
mDraweeControllerBuilder = draweeControllerBuilder;
mCallerContext = callerContext;
}
@Override
public String getName() {
return "RCTImageView";
@@ -25,4 +44,15 @@ public final class RCTImageViewManager extends FlatViewManager {
public Class<RCTImageView> getShadowNodeClass() {
return RCTImageView.class;
}
public AbstractDraweeControllerBuilder getDraweeControllerBuilder() {
if (mDraweeControllerBuilder == null) {
mDraweeControllerBuilder = Fresco.newDraweeControllerBuilder();
}
return mDraweeControllerBuilder;
}
public Object getCallerContext() {
return mCallerContext;
}
}