Fungsi Transformer Data

Halaman ini menjelaskan serangkaian tambahan fungsi Jsonnet standar untuk tugas Data Transformer Script yang tersedia di Integrasi Apigee.

Untuk menggunakan fungsi yang telah ditentukan berikut, Anda harus mengimpor library functions dalam skrip Anda. Dengan mengimpor library functions, Anda dapat menggunakan fungsi Jsonnet standar dan fungsi Transformer Data yang telah ditetapkan sebelumnya.

Integrasi Apigee mendukung library fungsi Jsonnet v0.20.0. Untuk mengetahui informasi tentang fungsi standar Jsonnet, lihat Jsonnet Standard Library.

Fungsi array


Average

Sintaks
        
avg(arr)
      
Deskripsi Menghitung rata-rata numerik dari semua nilai dalam array.
Parameter input arr: Array input.
Jenis hasil yang ditampilkan DOUBLE
Output Menampilkan rata-rata dari semua nilai dalam array.

Contains

Sintaks
        
contains(arr, elem)
      
Deskripsi Memeriksa kemunculan elemen yang ditentukan dalam array.
Parameter input arr: Array input.

elem: Elemen array yang akan ditelusuri.

Jenis hasil yang ditampilkan BOOLEAN
Output Menampilkan BENAR jika ditemukan kecocokan dan SALAH jika tidak ditemukan.

Max Array

Sintaks
        
maxArray(arr)
      
Deskripsi Mencari nilai tertinggi dalam array.
Parameter input arr: Array input.
Jenis hasil yang ditampilkan Jenis data array input.
Output Menampilkan nilai tertinggi yang ditemukan dalam array.

Min Array

Sintaks
        
minArray(arr)
      
Deskripsi Mencari nilai terendah dalam array.
Parameter input arr: Array input.
Jenis hasil yang ditampilkan Jenis data array input.
Output/th> Menampilkan nilai terendah yang ditemukan dalam array.

Remove

Sintaks
        
remove(arr, elem)
      
Deskripsi Menghapus elemen yang ditentukan dari array.
Parameter input arr: Array input.

elem: Elemen array yang akan dihapus.

Jenis hasil yang ditampilkan Jenis data array input.
Output Menampilkan array yang diperbarui setelah menghapus elemen yang ditentukan.

Remove At

Sintaks
        
removeAt(arr, index)
      
Deskripsi Menghapus elemen dari array pada indeks yang ditentukan.
Parameter input arr: Array input.

index: Indeks array elemen yang akan dihapus.

Jenis hasil yang ditampilkan Jenis data array input.
Output Menampilkan array yang diperbarui setelah menghapus elemen yang ditentukan.

Sum

Sintaks
        
sum(arr)
      
Deskripsi Menambahkan semua nilai dalam array.
Parameter input arr: Array input.
Jenis hasil yang ditampilkan Jenis data array input.
Output Menampilkan jumlah semua elemen dalam array.

GroupBy

Sintaks
        
groupBy(array, function)
      
Deskripsi Membuat objek yang terdiri dari kunci yang dihasilkan dari hasil menjalankan setiap elemen array melalui fungsi iterasi. Misalnya, f.groupBy([1,1.3,1.8],std.floor) akan menghasilkan {"1": [1,1.3,1.8]}.
Parameter input
  • array: Kumpulan yang diiterasi oleh metode.

    function: Fungsi yang dipanggil untuk setiap elemen dalam array.

Jenis hasil yang ditampilkan JSON
Output Menampilkan objek agregat yang tersusun.

Zip

Sintaks
        
zip([arrays])
      
Deskripsi Fungsi ini membuat array dari elemen yang dikelompokkan, yang pertama berisi elemen pertama dari array yang diberikan, yang kedua berisi elemen kedua dari array yang diberikan, dan seterusnya. Misalnya, f.zip([[1, "one", "I"],[2, "two", "II"],[3, "three", "III"]]) akan menghasilkan [[1,2,3],["one", "two", "three"],["I", "II", "III"]].
Parameter input [arrays]: Parameter ini menyimpan array yang akan diproses.
Jenis hasil yang ditampilkan array
Output Menampilkan array baru dari elemen yang dikelompokkan ulang.

Unzip

Sintaks
        
unzip(array)
      
Deskripsi Membuat array dari elemen yang dikelompokkan. Menerima array elemen yang dikelompokkan dan juga membuat array yang mengelompokkan ulang elemen ke konfigurasi pra-zip. Misalnya, f.unzip([[1, "one", "I"],[2, "two", "II"],[3, "three", "III"]]) akan menghasilkan [[1,2,3],["one", "two", "three"],["I", "II", "III"]].
Parameter input array: Parameter ini menyimpan array elemen yang dikelompokkan yang akan diproses.
Jenis hasil yang ditampilkan array
Output Menampilkan array baru dari elemen yang dikelompokkan ulang.

Fungsi agregat


XNOR

Sintaks
        
xnor(a, b)
      
Deskripsi Melakukan operasi XNOR logis pada nilai boolean yang ditentukan.
Parameter input a: Nilai boolean.

b: Nilai boolean.

Jenis hasil yang ditampilkan BOOLEAN
Output Menampilkan XNOR dari dua boolean yang diberikan.

Xor

Sintaks
        
xor(a, b)
      
Deskripsi Melakukan operasi XOR logis pada nilai boolean yang ditentukan.
Parameter input a: Nilai boolean.

b: Nilai boolean.

Jenis hasil yang ditampilkan BOOLEAN
Output Menampilkan XOR dari dua boolean yang diberikan.

Fungsi hash


SHA1

Sintaks
        
sha1(str)
      
Deskripsi Menghitung hash kriptografis STRING input menggunakan algoritma Secure Hash Algorithm 1 (SHA-1).
Parameter input str: String input.
Jenis hasil yang ditampilkan BYTES
Output Menampilkan nilai hash 160 bit (20 byte).

SHA256

Sintaks
        
sha256(str)
      
Deskripsi Menghitung hash kriptografis STRING input menggunakan algoritma Secure Hash Algorithm 256 (SHA-256).
Parameter input str: String input.
Jenis hasil yang ditampilkan BYTES
Output Menampilkan nilai hash 256 bit (32 byte).

SHA512

Sintaks
        
sha512(str)
      
Deskripsi Menghitung hash kriptografis STRING input menggunakan algoritma Secure Hash Algorithm 512 (SHA-512).
Parameter input str: String input.
Jenis hasil yang ditampilkan BYTES
Output Menampilkan nilai hash 512 bit (64-byte).

SHA3

Sintaks
        
sha3(str)
      
Deskripsi Menghitung hash kriptografis STRING input menggunakan algoritma Secure Hash Algorithm 3 (SHA-3).
Parameter input str: String input.
Jenis hasil yang ditampilkan BYTES
Output Menampilkan nilai hash 512 bit (64-byte).

Fungsi JSON


Manifest XML

Sintaks
        
manifestXml(json, format = "badgerfish", indent_output = false)
      
Deskripsi Mengonversi objek JSON input yang ditentukan menjadi string XML.
Parameter input json: Objek JSON input.

format: Format representasi JSON input.

indent_output: Input Boolean untuk menunjukkan apakah string XML output harus diindentasi. Nilai defaultnya adalah False.

Jenis hasil yang ditampilkan STRING
Output Menampilkan string XML dari representasi objek JSON yang disediakan.

Object Remove Key

Sintaks
        
objectRemoveKey(obj, key)
      
Deskripsi Menghapus properti dari objek JSON.
Parameter input obj: Objek JSON input.

key: Properti JSON yang akan dihapus.

Jenis hasil yang ditampilkan JSON
Output Objek JSON diperbarui setelah menghapus properti yang ditentukan dan nilainya yang sesuai.

Parse XML

Sintaks
        
parseXml(xml, format = "badgerfish")
      
Deskripsi Mengurai string XML input yang ditentukan ke dalam objek JSON.
Parameter input xml: String XML input.

format: Format representasi JSON output.

Jenis hasil yang ditampilkan JSON
Output Menampilkan representasi objek JSON dari string XML yang disediakan.

Parse CSV With Header

Sintaks
        
parseCsvWithHeader(input, delimiter = ",", overwrite_duplicate_headers = true)
      
Deskripsi Mengurai string csv input yang diberikan sebagai json. Baris pertama akan dianggap sebagai {i>header<i}. Misalnya, f.parseCsvWithHeader("index,product,company\n1,Application Integration,Google\n2,Pubsub,Google") akan menghasilkan [{"index": "1", "product": "Application Integration", "company": "Google"},{"index": "2", "product": "Pubsub", "company": "Google"}].
Parameter input input: String CSV yang akan diuraikan.

delimiter: String pemisah yang akan digunakan. Nilai defaultnya adalah ','.

overwrite_duplicate_headers: Opsi untuk menimpa nilai header duplikat. Jika disetel ke salah (false), header duplikat akan diganti namanya. Nilai defaultnya adalah true.

Jenis hasil yang ditampilkan JSON
Output Menampilkan representasi json dari string csv yang diberikan.

Manifest CSV

Sintaks
        
manifestCsv(json, headers = null)
      
Deskripsi Konversi json tertentu ke dalam string csv. Misalnya, f.manifestCsv([{"index": "1", "product": "Application Integration", "company": "Google"},{"index": "2", "product": "Pubsub", "company": "Google"}]) akan menghasilkan index,product,company\n1,Application Integration,Google\n2,Pubsub,Google.
Parameter input json: JSON yang akan dikonversi menjadi CSV.

headers: Daftar header untuk output CSV. Jika tidak ada nilai yang diberikan, header akan digunakan.

Jenis hasil yang ditampilkan STRING
Output Menampilkan string csv dari json dalam format tertentu.

Fungsi matematika


Is Decimal

Sintaks
        
isDecimal(num)
      
Deskripsi Memeriksa apakah angka yang ditentukan adalah desimal.
Parameter input num: Angka input.
Jenis hasil yang ditampilkan BOOLEAN
Output Menampilkan TRUE jika angka berupa desimal dan FALSE jika sebaliknya.

Is Even

Sintaks
        
isEven(num)
      
Deskripsi Memeriksa apakah bilangan yang ditentukan adalah bilangan genap.
Parameter input num: Angka input.
Jenis hasil yang ditampilkan BOOLEAN
Output Menampilkan TRUE jika angkanya genap dan FALSE jika sebaliknya.

Is Integer

Sintaks
        
isInteger(num)
      
Deskripsi Memeriksa apakah bilangan yang ditentukan adalah bilangan bulat.
Parameter input num: Angka input.
Jenis hasil yang ditampilkan BOOLEAN
Output Menampilkan TRUE jika bilangannya adalah bilangan bulat dan FALSE jika bukan.

Is Odd

Sintaks
        
isOdd(num)
      
Deskripsi Memeriksa apakah angka yang diberikan ganjil.
Parameter input num: Angka input.
Jenis hasil yang ditampilkan BOOLEAN
Output Menampilkan TRUE jika angkanya ganjil dan FALSE jika sebaliknya.

Random Number

Sintaks
        
randomNumber(lowerBound, upperBound)
      
Deskripsi Menghasilkan bilangan riil acak di antara rentang tertentu.
Parameter input lowerBound: Nilai rentang bawah (inklusif). Nilai defaultnya adalah 0.

upperBound: Nilai rentang yang lebih tinggi (eksklusif). Nilai defaultnya adalah 1.

Jenis hasil yang ditampilkan Bilangan riil.
Output Menampilkan bilangan riil acak antara lowerBound dan upperBound.

Round

Sintaks
        
round(input)
      
Deskripsi Membulatkan angka ke bilangan bulat terdekat.
Parameter input input: Nilai yang akan dibulatkan.
Jenis hasil yang ditampilkan INTEGER
Nilai yang ditampilkan Menampilkan bilangan bulat terdekat yang dibulatkan.

Fungsi string


Equals Ignore Case

Sintaks
        
equalsIgnoreCase(str1, str2)
      
Deskripsi Membandingkan dua nilai string tertentu, apa pun kapitalisasi stringnya (bawah atau atas).
Parameter input str1: String input.

str2: String input.

Jenis hasil yang ditampilkan BOOLEAN
Output Menampilkan TRUE jika nilai yang ditentukan cocok dengan nilai yang ada (mengabaikan huruf besar/kecil) dan FALSE jika sebaliknya.

Is Empty

Sintaks
        
isEmpty(str)
      
Deskripsi Memeriksa apakah panjang string yang diberikan adalah 0.
Parameter input str: String input.
Jenis hasil yang ditampilkan BOOLEAN
Output Menampilkan TRUE jika string kosong dan FALSE jika sebaliknya.

Match

Sintaks
        
match(str, regexp)
      
Deskripsi Mengambil hasil pencocokan string dengan ekspresi reguler.
Parameter input str: String input.

regexp: Ekspresi reguler re2.

Jenis hasil yang ditampilkan ARRAY
Output Menampilkan array dari semua substring str yang cocok dengan ekspresi reguler, regexp. Menampilkan array kosong jika tidak ada kecocokan.

Trim

Sintaks
        
trim(str)
      
Deskripsi Menghapus semua spasi di awal dan di akhir dari string tertentu.
Parameter input str: String input.
Jenis hasil yang ditampilkan STRING
Output Menampilkan salinan string, tanpa spasi kosong di awal dan akhir.

Fungsi stempel waktu


Date Format

Sintaks
        
dateFormat(timestamp, format_string, timezone, current_format)
      
Deskripsi Memformat stempel waktu sesuai dengan format_string yang ditentukan.
Parameter input timestamp: Stempel waktu input.

format_string: Format stempel waktu baru. Lihat Elemen format stempel waktu yang didukung untuk mengetahui daftar elemen format yang dapat digunakan untuk membentuk string format stempel waktu baru.

zona waktu: Zona waktu dari stempel waktu input yang diberikan. Nilai defaultnya adalah UTC.

current_format: Format yang akan digunakan untuk mengurai stempel waktu input yang diberikan. Nilai defaultnya adalah E (epoch).

Jenis hasil yang ditampilkan STRING
Output Menampilkan string baru setelah mengonversi timestamp input berdasarkan format_string yang ditentukan.

Elemen format stempel waktu yang didukung

Tabel berikut mencantumkan elemen format yang didukung untuk fungsi dateFormat():

Elemen format Deskripsi Contoh
YYYY Tahun 4 digit. 2023
YY 2 digit terakhir tahun. 23
MMMM Nama bulan dalam kapitalisasi judul. March
MMM Nama singkat bulan dalam kapitalisasi judul. Mar
MM Bulan dari 01 hingga 12. 03
M Bulan dari 1 sampai 12. 3
DDDD Nama hari dalam kapitalisasi judul. Monday
DDD Singkatan nama hari. Mon
DD Hari dari 01 hingga 31. 06
D Hari dari 1 sampai 31. 6
HH Jam dalam format 24 jam dari 00 hingga 23. 15
hh Jam dalam format 12 jam dari 01 hingga 12. 03
h Jam dalam format 12 jam dari 1 hingga 12. 3
mm Menit dari 00 hingga 59. 04
m Menit dari 0 hingga 59. 4
ss Detik dari 00 sampai 59. 08
s Detik dari 0 sampai 59. 8
FFFFFFFFF Detik pecahan dengan 9 digit, termasuk nol, di sebelah kanan digit yang ditentukan. 00.123456789
FFFFFFFF Detik pecahan dengan 8 digit, termasuk nol, di sebelah kanan digit yang ditentukan. 00.12345678
FFFFFFF Detik pecahan dengan 7 digit, termasuk nol, di sebelah kanan digit yang ditentukan. 00.1234567
FFFFFF Detik pecahan dengan 6 digit, termasuk nol, di sebelah kanan digit yang ditentukan. 00.123456
FFFFF Detik pecahan dengan 5 digit, termasuk nol, di sebelah kanan digit yang ditentukan. 00.12345
FFFF Detik pecahan dengan 4 digit, termasuk nol, di sebelah kanan digit yang ditentukan. 00.1234
FFF Detik pecahan dengan 3 digit, termasuk nol, di sebelah kanan digit yang ditentukan. 00.123
FF Detik pecahan dengan 2 digit, termasuk nol, di sebelah kanan digit yang ditentukan. 00.12
F Detik pecahan dengan 1 digit, termasuk nol, di sebelah kanan digit yang ditentukan. 00.1
fffffffff Detik pecahan dengan 9 digit. 987654321
ffffffff Detik pecahan dengan 8 digit. 98765432
fffffff Detik pecahan dengan 7 digit. 9876543
ffffff Detik pecahan dengan 6 digit. 987654
fffff Detik pecahan dengan 5 digit. 98765
ffff Detik pecahan dengan 4 digit. 9876
fff Detik pecahan dengan 3 digit. 987
ff Detik pecahan dengan 2 digit. 98
f Detik pecahan dengan 1 digit. 9
tt Indikator meridian (pagi atau sore). Saat memformat, ini adalah AM atau PM. PM
t Indikator meridian pendek (pagi atau sore). Maps ke huruf kecil am atau pm. pm
K Nama zona waktu. PST
kk Zona waktu dalam format ±xx:xx. -8:00:00
k Zona waktu dalam format ±xxxx. -8000

Is Leap Year

Sintaks
        
isLeapYear(year)
      
Deskripsi Memeriksa apakah tahun yang ditentukan adalah tahun kabisat.
Parameter input year: Tahun input (bilangan riil).
Jenis hasil yang ditampilkan BOOLEAN
Output Menampilkan TRUE jika tahun adalah tahun kabisat dan FALSE jika sebaliknya.

Now In Millis

Sintaks
        
nowInMillis()
      
Deskripsi Menampilkan waktu epoch Unix saat ini dari integrasi dalam milidetik.
Parameter input T/A
Jenis hasil yang ditampilkan INT64
Output Menampilkan waktu Unix epoch saat ini dalam milidetik.

Fungsi utilitas


UUID

Sintaks
        
uuid()
      
Deskripsi Menghasilkan ID unik universal (UUID) acak sebagai STRING. STRING yang ditampilkan terdiri dari 32 digit heksadesimal dalam lima grup yang dipisahkan oleh tanda hubung dalam bentuk 8-4-4-4-12. Digit heksadesimal mewakili 122 bit acak dan 6 bit tetap, sesuai dengan RFC 4122 bagian 4.4. STRING yang ditampilkan adalah huruf kecil.
Parameter input T/A
Jenis hasil yang ditampilkan STRING
Output Menampilkan UUID yang dibuat dalam format string.

Integration name

Sintaks
        
getIntegrationName()
      
Deskripsi Dapatkan nama integrasi saat ini.
Parameter input T/A
Jenis hasil yang ditampilkan STRING
Output Menampilkan nama integrasi saat ini.

Integration region

Sintaks
        
getIntegrationRegion()
      
Deskripsi Mendapatkan region integrasi saat ini.
Parameter input T/A
Jenis hasil yang ditampilkan STRING
Output Menampilkan region integrasi saat ini.

Integration version ID

Sintaks
        
getIntegrationVersionId()
      
Deskripsi Dapatkan ID versi integrasi dari integrasi saat ini.
Parameter input T/A
Jenis hasil yang ditampilkan STRING
Output Menampilkan ID versi integrasi dari integrasi saat ini.

Integration version number

Sintaks
        
getIntegrationVersionNumber()
      
Deskripsi Dapatkan nomor versi integrasi saat ini.
Parameter input T/A
Jenis hasil yang ditampilkan NUMBER
Output Menampilkan nomor versi integrasi saat ini.

Execution ID

Sintaks
        
getExecutionId()
      
Deskripsi Mendapatkan ID eksekusi dari eksekusi integrasi saat ini.
Parameter input T/A
Jenis hasil yang ditampilkan STRING
Output Menampilkan ID eksekusi dari eksekusi integrasi saat ini.

Project ID

Sintaks
        
getProjectId()
      
Deskripsi Dapatkan project ID Google Cloud dari integrasi saat ini.
Parameter input T/A
Jenis hasil yang ditampilkan STRING
Output Menampilkan ID project Google Cloud dari integrasi saat ini.