             return defer.promise
 
 
-        _uploadS3: ({ file, filename, destFolder, signedUrl, uploadMethod, uploadUrl }) ->
-            return @_uploadS3BySignedUrl file, uploadUrl if signedUrl
+        _uploadS3: ({ file, filename, destFolder, signedUrl, uploadMethod, uploadUrl, cacheControl }) ->
+            return @_uploadS3BySignedUrl file, uploadUrl, cacheControl if signedUrl
 
             defer = $q.defer()
             awsS3 = @awscredentials

                uploadUrl
                uploadMethod
                signedUrl
            }).then(
                (data) => @_loadHandler(data) # success
                (err) => @_errorHandler(err) # error

                setUploadUrl: (uploadUrl) -> _ctrl.uploadUrl = uploadUrl
                setUploadMethod: (uploadMethod) -> _ctrl.uploadMethod = uploadMethod
                isSignedUrl: (signedUrl) -> _ctrl.signedUrl = signedUrl
                setCacheControl: (cacheControl) -> _ctrl.cacheControl = cacheControl

            _doUpload = =>
                @_upload(
