Funzioni di Data Transformer

Questa pagina descrive il set aggiuntivo di funzioni Jsonnet predefinite per l'attività Data Transformer Script (Script per la trasformazione dei dati) disponibile in Apigee Integration.

Per utilizzare le seguenti funzioni predefinite, devi importare la libreria functions nello script. L'importazione della libreria functions ti consente di utilizzare sia le funzioni Jsonnet standard sia le funzioni Trasformatore predefinite.

Apigee Integration supporta la libreria di funzioni Jsonnet v0.20.0. Per informazioni sulle funzioni standard di Jsonnet, consulta la sezione Jsonnet Standard Library.

Funzioni di array


Average

Sintassi
        
avg(arr)
      
Descrizione Calcola la media numerica di tutti i valori in una matrice.
Parametro di input arr: la matrice di input.
Tipo restituito DOUBLE
Output Restituisce la media di tutti i valori nella matrice.

Contains

Sintassi
        
contains(arr, elem)
      
Descrizione Controlla l'occorrenza dell'elemento specificato in un array.
Parametro di input arr: la matrice di input.

elem: l'elemento array da cercare.

Tipo restituito BOOLEAN
Output Restituisce TRUE se viene trovata una corrispondenza e FALSE in caso contrario.

Max Array

Sintassi
        
maxArray(arr)
      
Descrizione Trova il valore più alto in un array.
Parametro di input arr: la matrice di input.
Tipo restituito Il tipo di dati della matrice di input.
Output Restituisce il valore più alto trovato nell'array.

Min Array

Sintassi
        
minArray(arr)
      
Descrizione Trova il valore più basso in un array.
Parametro di input arr: la matrice di input.
Tipo restituito Il tipo di dati della matrice di input.
Output/th> Restituisce il valore più basso trovato nell'array.

Remove

Sintassi
        
remove(arr, elem)
      
Descrizione Rimuove l'elemento specificato da un array.
Parametro di input arr: la matrice di input.

elem: l'elemento dell'array da rimuovere.

Tipo restituito Il tipo di dati della matrice di input.
Output Restituisce l'array aggiornato dopo la rimozione dell'elemento specificato.

Remove At

Sintassi
        
removeAt(arr, index)
      
Descrizione Rimuove un elemento da un array nell'indice specificato.
Parametro di input arr: la matrice di input.

indice: l'indice dell'array dell'elemento da rimuovere.

Tipo restituito Il tipo di dati della matrice di input.
Output Restituisce l'array aggiornato dopo la rimozione dell'elemento specificato.

Sum

Sintassi
        
sum(arr)
      
Descrizione Aggiunge tutti i valori in un array.
Parametro di input arr: la matrice di input.
Tipo restituito Il tipo di dati della matrice di input.
Output Restituisce la somma di tutti gli elementi dell'array.

GroupBy

Sintassi
        
groupBy(array, function)
      
Descrizione Crea un oggetto composto da chiavi generate dai risultati dell'esecuzione di ogni elemento di array attraverso la funzione iterata. Ad esempio, f.groupBy([1,1.3,1.8],std.floor) genererebbe {"1": [1,1.3,1.8]}.
Parametro di input
  • array: la raccolta su cui viene eseguito l'iterazione del metodo.

    function: la funzione richiamata per ogni elemento dell'array.

Tipo restituito JSON
Output Restituisce l'oggetto aggregato composto.

Zip

Sintassi
        
zip([arrays])
      
Descrizione Crea un array di elementi raggruppati, il primo dei quali contiene i primi elementi delle matrici date, il secondo dei quali contiene il secondo elemento delle matrici date e così via. Ad esempio, f.zip([[1, "one", "I"],[2, "two", "II"],[3, "three", "III"]]) genererebbe [[1,2,3],["one", "two", "three"],["I", "II", "III"]].
Parametro di input [arrays]: questo parametro contiene gli array da elaborare.
Tipo restituito array
Output Restituisce il nuovo array di elementi raggruppati.

Unzip

Sintassi
        
unzip(array)
      
Descrizione Crea un array di elementi raggruppati. Accetta un array di elementi raggruppati e crea anche un array che raggruppa gli elementi nella loro configurazione precompressa. Ad esempio, f.unzip([[1, "one", "I"],[2, "two", "II"],[3, "three", "III"]]) genererebbe [[1,2,3],["one", "two", "three"],["I", "II", "III"]].
Parametro di input array: questo parametro contiene l'array di elementi raggruppati da elaborare.
Tipo restituito array
Output Restituisce il nuovo array di elementi raggruppati.

Funzioni di aggregazione


XNOR

Sintassi
        
xnor(a, b)
      
Descrizione Esegue un'operazione logica xnOR sui valori booleani specificati.
Parametro di input a: un valore booleano.

b: un valore booleano.

Tipo restituito BOOLEAN
Output Restituisce l'XON dei due booleani specificati.

Xor

Sintassi
        
xor(a, b)
      
Descrizione Esegue un'operazione XOR logica sui valori booleani specificati.
Parametro di input a: un valore booleano.

b: un valore booleano.

Tipo restituito BOOLEAN
Output Restituisce l'XOR dei due booleani specificati.

Funzioni hash


SHA1

Sintassi
        
sha1(str)
      
Descrizione Calcola l'hash crittografico dell'input STRING utilizzando l'algoritmo Secure Hash Algorithm 1 (SHA-1).
Parametro di input str: la stringa di input.
Tipo restituito BYTES
Output Restituisce un valore hash a 160 bit (20 byte).

SHA256

Sintassi
        
sha256(str)
      
Descrizione Calcola l'hash crittografico dell'input STRING utilizzando l'algoritmo Secure Hash Algorithm 256 (SHA-256).
Parametro di input str: la stringa di input.
Tipo restituito BYTES
Output Restituisce un valore hash a 256 bit (32 byte).

SHA512

Sintassi
        
sha512(str)
      
Descrizione Calcola l'hash crittografico dell'input STRING utilizzando l'algoritmo Secure Hash Algorithm 512 (SHA-512).
Parametro di input str: la stringa di input.
Tipo restituito BYTES
Output Restituisce un valore hash a 512 bit (64 byte).

SHA3

Sintassi
        
sha3(str)
      
Descrizione Calcola l'hash crittografico dell'input STRING utilizzando l'algoritmo Secure Hash Algorithm 3 (SHA-3).
Parametro di input str: la stringa di input.
Tipo restituito BYTES
Output Restituisce un valore hash a 512 bit (64 byte).

Funzioni JSON


Manifest XML

Sintassi
        
manifestXml(json, format = "badgerfish", indent_output = false)
      
Descrizione Converte l'oggetto JSON di input specificato in una stringa XML.
Parametro di input json: l'oggetto JSON di input.

format: il formato di rappresentazione JSON di input.

indent_output: input booleano per indicare se la stringa XML di output deve essere rientrata. Il valore predefinito è False.

Tipo restituito STRING
Output Restituisce la stringa XML della rappresentazione di oggetto JSON fornita.

Object Remove Key

Sintassi
        
objectRemoveKey(obj, key)
      
Descrizione Rimuove una proprietà da un oggetto JSON.
Parametro di input obj: l'oggetto JSON di input.

key: la proprietà JSON da rimuovere.

Tipo restituito JSON
Output Oggetto JSON aggiornato dopo la rimozione della proprietà specificata e del valore corrispondente.

Parse XML

Sintassi
        
parseXml(xml, format = "badgerfish")
      
Descrizione Analizza la stringa XML di input specificata in un oggetto JSON.
Parametro di input xml: la stringa XML di input.

format: il formato di rappresentazione JSON di output.

Tipo restituito JSON
Output Restituisce la rappresentazione oggetto JSON della stringa XML fornita.

Parse CSV With Header

Sintassi
        
parseCsvWithHeader(input, delimiter = ",", overwrite_duplicate_headers = true)
      
Descrizione Analizza la stringa CSV di input specificata come json. La prima riga viene considerata come intestazione. Ad esempio, f.parseCsvWithHeader("index,product,company\n1,Application Integration,Google\n2,Pubsub,Google") genererebbe [{"index": "1", "product": "Application Integration", "company": "Google"},{"index": "2", "product": "Pubsub", "company": "Google"}].
Parametro di input input: la stringa CSV da analizzare.

delimitatore: stringa di delimitatore da utilizzare. Il valore predefinito è ",".

overwrite_duplicate_headers: opzione per sovrascrivere i valori per le intestazioni duplicate. Se viene impostato su false, l'intestazione duplicata verrà rinominata. Il valore predefinito è true.

Tipo restituito JSON
Output Restituisce la rappresentazione json della stringa csv specificata.

Manifest CSV

Sintassi
        
manifestCsv(json, headers = null)
      
Descrizione Converti il json specificato in una stringa CSV. Ad esempio, f.manifestCsv([{"index": "1", "product": "Application Integration", "company": "Google"},{"index": "2", "product": "Pubsub", "company": "Google"}]) genererebbe index,product,company\n1,Application Integration,Google\n2,Pubsub,Google.
Parametro di input json::JSON da convertire in csv.

headers: elenco di intestazioni per l'output in formato CSV. Se non viene fornito alcun valore, verranno utilizzate tutte le intestazioni.

Tipo restituito STRING
Output Restituisce la stringa csv da json nel formato specificato.

Funzioni matematiche


Is Decimal

Sintassi
        
isDecimal(num)
      
Descrizione Controlla se il numero specificato è un decimale.
Parametro di input num: il numero di input.
Tipo restituito BOOLEAN
Output Restituisce TRUE se il numero è decimale e FALSE in caso contrario.

Is Even

Sintassi
        
isEven(num)
      
Descrizione Controlla se il numero specificato è pari.
Parametro di input num: il numero di input.
Tipo restituito BOOLEAN
Output Restituisce TRUE se il numero è pari e FALSE in caso contrario.

Is Integer

Sintassi
        
isInteger(num)
      
Descrizione Controlla se il numero specificato è un numero intero.
Parametro di input num: il numero di input.
Tipo restituito BOOLEAN
Output Restituisce TRUE se il numero è un numero intero e FALSE in caso contrario.

Is Odd

Sintassi
        
isOdd(num)
      
Descrizione Controlla se il numero specificato è dispari.
Parametro di input num: il numero di input.
Tipo restituito BOOLEAN
Output Restituisce TRUE se il numero è dispari e FALSE in caso contrario.

Random Number

Sintassi
        
randomNumber(lowerBound, upperBound)
      
Descrizione Genera un numero reale casuale compreso in un intervallo specificato.
Parametro di input lowerBound:il valore dell'intervallo più basso (incluso). Il valore predefinito è 0.

upperBound:il valore dell'intervallo più alto (escluso). Il valore predefinito è 1.

Tipo restituito Un numero reale.
Output Restituisce un numero reale casuale compreso tra lowerBound e upperBound.

Round

Sintassi
        
round(input)
      
Descrizione Arrotonda un numero al numero intero più vicino.
Parametro di input input: un valore da arrotondare.
Tipo restituito INTEGER
Valore restituito Restituisce il numero intero arrotondato più vicino.

Funzioni di stringa


Equals Ignore Case

Sintassi
        
equalsIgnoreCase(str1, str2)
      
Descrizione Confronta i due valori di stringa specificati indipendentemente dall'uso delle maiuscole (inferiore o superiore).
Parametro di input str1: una stringa di input.

str2: una stringa di input.

Tipo restituito BOOLEAN
Output Restituisce TRUE se il valore specificato corrisponde al valore esistente (senza distinzione tra maiuscole e minuscole) e FALSE in caso contrario.

Is Empty

Sintassi
        
isEmpty(str)
      
Descrizione Controlla se la lunghezza della stringa specificata è pari a 0.
Parametro di input str: la stringa di input.
Tipo restituito BOOLEAN
Output Restituisce TRUE se la stringa è vuota e FALSE in caso contrario.

Match

Sintassi
        
match(str, regexp)
      
Descrizione Recupera il risultato della corrispondenza di una stringa con un'espressione regolare.
Parametro di input str: stringa di input.

regexp: l'espressione regolare re2.

Tipo restituito ARRAY
Output Restituisce un array di tutte le sottostringhe di str che corrispondono all'espressione regolare regexp. Restituisce un array vuoto in assenza di corrispondenze.

Trim

Sintassi
        
trim(str)
      
Descrizione Rimuove gli spazi iniziali e finali di una determinata stringa.
Parametro di input str: la stringa di input.
Tipo restituito STRING
Output Restituisce una copia della stringa, con gli spazi vuoti iniziali e finali rimossi.

Funzioni di timestamp


Date Format

Sintassi
        
dateFormat(timestamp, format_string, timezone, current_format)
      
Descrizione Formatta un timestamp in base al valore format_string specificato.
Parametro di input timestamp: il timestamp di input.

format_string: il nuovo formato del timestamp. Consulta Elementi di formato timestamp supportati per un elenco degli elementi di formato che possono essere utilizzati per formare la nuova stringa in formato timestamp.

timezone: il fuso orario del timestamp di input fornito. Il valore predefinito è UTC.

current_format: il formato che verrà utilizzato per analizzare il timestamp di input fornito. Il valore predefinito è E (epoca).

Tipo restituito STRING
Output Restituisce una nuova stringa dopo aver convertito l'input timestamp in base al valore format_string specificato.

Elementi del formato timestamp supportati

Nella tabella seguente sono elencati gli elementi di formato supportati per la funzione dateFormat():

Formatta elemento Descrizione Esempio
YYYY Anno a quattro cifre. 2023
YY Ultime due cifre dell'anno. 23
MMMM Il nome del mese indicato in maiuscolo. March
MMM Nome del mese abbreviato all'interno delle iniziali maiuscole. Mar
MM Mese da 01 a 12. 03
M Mese da 1 a 12. 3
DDDD Nome del giorno scritto in maiuscolo. Monday
DDD Nome del giorno abbreviato. Mon
DD Giorno da 01 a 31. 06
D Giorno da 1 a 31. 6
HH Ora nel formato 24 ore da 00 a 23. 15
hh Ora nel formato 12 ore da 01 a 12. 03
h Ora nel formato 12 ore da 1 a 12. 3
mm Minuto da 00 a 59. 04
m Minuto da 0 a 59. 4
ss Da 00 a 59 secondi. 08
s Secondi da 0 a 59. 8
FFFFFFFFF Frazioni di secondo con nove cifre, inclusi gli zeri, a destra delle cifre specificate. 00.123456789
FFFFFFFF Frazioni di secondo con 8 cifre, inclusi gli zeri, a destra delle cifre specificate. 00.12345678
FFFFFFF Frazioni di secondo con sette cifre, inclusi gli zeri, a destra delle cifre specificate. 00.1234567
FFFFFF Frazioni di secondo con sei cifre, inclusi gli zeri, a destra delle cifre specificate. 00.123456
FFFFF Frazioni di secondo con 5 cifre, inclusi gli zeri, a destra delle cifre specificate. 00.12345
FFFF Frazioni di secondo con 4 cifre, inclusi gli zeri, a destra delle cifre specificate. 00.1234
FFF Frazioni di secondo con 3 cifre, inclusi gli zeri, a destra delle cifre specificate. 00.123
FF Frazioni di secondo con due cifre, inclusi gli zeri, a destra delle cifre specificate. 00.12
F Frazioni di secondo con una cifra, inclusi gli zeri, a destra delle cifre specificate. 00.1
fffffffff Frazioni di secondo con 9 cifre. 987654321
ffffffff Frazioni di secondo con 8 cifre. 98765432
fffffff Frazioni di secondo con 7 cifre. 9876543
ffffff Frazioni di secondo con sei cifre. 987654
fffff Frazioni di secondo con 5 cifre. 98765
ffff Frazioni di secondo con 4 cifre. 9876
fff Frazioni di secondo con 3 cifre. 987
ff Frazioni di secondo con 2 cifre. 98
f Frazioni di secondo con una cifra. 9
tt Indicatore del meridiano (mattina o sera). Durante la formattazione, l'ora è AM o PM. PM
t Indicatore breve del meridiano (mattina o sera). Mappa con le lettere minuscole am o pm. pm
K Nome del fuso orario. PST
kk Fuso orario nel formato ±xx:xx. -8:00:00
k Fuso orario in formato ±xxxx. -8000

Is Leap Year

Sintassi
        
isLeapYear(year)
      
Descrizione Controlla se l'anno specificato è un anno bisestile.
Parametro di input year: l'anno di input (numero reale).
Tipo restituito BOOLEAN
Output Restituisce TRUE se l'anno è un anno bisestile e FALSE in caso contrario.

Now In Millis

Sintassi
        
nowInMillis()
      
Descrizione Restituisce il tempo corrente dell'epoca Unix di un'integrazione in millisecondi.
Parametro di input N/D
Tipo restituito INT64
Output Restituisce il tempo corrente dell'epoca Unix in millisecondi.

Funzioni di utilità


UUID

Sintassi
        
uuid()
      
Descrizione Genera un UUID (Universally Unique Identifier) casuale come STRING. Il valore STRING restituito è composto da 32 cifre esadecimali suddivise in cinque gruppi separati da trattini nel formato 8-4-4-4-12. Le cifre esadecimali rappresentano 122 bit casuali e 6 bit fissi, in conformità alla specifica RFC 4122 sezione 4.4. Il valore STRING restituito è minuscolo.
Parametro di input N/D
Tipo restituito STRING
Output Restituisce l'UUID generato in formato stringa.

Integration name

Sintassi
        
getIntegrationName()
      
Descrizione Ottieni il nome dell'integrazione attuale.
Parametro di input N/D
Tipo restituito STRING
Output Restituisce il nome dell'integrazione attuale.

Integration region

Sintassi
        
getIntegrationRegion()
      
Descrizione Ottieni la regione dell'integrazione attuale.
Parametro di input N/D
Tipo restituito STRING
Output Restituisce la regione dell'integrazione attuale.

Integration version ID

Sintassi
        
getIntegrationVersionId()
      
Descrizione Recupera l'ID versione dell'integrazione attuale.
Parametro di input N/D
Tipo restituito STRING
Output Restituisce l'ID versione dell'integrazione attuale.

Integration version number

Sintassi
        
getIntegrationVersionNumber()
      
Descrizione Ottieni il numero di versione dell'integrazione attuale.
Parametro di input N/D
Tipo restituito NUMBER
Output Restituisce il numero di versione dell'integrazione attuale.

Execution ID

Sintassi
        
getExecutionId()
      
Descrizione Ottieni l'ID esecuzione dell'integrazione attuale.
Parametro di input N/D
Tipo restituito STRING
Output Restituisce l'ID dell'esecuzione attuale dell'integrazione.

Project ID

Sintassi
        
getProjectId()
      
Descrizione Ottieni l'ID progetto Google Cloud dell'integrazione attuale.
Parametro di input N/D
Tipo restituito STRING
Output Restituisce l'ID progetto Google Cloud dell'integrazione attuale.