L'API ContextHub Javascript è disponibile per gli script quando il componente ContextHub è stato aggiunto alla pagina.
Valori costanti definiti dall'API ContextHub Javascript.
Nella tabella seguente sono elencati i nomi degli eventi che si verificano per gli store ContextHub. Vedere anche ContextHub.Utils.Eventing.
Costante | Descrizione | Valore |
---|---|---|
ContextHub.Constants.EVENT_NAMESPACE | Spazio dei nomi evento di ContextHub | ch |
ContextHub.Constants.EVENT_ALL_STORES_READY | Indica che tutti gli store richiesti sono registrati, inizializzati e pronti per essere consumati | all-stores-ready |
ContextHub.Constants.EVENT_STORES_PARTIALLY_READY | Indica che non tutti gli store sono stati inizializzati entro un determinato timeout | magazzini parzialmente pronti |
ContextHub.Constants.EVENT_STORE_REGISTERED | Generato quando un negozio è registrato | registrato nel negozio |
ContextHub.Constants.EVENT_STORE_READY | Indica che i negozi sono pronti per funzionare. Viene attivato immediatamente dopo la registrazione, ad eccezione degli store JSONP, dove viene attivato quando vengono estratti i dati. | pronto per il negozio |
ContextHub.Constants.EVENT_STORE_UPDATED | Generato quando uno store aggiorna la sua persistenza | aggiornamento store |
ContextHub.Constants.PERSISTENCE_CONTAINER_NAME | Nome contenitore persistenza | ContextHubPersistenza |
ContextHub.Constants.SERVICE_RAW_RESPONSE_KEY | Memorizza il nome della chiave di persistenza specifica in cui è memorizzato il risultato JSON non elaborato | /_/raw-response |
ContextHub.Constants.SERVICE_RESPONSE_TIME_KEY | Memorizza la marca temporale specifica che indica quando sono stati estratti i dati JSON | /_/tempo di risposta |
ContextHub.Constants.SERVICE_LAST_URL_KEY | Memorizza l’URL specifico del servizio JSON utilizzato durante l’ultima chiamata | /_/url |
ContextHub.Constants.IS_CONTAINER_EXPANDED | Indica se l'interfaccia utente di ContextHub è espansa | /_/container-espanso |
Nella tabella seguente sono elencati i nomi degli eventi che si verificano per l’interfaccia utente ContextHub.
Costante | Descrizione | Valore |
---|---|---|
ContextHub.Constants.EVENT_UI_MODE_REGISTERED | Generato quando una modalità viene registrata | in modalità automatica |
ContextHub.Constants.EVENT_UI_MODE_UNREGISTERED | Generato quando una modalità non è registrata | ui-mode non registrato |
ContextHub.Constants.EVENT_UI_MODE_RENDERER_REGISTERED | Generato quando viene registrato un renderer di modalità | modalità automatica, con rendering registrato |
ContextHub.Constants.EVENT_UI_MODE_RENDERER_UNREGISTERED | Generato quando un renderer di modalità non è registrato | renderer in modalità automatica non registrato |
ContextHub.Constants.EVENT_UI_MODE_ADDED | Generato quando viene aggiunta una nuova modalità | in modalità automatica |
ContextHub.Constants.EVENT_UI_MODE_REMOVED | Generato quando una modalità viene rimossa | rimosso in modalità automatica |
ContextHub.Constants.EVENT_UI_MODE_SELECTED | Generato quando l’utente seleziona una modalità | modalità di selezione automatica |
ContextHub.Constants.EVENT_UI_MODULE_REGISTERED | Generato quando viene registrato un nuovo modulo | modulo-utente registrato |
ContextHub.Constants.EVENT_UI_MODULE_UNREGISTERED | Generato quando un modulo non è registrato | modulo-ui non registrato |
ContextHub.Constants.EVENT_UI_MODULE_RENDERER_REGISTERED | Generato quando viene registrato un renderer di moduli | modulo-modulo-renderer registrato |
ContextHub.Constants.EVENT_UI_MODULE_RENDERER_UNREGISTERED | Generato quando un renderer di modulo non è registrato | Modulo-ui-renderer-unregistered |
ContextHub.Constants.EVENT_UI_MODULE_ADDED | Generato quando viene aggiunto un nuovo modulo | modulo-aggiunto |
ContextHub.Constants.EVENT_UI_MODULE_REMOVED | Generato quando un modulo viene rimosso | rimosso da un modulo |
ContextHub.Constants.EVENT_UI_CONTAINER_ADDED | Generato quando il contenitore dell’interfaccia utente viene aggiunto alla pagina | contenitore-aggiunto |
ContextHub.Constants.EVENT_UI_CONTAINER_OPENED | Generato all’apertura dell’interfaccia utente ContextHub | contenitore-ui aperto |
ContextHub.Constants.EVENT_UI_CONTAINER_CLOSED | Generato quando l’interfaccia utente ContextHub viene compressa | ui-container-closed |
ContextHub.Constants.EVENT_UI_PROPERTY_MODIFIED | Generato quando una proprietà viene modificata | ui-property-modified |
ContextHub.Constants.EVENT_UI_RENDERED | Generato ogni volta che viene eseguito il rendering dell’interfaccia utente ContextHub (ad esempio dopo una modifica di proprietà) | con riproduzione automatica |
ContextHub.Constants.EVENT_UI_INITIALIZED | Generato quando il contenitore dell'interfaccia utente viene inizializzato | inizializzato dall'utente |
ContextHub.Constants.ACTIVE_UI_MODE | Indica la modalità interfaccia attiva | /_/active-ui-mode |
L'oggetto ContextHub consente l'accesso a tutti gli store.
Restituisce tutti gli store ContextHub registrati.
Questa funzione non ha parametri.
Valore restituito
Un oggetto che contiene tutti gli store ContextHub. Ogni store è un oggetto che utilizza lo stesso nome dello store.
Esempio
L'esempio seguente recupera tutti gli store e recupera lo store di geolocalizzazione:
var allStores = ContextHub.getAllStores();
var geoloc = allStores.geolocation;
Recupera uno store come oggetto Javascript.
Parametri
Valore restituito
Un oggetto che rappresenta lo store.
Esempio
L'esempio seguente recupera l'archivio di geolocalizzazione:
var geoloc = ContextHub.getStore("geolocation");
Rappresenta un segmento ContextHub. Utilizzate ContextHub.SegmentEngine.SegmentManager per ottenere i segmenti.
Restituisce il nome del segmento come valore String.
Restituisce il percorso di repository della definizione del segmento come valore String.
Fornisce l'accesso ai segmenti ContextHub.
Restituisce i segmenti risolti nel contesto corrente. Questa funzione non ha parametri.
Valore restituito
Un array di oggetti ContextHub.SegmentEngine.Segment.
La classe base per gli store ContextHub.
Un oggetto ContextHub.Utils.Eventing. Utilizzare questo oggetto per eseguire il binding delle funzioni per memorizzare gli eventi. Per informazioni sul valore predefinito e sull'inizializzazione, vedere init(name,config).
Il nome dello store.
Un oggetto ContextHub.Utils.Persistenza. Per informazioni sul valore predefinito e sull'inizializzazione, vedere init(name,config)
.
Unisce un oggetto dati o una matrice ai dati dello store. Ogni coppia chiave/valore nell'oggetto o nella matrice viene aggiunta allo store (tramite la funzione setItem
):
I valori possono essere oggetti.
Parametri
options
di setItem(key,value,options).Valore restituito
Valore boolean
:
true
indica che l'oggetto dati è stato memorizzato.false
indica che l'archivio dati è invariato.Crea un riferimento da una chiave a un'altra chiave. Una chiave non può fare riferimento a se stessa.
Parametri
key: la chiave a cui fa riferimento anotherKey
.
altra chiave: Chiave a cui fa riferimento key
.
Valore restituito
Valore boolean
:
true
indica che il riferimento è stato aggiunto.false
indica che non è stato aggiunto alcun riferimento.Attiva l'evento ready
per lo store. Questa funzione non ha parametri e non restituisce alcun valore.
Rimuove tutti i dati dallo store. La funzione non ha parametri e non restituisce valori.
Restituisce il valore associato a una chiave.
Parametri
Valore restituito
Un oggetto che rappresenta il valore della chiave.
Recupera le chiavi dallo store. Facoltativamente potete recuperare le chiavi utilizzate internamente dal framework ContextHub.
Parametri
true
include nei risultati le chiavi utilizzate internamente. Queste chiavi iniziano con il carattere di sottolineatura ("_"). Il valore predefinito è false
.Valore restituito
Un array di nomi chiave ( string
valori).
Recupera i riferimenti dallo store.
Valore restituito
Un array che utilizza le chiavi di riferimento come indici per le chiavi di riferimento:
Le chiavi di riferimento corrispondono al parametro key
della funzione addReference
.
Le chiavi di riferimento corrispondono al parametro anotherKey
della funzione addReference
.
Recupera la struttura dati dallo store. Facoltativamente potete includere le coppie chiave/valore utilizzate internamente dal framework ContextHub.
Parametri
includeInternals:
Un valore di true
include coppie chiave/valore utilizzate internamente nei risultati. Le chiavi di questi dati iniziano con il carattere di sottolineatura ("_"). Il valore predefinito è false
.Valore restituito
Un oggetto che rappresenta la struttura dei dati. Le chiavi sono i nomi delle proprietà dell'oggetto.
Inizializza lo store.
Imposta i dati dello store su un oggetto vuoto.
Imposta i riferimenti dell'archivio su un oggetto vuoto.
eventChannel è un dato:name, dove name è il nome dello store.
StoreDataKey è /store/name, dove name è il nome dello store.
Parametri
name: Il nome dello store.
config: Un oggetto che contiene le proprietà di configurazione:
Determina se l'evento viene messo in pausa per lo store.
Valore restituito
Un valore booleano:
true
: Eventing viene messo in pausa in modo che non venga attivato alcun evento per lo store.false
: Eventing non viene messo in pausa in modo che gli eventi vengano attivati per lo store.Sospende l'evento per lo store in modo da non attivare eventi. Questa funzione non richiede parametri e non restituisce alcun valore.
Rimuove una coppia chiave/valore dallo store.
Quando una chiave viene rimossa, la funzione attiva l'evento data
. I dati dell'evento includono il nome dell'archivio, il nome della chiave che è stata rimossa, il valore rimosso, il nuovo valore per la chiave (null) e il tipo di azione "remove".
Facoltativamente, potete impedire l'attivazione dell'evento data
.
Parametri
key: (String) Il nome della chiave da rimuovere.
opzioni: (Oggetto) Un oggetto di opzioni. Le seguenti proprietà dell'oggetto sono valide:
true
impedisce l'attivazione dell'evento data
. Il valore predefinito è false
.Valore restituito
Valore boolean
:
true
indica che la coppia chiave/valore è stata rimossa.false
indica che l'archivio dati è invariato perché la chiave non è stata trovata nello store.Rimuove un riferimento dallo store.
Parametri
key
della funzione addReference
.Valore restituito
Valore boolean
:
true
indica che il riferimento è stato rimosso.false
indica che la chiave non era valida e che lo store è rimasto invariato.Ripristina i valori iniziali dei dati persistenti dello store. Facoltativamente, puoi rimuovere tutti gli altri dati dallo store. L'evento viene messo in pausa per lo store mentre lo store viene reimpostato. Questa funzione non restituisce alcun valore.
I valori iniziali sono forniti nella proprietà initialValues dell'oggetto config utilizzato per creare l'istanza dell'oggetto store.
Parametri
Ripristina i valori iniziali dei dati persistenti dello store. Facoltativamente, puoi rimuovere tutti gli altri dati dallo store. L'evento viene messo in pausa per lo store mentre lo store viene reimpostato. Questa funzione non restituisce alcun valore.
I valori iniziali sono forniti nella proprietà initialValues dell'oggetto config utilizzato per creare l'istanza dell'oggetto store.
Parametri
Recupera una chiave di riferimento. Facoltativamente, è possibile specificare il numero di iterazioni da utilizzare per risolvere la corrispondenza migliore.
Parametri
key: (String) La chiave per la quale risolvere il riferimento. Questo parametro key
corrisponde al parametro key
della funzione addReference
.
try: (Number) Numero di iterazioni da utilizzare.
Valore restituito
Un valore string
che rappresenta la chiave di riferimento. Se non viene risolto alcun riferimento, viene restituito il valore del parametro key
.
Riprende l'evento per lo store in modo da attivare gli eventi. Questa funzione non definisce alcun parametro e non restituisce alcun valore.
Aggiunge una coppia chiave/valore allo store.
Attiva l'evento data
solo se il valore della chiave è diverso dal valore attualmente memorizzato per la chiave. Facoltativamente, potete impedire l'attivazione dell'evento data
.
I dati dell'evento includono il nome dello store, la chiave, il valore precedente, il nuovo valore e il tipo di azione set
.
Parametri
key: (String) Il nome della chiave.
opzioni: (Oggetto) Un oggetto di opzioni. Le seguenti proprietà dell'oggetto sono valide:
true
impedisce l'attivazione dell'evento data
. Il valore predefinito è false
.value: (Object) Il valore da associare alla chiave.
Valore restituito
Valore boolean
:
true
indica che l'oggetto dati è stato memorizzato.false
indica che l'archivio dati è invariato.Uno store che contiene dati JSON. I dati vengono recuperati da un servizio JSONP esterno o, facoltativamente, da un servizio che restituisce dati JSON. Specificare i dettagli del servizio utilizzando la funzione init
quando si crea un'istanza di questa classe.
Lo store utilizza la persistenza in memoria (variabile Javascript). I dati dello store sono disponibili solo per tutta la durata della pagina.
ContextHub.Store.JSONPStore estende ContextHub.Store.Core ed eredita le funzioni di tale classe.
Configura i dettagli per la connessione al servizio JSONP utilizzato da questo oggetto. Potete aggiornare o sostituire la configurazione esistente. La funzione non restituisce alcun valore.
Parametri
serviceConfig: Un oggetto che contiene le proprietà seguenti:
host: (String) Il nome del server o l'indirizzo IP.
jsonp: (Booleano) Il valore true indica che il servizio è un servizio JSONP, false in caso contrario. Se true, il callback {callback: "ContextHub.Callback.L'oggetto Object.name} viene aggiunto all'oggetto service.params.
params: (Oggetto) Parametri URL rappresentati come proprietà dell'oggetto. I nomi dei parametri sono nomi di proprietà e i valori dei parametri sono valori di proprietà.
percorso: (String) Il percorso del servizio.
porta: (Numero) Il numero di porta del servizio.
secure: (String o Boolean) Determina il protocollo da utilizzare per l'URL del servizio:
override: (booleano). Un valore di true
determina la sostituzione della configurazione del servizio esistente con le proprietà di serviceConfig
. Un valore di false
determina l'unione delle proprietà di configurazione del servizio esistenti con le proprietà di serviceConfig
.
Restituisce la risposta non elaborata memorizzata nella cache dall'ultima chiamata al servizio JSONP. La funzione non richiede parametri.
Valore restituito
Un oggetto che rappresenta la risposta non elaborata.
Recupera l'oggetto del servizio per questo oggetto ContextHub.Store.JSONPStore. L'oggetto service contiene tutte le informazioni necessarie per creare l'URL del servizio.
Valore restituito
Un oggetto con le seguenti proprietà:
host: (String) Il nome del server o l'indirizzo IP.
jsonp: (booleano) Il valore true indica che il servizio è un servizio JSONP, false in caso contrario. Se true, il callback {callback: "ContextHub.Callback.L'oggetto Object.name} viene aggiunto all'oggetto service.params.
params: (Object) parametri URL rappresentati come proprietà dell'oggetto. I nomi dei parametri sono nomi di proprietà e i valori dei parametri sono valori di proprietà.
path: (String) Il percorso del servizio.
porta: (numero) Il numero di porta del servizio.
secure: (String o Boolean) Determina il protocollo da utilizzare per l'URL del servizio:
Recupera l'URL del servizio JSONP.
Parametri
true
risolve i parametri e false
no.Valore restituito
Un valore string
che rappresenta l'URL del servizio.
inizializza l'oggetto ContextHub.Store.JSONPStore.
Parametri
name: (String) Il nome dello store.
config: (Object) Un oggetto che contiene la proprietà service. L'oggetto JSONPStore utilizza le proprietà dell'oggetto service
per creare l'URL del servizio JSONP:
eventDeferring: 32.
evento: L'oggetto ContextHub.Utils.Eventing per lo store. Il valore predefinito è l'oggetto ContextHub.eventing
.
persistenza: L'oggetto ContextHub.Utils.Persistenza per lo store. Per impostazione predefinita, viene utilizzata la persistenza della memoria (oggetto Javascript).
service: (Oggetto)
host: (String) Il nome del server o l'indirizzo IP.
jsonp: (Booleano) Il valore true indica che il servizio è un servizio JSONP, false in caso contrario. Se true, l’oggetto {callback: "ContextHub.Callbacks.*Object.name*}
viene aggiunto a service.params
.
params: (Oggetto) Parametri URL rappresentati come proprietà dell'oggetto. I nomi e i valori dei parametri sono rispettivamente i nomi e i valori delle proprietà dell'oggetto.
percorso: (String) Il percorso del servizio.
porta: (Numero) Il numero di porta del servizio.
secure: (String o Boolean) Determina il protocollo da utilizzare per l'URL del servizio:
timeout: (Numero) Il tempo di attesa che il servizio JSONP risponda prima del timeout, in millisecondi.
ttl: Il tempo minimo in millisecondi che trascorre tra le chiamate al servizio JSONP. (Vedere la funzione queryService).
Interrompe il servizio JSONP remoto e memorizza nella cache la risposta. Se il tempo trascorso dalla precedente chiamata a questa funzione è inferiore al valore di config.service.ttl
, il servizio non viene chiamato e la risposta nella cache non viene modificata. Facoltativamente, puoi forzare la chiamata al servizio. La proprietà config.service.ttl
è impostata quando si chiama la funzione init per inizializzare lo store.
Attiva l’evento ready al termine della query. Se l'URL del servizio JSONP non è impostato, la funzione non esegue alcuna operazione.
Parametri
Ripristina i valori iniziali dei dati persistenti dello store e chiama il servizio JSONP. Facoltativamente, puoi rimuovere tutti gli altri dati dallo store. L'evento viene messo in pausa per lo store mentre i valori iniziali vengono reimpostati. Questa funzione non restituisce alcun valore.
I valori iniziali sono forniti nella proprietà initialValues dell'oggetto config utilizzato per creare l'istanza dell'oggetto store.
Parametri
Risolve il parametro specificato.
ContextHub.Store.PersistedJSONPStore estende ContextHub.Store.JSONPStore in modo da ereditare tutte le funzioni di tale classe. Tuttavia, i dati recuperati dal servizio JSONP vengono memorizzati in base alla configurazione della persistenza ContextHub. (Vedere Modalità di persistenza.)
ContextHub.Store.PersistedStore estende ContextHub.Store.Core in modo da ereditare tutte le funzioni di tale classe. I dati in questo archivio sono persistenti in base alla configurazione della persistenza ContextHub.
ContextHub.Store.SessionStore estende ContextHub.Store.Core in modo da ereditare tutte le funzioni di tale classe. I dati in questo archivio sono persistenti utilizzando la persistenza in memoria (oggetto Javascript).
Gestisce i moduli dell’interfaccia utente e i renderer dei moduli dell’interfaccia utente.
Registra un renderer di moduli dell'interfaccia utente con ContextHub. Dopo la registrazione del renderer, può essere utilizzato per creare moduli dell'interfaccia utente. Utilizzate questa funzione quando estendete ContextHub.UI.BaseModuleRenderer per creare un renderer di moduli dell'interfaccia utente personalizzato.
Parametri
true
da impedire il rendering dell'interfaccia utente ContextHub dopo la registrazione del renderer. Il valore predefinito è false
.Esempio
Nell'esempio seguente, un renderer viene registrato come tipo di modulo contestexthub.browserinfo.
ContextHub.UI.registerRenderer('contexthub.browserinfo', new SurferinfoRenderer());
Una classe di utilità per l'interazione con i cookie.
Determina se esiste un cookie.
Parametri
String
che contiene la chiave del cookie per il quale si sta eseguendo il test.Valore restituito
Il valore boolean
di true indica che il cookie esiste.
Esempio
if (ContextHub.Utils.Cookie.exists("name")) {
// conditionally-executed code
}
Restituisce tutti i cookie con chiavi che corrispondono a un filtro.
Parametri
(Facoltativo) filtro: Criteri per la corrispondenza delle chiavi dei cookie. Per restituire tutti i cookie, non specificate alcun valore. Sono supportati i tipi seguenti:
Valore restituito
Un oggetto di cookie. Le proprietà dell'oggetto sono cookie key e i valori chiave sono cookie values.
Esempio
ContextHub.Utils.Cookie.getAllItems([/^cq-authoring/, /^cq-editor/])
Restituisce un valore di cookie.
Parametri
Valore restituito
Il valore del cookie, o null
se non è stato trovato alcun cookie per la chiave.
Esempio
ContextHub.Utils.Cookie.getItem("name");
Restituisce un array delle chiavi dei cookie esistenti che corrispondono a un filtro.
Parametri
filter: Criteri per la corrispondenza delle chiavi dei cookie. Sono supportati i tipi seguenti:
true
se il test conferma una corrispondenza.Valore restituito
Un array di stringhe in cui ogni stringa è la chiave di un cookie che corrisponde al filtro.
Esempio
ContextHub.Utils.Cookie.getKeys([/^cq-authoring/, /^cq-editor/])
Rimuove un cookie. Per rimuovere il cookie, il valore è impostato su una stringa vuota e la data di scadenza è impostata sul giorno prima della data corrente.
Parametri
key: Un String
valore che rappresenta la chiave del cookie da rimuovere.
opzioni: Un oggetto che contiene i valori delle proprietà per la configurazione degli attributi del cookie. Per ulteriori informazioni, vedere la funzione [setItem](/docs/experience-manager-64/developing/personlization/contexthub-api.html?lang=it#setitem-key-value-options)
. La proprietà expires
non ha alcun effetto.
Valore restituito
Questa funzione non restituisce un valore.
Esempio
ContextHub.Utils.Cookie.vanish([/^cq-authoring/, 'cq-scrollpos']);
Crea un cookie della chiave e del valore specificati e aggiunge il cookie al documento corrente. Facoltativamente, potete specificare opzioni che configurano gli attributi del cookie.
Parametri
key: Una stringa che contiene la chiave del cookie.
value: Una stringa che contiene il valore del cookie.
opzioni: (Facoltativo) Un oggetto che contiene una delle seguenti proprietà che configurano gli attributi del cookie:
date
o number
che specifica quando scade il cookie. Un valore data specifica l'ora assoluta di scadenza. Un numero (in giorni) imposta l'ora di scadenza sull'ora corrente più il numero. Il valore predefinito è undefined
.boolean
che specifica l'attributo Secure
del cookie. Il valore predefinito è false
.String
da utilizzare come attributo Path
del cookie. Il valore predefinito è undefined
.Valore restituito
Il cookie con il valore impostato.
Esempio
ContextHub.Utils.Cookie.setItem("name", "mycookie", {
expires: 3,
domain: 'localhost',
path: '/some/directory',
secure: true
});
Rimuove tutti i cookie che corrispondono a un determinato filtro. I cookie vengono associati utilizzando la funzione getKeys e rimossi utilizzando la funzione removeItem.
Parametri
filter: L' filter
argomento da utilizzare nella chiamata alla [getKeys](/docs/experience-manager-64/developing/personlization/contexthub-api.md#getkeys-filter)
funzione.
opzioni: L' options
argomento da utilizzare nella chiamata alla [removeItem](/docs/experience-manager-64/developing/personlization/contexthub-api.md#removeitem-key-options)
funzione.
Valore restituito
Questa funzione non restituisce un valore.
Consente di eseguire il binding e la disassociazione delle funzioni agli eventi dell'archivio ContextHub. Accedere agli oggetti ContextHub.Utils.Eventing per uno store utilizzando la proprietà eventing dello store.
Separa una funzione da un evento.
Parametri
name: Il nome dell' evento per il quale si sta annullando il binding della funzione.
selettore: Il selettore che identifica il binding. (Vedere il parametro selector
per le funzioni on e once).
Valore restituito
Questa funzione non restituisce alcun valore.
Collega una funzione a un evento. La funzione viene chiamata ogni volta che si verifica l'evento. Facoltativamente, è possibile chiamare la funzione per gli eventi che si sono verificati in passato, prima che venga stabilito il binding.
Parametri
name: (String) Il nome dell' evento a cui si sta effettuando il binding della funzione.
handler: (Function) La funzione da associare all'evento.
selector: (String) Un identificatore univoco per il binding. È necessario che il selettore identifichi il binding se si desidera utilizzare la funzione off
per rimuovere il binding.
triggerForPastEvents: (Boolean) Indica se il gestore deve essere eseguito per gli eventi che si sono verificati in passato. Un valore di true
richiama il gestore per gli eventi passati. Un valore di false
richiama il gestore per gli eventi futuri. Il valore predefinito è true
.
Valore restituito
Quando l'argomento triggerForPastEvents
è true
, questa funzione restituisce un valore boolean
che indica se l'evento si è verificato in passato:
true
: L'evento si è verificato in passato e il gestore verrà chiamato.false
: L'evento non si è verificato in passato.Se triggerForPastEvents
è false
, questa funzione non restituisce alcun valore.
Esempio
Nell'esempio seguente viene associata una funzione all'evento data dell'archivio di geolocalizzazione. La funzione compila un elemento sulla pagina con il valore per l'elemento di dati di latitudine dallo store.
<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>
Collega una funzione a un evento. La funzione viene chiamata una sola volta, per la prima occorrenza dell'evento. Facoltativamente, è possibile chiamare la funzione per l'evento che si è verificato in passato, prima che venga stabilito il binding.
Parametri
name: (String) Il nome dell' evento a cui si sta effettuando il binding della funzione.
handler: (Function) La funzione da associare all'evento.
selector: (String) Un identificatore univoco per il binding. È necessario che il selettore identifichi il binding se si desidera utilizzare la funzione off
per rimuovere il binding.
triggerForPastEvents: (Boolean) Indica se il gestore deve essere eseguito per gli eventi che si sono verificati in passato. Un valore di true
richiama il gestore per gli eventi passati. Un valore di false
richiama il gestore per gli eventi futuri. Il valore predefinito è true
.
Valore restituito
Quando l'argomento triggerForPastEvents
è true
, questa funzione restituisce un valore boolean
che indica se l'evento si è verificato in passato:
true
: L'evento si è verificato in passato e il gestore verrà chiamato.false
: L'evento non si è verificato in passato.Se triggerForPastEvents
è false
, questa funzione non restituisce alcun valore.
Una classe di utilità che consente a un oggetto di ereditare le proprietà e i metodi di un altro oggetto.
Fa sì che un oggetto erediti le proprietà e i metodi di un altro oggetto.
Parametri
Fornisce funzioni per la serializzazione di oggetti in formato JSON e la deserializzazione di stringhe JSON in oggetti.
Analizza un valore di stringa come JSON e lo converte in un oggetto javascript.
Parametri
Valore restituito
Un oggetto Javascript.
Esempio
Il codice ContextHub.Utils.JSON.parse("{'city':'Basel','country':'Switzerland','population':'173330'}");
restituisce il seguente oggetto:
Object {
city: "Basel",
country: "Switzerland",
population: 173330
}
Serializza i valori e gli oggetti JavaScript in valori stringa del formato JSON.
Parametri
Valore restituito
Il valore di stringa serializzato. Se data
è un valore R egExp
, questa funzione restituisce un oggetto vuoto. Quando data
è una funzione, restituisce undefined
.
Esempio
Il codice seguente restituisce "{'city':'Basel','country':'Switzerland','population':'173330'}":
ContextHub.Utils.JSON.stringify({
city: "Basel",
country: "Switzerland",
population: 173330
});
Questa classe semplifica la manipolazione degli oggetti dati da memorizzare o da recuperare dagli store ContextHub.
Crea una copia di un oggetto dati e vi aggiunge la struttura dati da un secondo oggetto. La funzione restituisce la copia e non modifica nessuno degli oggetti originali. Quando le strutture ad albero dati dei due oggetti contengono chiavi identiche, il valore del secondo oggetto sovrascrive il valore del primo oggetto.
Parametri
tree
oggetto.Valore restituito
Un oggetto che contiene i dati uniti.
Crea una copia di un oggetto, trova e rimuove elementi nella struttura dati che non contengono valori, valori null o valori non definiti e restituisce la copia.
Parametri
Valore restituito
Una copia della struttura ad albero che viene pulita.
Recupera il valore da un oggetto per la chiave.
Parametri
Valore restituito
Il valore corrispondente alla chiave. Quando la chiave dispone di chiavi figlio, questa funzione restituisce un oggetto complesso. Quando il tipo del valore della chiave è undefined
, viene restituito null
.
Esempio
Considerare il seguente oggetto Javascript:
myObject {
user: {
location: {
city: "Basel",
details: {
population: 173330,
elevation: 260
}
}
}
}
Il seguente codice di esempio restituisce il valore 260
:
ContextHub.Utils.JSON.tree.getItem(myObject, "/user/location/details/elevation");
Il codice di esempio seguente recupera il valore per una chiave con chiavi figlio:
ContextHub.Utils.JSON.tree.getItem(myObject, "/user");
La funzione restituisce l'oggetto seguente:
Object {
location: {
city: "Basel",
details: {
population: 173330,
elevation: 260
}
}
}
Recupera tutte le chiavi dalla struttura dati di un oggetto. Facoltativamente, è possibile recuperare solo le chiavi degli elementi secondari di una chiave specifica. Facoltativamente, potete anche specificare un ordinamento delle chiavi recuperate.
Parametri
Valore restituito
Un array di chiavi.
Esempio
Considerare il seguente oggetto:
myObject {
location: {
weather: {
temperature: "28C",
humidity: "77%",
precipitation: "10%",
wind: "8km/h"
},
city: "Basel",
country: "Switzerland",
longitude: 7.5925727,
latitude: 47.557421
}
}
Lo script ContextHub.Utils.JSON.tree.getKeys(myObject);
restituisce la seguente matrice:
["/location", "/location/city", "/location/country", "/location/latitude", "/location/longitude", "/location/weather", "/location/weather/humidity", "/location/weather/precipitation", "/location/weather/temperature", "/location/weather/wind"]
Crea una copia di un dato oggetto, rimuove il ramo specificato dalla struttura dei dati e restituisce la copia modificata.
Parametri
Valore restituito
Una copia dell'oggetto dati originale con la chiave rimossa.
Esempio
Considerare il seguente oggetto:
myObject {
one: {
foo: "bar",
two: {
three: {
four: {
five: 5,
six: 6
}
}
}
}
}
Lo script di esempio seguente rimuove il ramo /uno/due/tre/quattro dalla struttura dei dati:
myObject = ContextHub.Utils.JSON.tree.removeItem(myObject, "/one/two/three/four");
La funzione restituisce l'oggetto seguente:
myObject {
one: {
foo: "bar"
}
}
Rimuove i valori stringa per renderli utilizzabili come chiavi. Per eliminare una stringa, questa funzione esegue le azioni seguenti:
Utilizzare l'array risultante per creare una chiave utilizzabile. Parametri
string
pulizia.Valore restituito
Un array di valori string
in cui ogni stringa è la porzione di key
delimitata da barre. rappresenta la chiave sanizzata. Se la lunghezza dell'array sanificato è pari a zero, questa funzione restituisce null
.
Esempio
Il codice seguente rimuove una stringa per produrre la matrice ["this", "is", "a", "path"]
, quindi genera la chiave "/this/is/a/path"
dall’array:
var key = " / this////is/a/path ";
ContextHub.Utils.JSON.tree.sanitizeKey(key)
"/" + ContextHub.Utils.JSON.tree.sanitizeKey(key).join("/");
Aggiunge una coppia chiave/valore alla struttura dati di una copia di un oggetto. Per informazioni sulle strutture ad albero dei dati, vedere Persistenza.
Parametri
ContextHub.Utils.JSON.tree.sanitize
per rimuovere completamente la chiave prima di aggiungerla.Valore restituito
Una copia dell'oggetto tree
che include la coppia key
/ value
.
Esempio
Considerate il seguente codice 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);
L'oggetto myObject ha il valore seguente:
Consente di registrare i candidati allo store e di ottenere i candidati allo store registrati.
Restituisce i tipi di store registrati come candidati store. Recuperare i candicati registrati di un tipo di archivio specifico o di tutti i tipi di store.
Parametri
storeType
della funzione ContextHub.Utils.storeCandidates.registerStoreCandidate
.Valore restituito
Un oggetto di tipi di store. Le proprietà dell'oggetto sono i nomi dei tipi di archivio e i valori delle proprietà sono un array di candidati store registrati.
Restituisce un tipo di archivio dai candidati registrati. Se viene registrato più di un tipo di store con lo stesso nome, la funzione restituisce il tipo di store con la priorità più alta.
Parametri
storeType
della funzione ContextHub.Utils.storeCandidates.registerStoreCandidate
.Valore restituito
Un oggetto che rappresenta il candidato dello store registrato. Se il tipo di archivio richiesto non è registrato, viene generato un errore.
Restituisce i nomi dei tipi di store registrati come candidati store. Questa funzione non richiede parametri.
Valore restituito
Un array di valori stringa, in cui ogni stringa è il tipo di storetype con cui è stato registrato un candidato all'archiviazione. Vedere il parametro storeType
della funzione ContextHub.Utils.storeCandidates.registerStoreCandidate
.
Registra un oggetto store come candidato allo store utilizzando un nome e una priorità.
La priorità è un numero che indica l'importanza degli store con lo stesso nome. Quando un candidato del negozio viene registrato con lo stesso nome di un candidato del negozio già registrato, viene utilizzato il candidato con la priorità più alta. Quando si registra un candidato per un negozio, lo store viene registrato solo se la priorità è superiore ai candidati dello store registrato dello stesso nome.
Parametri
true
se è applicabile lo store e false
in caso contrario. Il valore predefinito è una funzione che restituisce true: function() {return true;}
Esempio
ContextHub.Utils.storeCandidates.registerStoreCandidate(myStoreCandidate,
'contexthub.mystorecandiate', 0);