Classe de Contexto do NDB

Um aplicativo usa um Contexto para controlar a respectiva política de armazenamento em cache. Context também oferece APIs assíncronas convenientes para Memcache e Busca de URL integradas com instalações assíncronas de NDB. A Memcache API é compatível especialmente com o envio em lote automático.

Métodos de Instância do gerenciamento de caches

clear_cache()
Limpa o cache no contexto.
flush()
Limpe todas as filas de loteadores automáticos, enviando seu trabalho para os servidores. A limpeza é feita de forma assíncrona.

Retorna um Future. Para aguardar o término da limpeza, chame o método wait() desse objeto.

get_cache_policy()
Retorna a função da política de cache. Essa função de política usa um argumento da instância Key e retorna um bool que indica se a entidade com esta chave será armazenada em cache no contexto. Pode ser None, o que significa usar a default_cache_policy.
get_datastore_policy()
Retorna a função de política do Datastore do contexto atual. Essa função de política usa um argumento da instância Key e retorna um bool, que indica se ele usará o Datastore. Pode ser None, o que significa usar a default_datastore_policy.
get_memcache_policy()
Retorna a função de política atual do memcache. Essa função de política usa um argumento da instância Key e retorna um bool, que indica se ela será armazenada em cache. Pode ser None, o que significa usar a default_memcache_policy.
get_memcache_timeout_policy()
Retorna a função de política de tempo limite atual do memcache. Essa função de política usa um argumento da instância Key e retorna o tempo limite desejado para o memcache em segundos ou retorna zero para usar o tempo limite padrão. Pode ser None, que usa a default_memcache_timeout_policy.
set_cache_policy(func)
Configura a função da política de cache.

Argumentos

func
Essa função usa um argumento da instância Key e retorna um bool, que indica se a entidade com essa chave será armazenada em cache no cache do contexto. Pode ser None.
set_datastore_policy(func)
Configura a função de política do Datastore.

Argumentos

func
Essa função usa um argumento da instância Key e retorna um bool, que indica se a entidade com essa chave será armazenada no Datastore permanente. Pode ser None.
set_memcache_policy(func)
Configura a função de política do memcache.

Argumentos

func
Essa função usa um argumento da instância Key e retorna um bool, que indica se a entidade com essa chave será armazenada em cache no cache do contexto. Pode ser None.
set_memcache_timeout_policy(func)
Configura a função de política de tempo limite do memcache.

Argumentos

func
Essa função usa um argumento da instância Key e retorna o tempo limite desejado para o memcache em segundos ou retorna zero para usar o tempo limite padrão. Pode ser None.

Métodos de instância do Memcache e Urlfetch

A lista completa de métodos é encontrada na referência da Memcache API. A lista abaixo destaca alguns métodos mais usados:

memcache_add(key, value, time, namespace)
Memcache de envio em lote automático assíncrono add().
memcache_cas(key, value, time, namespace)
Memcache de envio em lote automático assíncrono Client cas() para comparação e troca.
memcache_decr(key, delta, initial_value, namespace)
Memcache de envio em lote automático assíncrono decr().
memcache_delete(key, seconds, namespace)
Memcache de envio em lote automático assíncrono delete().
memcache_get(key, namespace, use_cache)
Memcache de envio em lote automático assíncrono get().

Retorna um Future em que o valor de retorno é o valor recuperado do memcache ou None.

memcache_gets(key, namespace, use_cache)
Memcache de envio em lote automático assíncrono gets().
memcache_incr(key, delta, initial_value, namespace)
Memcache de envio em lote automático assíncrono incr().
memcache_replace(key, value, time, namespace)
Memcache de envio em lote automático assíncrono replace().
memcache_set(key, value, time, namespace, use_cache)
Memcache de envio em lote automático assíncrono set().
urlfetch(url, payload, method, headers, allow_truncated, follow_redirects, validate_certificate, deadline, callback)
Urlfetch de envio em lote automático assíncrono fetch().

Métodos de gerenciamento de transações

call_on_commit(callback)
Forma filas de retornos de chamada a serem realizados após efetuar o commit de uma transação.

O retorno de chamada é feito imediatamente caso não esteja em uma transação.

Em uma transação, diversos retornos de chamada são registrados e serão realizados assim que a transação executar o commit na ordem de registro em que estiverem registrados. Em caso de falha na transação, os retornos de chamada não serão realizados.

Se um retorno de chamada gerar uma exceção, ela aparecerá normalmente. Isso significa que, se o retorno de chamada for realizado imediatamente, qualquer exceção levantada também aparecerá imediatamente. Se a chamada for adiada até a execução do commit, os retornos de chamada restantes serão ignorados e a exceção surgirá por meio da chamada transaction(). No entanto, nesse ponto a transação já terá executado o commit.

Argumentos

callback
Função de retorno de chamada. Esta função não aceita parâmetros e não retorna nada.
in_transaction()
Retorna True caso este Contexto represente uma transação, do contrário, False.

Métodos estáticos

default_cache_policy(key)
Verifica uma variável de classe _use_cache na classe de modelo da entidade. Em caso positivo, ela será retornada. Do contrário, retornará None.
default_datastore_policy(key)
Verifica uma variável de classe _use_datastore na classe de modelo da entidade. Em caso positivo, ela será retornada. Do contrário, retornará None.
default_memcache_policy(key)
Verifica uma variável de classe _use_memcache na classe de modelo da entidade. Em caso positivo, ela será retornada. Do contrário, retornará None.
default_memcache_timeout_policy(key)
Verifica uma variável de classe _memcache_timeout na classe de modelo da entidade. Em caso positivo, ela será retornada. Do contrário, retornará None.
Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Ambiente padrão do App Engine para Python 2