Example #1
0
def downloadFile(URL, path):
    result = False
    with open(path, "wb") as localFile:
        try:
            print "Downloading {0} to {1} ".format(URL, path)
            remoteFile = urllib2.urlopen(URL)
            fileSize = getFileSize(remoteFile)
            fileSizeValid = not (-1 == fileSize)
            CHUNK_SIZE = 1024
            if fileSizeValid:
                perctangeReported = 0
                downloadedSize = 0
                while True:
                    data = remoteFile.read(CHUNK_SIZE)
                    dataSize = len(data)
                    if dataSize > 0:
                        localFile.write(data)
                        downloadedSize = downloadedSize + dataSize
                    else:
                        break
                    downloadedPercentage = (100 * downloadedSize) / fileSize
                    if downloadedPercentage >= perctangeReported + 10:
                        perctangeReported = perctangeReported + 10
                        sys.stdout.write("=")
            else:
                localFile.write(remoteFile.read())
            result = True
            print " SUCCESS"
        except:
            result = False
            print " FAILED"
    if not result:
        fu.delete(path)
    return result
Example #2
0
def downloadFile(URL, path):
  result = False
  with open(path, 'wb') as localFile:
    try:
      print 'Downloading {0} to {1} '.format(URL, path)
      remoteFile = urllib2.urlopen(URL)
      fileSize = getFileSize(remoteFile)
      fileSizeValid = not (-1 == fileSize)
      CHUNK_SIZE = 1024      
      if fileSizeValid:
        perctangeReported = 0
        downloadedSize = 0
        while True:        
          data = remoteFile.read(CHUNK_SIZE)
          dataSize = len(data)
          if dataSize > 0:
            localFile.write(data)
            downloadedSize = downloadedSize + dataSize 
          else:
            break
          downloadedPercentage = ( 100 * downloadedSize) / fileSize
          if downloadedPercentage >= perctangeReported + 10:
            perctangeReported = perctangeReported + 10
            sys.stdout.write('=')            
      else:     
        localFile.write(remoteFile.read())
      result = True
      print ' SUCCESS'
    except:
      result = False
      print ' FAILED'
  if not result:
    fu.delete(path)
  return result
    
Example #3
0
def checkForLicense(path, comment):
    with file(path, 'r') as original:
        data = original.read()
        if hasLicense(data):
            print path + " has a license"
            return
        if addLicense(path):
            print "Adding license to: " + path
            backupPath = path + ".backup"
            fu.copy(path, backupPath)
            prependLicense(path, comment, data)
            fu.delete(backupPath)
Example #4
0
def checkForLicense(path, comment):
  with file(path, 'r') as original:
    data = original.read()
    if hasLicense(data):
      print path + " has a license"
      return    
    if addLicense(path):
      print "Adding license to: " + path
      backupPath = path + ".backup"
      fu.copy(path, backupPath) 
      prependLicense(path, comment, data)
      fu.delete(backupPath)
Example #5
0
##       derived from this software without specific prior written permission.     ##
##                                                                                 ##
## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ##
## ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED   ##
## WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE          ##
## DISCLAIMED. IN NO EVENT SHALL [email protected] BE LIABLE FOR ANY             ##
## DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES      ##
## (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;    ##
## LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND     ##
## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT      ##
## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS   ##
## SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.                    ##
#####################################################################################

import ExternalLibsList as ell
import DownloadFile as dl
import ZIP
import os
import FileUtils as fu

print os.getcwd()

for externalLib in ell.externalLibs:
  if externalLib.unzip:
    if dl.downloadFile(externalLib.URL, "tempFile"):
      ZIP.extract("tempFile", externalLib.zipPath, externalLib.destination)
      fu.delete("tempFile")      
  else:
    fu.createFolders(os.path.dirname(externalLib.destination))
    dl.downloadFile(externalLib.URL, externalLib.destination)