code: @Override
  	public Result<Void> getPermsByUserWithAAFQuery(AuthzTrans trans, HttpServletRequest req, HttpServletResponse resp, String user) {
  		TimeTaken tt = trans.start(GET_PERMISSIONS_BY_USER_WITH_QUERY + ' ' + user, Env.SUB|Env.ALWAYS);
  		try {
  			PERMS perms;
  			try {
  				RosettaData<PERMS> data = permsDF.newData().load(req.getInputStream());
  				if(Question.willSpecialLog(trans, trans.user())) {
  					Question.logEncryptTrace(trans,data.asString());
  				}
  				perms = data.asObject();			
  			} catch(APIException e) {
  				trans.error().log("Invalid Input",IN,CREATE_PERMISSION);
  				return Result.err(Status.ERR_BadData,"Invalid Input");
  			}
  
  			Result<PERMS> rp = service.getPermsByUser(trans, perms, user);
  			switch(rp.status) {
  				case OK: 
  					RosettaData<PERMS> data = permsDF.newData(trans).load(rp.value);
  					if(Question.willSpecialLog(trans, trans.user())) {
  						Question.logEncryptTrace(trans,data.asString());
  					}
  					data.to(resp.getOutputStream());
  					setContentType(resp,permsDF.getOutType());
  					return Result.ok();
  				default:
  					return Result.err(rp);
  			}
  		} catch (Exception e) {
  			trans.error().log(e,IN,GET_PERMISSIONS_BY_USER_WITH_QUERY , user);
  			return Result.err(e);
  		} finally {
  			tt.done();
  		}
  	}
docs: /* (non-Javadoc)
  @see com.att.authz.facade.AuthzFacade#getPermissionByUser(com.att.authz.env.AuthzTrans, javax.servlet.http.HttpServletResponse, java.lang.String)