diff --git a/awips/dataaccess/DataAccessLayer.py b/awips/dataaccess/DataAccessLayer.py index fca9816..7f02e55 100644 --- a/awips/dataaccess/DataAccessLayer.py +++ b/awips/dataaccess/DataAccessLayer.py @@ -23,6 +23,7 @@ # Jun 01, 2016 5587 tgurney Add new signatures for # getRequiredIdentifiers() and # getOptionalIdentifiers() +# Oct 07, 2016 ---- mjames@ucar Added getForecastRun # Oct 18, 2016 5916 bsteffen Add setLazyLoadGridLatLon # # diff --git a/awips/dataaccess/PyData.py b/awips/dataaccess/PyData.py index acfb4d2..9c5b313 100644 --- a/awips/dataaccess/PyData.py +++ b/awips/dataaccess/PyData.py @@ -28,7 +28,7 @@ class PyData(IData): return self.__attributes[key] def getAttributes(self): - return self.__attributes.keys() + return list(self.__attributes.keys()) def getDataTime(self): return self.__time diff --git a/awips/dataaccess/SoundingsSupport.py b/awips/dataaccess/SoundingsSupport.py index db58fa4..14b9089 100644 --- a/awips/dataaccess/SoundingsSupport.py +++ b/awips/dataaccess/SoundingsSupport.py @@ -111,7 +111,7 @@ def __buildStringList(param): return [str(param)] def __notStringIter(iterable): - if not isinstance(iterable, basestring): + if not isinstance(iterable, str): try: iter(iterable) return True @@ -209,7 +209,7 @@ class _SoundingTimeLayer(object): A list containing the valid levels for this sounding in order of closest to surface to highest from surface. """ - sortedLevels = [Level(level) for level in self._dataDict.keys()] + sortedLevels = [Level(level) for level in list(self._dataDict.keys())] sortedLevels.sort() return [str(level) for level in sortedLevels] diff --git a/awips/dataaccess/__init__.py b/awips/dataaccess/__init__.py index 53f7c53..db55b95 100644 --- a/awips/dataaccess/__init__.py +++ b/awips/dataaccess/__init__.py @@ -28,11 +28,10 @@ __all__ = [ import abc from six import with_metaclass -class IDataRequest(object): +class IDataRequest(with_metaclass(abc.ABCMeta, object)): """ An IDataRequest to be submitted to the DataAccessLayer to retrieve data. """ - __metaclass__ = abc.ABCMeta @abc.abstractmethod def setDatatype(self, datatype): diff --git a/awips/stomp.py b/awips/stomp.py index cdefe73..c5f4a95 100644 --- a/awips/stomp.py +++ b/awips/stomp.py @@ -481,7 +481,7 @@ class Connection(object): """ headers = {} for header_map in header_map_list: - for header_key in header_map.keys(): + for header_key in list(header_map.keys()): headers[header_key] = header_map[header_key] return headers @@ -541,7 +541,7 @@ class Connection(object): if self.__socket is not None: frame = '%s\n%s\n%s\x00' % (command, - reduce(lambda accu, key: accu + ('%s:%s\n' % (key, list(headers[key]))), headers.keys(), ''), + reduce(lambda accu, key: accu + ('%s:%s\n' % (key, headers[key])), list(headers.keys()), ''), payload) self.__socket.sendall(frame) log.debug("Sent frame: type=%s, headers=%r, body=%r" % (command, headers, payload)) @@ -804,13 +804,13 @@ if __name__ == '__main__': self.c.start() def __print_async(self, frame_type, headers, body): - print("\r \r",) + #print("\r \r",) print(frame_type) for header_key in list(headers.keys()): print('%s: %s' % (header_key, headers[header_key])) - print("") + print() print(body) - print('> ',) + print('> ', end=' ') sys.stdout.flush() def on_connecting(self, host_and_port): diff --git a/dynamicserialize/adapters/__init__.py b/dynamicserialize/adapters/__init__.py index 205b474..d69ddf8 100644 --- a/dynamicserialize/adapters/__init__.py +++ b/dynamicserialize/adapters/__init__.py @@ -87,7 +87,7 @@ def registerAdapters(package, modules): clzName = m.ClassAdapter classAdapterRegistry[clzName] = m else: - raise LookupError('Adapter class ' + x + ' has no ClassAdapter field ' + + raise LookupError('Adapter class ' + x + ' has no ClassAdapter field ' + \ 'and cannot be registered.') diff --git a/dynamicserialize/dstypes/java/lang/StackTraceElement.py b/dynamicserialize/dstypes/java/lang/StackTraceElement.py index 3cf1976..a637cef 100644 --- a/dynamicserialize/dstypes/java/lang/StackTraceElement.py +++ b/dynamicserialize/dstypes/java/lang/StackTraceElement.py @@ -42,13 +42,13 @@ class StackTraceElement(object): return self.__repr__() def __repr__(self): - msg = self.declaringClass + "." + self.methodName + msg = self.declaringClass.decode('cp437') + "." + self.methodName.decode('cp437') if self.isNativeMethod(): msg += "(Native Method)" elif self.fileName is not None and self.lineNumber >= 0: - msg += "(" + self.fileName + ":" + str(self.lineNumber) + ")" + msg += "(" + self.fileName.decode('cp437') + ":" + str(self.lineNumber) + ")" elif self.fileName is not None: - msg += "(" + self.fileName + ")" + msg += "(" + self.fileName.decode('cp437') + ")" else: msg += "(Unknown Source)" return msg