当前位置: 首页>>代码示例>>Python>>正文


Python utils.unix_time函数代码示例

本文整理汇总了Python中moto.core.utils.unix_time函数的典型用法代码示例。如果您正苦于以下问题:Python unix_time函数的具体用法?Python unix_time怎么用?Python unix_time使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了unix_time函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: receive_messages

    def receive_messages(self, queue_name, count, wait_seconds_timeout, visibility_timeout):
        """
        Attempt to retrieve visible messages from a queue.

        If a message was read by client and not deleted it is considered to be
        "inflight" and cannot be read. We make attempts to obtain ``count``
        messages but we may return less if messages are in-flight or there
        are simple not enough messages in the queue.

        :param string queue_name: The name of the queue to read from.
        :param int count: The maximum amount of messages to retrieve.
        :param int visibility_timeout: The number of seconds the message should remain invisible to other queue readers.
        """
        queue = self.get_queue(queue_name)
        result = []

        polling_end = unix_time() + wait_seconds_timeout

        # queue.messages only contains visible messages
        while True:
            for message in queue.messages:
                if not message.visible:
                    continue
                message.mark_received(
                    visibility_timeout=visibility_timeout
                )
                result.append(message)
                if len(result) >= count:
                    break

            if result or unix_time() > polling_end:
                break

        return result
开发者ID:balintzs,项目名称:moto,代码行数:34,代码来源:models.py

示例2: receive_messages

    def receive_messages(self, queue_name, count, wait_seconds_timeout, visibility_timeout):
        """
        Attempt to retrieve visible messages from a queue.

        If a message was read by client and not deleted it is considered to be
        "inflight" and cannot be read. We make attempts to obtain ``count``
        messages but we may return less if messages are in-flight or there
        are simple not enough messages in the queue.

        :param string queue_name: The name of the queue to read from.
        :param int count: The maximum amount of messages to retrieve.
        :param int visibility_timeout: The number of seconds the message should remain invisible to other queue readers.
        :param int wait_seconds_timeout:  The duration (in seconds) for which the call waits for a message to arrive in
         the queue before returning. If a message is available, the call returns sooner than WaitTimeSeconds
        """
        queue = self.get_queue(queue_name)
        result = []

        polling_end = unix_time() + wait_seconds_timeout

        # queue.messages only contains visible messages
        while True:

            if result or (wait_seconds_timeout and unix_time() > polling_end):
                break

            if len(queue.messages) == 0:
                # we want to break here, otherwise it will be an infinite loop
                if wait_seconds_timeout == 0:
                    break

                import time
                time.sleep(0.001)
                continue

            messages_to_dlq = []
            for message in queue.messages:
                if not message.visible:
                    continue
                if queue.dead_letter_queue is not None and message.approximate_receive_count >= queue.redrive_policy['maxReceiveCount']:
                    messages_to_dlq.append(message)
                    continue

                message.mark_received(
                    visibility_timeout=visibility_timeout
                )
                result.append(message)
                if len(result) >= count:
                    break

            for message in messages_to_dlq:
                queue._messages.remove(message)
                queue.dead_letter_queue.add_message(message)

        return result
开发者ID:Affirm,项目名称:moto,代码行数:55,代码来源:models.py

示例3: create_account_status

 def create_account_status(self):
     return {
         'CreateAccountStatus': {
             'Id': self.create_account_status_id,
             'AccountName': self.name,
             'State': 'SUCCEEDED',
             'RequestedTimestamp': unix_time(self.create_time),
             'CompletedTimestamp': unix_time(self.create_time),
             'AccountId': self.id,
         }
     }
开发者ID:copland,项目名称:moto,代码行数:11,代码来源:models.py

示例4: __init__

    def __init__(self, name, region, **kwargs):
        self.name = name
        self.visibility_timeout = int(kwargs.get('VisibilityTimeout', 30))
        self.region = region

        self._messages = []

        now = unix_time()

        # kwargs can also have:
        # [Policy, RedrivePolicy]
        self.fifo_queue = kwargs.get('FifoQueue', 'false') == 'true'
        self.content_based_deduplication = kwargs.get('ContentBasedDeduplication', 'false') == 'true'
        self.kms_master_key_id = kwargs.get('KmsMasterKeyId', 'alias/aws/sqs')
        self.kms_data_key_reuse_period_seconds = int(kwargs.get('KmsDataKeyReusePeriodSeconds', 300))
        self.created_timestamp = now
        self.delay_seconds = int(kwargs.get('DelaySeconds', 0))
        self.last_modified_timestamp = now
        self.maximum_message_size = int(kwargs.get('MaximumMessageSize', 64 << 10))
        self.message_retention_period = int(kwargs.get('MessageRetentionPeriod', 86400 * 4))  # four days
        self.queue_arn = 'arn:aws:sqs:{0}:123456789012:{1}'.format(self.region, self.name)
        self.receive_message_wait_time_seconds = int(kwargs.get('ReceiveMessageWaitTimeSeconds', 0))

        # wait_time_seconds will be set to immediate return messages
        self.wait_time_seconds = int(kwargs.get('WaitTimeSeconds', 0))

        # Check some conditions
        if self.fifo_queue and not self.name.endswith('.fifo'):
            raise MessageAttributesInvalid('Queue name must end in .fifo for FIFO queues')
开发者ID:whummer,项目名称:moto,代码行数:29,代码来源:models.py

示例5: __init__

 def __init__(self, partition_key, data, sequence_number, explicit_hash_key):
     self.partition_key = partition_key
     self.data = data
     self.sequence_number = sequence_number
     self.explicit_hash_key = explicit_hash_key
     self.created_at_datetime = datetime.datetime.utcnow()
     self.created_at = unix_time(self.created_at_datetime)
开发者ID:botify-labs,项目名称:moto,代码行数:7,代码来源:models.py

示例6: test_list_closed_workflow_executions

def test_list_closed_workflow_executions():
    conn = setup_swf_environment()
    # Leave one workflow execution open to make sure it isn't displayed
    conn.start_workflow_execution(
        'test-domain', 'uid-abcd1234', 'test-workflow', 'v1.0'
    )
    # One closed workflow execution
    run_id = conn.start_workflow_execution(
        'test-domain', 'uid-abcd12345', 'test-workflow', 'v1.0'
    )['runId']
    conn.terminate_workflow_execution('test-domain', 'uid-abcd12345',
                                      details='some details',
                                      reason='a more complete reason',
                                      run_id=run_id)

    yesterday = datetime.now() - timedelta(days=1)
    oldest_date = unix_time(yesterday)
    response = conn.list_closed_workflow_executions(
        'test-domain',
        start_oldest_date=oldest_date,
        workflow_id='test-workflow')
    execution_infos = response['executionInfos']
    len(execution_infos).should.equal(1)
    open_workflow = execution_infos[0]
    open_workflow['workflowType'].should.equal({'version': 'v1.0',
                                                'name': 'test-workflow'})
    open_workflow.should.contain('startTimestamp')
    open_workflow['execution']['workflowId'].should.equal('uid-abcd12345')
    open_workflow['execution'].should.contain('runId')
    open_workflow['cancelRequested'].should.be(False)
    open_workflow['executionStatus'].should.equal('CLOSED')
开发者ID:DarthLorenzo,项目名称:moto,代码行数:31,代码来源:test_workflow_executions.py

示例7: __init__

    def __init__(self, name, region, **kwargs):
        self.name = name
        self.region = region
        self.tags = {}
        self.permissions = {}

        self._messages = []

        now = unix_time()
        self.created_timestamp = now
        self.queue_arn = 'arn:aws:sqs:{0}:123456789012:{1}'.format(self.region,
                                                                   self.name)
        self.dead_letter_queue = None

        # default settings for a non fifo queue
        defaults = {
            'ContentBasedDeduplication': 'false',
            'DelaySeconds': 0,
            'FifoQueue': 'false',
            'KmsDataKeyReusePeriodSeconds': 300,  # five minutes
            'KmsMasterKeyId': None,
            'MaximumMessageSize': int(64 << 10),
            'MessageRetentionPeriod': 86400 * 4,  # four days
            'Policy': None,
            'ReceiveMessageWaitTimeSeconds': 0,
            'RedrivePolicy': None,
            'VisibilityTimeout': 30,
        }

        defaults.update(kwargs)
        self._set_attributes(defaults, now)

        # Check some conditions
        if self.fifo_queue and not self.name.endswith('.fifo'):
            raise MessageAttributesInvalid('Queue name must end in .fifo for FIFO queues')
开发者ID:singingwolfboy,项目名称:moto,代码行数:35,代码来源:models.py

示例8: describe

 def describe(self):
     results = {
         "Table": {
             "CreationDateTime": unix_time(self.created_at),
             "KeySchema": {
                 "HashKeyElement": {
                     "AttributeName": self.hash_key_attr,
                     "AttributeType": self.hash_key_type
                 },
             },
             "ProvisionedThroughput": {
                 "ReadCapacityUnits": self.read_capacity,
                 "WriteCapacityUnits": self.write_capacity
             },
             "TableName": self.name,
             "TableStatus": "ACTIVE",
             "ItemCount": len(self),
             "TableSizeBytes": 0,
         }
     }
     if self.has_range_key:
         results["Table"]["KeySchema"]["RangeKeyElement"] = {
             "AttributeName": self.range_key_attr,
             "AttributeType": self.range_key_type
         }
     return results
开发者ID:balintzs,项目名称:moto,代码行数:26,代码来源:models.py

示例9: complete

 def complete(self, event_id, result=None):
     self.execution_status = "CLOSED"
     self.close_status = "COMPLETED"
     self.close_timestamp = unix_time()
     self._add_event(
         "WorkflowExecutionCompleted",
         decision_task_completed_event_id=event_id,
         result=result,
     )
开发者ID:Affirm,项目名称:moto,代码行数:9,代码来源:workflow_execution.py

示例10: fail

 def fail(self, event_id, details=None, reason=None):
     # TODO: implement lenght constraints on details/reason
     self.execution_status = "CLOSED"
     self.close_status = "FAILED"
     self.close_timestamp = unix_time()
     self._add_event(
         "WorkflowExecutionFailed",
         decision_task_completed_event_id=event_id,
         details=details,
         reason=reason,
     )
开发者ID:Affirm,项目名称:moto,代码行数:11,代码来源:workflow_execution.py

示例11: describe

 def describe(self):
     return {
         'Account': {
             'Id': self.id,
             'Arn': self.arn,
             'Email': self.email,
             'Name': self.name,
             'Status': self.status,
             'JoinedMethod': self.joined_method,
             'JoinedTimestamp': unix_time(self.create_time),
         }
     }
开发者ID:copland,项目名称:moto,代码行数:12,代码来源:models.py

示例12: start

 def start(self):
     self.start_timestamp = unix_time()
     self._add_event(
         "WorkflowExecutionStarted",
         child_policy=self.child_policy,
         execution_start_to_close_timeout=self.execution_start_to_close_timeout,
         # TODO: fix this hardcoded value
         parent_initiated_event_id=0,
         task_list=self.task_list,
         task_start_to_close_timeout=self.task_start_to_close_timeout,
         workflow_type=self.workflow_type,
     )
     self.schedule_decision_task()
开发者ID:ZhenxingWu,项目名称:moto,代码行数:13,代码来源:workflow_execution.py

示例13: describe

 def describe(self):
     results = {
         'Table': {
             'AttributeDefinitions': self.attr,
             'ProvisionedThroughput': self.throughput,
             'TableSizeBytes': 0,
             'TableName': self.name,
             'TableStatus': 'ACTIVE',
             'KeySchema': self.schema,
             'ItemCount': len(self),
             'CreationDateTime': unix_time(self.created_at),
             'GlobalSecondaryIndexes': [index for index in self.global_indexes],
         }
     }
     return results
开发者ID:ZhenxingWu,项目名称:moto,代码行数:15,代码来源:models.py

示例14: to_dict

 def to_dict(self):
     key_dict = {
         "KeyMetadata": {
             "AWSAccountId": self.account_id,
             "Arn": self.arn,
             "CreationDate": "%d" % unix_time(),
             "Description": self.description,
             "Enabled": self.enabled,
             "KeyId": self.id,
             "KeyUsage": self.key_usage,
             "KeyState": self.key_state,
         }
     }
     if self.key_state == 'PendingDeletion':
         key_dict['KeyMetadata']['DeletionDate'] = iso_8601_datetime_without_milliseconds(self.deletion_date)
     return key_dict
开发者ID:spulec,项目名称:moto,代码行数:16,代码来源:models.py

示例15: describe

 def describe(self):
     results = {
         "Table": {
             "AttributeDefinitions": self.attr,
             "ProvisionedThroughput": self.throughput,
             "TableSizeBytes": 0,
             "TableName": self.name,
             "TableStatus": "ACTIVE",
             "KeySchema": self.schema,
             "ItemCount": len(self),
             "CreationDateTime": unix_time(self.created_at),
             "GlobalSecondaryIndexes": [index for index in self.global_indexes],
             "LocalSecondaryIndexes": [index for index in self.indexes],
         }
     }
     return results
开发者ID:akak548,项目名称:moto,代码行数:16,代码来源:models.py


注:本文中的moto.core.utils.unix_time函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。