Example usage for com.google.gwt.core.client ScriptInjector fromUrl

List of usage examples for com.google.gwt.core.client ScriptInjector fromUrl

Introduction

In this page you can find the example usage for com.google.gwt.core.client ScriptInjector fromUrl.

Prototype

public static FromUrl fromUrl(String scriptUrl) 

Source Link

Document

Build an injection call for adding a script by URL.

Usage

From source file:org.eclipse.che.ide.bootstrap.ZeroClipboardInjector.java

License:Open Source License

@Override
public void start(Callback<Component, Exception> callback) {
    // Inject ZeroClipboard script
    ScriptInjector.fromUrl(GWT.getModuleBaseForStaticFiles() + "ZeroClipboard.min.js")
            .setWindow(ScriptInjector.TOP_WINDOW).setCallback(new Callback<Void, Exception>() {
                @Override// w  w  w  .j  a  va2 s .c om
                public void onSuccess(Void result) {
                }

                @Override
                public void onFailure(Exception e) {
                    Log.error(getClass(), "Unable to inject ZeroClipboard.min.js", e);
                }
            }).inject();
    callback.onSuccess(this);
}

From source file:org.eclipse.che.ide.devmode.DevModeScriptInjector.java

License:Open Source License

/**
 * Injects the JS script, that communicates with a Code Server, into a host page.
 *
 * @param url host URL where script is located. Usually should be a Code Server URL
 * @return promise that may be resolved if script has been injected successfully or rejected in
 *     case of any error while script injection
 *//*from  w w w  .j  av  a2 s. c om*/
Promise<Void> inject(String url) {
    return CallbackPromiseHelper.createFromCallback(promiseCallback -> ScriptInjector
            .fromUrl(url + DEV_MODE_SCRIPT_NAME).setWindow(JsBrowser.getWindow())
            .setCallback(getScriptInjectionCallback(promiseCallback)).inject());
}

From source file:org.eclipse.che.ide.extension.machine.client.perspective.terminal.TerminalPresenter.java

License:Open Source License

@Inject
public TerminalPresenter(TerminalView view, NotificationManager notificationManager,
        MachineLocalizationConstant locale, @Assisted Machine machine) {
    this.view = view;
    view.setDelegate(this);
    this.notificationManager = notificationManager;
    this.locale = locale;
    this.machine = machine;

    isTerminalConnected = false;/*from w  w  w  . j av a 2 s.com*/

    promise = AsyncPromiseHelper.createFromAsyncRequest(new AsyncPromiseHelper.RequestCall<Boolean>() {
        @Override
        public void makeCall(final AsyncCallback<Boolean> callback) {
            ScriptInjector.fromUrl(GWT.getModuleBaseURL() + "term/term.js").setWindow(ScriptInjector.TOP_WINDOW)
                    .setCallback(new Callback<Void, Exception>() {
                        @Override
                        public void onFailure(Exception reason) {
                            callback.onFailure(reason);
                        }

                        @Override
                        public void onSuccess(Void result) {
                            callback.onSuccess(true);
                        }
                    }).inject();
        }
    });

    countRetry = 2;

    retryConnectionTimer = new Timer() {
        @Override
        public void run() {
            connect();

            countRetry--;
        }
    };
}

From source file:org.eclipse.che.ide.factory.FactoryExtension.java

License:Open Source License

@Inject
public FactoryExtension(AcceptFactoryHandler acceptFactoryHandler, ActionManager actionManager,
        FactoryResources resources, CreateFactoryAction configureFactoryAction,
        ImportFromConfigAction importFromConfigAction, OpenWelcomePageAction openWelcomePageAction) {
    acceptFactoryHandler.process();//www  .j a  v  a  2  s .c om

    /*
     * Inject resources and js
     */
    ScriptInjector.fromUrl("https://apis.google.com/js/client:plusone.js?parsetags=explicit")
            .setWindow(TOP_WINDOW).inject();

    ScriptInjector.fromUrl("https://connect.facebook.net/en_US/sdk.js").setWindow(TOP_WINDOW)
            .setCallback(new Callback<Void, Exception>() {
                @Override
                public void onSuccess(Void result) {
                    init();
                }

                @Override
                public void onFailure(Exception reason) {
                }

                private native void init() /*-{
                                           $wnd.FB.init({
                                           appId: "318167898391385",
                                           xfbml: true,
                                           version: "v2.1"
                                           });
                                           }-*/;
            }).inject();

    resources.factoryCSS().ensureInjected();

    DefaultActionGroup projectGroup = (DefaultActionGroup) actionManager.getAction(GROUP_PROJECT);
    DefaultActionGroup workspaceGroup = (DefaultActionGroup) actionManager.getAction(GROUP_WORKSPACE);

    actionManager.registerAction("openWelcomePage", openWelcomePageAction);
    actionManager.registerAction("importProjectFromCodenvyConfigAction", importFromConfigAction);
    actionManager.registerAction("configureFactoryAction", configureFactoryAction);

    projectGroup.add(importFromConfigAction);
    workspaceGroup.add(configureFactoryAction);
}

From source file:org.eclipse.che.ide.jseditor.client.requirejs.RequireJsLoader.java

License:Open Source License

public void require(final RequirejsCallback callback, final RequirejsErrorHandler errorHandler,
        final RequirejsConfig config, final String[] requiredScripts, final String[] moduleKeys) {
    if (!requirejsLoaded && !requirejsLoadFailed) {
        Log.debug(RequireJsLoader.class, "Loading require.js.");
        /** Using GWT.getModuleBaseForStaticFiles() blocks CodeMirror to run under Super Dev Mode */
        ScriptInjector.fromUrl(GWT.getModuleBaseURL() + "require.js").setWindow(ScriptInjector.TOP_WINDOW)
                .setCallback(new Callback<Void, Exception>() {
                    @Override/*from   w  w  w . j av a2  s  .  c  o m*/
                    public void onSuccess(final Void result) {
                        Log.debug(RequireJsLoader.class, "require.js loaded.");
                        configureGlobalErrorCallback();
                        requireScripts(callback, errorHandler, config, requiredScripts, moduleKeys);
                        requirejsLoaded = true;
                    }

                    @Override
                    public void onFailure(final Exception e) {
                        Log.error(RequireJsLoader.class, "Unable to load require.js", e);
                        requirejsLoadFailed = true;
                    }
                }).inject();
    } else if (!requirejsLoadFailed) {
        requireScripts(callback, null, config, requiredScripts, moduleKeys);
    } else {
        Log.error(RequireJsLoader.class, "Require.js load failed, cannot require scripts.");
    }
}

From source file:org.eclipse.che.ide.workspace.activity.ActivityTrackingExtension.java

License:Open Source License

@Inject
public ActivityTrackingExtension(AppContext appContext) {

    ScriptInjector.fromUrl("/_app/activity.js").setWindow(TOP_WINDOW)
            .setCallback(new Callback<Void, Exception>() {
                @Override//from w  w  w.  ja  v a2 s  . com
                public void onSuccess(Void result) {
                    init(appContext.getMasterApiEndpoint(), appContext.getWorkspaceId());
                }

                @Override
                public void onFailure(Exception reason) {
                }

                private native void init(String restContext, String wsId) /*-{
                                                                          $wnd.ActivityTracker.init(restContext, wsId);
                                                                          }-*/;
            }).inject();
}

From source file:org.eclipse.che.multiuser.keycloak.ide.KeycloakProvider.java

License:Open Source License

@Inject
public KeycloakProvider(AppContext appContext) {
    if (Keycloak.isConfigured()) {
        keycloak = Keycloak.get();/*from w  w  w  .  ja v a 2s. com*/
        return;
    }

    String keycloakSettings = getKeycloakSettings(
            KeycloakConstants.getEndpoint(appContext.getMasterApiEndpoint()));
    Map<String, String> settings;
    try {
        settings = JsonHelper.toMap(keycloakSettings);
    } catch (Exception e) {
        return;
    }

    keycloak = CallbackPromiseHelper.createFromCallback(new CallbackPromiseHelper.Call<Void, Throwable>() {
        @Override
        public void makeCall(final Callback<Void, Throwable> callback) {
            ScriptInjector.fromUrl(settings.get(AUTH_SERVER_URL_SETTING) + "/js/keycloak.js")
                    .setCallback(new Callback<Void, Exception>() {
                        @Override
                        public void onSuccess(Void result) {
                            callback.onSuccess(null);
                        }

                        @Override
                        public void onFailure(Exception reason) {
                            callback.onFailure(reason);
                        }
                    }).setWindow(getWindow()).inject();
        }
    }).thenPromise((v) -> Keycloak.init(settings.get(AUTH_SERVER_URL_SETTING), settings.get(REALM_SETTING),
            settings.get(CLIENT_ID_SETTING)));
    Log.debug(getClass(), "Keycloak init complete: ", this);
}

From source file:org.eclipse.che.plugin.activity.ide.ActivityTrackingExtension.java

License:Open Source License

@Inject
public ActivityTrackingExtension(final @RestContext String restContext, final AppContext appContext) {

    ScriptInjector.fromUrl("/_app/activity.js").setWindow(TOP_WINDOW)
            .setCallback(new Callback<Void, Exception>() {
                @Override//  ww  w.ja  v a2s  .c  om
                public void onSuccess(Void result) {
                    init(restContext, appContext.getWorkspaceId());
                }

                @Override
                public void onFailure(Exception reason) {
                }

                private native void init(String restContext, String wsId) /*-{
                                                                          $wnd.ActivityTracker.init(restContext, wsId);
                                                                          }-*/;
            }).inject();
}

From source file:org.eclipse.che.plugin.embedjsexample.ide.view.HelloWorldViewPresenter.java

License:Open Source License

@Inject
public HelloWorldViewPresenter(final HelloWorldView helloWorldView) {
    this.helloWorldView = helloWorldView;

    ScriptInjector.fromUrl(GWT.getModuleBaseURL() + Constants.JAVASCRIPT_FILE_ID)
            .setWindow(ScriptInjector.TOP_WINDOW).setCallback(new Callback<Void, Exception>() {
                @Override//from w w  w.j  a  v  a 2 s  . com
                public void onSuccess(final Void result) {
                    Log.info(HelloWorldViewPresenter.class, Constants.JAVASCRIPT_FILE_ID + " loaded.");
                    sayHello("Hello from Java Script!");
                }

                @Override
                public void onFailure(final Exception e) {
                    Log.error(HelloWorldViewPresenter.class, "Unable to load " + Constants.JAVASCRIPT_FILE_ID,
                            e);
                }
            }).inject();

}

From source file:org.eclipse.che.plugin.emf.ide.editor.client.EcoreEditorPresenter.java

License:Open Source License

/**
 * {@inheritDoc}//from  ww w. j ava 2  s  .c o  m
 */
@Override
protected void initializeEditor(OpenEditorCallback callback) {
    ScriptInjector.fromUrl(GWT.getModuleBaseURL() + "ecore-editor.js").setWindow(ScriptInjector.TOP_WINDOW)
            .setCallback(new Callback<Void, Exception>() {
                @Override
                public void onSuccess(final Void result) {

                    input.getFile().getContent().then(new Operation<String>() {
                        @Override
                        public void apply(String content) throws OperationException {
                            Log.info(EcoreEditorPresenter.class, "Ecore editor loaded.");
                            new EditorWidgetInitializedCallback()
                                    .initialized(EcoreEditorPresenter.this.ecoreView, content);
                            updateDirtyState(true);
                        }
                    });

                }

                @Override
                public void onFailure(final Exception e) {
                    Log.error(EcoreEditorPresenter.class, "Unable to load ecore-editor.js", e);
                }
            }).inject();
}