docs: private base_response delete_request(nitro_service service, String req_args) throws Exception
  	{
  		StringBuilder responseStr = new StringBuilder();
  		HttpURLConnection httpURLConnection = null;
  		try
  		{
  			String urlstr;
  			String ipaddress = service.get_ipaddress();
  			String version = service.get_version();
  			String sessionid = service.get_sessionid();
  			String objtype = get_object_type();
  			String protocol = service.get_protocol();
  
  			// build URL
  			urlstr = protocol + "://" + ipaddress + "/nitro/" + version + "/config/" + objtype;
  
  			String name = this.get_object_name();
  			if (name != null && name.length() > 0)
  			{
  				urlstr = urlstr+"/"+nitro_util.encode(nitro_util.encode(name));
  			}
  
  			if(req_args != null || (service.get_warning()!=null && service.get_warning())){
  				urlstr = urlstr+"?";
  				if(req_args != null)
  				{
  					urlstr = urlstr + "args=" + req_args;
  				}
  				if(service.get_warning()!=null && service.get_warning())
  				{
  					if (req_args != null)
  					{
  						urlstr = urlstr+"&";
  					}
  					urlstr = urlstr + "warning=yes";
  				}
  			}
  
  			URL url = new URL(urlstr);
  			httpURLConnection = (HttpURLConnection) url.openConnection();
  
  			httpURLConnection.setRequestMethod("DELETE");
  
  			httpURLConnection.setRequestProperty("Cookie", "sessionid=" + nitro_util.encode(sessionid));
  			httpURLConnection.setRequestProperty("Accept-Encoding", "gzip, deflate");
  
  			if (httpURLConnection instanceof HttpsURLConnection)
  			{
  				if (service.get_certvalidation()) {
  					SocketFactory sslSocketFactory = SSLSocketFactory.getDefault();
  					HttpsURLConnection secured = (HttpsURLConnection) httpURLConnection;
  					secured.setSSLSocketFactory((SSLSocketFactory)sslSocketFactory);	
  					if (!service.get_hostnameverification()) {
  						/*
  						 * override defualt hostNameverifier's verify method
  						 * with EmptyHostnameVerifier's verify method to ignore hostname verification check.
  						 */
  						secured.setHostnameVerifier(new EmptyHostnameVerifier());
  					}
  				} else {
  					SSLContext sslContext = SSLContext.getInstance("SSL");
  					//we are using an empty trust manager, because NetScaler currently presents
  					//a test certificate not issued by any signing authority, so we need to bypass
  					//the credentials check
  					sslContext.init(null, new TrustManager[]{new EmptyTrustManager()}, null);
  					SocketFactory sslSocketFactory = sslContext.getSocketFactory();
  					
  					HttpsURLConnection secured = (HttpsURLConnection) httpURLConnection;
  					secured.setSSLSocketFactory((SSLSocketFactory)sslSocketFactory);
  					if (!service.get_hostnameverification()) {
  						/*
  						 * overriding defualt hostNameverifier's verify method
  						 * with EmptyHostnameVerifier's verify method to bypass hostname check.
  						 */
  						secured.setHostnameVerifier(new EmptyHostnameVerifier());
  					}
  				}
  			}
  
  			InputStream input;
  			try {
  				input = httpURLConnection.getInputStream();
  			}
  			catch (Exception e) {
  				input = httpURLConnection.getErrorStream();	
  			}
  			String contentEncoding = httpURLConnection.getContentEncoding();
  			//	get correct input stream for compressed data:
  			if (contentEncoding != null)
  			{
  				if(contentEncoding.equalsIgnoreCase("gzip"))
  					input = new GZIPInputStream(input); //reads 2 bytes to determine GZIP stream!
  				else if(contentEncoding.equalsIgnoreCase("deflate"))
  					input = new InflaterInputStream(input);
  			}
  
  			int numOfTotalBytesRead;
  			byte [] buffer = new byte[1024];
  			while ((numOfTotalBytesRead = input.read(buffer, 0, buffer.length)) != -1)
  			{
  				responseStr.append(new String(buffer, 0, numOfTotalBytesRead));
  			}
  
  			httpURLConnection.disconnect();
  			input.close();
  		}
  		catch (MalformedURLException mue)
  		{
  			throw mue;
  		}
  		catch (IOException ioe)
  		{
  			throw ioe;
  		}
  		catch(Exception e)
  		{
  			throw e;
  		}
  		base_response result =(base_response) service.get_payload_formatter().string_to_resource(base_response.class, responseStr.toString());
          if (result.errorcode != 0) 
          {
  			if (result.errorcode == 444) {
  				service.clear_session();
  			}
  			if(result.severity != null)
  			{
  				if(result.severity.equals("ERROR"))
  					throw new nitro_exception(result.message,result.errorcode);
  			}
  			else
  			{
  				throw new nitro_exception(result.message,result.errorcode);
  			}
  		}
  		return result;
  	}