示例#1
0
    def open(self):
        if self._active:
            nowTime = TimeUtils.getNowSeconds()
            if nowTime - self._activatedTime > NimbleEnvironment.CONNECTION_LIFETIME:
                self.close()
            else:
                return False

        self._activatedTime = TimeUtils.getNowSeconds()
        try:
            target = (NimbleEnvironment.getConnectionHost(),
                      NimbleEnvironment.getConnectionPort())
            self._socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

            # Sets socket option to prevent connection being refused by TCP reconnecting
            # to the same socket after a recent closure.
            self._socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
            self._socket.setblocking(1)
            self._socket.connect(target)
        except Exception as err:
            NimbleEnvironment.logError(
                '[ERROR | NIMBLE COMMUNICATION] Failed to open Nimble connection',
                err)
            return False

        if self not in NimbleConnection._CONNECTION_POOL:
            NimbleConnection._CONNECTION_POOL.append(self)

        self._active = True
        return True
示例#2
0
    def open(self):
        if self._active:
            nowTime = TimeUtils.getNowSeconds()
            if nowTime - self._activatedTime > NimbleEnvironment.CONNECTION_LIFETIME:
                self.close()
            else:
                return False

        self._activatedTime = TimeUtils.getNowSeconds()
        try:
            target = (
                NimbleEnvironment.getConnectionHost(),
                NimbleEnvironment.getConnectionPort()
            )
            self._socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

            # Sets socket option to prevent connection being refused by TCP reconnecting
            # to the same socket after a recent closure.
            self._socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
            self._socket.setblocking(1)
            self._socket.connect(target)
        except Exception as err:
            NimbleEnvironment.logError(
                '[ERROR | NIMBLE COMMUNICATION] Failed to open Nimble connection', err)
            return False

        if self not in NimbleConnection._CONNECTION_POOL:
            NimbleConnection._CONNECTION_POOL.append(self)

        self._active = True
        return True
示例#3
0
 def __init__(self, sock):
     asynchat.async_chat.__init__(self, sock=sock)
     self._createTime    = TimeUtils.getNowSeconds()
     self._data          = None
     self._message       = None
     self.handling       = False
     self._requestFlags  = 0
     self._responseFlags = 0
     self._chunk         = ByteChunk(endianess=ByteChunk.BIG_ENDIAN)
     self._resetRouterState()
示例#4
0
 def __init__(self, sock):
     asynchat.async_chat.__init__(self, sock=sock)
     self._createTime = TimeUtils.getNowSeconds()
     self._data = None
     self._message = None
     self.handling = False
     self._requestFlags = 0
     self._responseFlags = 0
     self._chunk = ByteChunk(endianess=ByteChunk.BIG_ENDIAN)
     self._resetRouterState()
示例#5
0
 def keepAlive(self):
     return self._requestFlags & ConnectionFlags.KEEP_ALIVE \
         and (TimeUtils.getNowSeconds() - self._createTime < NimbleEnvironment.CONNECTION_LIFETIME)
示例#6
0
 def keepAlive(self):
     return self._requestFlags & ConnectionFlags.KEEP_ALIVE \
         and (TimeUtils.getNowSeconds() - self._createTime < NimbleEnvironment.CONNECTION_LIFETIME)
示例#7
0
文件: Reporter.py 项目: hannahp/PyAid
 def getPrefix(self):
     return Base64.to64(TimeUtils.getNowSeconds() - self._zeroTime)
示例#8
0
文件: S3Bucket.py 项目: hannahp/PyAid
 def generateExpiresUrl(self, key, expiresAtDateTime):
     delta = TimeUtils.datetimeToSeconds(expiresAtDateTime) - TimeUtils.getNowSeconds()
     return self._bucket.get_key(key_name=key).generate_url(expires_in=delta, force_http=True)
示例#9
0
 def getPrefix(self):
     return Base64.to64(TimeUtils.getNowSeconds() - self._zeroTime)
示例#10
0
 def generateExpiresUrl(self, key, expiresAtDateTime, secure=True):
     delta = TimeUtils.datetimeToSeconds(
         expiresAtDateTime) - TimeUtils.getNowSeconds()
     return self._bucket.get_key(key_name=key).generate_url(
         expires_in=delta, force_http=not secure)