// Path: src/main/java/org/audit4j/microservice/core/Ack.java
// public class Ack implements Serializable{
// 
// 	/**
// 	 * 
// 	 */
// 	private static final long serialVersionUID = -8707468501787579530L;
// 
// 	private String message;
// 	
// 	private int code;
// 
// 	public String getMessage() {
// 		return message;
// 	}
// 
// 	public void setMessage(String message) {
// 		this.message = message;
// 	}
// 
// 	public int getCode() {
// 		return code;
// 	}
// 
// 	public void setCode(int code) {
// 		this.code = code;
// 	}
// 
// 	public static Ack SUCCESS(){
// 		Ack ack = new Ack();
// 		ack.setCode(200);
// 		ack.setMessage("success");
// 		return ack;
// 	}
// 	
// 	public static Ack FAIL(){
// 		Ack ack = new Ack();
// 		ack.setCode(500);
// 		ack.setMessage("fail");
// 		return ack;
// 	}
// 	
// 	public static Ack UNAUTHORIZED(){
// 		Ack ack = new Ack();
// 		ack.setCode(401);
// 		ack.setMessage("unauthorized");
// 		return ack;
// 	}
// }


import io.vertx.core.Handler;
import io.vertx.core.buffer.Buffer;
import io.vertx.core.http.WebSocket;
import org.audit4j.core.Initializable;
import org.audit4j.core.exception.InitializationException;
import org.audit4j.microservice.core.Ack;
import org.nustaq.serialization.FSTConfiguration;
package org.audit4j.microservice.transport;



public class WebsocketHandler implements Handler<WebSocket>, Initializable{
	FSTConfiguration conf = FSTConfiguration.createDefaultConfiguration();
	
	WebSocket websocket;
	
	@Override
	public void handle(WebSocket websocket) {
		this.websocket = websocket;
		websocket.handler(data -> {
// Path: src/main/java/org/audit4j/microservice/core/Ack.java
// public class Ack implements Serializable{
// 
// 	/**
// 	 * 
// 	 */
// 	private static final long serialVersionUID = -8707468501787579530L;
// 
// 	private String message;
// 	
// 	private int code;
// 
// 	public String getMessage() {
// 		return message;
// 	}
// 
// 	public void setMessage(String message) {
// 		this.message = message;
// 	}
// 
// 	public int getCode() {
// 		return code;
// 	}
// 
// 	public void setCode(int code) {
// 		this.code = code;
// 	}
// 
// 	public static Ack SUCCESS(){
// 		Ack ack = new Ack();
// 		ack.setCode(200);
// 		ack.setMessage("success");
// 		return ack;
// 	}
// 	
// 	public static Ack FAIL(){
// 		Ack ack = new Ack();
// 		ack.setCode(500);
// 		ack.setMessage("fail");
// 		return ack;
// 	}
// 	
// 	public static Ack UNAUTHORIZED(){
// 		Ack ack = new Ack();
// 		ack.setCode(401);
// 		ack.setMessage("unauthorized");
// 		return ack;
// 	}
// }


// Path: src/main/java/org/audit4j/microservice/transport/WebsocketHandler.java
import io.vertx.core.Handler;
import io.vertx.core.buffer.Buffer;
import io.vertx.core.http.WebSocket;
import org.audit4j.core.Initializable;
import org.audit4j.core.exception.InitializationException;
import org.audit4j.microservice.core.Ack;
import org.nustaq.serialization.FSTConfiguration;

package org.audit4j.microservice.transport;



public class WebsocketHandler implements Handler<WebSocket>, Initializable{
	FSTConfiguration conf = FSTConfiguration.createDefaultConfiguration();
	
	WebSocket websocket;
	
	@Override
	public void handle(WebSocket websocket) {
		this.websocket = websocket;
		websocket.handler(data -> {
			Ack ack = (Ack) conf.asObject(data.getBytes());