@DoesServiceRequest
    public void uploadServiceProperties(final ServiceProperties properties, QueueRequestOptions options,
            OperationContext opContext) throws StorageException {
        if (!Utility.isNullOrEmpty(properties.getDefaultServiceVersion())) {
            throw new IllegalArgumentException(SR.DEFAULT_SERVICE_VERSION_ONLY_SET_FOR_BLOB_SERVICE);
        }

        if (opContext == null) {
            opContext = new OperationContext();
        }

        opContext.initialize();
        options = QueueRequestOptions.populateAndApplyDefaults(options, this);

        Utility.assertNotNull("properties", properties);

        ExecutionEngine.executeWithRetry(this, null,
                this.uploadServicePropertiesImpl(properties, options, opContext, false),
                options.getRetryPolicyFactory(), opContext);
    }
@DoesServiceRequest
    public void uploadServiceProperties(final ServiceProperties properties, QueueRequestOptions options,
            OperationContext opContext) throws StorageException {
        if (!Utility.isNullOrEmpty(properties.getDefaultServiceVersion())) {
            throw new IllegalArgumentException(SR.DEFAULT_SERVICE_VERSION_ONLY_SET_FOR_BLOB_SERVICE);
        }

        if (opContext == null) {
            opContext = new OperationContext();
        }

        opContext.initialize();
        options = QueueRequestOptions.populateAndApplyDefaults(options, this);

        Utility.assertNotNull("properties", properties);

        ExecutionEngine.executeWithRetry(this, null,
                this.uploadServicePropertiesImpl(properties, options, opContext, false),
                options.getRetryPolicyFactory(), opContext);
    }
@ DoesServiceRequest public void uploadServiceProperties ( final ServiceProperties properties , QueueRequestOptions options , OperationContext opContext ) throws StorageException { if ( ! Utility . isNullOrEmpty ( properties . getDefaultServiceVersion ( ) ) ) { throw new IllegalArgumentException ( SR . DEFAULT_SERVICE_VERSION_ONLY_SET_FOR_BLOB_SERVICE ) ; } if ( opContext == null ) { opContext = new OperationContext ( ) ; } opContext . initialize ( ) ; options = QueueRequestOptions . populateAndApplyDefaults ( options , this ) ; Utility . assertNotNull ( "properties" , properties ) ; ExecutionEngine . executeWithRetry ( this , null , this . uploadServicePropertiesImpl ( properties , options , opContext , false ) , options . getRetryPolicyFactory ( ) , opContext ) ; }
Uploads a new {@link ServiceProperties} configuration to the given storage service. This includes Logging,
HourMetrics, MinuteMetrics and CORS configurations.

@param properties
The {@link ServiceProperties} to upload.
@param options
A {@link BlobRequestOptions} object that specifies any additional options for the request. Specifying
<code>null</code> will use the default request options from the associated service client (
{@link CloudBlobClient}).
@param opContext
An {@link OperationContext} object that represents the context for the current operation. This object
is used to track requests to the storage service, and to provide additional runtime information about
the operation.
@throws StorageException
If a storage service error occurred.
Uploads a new { @link ServiceProperties } configuration to the given storage service . This includes Logging HourMetrics MinuteMetrics and CORS configurations .