code: @Override
  	public Result<Void> getCertInfoByID(AuthzTrans trans, HttpServletRequest req, HttpServletResponse resp, String id) {
  		TimeTaken tt = trans.start(GET_CERT_BY_ID, Env.SUB|Env.ALWAYS);
  		try {	
  			Result<CERTS> rci = service.getCertInfoByID(trans,req,id);
  			
  			switch(rci.status) {
  				case OK: 
  					if(Question.willSpecialLog(trans, trans.user())) {
  						RosettaData<CERTS> data = certsDF.newData(trans).load(rci.value);
  						Question.logEncryptTrace(trans,data.asString());
  						data.to(resp.getOutputStream());
  					} else {
  						certsDF.direct(trans, rci.value, resp.getOutputStream());
  					}
  					setContentType(resp,certsDF.getOutType());
  					return Result.ok();
  				default:
  					return Result.err(rci);
  			}
  		} catch (Exception e) {
  			trans.error().log(e,IN,GET_CERT_BY_ID);
  			return Result.err(e);
  		} finally {
  			tt.done();
  		}
  	}
docs: /* (non-Javadoc)
  @see com.att.authz.facade.AuthzFacade#getCertInfoByID(com.att.authz.env.AuthzTrans, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, java.lang.String)