Managed to use a urllib python 2.6 feature... converting code to work in 2.5
authorBrandon King <kingb@caltech.edu>
Tue, 16 Jun 2009 18:58:13 +0000 (18:58 +0000)
committerBrandon King <kingb@caltech.edu>
Tue, 16 Jun 2009 18:58:13 +0000 (18:58 +0000)
scripts/mark_archived_data

index bd83b3bc9469e5984acf8a5b09bd1ba85de0a999..62eca10304a0b52afa4322ca7d679dcef6041d42 100755 (executable)
@@ -11,6 +11,8 @@ from optparse import OptionParser
 
 import sys
 import urllib
+import urllib2
+
 
 
 def construct_parser():
@@ -32,16 +34,19 @@ def update_db(flowcell, serial, debug=False):
     """
     Creates link between flowcell and storage device over http
     """
-    www = urllib.urlopen(settings.LINK_FLOWCELL_STORAGE_DEVICE_URL+'%s/%s/' % (flowcell, serial))
-    httpcode = www.getcode()
-    if httpcode != 200:
-        print 'ERROR - HTTP OUTPUT (Return Code: %s); use -v/--verbose for more details.' % (httpcode)
+    url = settings.LINK_FLOWCELL_STORAGE_DEVICE_URL+'%s/%s/' % (flowcell, serial)
+    
+    req = urllib2.Request(url)
+    try:
+        response = urllib2.urlopen(req)
+    except urllib2.URLError, e:
+        print 'ERROR - HTTP OUTPUT (Return Code: %s); use -v/--verbose for more details.' % (e.code)
         if debug:
-            print www.read()
-        sys.exit(httpcode)
+            print e.read()
+        sys.exit(e.code)
     
     print "DB Update of %s & %s succeeded" % (flowcell, serial)
-    print www.read()
+    print response.read()
 
 
 def process_args(parser):