docs: public String execute2(Map parameters, String body, RenderContext renderContext)
      throws MacroException
  {
      String url;
      HttpResponse response;
      
      url = cleanupUrl(RenderUtils.getParameter(parameters, "url", 0));
      if(!TextUtils.stringSet(url))
          return RenderUtils.blockError("Could not retrieve RSS feed: no URL", "");
      
      response = null;
      String s;
      try
      {
      	response = httpRetrievalService.get(url);
     
  	    if(response.isNotFound()) {
  	    	s =  notFound(url);
  	    
  	    	if(response != null)
  	    		response.finish();
  	    	return s;
  	    }
  	    
  	    if(response.isNotPermitted()) {
  	    	s = notPermitted(url);
  	    	if(response != null)
  	    		response.finish();
  	    	return s;
  	    }
  	    
  	    if(response.isFailed()) {
  		    s = failed(url, response);
  		    if(response != null)
  		        response.finish();
  		    return s;
  	    }
  	    String s1;
  	
  	        s1 = successfulResponse(parameters, renderContext, url, response);
      if(response != null)
          response.finish();
      return s1;
      }
      catch(IOException e)
      {
          throw new MacroException((new StringBuilder()).append("Unable to retrieve ").append(url).append(": ").append(e.getMessage()).toString(), e);
      }
  //    Exception exception;
  //    exception;
  //    if(response != null)
  //        response.finish();
  //    throw exception;
  }