public String generateUrl(GenerateUrlRequest paramGenerateUrlRequest) {
		assertParameterNotNull(paramGenerateUrlRequest.getHttpMethod(), "The http method parameter in Request must be specified.");
		assertParameterNotNull(paramGenerateUrlRequest.getBucket(), "The bucket parameter must be specified.");
		assertParameterNotNull(paramGenerateUrlRequest.getObject(), "The object parameter must be specified.");

		BCSHttpRequest localBCSHttpRequest = createHttpRequest(paramGenerateUrlRequest);
		BCSSigner.sign(paramGenerateUrlRequest, localBCSHttpRequest, this.credentials, paramGenerateUrlRequest.getBcsSignCondition());

		return this.bcsHttpClient.getHttpRequestFactory().buildUri(this.bcsHttpClient.getConfig(), localBCSHttpRequest);
	}