@Override
	public Object execute(Object... args) {
		String usedCmd = (String)args[0];
		String url = (String)args[1];
		FileDownload dl = null;
		if(args.length > 3) {
			String compression = (String) args[2];
			if(compression.equalsIgnoreCase("-c")) {
				CompressionType type = getType((String)args[3]);
				if(type == null) {
					return null;
				}
				ServerWindow.getSingleton().printCommandText(usedCmd+" >> "+url+" COMPRESSION FORMAT = "+type);
				try {
					dl = new FileDownload(new URL(url), true, type);
				} catch(Exception e) {
					e.printStackTrace();
					return null;
				}
			} else {
				ServerWindow.getSingleton().printCommandText("Invalid parameter '"+compression+"' entered.");
				return null;
			}
		} else {
			ServerWindow.getSingleton().printCommandText(usedCmd+" >> "+url);
			try {
				dl = new FileDownload(new URL(url), false, CompressionType.NONE);
			} catch(Exception e) {
				e.printStackTrace();
				return null;
			}
		}
		dl.start();
		return null;
	}