Subversion Repository Public Repository

litesoft

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
// This Source Code is in the Public Domain per: http://litesoft.org/License.txt
package org.litesoft.GWT.eventbus.client;

import org.litesoft.GWT.client.*;
import org.litesoft.GWT.eventbus.client.nonpublic.*;
import org.litesoft.GWT.eventbus.client.rpc.*;
import org.litesoft.core.typeutils.*;

import com.google.gwt.user.client.*;
import com.google.gwt.event.logical.shared.*;

public abstract class AbstractHtmlLauncherClientEventBusApp extends AbstractClientEventBusApp
{
    private String mServerAppName;

    protected AbstractHtmlLauncherClientEventBusApp( AppNames pAppNames, String pServerAppName )
    {
        super( pAppNames );
        mServerAppName = Strings.assertNotNullNotEmpty( "ServerAppName", pServerAppName );
        String error = prepLauncherAccess();
        if ( error.length() != 0 )
        {
            error = "prepLauncherAccess: " + error;
            System.out.println( error );
            StatusBar.set( error );
        }
    }

    public void onClose( CloseEvent<Window> pEvent )
    {
        super.onClose( pEvent );
        String error = launcherNotifyClose( sEncodedClientId );
        if ( error.length() != 0 )
        {
            System.err.println( "launcherNotifyClose: " + error );
        }
    }

    protected void finalPrep( ChannelEventPackage pInitialChannelEvent,
                              AuthenticationData pAuthenticationData )
    {
        if ( !AuthenticationData.deNull( pAuthenticationData ).hasUserKeyAsOpaqueString() )
        {
            throw new RedirectClientException( "Not Authenticated", mServerAppName + "?PortalFrame" );
        }
        String error = launcherNotifyOpen( sEncodedClientId );
        if ( error.length() != 0 )
        {
            error = "launcherNotifyOpen: " + error;
            System.out.println( error );
            StatusBar.set( error );
        }
        super.finalPrep( pInitialChannelEvent, pAuthenticationData );
    }

    public static native String prepLauncherAccess()/*-{
        $wnd.rootWindow = $wnd.opener;
        if ( $wnd.rootWindow )
        {
            if ( $wnd.rootWindow.rootWindow )
            {
                $wnd.rootWindow = $wnd.rootWindow.rootWindow;
            }
            return "";
        }
        return "No RootWindow";
    }-*/;

    public static native String launcherNotifyOpen( String pEncodedClientID )/*-{
        if( $wnd.rootWindow )
        {
            try
            {
                $wnd.rootWindow.clientOpen( pEncodedClientID );
            }
            catch ( e )
            {
                return "Exception: " + e;
            }
            return "";
        }
        return "No RootWindow";
    }-*/;

    public static native String launcherNotifyClose( String pEncodedClientID )/*-{
        if( $wnd.rootWindow )
        {
            try
            {
                $wnd.rootWindow.clientClose( pEncodedClientID );
            }
            catch ( e )
            {
                return "Exception: " + e;
            }
            return "";
        }
        return "No RootWindow";
    }-*/;
}

Commits for litesoft/trunk/Java/GWT/OldClient/src/org/litesoft/GWT/eventbus/client/AbstractHtmlLauncherClientEventBusApp.java

Diff revisions: vs.
Revision Author Commited Message
821 Diff Diff GeorgeS picture GeorgeS Sun 19 Aug, 2012 00:08:41 +0000
49 Diff Diff GeorgeS picture GeorgeS Mon 12 Apr, 2010 02:59:10 +0000

License Text

2 GeorgeS picture GeorgeS Sun 07 Feb, 2010 12:50:58 +0000