Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(9)

Unified Diff: tools/immic/lib/src/resources/java/immi/ImmiRoot.java

Issue 2035023003: Remove service-compiler related code. (Closed) Base URL: git@github.com:dartino/sdk.git@master
Patch Set: Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: tools/immic/lib/src/resources/java/immi/ImmiRoot.java
diff --git a/tools/immic/lib/src/resources/java/immi/ImmiRoot.java b/tools/immic/lib/src/resources/java/immi/ImmiRoot.java
deleted file mode 100644
index 9adcac5d8dfe99cb7f84ede20cb9f781791912a4..0000000000000000000000000000000000000000
--- a/tools/immic/lib/src/resources/java/immi/ImmiRoot.java
+++ /dev/null
@@ -1,103 +0,0 @@
-// Copyright (c) 2015, the Dartino project authors. Please see the AUTHORS file
-// for details. All rights reserved. Use of this source code is governed by a
-// BSD-style license that can be found in the LICENSE.md file.
-
-// Generated file. Do not edit.
-
-package immi;
-
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
-
-import dartino.ImmiServiceLayer;
-import dartino.ImmiServiceLayer.RefreshCallback;
-import dartino.PatchData;
-
-public final class ImmiRoot {
-
- // Public interface.
-
- public void refresh() {
- refreshThread.submit(requestRefresh);
- }
-
- public void reset() {
- refreshThread.submit(requestReset);
- }
-
- // Package private implementation.
-
- // For construction see ImmiService.registerPresenter.
- ImmiRoot(int id, AnyNodePresenter presenter) {
- assert id > 0;
- this.id = id;
- this.presenter = presenter;
- }
-
- void dispatch(Runnable event) {
- event.run();
- // TODO(zerny): Consider other strategies than eagerly requesting a refresh
- // on each dispatch.
- refresh();
- }
-
- // Private implementation.
-
- // No assumptions are made on which thread patch application is performed on.
- // Initiating a refresh is controlled by requestRefresh and finishRefresh below.
- // Single thread executor guaranties mutual exclusion of requestRefresh and finishRefresh.
- private RefreshCallback applyPatch = new RefreshCallback() {
- @Override
- public void handle(PatchData data) {
- if (data.isNode()) {
- AnyNodePatch patch = new AnyNodePatch(data.getNode(), previous, ImmiRoot.this);
- previous = patch.getCurrent();
- patch.applyTo(presenter);
- }
- refreshThread.submit(finishRefresh);
- }
- };
-
- private Runnable requestRefresh = new Runnable() {
- @Override
- public void run() {
- if (refreshPending) {
- // Request a refresh once the pending refresh finishes.
- refreshRequired = true;
- } else {
- // Initiate a new refresh.
- refreshPending = true;
- ImmiServiceLayer.refreshAsync(id, applyPatch);
- }
- }
- };
-
- private Runnable finishRefresh = new Runnable() {
- @Override
- public void run() {
- assert refreshPending;
- if (refreshRequired) {
- // A refresh request is outstanding so immediately initiate a new refresh.
- refreshRequired = false;
- ImmiServiceLayer.refreshAsync(id, applyPatch);
- } else {
- refreshPending = false;
- }
- }
- };
-
- // To guarantee order of refresh and reset we schedule reset on the same executor.
- private Runnable requestReset = new Runnable() {
- @Override
- public void run() {
- ImmiServiceLayer.resetAsync(id, null);
- }
- };
-
- private int id;
- private AnyNodePresenter presenter;
- private AnyNode previous;
- private boolean refreshPending = false;
- private boolean refreshRequired = false;
- private final static ExecutorService refreshThread = Executors.newSingleThreadExecutor();
-}

Powered by Google App Engine
This is Rietveld 408576698