Guest User

Untitled

a guest
Jul 18th, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.05 KB | None | 0 0
  1. public abstract class BaseAdapter<SERVICE extends BaseService, REQ, RES extends BaseResponse> {
  2. private static final Logger LOG = LoggerFactory.getLogger(BaseAdapter.class);
  3.  
  4. @SuppressWarnings("unchecked")
  5. public RES execute(Class<SERVICE> classService, Class<REQ> classRequest, Class<RES> classResponse, String body) {
  6. try {
  7. REQ req = GsonUtils.fromJson(body, classRequest);
  8.  
  9. BasicRequest basicRequest = transform(req);
  10.  
  11. if (basicRequest != null) {
  12. SERVICE service = classService.newInstance();
  13.  
  14. return (RES) service.execute(basicRequest);
  15. } else {
  16. RES res = classResponse.newInstance();
  17.  
  18. res.setMessage(MessageHolder.getMessage(MessageHolder.GLOBAL_ERROR)).setSuccess(false);
  19.  
  20. return res;
  21. }
  22. } catch (InstantiationException | IllegalAccessException e) {
  23. LOG.error(Constants.EXCEPTION_PREFIX, e);
  24.  
  25. return null;
  26. }
  27. }
  28.  
  29. public abstract BasicRequest transform(REQ request);
  30. }
Add Comment
Please, Sign In to add comment