Search in sources :

Example 1 with EzyApp

use of com.tvd12.ezyfoxserver.client.entity.EzyApp in project ezyfox-server-example by tvd12.

the class HelloWorldClient method setup.

protected EzyClient setup() {
    EzyClientConfig clientConfig = EzyClientConfig.builder().zoneName(ZONE_NAME).enableSSL().enableDebug().build();
    EzyClients clients = EzyClients.getInstance();
    EzyClient client = new EzyUTClient(clientConfig);
    clients.addClient(client);
    EzySetup setup = client.setup();
    setup.addEventHandler(EzyEventType.CONNECTION_SUCCESS, new EzyConnectionSuccessHandler());
    setup.addEventHandler(EzyEventType.CONNECTION_FAILURE, new EzyConnectionFailureHandler());
    setup.addDataHandler(EzyCommand.HANDSHAKE, new ExHandshakeEventHandler());
    setup.addDataHandler(EzyCommand.LOGIN, new ExLoginSuccessHandler());
    setup.addDataHandler(EzyCommand.APP_ACCESS, new ExAccessAppHandler());
    EzyAppSetup appSetup = setup.setupApp(APP_NAME);
    appSetup.addDataHandler("greet", new ChatGreetResponseHandler());
    appSetup.addDataHandler("secureChat", new SecureChatResponseHandler());
    appSetup.addDataHandler("chatAll", new EzyAppDataHandler<EzyData>() {

        @Override
        public void handle(EzyApp app, EzyData data) {
            System.out.println("chatAll: " + data);
        }
    });
    appSetup.addDataHandler("chat1", new EzyAppDataHandler<EzyData>() {

        @Override
        public void handle(EzyApp app, EzyData data) {
            System.out.println("chat1: " + data);
        }
    });
    appSetup.addDataHandler("chatToMe", new EzyAppDataHandler<EzyData>() {

        @Override
        public void handle(EzyApp app, EzyData data) {
            System.out.println("chatToMe: " + data);
        }
    });
    appSetup.addDataHandler("err", new EzyAppDataHandler<EzyData>() {

        @Override
        public void handle(EzyApp app, EzyData data) {
            System.out.println("error: " + data);
        }
    });
    return client;
}
Also used : EzyAppSetup(com.tvd12.ezyfoxserver.client.setup.EzyAppSetup) EzyClientConfig(com.tvd12.ezyfoxserver.client.config.EzyClientConfig) EzyClient(com.tvd12.ezyfoxserver.client.EzyClient) EzyData(com.tvd12.ezyfox.entity.EzyData) EzyUTClient(com.tvd12.ezyfoxserver.client.EzyUTClient) EzyApp(com.tvd12.ezyfoxserver.client.entity.EzyApp) EzySetup(com.tvd12.ezyfoxserver.client.setup.EzySetup) EzyClients(com.tvd12.ezyfoxserver.client.EzyClients)

Example 2 with EzyApp

use of com.tvd12.ezyfoxserver.client.entity.EzyApp in project ezyfox-server-android-client by youngmonkeys.

the class EzyAppResponseHandler method handle.

@Override
public void handle(EzyArray data) {
    int appId = data.get(0, int.class);
    EzyArray commandData = data.get(1, EzyArray.class);
    String cmd = commandData.get(0, String.class);
    EzyData responseData = commandData.get(1, EzyData.class, null);
    EzyApp app = client.getAppById(appId);
    if (app == null) {
        EzyLogger.info("receive message when has not joined app yet");
        return;
    }
    EzyAppDataHandler dataHandler = app.getDataHandler(cmd);
    if (dataHandler != null)
        dataHandler.handle(app, responseData);
    else
        EzyLogger.warn("app: " + app.getName() + " has no handler for command: " + cmd);
}
Also used : EzyApp(com.tvd12.ezyfoxserver.client.entity.EzyApp) EzyArray(com.tvd12.ezyfoxserver.client.entity.EzyArray) EzyData(com.tvd12.ezyfoxserver.client.entity.EzyData)

Example 3 with EzyApp

use of com.tvd12.ezyfoxserver.client.entity.EzyApp in project ezyfox-server-android-client by youngmonkeys.

the class EzySimpleAppManager method removeApp.

@Override
public EzyApp removeApp(int appId) {
    synchronized (this) {
        EzyApp app = this.appsById.remove(appId);
        if (app != null) {
            this.appList.remove(app);
            this.appsByName.remove(app.getName());
        }
        return app;
    }
}
Also used : EzyApp(com.tvd12.ezyfoxserver.client.entity.EzyApp)

Example 4 with EzyApp

use of com.tvd12.ezyfoxserver.client.entity.EzyApp in project ezyfox-server-android-client by youngmonkeys.

the class EzyAppAccessHandler method handle.

@Override
public void handle(EzyArray data) {
    EzyZone zone = client.getZone();
    EzyAppManager appManager = zone.getAppManager();
    EzyApp app = newApp(zone, data);
    appManager.addApp(app);
    postHandle(app, data);
}
Also used : EzyZone(com.tvd12.ezyfoxserver.client.entity.EzyZone) EzyApp(com.tvd12.ezyfoxserver.client.entity.EzyApp) EzyAppManager(com.tvd12.ezyfoxserver.client.manager.EzyAppManager)

Example 5 with EzyApp

use of com.tvd12.ezyfoxserver.client.entity.EzyApp in project ezyfox-server-android-client by youngmonkeys.

the class EzyAppAccessHandler method newApp.

protected EzyApp newApp(EzyZone zone, EzyArray data) {
    int appId = data.get(0, int.class);
    String appName = data.get(1, String.class);
    EzySimpleApp app = new EzySimpleApp(zone, appId, appName);
    return app;
}
Also used : EzySimpleApp(com.tvd12.ezyfoxserver.client.entity.EzySimpleApp)

Aggregations

EzyApp (com.tvd12.ezyfoxserver.client.entity.EzyApp)5 EzyZone (com.tvd12.ezyfoxserver.client.entity.EzyZone)2 EzyAppManager (com.tvd12.ezyfoxserver.client.manager.EzyAppManager)2 EzyData (com.tvd12.ezyfox.entity.EzyData)1 EzyClient (com.tvd12.ezyfoxserver.client.EzyClient)1 EzyClients (com.tvd12.ezyfoxserver.client.EzyClients)1 EzyUTClient (com.tvd12.ezyfoxserver.client.EzyUTClient)1 EzyClientConfig (com.tvd12.ezyfoxserver.client.config.EzyClientConfig)1 EzyArray (com.tvd12.ezyfoxserver.client.entity.EzyArray)1 EzyData (com.tvd12.ezyfoxserver.client.entity.EzyData)1 EzySimpleApp (com.tvd12.ezyfoxserver.client.entity.EzySimpleApp)1 EzyAppSetup (com.tvd12.ezyfoxserver.client.setup.EzyAppSetup)1 EzySetup (com.tvd12.ezyfoxserver.client.setup.EzySetup)1