A API Javascript do ContextHub está disponível para seus scripts quando a variável O componente ContextHub foi adicionado à página.
Valores constantes que a API Javascript do ContextHub define.
A tabela a seguir lista os nomes dos eventos que ocorrem para as lojas do ContextHub. Consulte também ContextHub.Utils.Eventing.
Constante | Descrição | Valor |
---|---|---|
ContextHub.Constants.EVENT_NAMESPACE |
Namespace do evento do ContextHub | ch |
ContextHub.Constants.EVENT_ALL_STORES_READY |
Indica que todas as lojas necessárias estão registradas, inicializadas e prontas para serem consumidas | all-stores-ready |
ContextHub.Constants.EVENT_STORES_PARTIALLY_READY |
Indica que nem todos os armazenamentos foram inicializados dentro de um determinado tempo limite | stores-partially-ready |
ContextHub.Constants.EVENT_STORE_REGISTERED |
Disparado quando uma loja é registrada | store-registered |
ContextHub.Constants.EVENT_STORE_READY |
Indica que as lojas estão prontas para funcionar. É acionado imediatamente após o registro, exceto armazenamentos JSONP, onde é acionado quando os dados são buscados). | store-ready |
ContextHub.Constants.EVENT_STORE_UPDATED |
Disparado quando um armazenamento atualiza sua persistência | store-updated |
ContextHub.Constants.PERSISTENCE_CONTAINER_NAME |
Nome do contêiner de persistência | ContextHubPersistence |
ContextHub.Constants.SERVICE_RAW_RESPONSE_KEY |
Armazena o nome da chave de persistência específica onde o resultado JSON bruto é armazenado | /_/raw-response |
ContextHub.Constants.SERVICE_RESPONSE_TIME_KEY |
Armazena um carimbo de data e hora específico que indica quando os dados JSON foram obtidos | /_/response-time |
ContextHub.Constants.SERVICE_LAST_URL_KEY |
Armazena url específico do serviço JSON usado durante a última chamada | /_/url |
ContextHub.Constants.IS_CONTAINER_EXPANDED |
Indica se a interface do usuário do ContextHub foi expandida | /_/container-expanded |
A tabela a seguir lista os nomes dos eventos que ocorrem para a interface do usuário do ContextHub.
Constante | Descrição | Valor |
---|---|---|
ContextHub.Constants.EVENT_UI_MODE_REGISTERED |
Disparado quando um modo é registrado | ui-mode-registered |
ContextHub.Constants.EVENT_UI_MODE_UNREGISTERED |
Acionado quando um modo não está registrado | ui-mode-unregistered |
ContextHub.Constants.EVENT_UI_MODE_RENDERER_REGISTERED |
Acionado quando um renderizador de modo é registrado | ui-mode-renderer-registered |
ContextHub.Constants.EVENT_UI_MODE_RENDERER_UNREGISTERED |
Acionado quando um renderizador de modo não está registrado | ui-mode-renderer-unregistered |
ContextHub.Constants.EVENT_UI_MODE_ADDED |
Acionado quando um novo modo é adicionado | ui-mode-added |
ContextHub.Constants.EVENT_UI_MODE_REMOVED |
Acionado quando um modo é removido | ui-mode-removed |
ContextHub.Constants.EVENT_UI_MODE_SELECTED |
Acionado quando um modo é selecionado pelo usuário | ui-mode-selected |
ContextHub.Constants.EVENT_UI_MODULE_REGISTERED |
Acionado quando um novo módulo é registrado | ui-module-registered |
ContextHub.Constants.EVENT_UI_MODULE_UNREGISTERED |
Acionado quando um módulo não está registrado | ui-module-unregistered |
ContextHub.Constants.EVENT_UI_MODULE_RENDERER_REGISTERED |
Acionado quando um renderizador de módulo é registrado | ui-module-renderer-registered |
ContextHub.Constants.EVENT_UI_MODULE_RENDERER_UNREGISTERED |
Acionado quando um renderizador de módulo não está registrado | ui-module-renderer-unregistered |
ContextHub.Constants.EVENT_UI_MODULE_ADDED |
Acionado quando um novo módulo é adicionado | ui-module-added |
ContextHub.Constants.EVENT_UI_MODULE_REMOVED |
Acionado quando um módulo é removido | ui-module-removed |
ContextHub.Constants.EVENT_UI_CONTAINER_ADDED |
Acionado quando o contêiner da interface do usuário é adicionado à página | ui-container-added |
ContextHub.Constants.EVENT_UI_CONTAINER_OPENED |
Acionado quando a interface do usuário do ContextHub é aberta | ui-container-opened |
ContextHub.Constants.EVENT_UI_CONTAINER_CLOSED |
Acionado quando a interface do usuário do ContextHub é recolhida | ui-container-closed |
ContextHub.Constants.EVENT_UI_PROPERTY_MODIFIED |
Acionado quando uma propriedade é modificada | ui-property-modified |
ContextHub.Constants.EVENT_UI_RENDERED |
Acionada sempre que a interface do usuário do ContextHub é renderizada (por exemplo, após uma alteração de propriedade) | ui-rendered |
ContextHub.Constants.EVENT_UI_INITIALIZED |
Disparado quando o contêiner da interface do usuário é inicializado | ui-initialized |
ContextHub.Constants.ACTIVE_UI_MODE |
Indica o modo de interface do usuário ativo | /_/active-ui-mode |
O objeto ContextHub fornece acesso a todos os armazenamentos.
Retorna todos os armazenamentos registrados do ContextHub.
Essa função não tem parâmetros.
Um objeto que contém todos os armazenamentos do ContextHub. Cada loja é um objeto que usa o mesmo nome da loja.
O exemplo a seguir recupera todos os armazenamentos e recupera o armazenamento de geolocalização:
var allStores = ContextHub.getAllStores();
var geoloc = allStores.geolocation
Recupera uma loja como um objeto Javascript.
name
: O nome com o qual a loja foi registrada.Um objeto que representa o armazenamento.
O exemplo a seguir recupera o armazenamento de geolocalização:
var geoloc = ContextHub.getStore("geolocation");
Representa um segmento do ContextHub. Use o ContextHub.SegmentEngine.SegmentManager
para obter segmentos.
Retorna o nome do segmento como um valor de String.
Retorna o caminho do repositório da definição do segmento como um valor de String.
Fornece acesso aos segmentos do ContextHub.
Retorna os segmentos que são resolvidos no contexto atual. Essa função não tem parâmetros.
Uma matriz de ContextHub.SegmentEngine.Segment
objetos.
A classe base dos armazenamentos do ContextHub.
A ContextHub.Utils.Eventing
objeto. Use esse objeto para vincular funções a fim de armazenar eventos. Para obter informações sobre o valor padrão e a inicialização, consulte init(name,config)
.
O nome da loja.
A ContextHub.Utils.Persistence
objeto. Para obter informações sobre o valor padrão e a inicialização, consulte init(name,config)
.
Une um objeto de dados ou uma matriz aos dados da loja. Cada par de chave/valor no objeto ou na matriz é adicionado ao armazenamento (por meio do setItem
função):
Observe que os valores podem ser objetos.
tree
: (Objeto ou matriz) Os dados a serem adicionados ao armazenamento.options
: (Objeto) Um objeto opcional de opções passado para a função setItem . Para obter informações, consulte o options
parâmetro de setItem(key,value,options)
.A boolean
valor:
true
indica que o objeto de dados foi armazenado.false
indica que o armazenamento de dados permanece inalterado.Cria uma referência de uma chave para outra chave. Uma chave não pode fazer referência a si mesma.
key
: A chave que faz referência a anotherKey
.
anotherkey
: A chave referenciada por key
.
A boolean
valor:
true
indica que a referência foi adicionada.false
indica que nenhuma referência foi adicionada.Dispara o ready
para esta loja. Essa função não tem parâmetros e não retorna valor.
Remove todos os dados do armazenamento. A função não tem parâmetros e nenhum valor de retorno.
Retorna o valor associado a uma chave.
key
: (String) A chave para a qual retornar o valor.Um Objeto que representa o valor da chave.
Recupera as chaves da loja. Opcionalmente, é possível recuperar as chaves usadas internamente pela estrutura do ContextHub.
includeInternals
: Um valor de true
inclui chaves usadas internamente nos resultados. Essas chaves começam com o sublinhado (_
). O valor padrão é false
.Uma matriz de nomes de chaves ( string
valores).
Recupera as referências da loja.
Uma matriz que usa chaves de referência como índices para as chaves referenciadas:
key
do addReference
.anotherKey
do addReference
.Recupera a árvore de dados do armazenamento. Opcionalmente, é possível incluir os pares chave/valor usados internamente pela estrutura do ContextHub.
includeInternals:
Um valor de true
O inclui pares de chave/valor usados internamente nos resultados. As chaves desses dados começam com o sublinhado (_
). O valor padrão é false
.Um objeto que representa a árvore de dados. As chaves são os nomes de propriedade do objeto.
Inicializa o armazenamento.
eventChannel
é data:<name>
, onde <name>
é o nome da loja.storeDataKey
é /store/<name>
, onde <name>
é o nome da loja.name
: O nome da loja.config
: Um objeto que contém propriedades de configuração:
eventDeferring
: O valor padrão é 32.eventing
: O ContextHub.Utils.Eventing para esta loja. O valor padrão é o ContextHub.eventing
O objeto usa.persistence
: O ContextHub.Utils.Persistence
para esta loja. O valor padrão é o ContextHub.persistence
objeto.Determina se o evento está pausado para esta loja.
Um valor booleano:
true
: O evento é pausado para que nenhum evento seja acionado para esta loja.false
: Os eventos não são pausados para que sejam acionados para esta loja.Pausa o evento para a loja para que nenhum evento seja acionado. Essa função não requer parâmetros e não retorna valor.
Remove um par de chave/valor do armazenamento.
Quando uma chave é removida, a função aciona a variável data
evento. Os dados do evento incluem o nome do armazenamento, o nome da chave que foi removida, o valor que foi removido, o novo valor para a chave (nulo) e o tipo de ação "remover".
Como opção, você pode impedir o acionamento da variável data
evento.
key
: (String) O nome da chave a ser removida.options
: (Objeto) Um objeto de opções. As seguintes propriedades de objeto são válidas:
true
impede o acionamento da variável data
evento. O valor padrão é false
.A boolean
valor:
true
indica que o par chave/valor foi removido.false
indica que o armazenamento de dados permanece inalterado, pois a chave não foi encontrada no armazenamento.Remove uma referência da loja.
key
: A referência de chave a ser removida. Esse parâmetro corresponde à variável key
do addReference
.A boolean
valor:
true
indica que a referência foi removida.false
indica que a chave não era válida e que a loja permanece inalterada.Redefine os valores iniciais dos dados persistentes do armazenamento. Como opção, você pode remover todos os outros dados do armazenamento. O evento é pausado para esta loja enquanto ela é redefinida. Essa função não retorna valor.
Os valores iniciais são fornecidos na variável initialValues
propriedade do objeto config usado para instanciar o objeto store.
keepRemainingData
: (Booleano) Um valor true faz com que os dados não iniciais sejam persistentes. Um valor false faz com que todos os dados sejam removidos, exceto os valores iniciais.Recupera uma chave referenciada. Como opção, você pode especificar o número de iterações a serem usadas para resolver a melhor correspondência.
key
: (String) A chave para a qual resolver a referência. Essa key
corresponde ao parâmetro key
do addReference
.retry
: (Número) O número de iterações a serem usadas.A string
que representa a chave referenciada. Se nenhuma referência for resolvida, o valor da variável key
é retornado.
Retoma o evento para esta loja para que os eventos sejam acionados. Essa função não define parâmetros e não retorna valor.
Adiciona um par de chave/valor à loja.
Dispara o data
somente se o valor da chave for diferente do valor armazenado para a chave no momento. Opcionalmente, é possível impedir o acionamento da variável data
evento.
Os dados do evento incluem o nome da loja, a chave, o valor anterior, o novo valor e o tipo de ação de set
.
key
: (String) O nome da chave.options
: (Objeto) Um objeto de opções. As seguintes propriedades de objeto são válidas:
silent
: Um valor de true
impede o acionamento da variável data
evento. O valor padrão é false
.value
: (Objeto) O valor a ser associado à chave.A boolean
valor:
true
indica que o objeto de dados foi armazenado.false
indica que o armazenamento de dados permanece inalterado.Um armazenamento que contém dados JSON. Os dados são recuperados de um serviço JSONP externo ou, opcionalmente, de um serviço que retorna dados JSON. Especifique os detalhes do serviço usando o init
ao criar uma instância dessa classe.
O armazenamento usa persistência na memória (variável Javascript). Os dados de armazenamento estão disponíveis somente durante a vida útil da página.
ContextHub.Store.JSONPStore estende ContextHub.Store.Core e herda as funções dessa classe.
Configura os detalhes para conexão com o serviço JSONP que este objeto usa. Você pode atualizar ou substituir a configuração existente. A função não retorna valor.
serviceConfig
: Um objeto que contém as seguintes propriedades:
host
: (String) O nome do servidor ou endereço IP.jsonp
: (Booleano) Um valor true indica que o serviço é um serviço JSONP; caso contrário, é false. Quando verdadeiro, o {retorno de chamada: "ContextHub.Callbacks.Object.name O objeto } é adicionado ao objeto service.params .params
: (Objeto) Parâmetros de URL representados como propriedades de objetos. Os nomes de parâmetros são nomes de propriedades e os valores de parâmetros são valores de propriedades.path
: (String) O caminho para o serviço.port
: (Número) O número da porta do serviço.secure
: (String ou Boolean) Determina o protocolo a ser usado para o URL do serviço:
auto
: //true
: https://false
: http://true
faz com que a configuração de serviço existente seja substituída pelas propriedades de serviceConfig
. Um valor de false
faz com que as propriedades de configuração do serviço existentes sejam mescladas com as propriedades de serviceConfig
.Retorna a resposta bruta armazenada em cache desde a última chamada para o serviço JSONP. A função não requer parâmetros.
Um objeto que representa a resposta bruta.
Recupera o objeto de serviço para este objeto ContextHub.Store.JSONPStore. O objeto de serviço contém todas as informações necessárias para criar o URL de serviço.
Um objeto com as seguintes propriedades:
host
: (String) O nome do servidor ou endereço IP.jsonp
: (Booleano) Um valor true indica que o serviço é um serviço JSONP; caso contrário, é false. Quando verdadeiro, o {retorno de chamada: "ContextHub.Callbacks.Object.name O objeto } é adicionado ao objeto service.params .params
: (Objeto) Parâmetros de URL representados como propriedades de objetos. Os nomes de parâmetros são nomes de propriedades e os valores de parâmetros são valores de propriedades.path
: (String) O caminho para o serviço.port
: (Número) O número da porta do serviço.secure
: (String ou Boolean) Determina o protocolo a ser usado para o URL do serviço:
auto
: //true
: https://false
: http://Recupera o URL do serviço JSONP.
resolve
: (Booleano) Determina se os parâmetros resolvidos devem ser incluídos no URL. Um valor de true
resolve parâmetros e false
não.A string
que representa o URL do serviço.
inicializa o ContextHub.Store.JSONPStore
objeto.
name
: (String) O nome do armazenamento.config
: (Objeto) Um objeto que contém a propriedade de serviço. O objeto JSONPStore usa as propriedades da variável service
para construir o URL do serviço JSONP:
eventDeferring
: 32.eventing
: O objeto ContextHub.Utils.Eventing para esta loja. O valor padrão é o ContextHub.eventing
objeto.persistence
: O objeto ContextHub.Utils.Persistence para esta loja. Por padrão, a persistência de memória é usada (objeto Javascript).service
: (Objeto)
host
: (String) O nome do servidor ou endereço IP.jsonp
: (Booleano) Um valor true indica que o serviço é um serviço JSONP; caso contrário, é false. Quando verdadeiro, a variável {callback: "ContextHub.Callbacks.*Object.name*}
objeto é adicionado a service.params
.params
: (Objeto) Parâmetros de URL representados como propriedades de objetos. Nomes e valores de parâmetros são os nomes e valores da propriedade de objeto, respectivamente.path
: (String) O caminho para o serviço.port
: (Número) O número da porta do serviço.secure
: (String ou Boolean) Determina o protocolo a ser usado para o URL do serviço:
auto
: //true
: https://false
: http://timeout
: (Número) A quantidade de tempo para aguardar a resposta do serviço JSONP antes de atingir o tempo limite, em milissegundos.
ttl
: O tempo mínimo, em milissegundos, que passa entre as chamadas para o serviço JSONP. (Consulte o queryService ).Consulta o serviço JSONP remoto e armazena em cache a resposta. Se a quantidade de tempo desde a chamada anterior para essa função for menor que o valor de config.service.ttl
, o serviço não é chamado e a resposta em cache não é alterada. Como opção, você pode forçar a chamada do serviço. O config.service.ttl
é definida ao chamar a variável init para inicializar o armazenamento.
Aciona o evento ready quando o query for concluído. Se o URL do serviço JSONP não estiver definido, a função não fará nada.
reload
: (Booleano) Um valor true remove a resposta em cache e força o serviço JSONP a ser chamado.Redefine os valores iniciais dos dados persistentes do armazenamento e, em seguida, chama o serviço JSONP. Como opção, você pode remover todos os outros dados do armazenamento. O evento é pausado para esta loja enquanto os valores iniciais são redefinidos. Essa função não retorna valor.
Os valores iniciais são fornecidos na propriedade initialValues do objeto de configuração que é usado para instanciar o objeto de armazenamento.
keepRemainingData
: (Booleano) Um valor true faz com que os dados não iniciais sejam persistentes. Um valor false faz com que todos os dados sejam removidos, exceto os valores iniciais.Resolve o parâmetro especificado.
ContextHub.Store.PersistedJSONPStore
estende ContextHub.Store.JSONPStore portanto, ela herda todas as funções dessa classe. No entanto, os dados recuperados do serviço JSONP são mantidos de acordo com a configuração de persistência do ContextHub. (Consulte Modos de persistência:)
ContextHub.Store.PersistedStore
estende ContextHub.Store.Core portanto, ela herda todas as funções dessa classe. Os dados nesse armazenamento são mantidos de acordo com a configuração da persistência do ContextHub.
ContextHub.Store.SessionStore
estende ContextHub.Store.Core portanto, ela herda todas as funções dessa classe. Os dados nesse armazenamento são mantidos com persistência na memória (objeto Javascript).
Gerencia módulos de interface e renderizadores de módulo de interface do usuário.
Registra um renderizador de módulo de interface do usuário com o ContextHub. Depois que o renderizador é registrado, ele pode ser usado para criar módulos de interface. Use esta função quando você extensão ContextHub.UI.BaseModuleRenderer
para criar um renderizador de Módulo de interface do usuário personalizado.
moduleType
: (String) O identificador do renderizador do módulo da interface do usuário. Se um renderizador já estiver registrado usando o valor especificado, o renderizador existente não será registrado antes que esse renderizador seja registrado.renderer
: (String) O nome da classe que renderiza o módulo da interface do usuário.dontRender
: (Booleano) Defina como true
para impedir que a interface do usuário do ContextHub seja renderizada depois que o renderizador for registrado. O valor padrão é false
.O exemplo a seguir registra um renderizador como contexthub.browserinfo
tipo de módulo.
ContextHub.UI.registerRenderer('contexthub.browserinfo', new SurferinfoRenderer());
Uma classe de utilitário para interagir com cookies.
Determina se um cookie existe.
key
: A String
que contém a chave do cookie para o qual você está testando.A boolean
valor true indica que o cookie existe.
if (ContextHub.Utils.Cookie.exists("name")) {
// conditionally-executed code
}
Retorna todos os cookies que têm chaves que correspondem a um filtro.
filter
: (Opcional) Critérios para corresponder a chaves de cookie. Para retornar todos os cookies, não especifique nenhum valor. Os seguintes tipos são suportados:
Um objeto de cookies. As propriedades do objeto são chaves de cookie e os valores-chave são valores de cookie.
ContextHub.Utils.Cookie.getAllItems([/^cq-authoring/, /^cq-editor/])
Retorna um valor de cookie.
key
: A chave do cookie para o qual você deseja obter o valor.O valor do cookie ou null
se nenhum cookie foi encontrado para a chave.
ContextHub.Utils.Cookie.getItem("name");
Retorna uma matriz das chaves dos cookies existentes que correspondem a um filtro.
filter
: Critérios para corresponder chaves de cookie. Os seguintes tipos são suportados:
true
se o teste confirmar uma correspondência.Uma matriz de strings na qual cada string é a chave de um cookie que corresponde ao filtro.
ContextHub.Utils.Cookie.getKeys([/^cq-authoring/, /^cq-editor/])
Remove um cookie. Para remover o cookie, o valor é definido como uma string vazia e a data de expiração é definida como o dia antes da data atual.
key
: A String
que representa a chave do cookie a ser removido.options
: Um objeto que contém valores de propriedade para configurar os atributos do cookie. Consulte a setItem
para obter mais informações. O expires
não tem efeito.Essa função não retorna um valor.
ContextHub.Utils.Cookie.vanish([/^cq-authoring/, 'cq-scrollpos']);
Cria um cookie da chave e valor fornecidos e adiciona o cookie ao documento atual. Como opção, você pode especificar opções que configuram os atributos do cookie.
key
: Uma String que contém a chave do cookie.value
: Uma String que contém o valor do cookie.options
: (Opcional) Um objeto que contém qualquer uma das seguintes propriedades que configuram os atributos do cookie:
expires
: A date
ou number
que especifica quando o cookie expira. Um valor de data especifica o tempo absoluto de expiração. Um número (em dias) define o tempo de expiração para a hora atual mais o número. O valor padrão é undefined
.secure
: A boolean
que especifica a variável Secure
do cookie. O valor padrão é false
.path
: A String
valor a ser usado como o Path
do cookie. O valor padrão é undefined
.O cookie com o valor definido.
ContextHub.Utils.Cookie.setItem("name", "mycookie", {
expires: 3,
domain: 'localhost',
path: '/some/directory',
secure: true
});
Remove todos os cookies que correspondem a um determinado filtro. Os cookies são correspondidos usando a variável getKeys
e removidas usando a função removeItem
.
filter
: O filter
argumento a ser usado na chamada para o getKeys
.options
: O options
argumento a ser usado na chamada para o removeItem
.Essa função não retorna um valor.
Permite vincular e desvincular funções a eventos de armazenamento do ContextHub. Acesso ContextHub.Utils.Eventing
objetos para um armazenamento usando o evento da loja.
Desvincula uma função de um evento.
name
: O nome do evento para a qual você está desvinculando a função .selector
: O seletor que identifica o vínculo. (Consulte o selector
para o on
e once
funções).Essa função não retorna valor.
Vincula uma função a um evento. A função é chamada sempre que o evento ocorre. Como opção, a função pode ser chamada para eventos que ocorreram no passado, antes que o vínculo seja estabelecido.
name
: (String) O nome do evento à qual você está vinculando a função.handler
: (Função) A função a ser vinculada ao evento.selector
: (String) Um identificador exclusivo para o vínculo. Você precisa do seletor para identificar o vínculo se deseja usar o off
para remover o vínculo.triggerForPastEvents
: (Booleano) Indica se o manipulador deve ser executado para eventos que ocorreram no passado. Um valor de true
chama o manipulador para eventos anteriores. Um valor de false
chama o manipulador para eventos futuros. O valor padrão é true
.Quando a variável triggerForPastEvents
argumento é true
, essa função retorna um boolean
que indica se o evento ocorreu no passado:
true
: O evento ocorreu no passado e o manipulador será chamado.false
: O evento não ocorreu no passado.If triggerForPastEvents
é false
, essa função não retorna valor.
O exemplo a seguir vincula uma função ao evento de dados do armazenamento de geolocalização. A função preenche um elemento na página com o valor do item de dados de latitude da loja.
<div class="location">
<p>latitude: <span id="lat"></span></p>
</div>
<script>
var geostore = ContextHub.getStore("geolocation");
geostore.eventing.on(ContextHub.Constants.EVENT_DATA_UPDATE,getlat,"getlat");
function getlat(){
latitude = geostore.getItem("latitude");
$("#lat").html(latitude);
}
</script>
Vincula uma função a um evento. A função é chamada somente uma vez, para a primeira ocorrência do evento. Como opção, a função pode ser chamada para o evento que ocorreu no passado, antes que o vínculo seja estabelecido.
name
: (String) O nome do evento à qual você está vinculando a função.handler
: (Função) A função a ser vinculada ao evento.selector
: (String) Um identificador exclusivo para o vínculo. Você precisa do seletor para identificar o vínculo se deseja usar o off
para remover o vínculo.triggerForPastEvents
: (Booleano) Indica se o manipulador deve ser executado para eventos que ocorreram no passado. Um valor de true
chama o manipulador para eventos anteriores. Um valor de false
chama o manipulador para eventos futuros. O valor padrão é true
.Quando a variável triggerForPastEvents
argumento é true
, essa função retorna um boolean
que indica se o evento ocorreu no passado:
true
: O evento ocorreu no passado e o manipulador será chamado.false
: O evento não ocorreu no passado.If triggerForPastEvents
é false
, essa função não retorna valor.
Uma classe de utilitário que permite a um objeto herdar as propriedades e os métodos de outro objeto.
Faz com que um objeto herde as propriedades e os métodos de outro objeto.
child
: (Objeto) O objeto que herda.parent
: (Objeto) O objeto que define as propriedades e os métodos herdados.Fornece funções para serializar objetos no formato JSON e desserializar cadeias JSON em objetos.
Analisa um valor de string como JSON e o converte em um objeto javascript.
data
: Um valor de string no formato JSON.Um objeto Javascript.
O código:
ContextHub.Utils.JSON.parse("{'city':'Basel','country':'Switzerland','population':'173330'}");
Retorna o seguinte objeto:
Object {
city: "Basel",
country: "Switzerland",
population: 173330
}
Serializa valores e objetos Javascript em valores de string de formato JSON.
data
: O valor ou objeto a ser serializado. Essa função suporta valores booleanos, de matriz, de número, de string e de data.O valor da string serializada. When data
é um R egExp
, essa função retorna um objeto vazio. When data
é uma função, retorna undefined
.
O código a seguir:
ContextHub.Utils.JSON.stringify({
city: "Basel",
country: "Switzerland",
population: 173330
});
Retorna:
"{'city':'Basel','country':'Switzerland','population':'173330'}":
Essa classe facilita a manipulação de objetos de dados que serão armazenados ou recuperados de armazenamentos do ContextHub.
Cria uma cópia de um objeto de dados e adiciona a ele a árvore de dados de um segundo objeto. A função retorna a cópia e não modifica nenhum dos objetos originais. Quando as árvores de dados dos dois objetos contêm chaves idênticas, o valor do segundo objeto substitui o valor do primeiro objeto.
tree
: O objeto que é copiado.secondTree
: O objeto que é unido à cópia do tree
objeto.Um objeto que contém os dados unidos.
Cria uma cópia de um objeto, localiza e remove itens na árvore de dados que não contêm valores, valores nulos ou valores indefinidos e retorna a cópia.
tree
: O objeto a ser limpo.Uma cópia da árvore que é limpa.
Recupera o valor de um objeto para a chave a.
tree
: O objeto de dados.key
: A chave do valor que você deseja recuperar.O valor que corresponde à chave. Quando a chave tem chaves secundárias, essa função retorna um objeto complexo. Quando o tipo do valor da chave é undefined
, null
é retornado.
Considere o seguinte objeto Javascript:
myObject {
user: {
location: {
city: "Basel",
details: {
population: 173330,
elevation: 260
}
}
}
}
O código de exemplo a seguir retorna o valor 260
:
ContextHub.Utils.JSON.tree.getItem(myObject, "/user/location/details/elevation");
O código de exemplo a seguir recupera o valor de uma chave que tenha chaves secundárias:
ContextHub.Utils.JSON.tree.getItem(myObject, "/user");
A função retorna o seguinte objeto:
Object {
location: {
city: "Basel",
details: {
population: 173330,
elevation: 260
}
}
}
Recupera todas as chaves da árvore de dados de um objeto. Como opção, você pode recuperar apenas as chaves dos filhos de uma chave específica. Opcionalmente, também é possível especificar uma ordem de classificação das chaves recuperadas.
tree
: O objeto do qual recuperar as chaves da árvore de dados.parent
: (Opcional) A chave de um item na árvore de dados para a qual você deseja recuperar as chaves dos itens filhos.order
: (Opcional) Uma função que determina a ordem de classificação das chaves retornadas. (Consulte Array.prototype.sort
no Mozilla Developer Network.)Uma matriz de chaves.
Considere o seguinte objeto:
myObject {
location: {
weather: {
temperature: "28C",
humidity: "77%",
precipitation: "10%",
wind: "8km/h"
},
city: "Basel",
country: "Switzerland",
longitude: 7.5925727,
latitude: 47.557421
}
}
O ContextHub.Utils.JSON.tree.getKeys(myObject);
o script retorna a seguinte matriz:
["/location", "/location/city", "/location/country", "/location/latitude", "/location/longitude", "/location/weather", "/location/weather/humidity", "/location/weather/precipitation", "/location/weather/temperature", "/location/weather/wind"]
Cria uma cópia de um determinado objeto, remove a ramificação especificada da árvore de dados e retorna a cópia modificada.
tree
: Um objeto de dados.key
: A chave a ser removida.Uma cópia do objeto de dados original com a chave removida.
Considere o seguinte objeto:
myObject {
one: {
foo: "bar",
two: {
three: {
four: {
five: 5,
six: 6
}
}
}
}
}
O script de exemplo a seguir remove a ramificação /um/dois/três/quatro da árvore de dados:
myObject = ContextHub.Utils.JSON.tree.removeItem(myObject, "/one/two/three/four");
A função retorna o seguinte objeto:
myObject {
one: {
foo: "bar"
}
}
Limpa os valores da sequência de caracteres para torná-los utilizáveis como chaves. Para limpar uma string, essa função executa as seguintes ações:
Use a matriz resultante para criar uma chave utilizável.
key
: O string
para purificar.Uma matriz de string
valores em que cada string é a parte da variável key
que foi demarcada por barras. representa a chave sanitizada. Se a matriz sanitizada tiver um comprimento de zero, essa função retornará null
.
O código a seguir limpa uma string para produzir a matriz ["this", "is", "a", "path"]
e então gera a chave "/this/is/a/path"
do storage:
var key = " / this////is/a/path ";
ContextHub.Utils.JSON.tree.sanitizeKey(key)
"/" + ContextHub.Utils.JSON.tree.sanitizeKey(key).join("/");
Adiciona um par chave/valor à árvore de dados de uma cópia de um objeto. Para obter informações sobre árvores de dados, consulte Persistência.
tree
: Um objeto de dados.key
: A chave para associar ao valor que você está adicionando. A chave é o caminho para o item na árvore de dados. Essa função chama ContextHub.Utils.JSON.tree.sanitize
para limpar a chave antes de adicioná-la.value
: O valor a ser adicionado à árvore de dados.Uma cópia do tree
que inclui a variável key
/ value
par.
Considere o seguinte código Javascript:
var myObject = {
user: {
location: {
city: "Basel"
}
}
};
var myKey = "/user/location/details";
var myValue = {
population: 173330,
elevation: 260
};
myObject = ContextHub.Utils.JSON.tree.setItem(myObject, myKey, myValue);
Permite registrar candidatos a lojas e obter candidatos a lojas registradas.
Retorna os tipos de loja que são registrados como candidatos de loja. Recupere os candidatos registrados de um tipo de armazenamento específico ou de todos os tipos de armazenamento.
storeType
: (String) O nome do tipo de armazenamento. Consulte a storeType
do ContextHub.Utils.storeCandidates.registerStoreCandidate
.Um objeto de tipos de armazenamento. As propriedades do objeto são os nomes do tipo de armazenamento e os valores da propriedade são uma matriz de candidatos a armazenamento registrado.
Retorna um tipo de armazenamento dos candidatos registrados. Se mais de um tipo de armazenamento do mesmo nome for registrado, a função retornará o tipo de armazenamento com a prioridade mais alta.
storeType
: (String) O nome do candidato da loja. Consulte a storeType
do ContextHub.Utils.storeCandidates.registerStoreCandidate
.Um objeto que representa o candidato de armazenamento registrado. Se o Tipo de armazenamento solicitado não estiver registrado, um erro será lançado.
Retorna os nomes dos tipos de loja que estão registrados como candidatos de loja. Essa função não requer parâmetros.
Uma matriz de valores da string, em que cada string é o tipo de armazenamento com o qual um candidato a loja foi registrado. Consulte a storeType
do ContextHub.Utils.storeCandidates.registerStoreCandidate
.
Registra um objeto de loja como candidato de loja usando um nome e uma prioridade.
A prioridade é um número que indica a importância das lojas com mesmo nome. Quando um candidato de loja é registrado usando o mesmo nome de um candidato de loja já registrado, o candidato com prioridade mais alta é usado. Ao registrar um candidato a loja, a loja é registrada somente se a prioridade for maior que os candidatos a loja registrada com o mesmo nome.
store
: (Objeto) O objeto de armazenamento a ser registrado como candidato de loja.storeType
: (String) O nome do candidato da loja. Esse valor é necessário ao criar uma instância do candidato de loja.priority
: (Número) A prioridade do candidato à loja.applies
: (Função) A função para invocar que avalia a aplicabilidade da loja no ambiente atual. A função deve retornar true
se o armazém for aplicável, e false
caso contrário. O valor padrão é uma função que retorna true: function() {return true;}
ContextHub.Utils.storeCandidates.registerStoreCandidate(myStoreCandidate,
'contexthub.mystorecandiate', 0);