コード例 #1
0
 private void enqueueMessage(JsMessage message) {
   synchronized (this) {
     if (activeBridgeMode == null) {
       Log.d(LOG_TAG, "Dropping Native->JS message due to disabled bridge");
       return;
     }
     queue.add(message);
     if (!paused) {
       activeBridgeMode.onNativeToJsMessageAvailable();
     }
   }
 }
コード例 #2
0
 public void setPaused(boolean value) {
   if (paused && value) {
     // This should never happen. If a use-case for it comes up, we should
     // change pause to be a counter.
     Log.e(LOG_TAG, "nested call to setPaused detected.", new Throwable());
   }
   paused = value;
   if (!value) {
     synchronized (this) {
       if (!queue.isEmpty() && activeBridgeMode != null) {
         activeBridgeMode.onNativeToJsMessageAvailable();
       }
     }
   }
 }
コード例 #3
0
 /** Changes the bridge mode. */
 public void setBridgeMode(int value) {
   if (value < 0 || value >= registeredListeners.length) {
     Log.d(LOG_TAG, "Invalid NativeToJsBridgeMode: " + value);
   } else {
     if (value != activeListenerIndex) {
       Log.d(LOG_TAG, "Set native->JS mode to " + value);
       synchronized (this) {
         activeListenerIndex = value;
         BridgeMode activeListener = registeredListeners[value];
         if (!paused && !queue.isEmpty() && activeListener != null) {
           activeListener.onNativeToJsMessageAvailable();
         }
       }
     }
   }
 }
コード例 #4
0
 /** Changes the bridge mode. */
 public void setBridgeMode(int value) {
   if (value < -1 || value >= registeredListeners.length) {
     Log.d(LOG_TAG, "Invalid NativeToJsBridgeMode: " + value);
   } else {
     BridgeMode newMode = value < 0 ? null : registeredListeners[value];
     if (newMode != activeBridgeMode) {
       Log.d(
           LOG_TAG,
           "Set native->JS mode to "
               + (newMode == null ? "null" : newMode.getClass().getSimpleName()));
       synchronized (this) {
         activeBridgeMode = newMode;
         if (newMode != null) {
           newMode.reset();
           if (!paused && !queue.isEmpty()) {
             newMode.onNativeToJsMessageAvailable();
           }
         }
       }
     }
   }
 }