001    package org.gwtbootstrap3.extras.notify.client;
002    
003    /*
004     * #%L
005     * GwtBootstrap3
006     * %%
007     * Copyright (C) 2013 - 2015 GwtBootstrap3
008     * %%
009     * Licensed under the Apache License, Version 2.0 (the "License");
010     * you may not use this file except in compliance with the License.
011     * You may obtain a copy of the License at
012     * 
013     *      http://www.apache.org/licenses/LICENSE-2.0
014     * 
015     * Unless required by applicable law or agreed to in writing, software
016     * distributed under the License is distributed on an "AS IS" BASIS,
017     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
018     * See the License for the specific language governing permissions and
019     * limitations under the License.
020     * #L%
021     */
022    
023    import com.google.gwt.core.client.EntryPoint;
024    import com.google.gwt.core.client.ScriptInjector;
025    
026    public class NotifyEntryPoint implements EntryPoint {
027    
028        @Override
029        public void onModuleLoad() {
030            if (!isNotifyLoaded()) {
031                ScriptInjector.fromString(NotifyClientBundle.INSTANCE.notifyJS().getText()).setWindow(ScriptInjector.TOP_WINDOW).inject();
032            }
033        }
034    
035        /**
036         * Check if notify is already loaded.
037         *
038         * @return <code>true</code> if notify is loaded, <code>false</code> otherwise
039         */
040        private native boolean isNotifyLoaded() /*-{
041            return ($wnd.jQuery && $wnd.jQuery.notify);
042        }-*/;
043    }