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;
}
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);
}
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;
}
}
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);
}
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;
}
Aggregations