/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package com.eas.server; import com.eas.client.threetier.Request; import com.eas.client.threetier.Response; import java.util.function.Consumer; /** * * @param <T> * @author pk * @param <R> */ public abstract class RequestHandler<T extends Request, R extends Response> { private final T request; protected final PlatypusServerCore serverCore; public RequestHandler(PlatypusServerCore aServerCore, T aRequest) { super(); serverCore = aServerCore; request = aRequest; } public T getRequest() { return request; } public PlatypusServerCore getServerCore() { return serverCore; } public abstract void handle(Session aSession, Consumer<R> onSuccess, Consumer<Exception> onFailure); }