fixes to pynorm for Python3 and normMsgr.py and normFileSend.py examples
parent
972b1a3e0b
commit
5cd6498c39
|
|
@ -28,7 +28,7 @@ def main(argv):
|
|||
(opts, args) = get_option_parser().parse_args(argv)
|
||||
|
||||
if len(args) != 2:
|
||||
print get_option_parser().get_usage()
|
||||
print(get_option_parser().get_usage())
|
||||
return 1
|
||||
|
||||
path = os.path.abspath(args[1])
|
||||
|
|
@ -45,26 +45,26 @@ def main(argv):
|
|||
for event in instance:
|
||||
if event == 'NORM_RX_OBJECT_INFO':
|
||||
event.object.filename = os.path.join(path, event.object.info)
|
||||
print 'Downloading file %s' % event.object.filename
|
||||
print('Downloading file %s' % event.object.filename)
|
||||
|
||||
elif event == 'NORM_RX_OBJECT_UPDATED':
|
||||
print 'File %s - %i bytes left to download' % (
|
||||
event.object.filename, event.object.bytesPending)
|
||||
print('File %s - %i bytes left to download' % (
|
||||
event.object.filename, event.object.bytesPending))
|
||||
|
||||
elif event == 'NORM_RX_OBJECT_COMPLETED':
|
||||
print 'File %s completed' % event.object.filename
|
||||
print('File %s completed' % event.object.filename)
|
||||
return 0
|
||||
|
||||
elif event == 'NORM_RX_OBJECT_ABORTED':
|
||||
print 'File %s aborted' % event.object.filename
|
||||
print('File %s aborted' % event.object.filename)
|
||||
return 1
|
||||
|
||||
else:
|
||||
print event
|
||||
print(event)
|
||||
except KeyboardInterrupt:
|
||||
pass
|
||||
|
||||
print 'Exiting.'
|
||||
print('Exiting.')
|
||||
return 0
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
|
|
|||
|
|
@ -48,19 +48,19 @@ class Instance(object):
|
|||
libnorm.NormRestartInstance(self)
|
||||
|
||||
def setCacheDirectory(self, path):
|
||||
libnorm.NormSetCacheDirectory(self, path)
|
||||
libnorm.NormSetCacheDirectory(self, path.encode('utf-8'))
|
||||
|
||||
def setDebugLevel(self, level):
|
||||
libnorm.NormSetDebugLevel(level)
|
||||
|
||||
def openDebugLog(self, path):
|
||||
libnorm.NormOpenDebugLog(self, path)
|
||||
libnorm.NormOpenDebugLog(self, path.encode('utf-8'))
|
||||
|
||||
def closeDebugLog(self):
|
||||
libnorm.NormCloseDebugLog(self)
|
||||
|
||||
def openDebugPipe(self, pipeName):
|
||||
libnorm.NormOpenDebugPipe(self, pipeName)
|
||||
libnorm.NormOpenDebugPipe(self, pipeName.encode('utf-8'))
|
||||
|
||||
def getNextEvent(self, timeout=None):
|
||||
# Use python's select because letting the C NormGetNextEvent block
|
||||
|
|
|
|||
|
|
@ -33,11 +33,11 @@ class Object(object):
|
|||
if length == 0:
|
||||
raise NormError("No object info received yet.")
|
||||
|
||||
buffer = ctypes.create_string_buffer(length)
|
||||
recv = libnorm.NormObjectGetInfo(self, buffer, length)
|
||||
buf = ctypes.create_string_buffer(length)
|
||||
recv = libnorm.NormObjectGetInfo(self, buf, length)
|
||||
if recv == 0:
|
||||
raise NormError("No object info received yet.")
|
||||
return buffer.value
|
||||
return buf.value
|
||||
|
||||
def getSize(self):
|
||||
return libnorm.NormObjectGetSize(self)
|
||||
|
|
@ -49,12 +49,12 @@ class Object(object):
|
|||
libnorm.NormObjectCancel(self)
|
||||
|
||||
def getFileName(self):
|
||||
buffer = ctypes.create_string_buffer(100)
|
||||
libnorm.NormFileGetName(self, buffer, ctypes.sizeof(buffer))
|
||||
return buffer.value
|
||||
buf = ctypes.create_string_buffer(100)
|
||||
libnorm.NormFileGetName(self, buf, ctypes.sizeof(buf))
|
||||
return buf.value
|
||||
|
||||
def renameFile(self, name):
|
||||
libnorm.NormFileRename(self, name)
|
||||
libnorm.NormFileRename(self, name.encode('utf-8'))
|
||||
|
||||
# Because 'ctypes.string_at()' makes a _copy_ of the data, we don't
|
||||
# support the usual NORM accessData / detachData options. We use
|
||||
|
|
@ -80,7 +80,7 @@ class Object(object):
|
|||
libnorm.NormStreamClose(self, graceful)
|
||||
|
||||
def streamWrite(self, msg):
|
||||
return libnorm.NormStreamWrite(self, msg, len(msg))
|
||||
return libnorm.NormStreamWrite(self, msg.encode('utf-8'), len(msg))
|
||||
|
||||
def streamFlush(self, eom=False, flushmode=c.NORM_FLUSH_PASSIVE):
|
||||
libnorm.NormStreamFlush(self, eom, flushmode)
|
||||
|
|
@ -99,10 +99,10 @@ class Object(object):
|
|||
|
||||
## Stream receiving functions
|
||||
def streamRead(self, size):
|
||||
buffer = ctypes.create_string_buffer(size)
|
||||
numBytes = ctypes.c_uint(ctypes.sizeof(buffer))
|
||||
libnorm.NormStreamRead(self, buffer, ctypes.byref(numBytes))
|
||||
return (numBytes, buffer.value)
|
||||
buf = ctypes.create_string_buffer(size)
|
||||
numBytes = ctypes.c_uint(ctypes.sizeof(buf))
|
||||
libnorm.NormStreamRead(self, buf, ctypes.byref(numBytes))
|
||||
return (numBytes, buf.value)
|
||||
|
||||
def streamSeekMsgStart(self):
|
||||
return libnorm.NormStreamSeekMsgStart(self)
|
||||
|
|
|
|||
Loading…
Reference in New Issue