package com.cwa.msg.sign; import com.cwa.gamecore.message.GameResponse; import com.cwa.gamecore.session.GameSession; import java.util.Set; /** * 给响应消息增加RSA签名。 */ public class SignResponseGameSession implements GameSession { private GameSession unsecureSession; public SignResponseGameSession(GameSession unsecureSession) { this.unsecureSession = unsecureSession; } @Override public void write(GameResponse resp) { RsaSignedResponse signedResp = new RsaSignedResponse(resp); unsecureSession.write(signedResp); } // 转发方法调用 @Override public void broadcast(GameResponse resp) { unsecureSession.broadcast(resp); } @Override public Object setAttribute(Object key, Object val) { return unsecureSession.setAttribute(key, val); } @Override public Object getAttribute(Object key) { return unsecureSession.getAttribute(key); } @Override public Set<Object> getAttributeKeys() { return unsecureSession.getAttributeKeys(); } @Override public void close() { unsecureSession.close(); } }