Veri Değiştirme politikası, Backend API'den dönen mesajın içindeki herhangi bir başlık (header), parametre (parameter) ya da gövde (body) alanına ya da bu alanların değerlerine göre yanıt özelleştirme yapar.

Bu demek oluyor ki, farklı kullanıcı tiplerine göre yanıt değiştirilmek istenirse her kullanıcı için API oluşturmak yerine bu politika ile kurallar tanımlanır. 

Mesaj içerisinde veri dönüşümü yapıldığı için İş Kuralı politikası (Business Rule) ile karıştırılabilir. Bu iki politika arasındaki farklar;

  • İş Kuralı politikası hem istek hattına hemde yanıt hatına eklenirken, Veri Değiştirme politikası sadece yanıt hattına eklenmektedir.
  • İş Kuralı politikasında direk olarak eylemler (Ekle, Değiştir, Sil, Akışı Kes) tanımlayabilirken, Veri Değiştirme politikasında belirli bir alan ya da alanın değeri iler karşılaşıldığında eylemler (Değiştir, Sil) tanımlanır.

Politika ayarlarını içeren görsele aşağıda yer verilmiştir:


Politika konfigürasyonu için kullanılan alanlar aşağıdaki tabloda görülmektedir.

AlanAçıklama

Kural Kümeleri

(Rule Sets)

Apinizer'dan dönen mesajlara Apinizer tarafından uygulanabilecek kurallar eklenir ve listelenir.

Kural Oluşturma

Kural, yanıtın neye göre düzeltileceği söyleyen kriterdir. Eylem ise bu kriter ile karşılaşıldığında mesajda yapılacak düzenleme işlemidir.

Bir kurala birden fazla eylem eklenebilir. Verilen eylem sırasına göre mesaj özelleştirme yapılır. Ek olarak, politikada birden fazla kural olabilir.

Ekle tuşuna basarak Politikaya bir eylem eklenmek istendiğinde kullanıcının karşısına aşağıdaki görseldeki gibi bir ekran çıkar:

Kural konfigürasyonu için kullanılan alanlar aşağıdaki tabloda görülmektedir.

AlanAçıklama

Şuna göre düzelt

(Redact By)

Düzeltme işlemi, gönderilen mesaj içerisinden seçilecek farklı değerlere göre yapılabilir. 

(Variable for rule set)

Mesaj içindeki öğeye erişmek için bir değişken seçilir.

Değerler

(Values)

Eğer düzeltme yönetimi

Değişken ile seçilen alanda hangi değerlerin olması gerektiği virgül ile ayrılarak yazılmalıdır.

Eylem Tanımları 

Bu tabloda uygulanabilecek eylemler çalışma sırasına göre listelenir ya da yenisi tanımlanabilir. 

Eylem Oluşturma

Ekle tuşuna basarak, kurala bir eylem eklenmek istendiğinde kullanıcının karşısına aşağıdaki görseldeki gibi bir ekran çıkar:

Bu görselde de gözüktüğü gibi 2 tip eylem seçilebilir:

  • Değiştir (Modify): İsteğin/yanıtın başlık, parametre veya gövdesi içerisinde var olan bir alanın değeri değiştirilir. 
  • Sil (Delete): İsteğin/yanıtın başlık, parametre veya gövdesi içerisinde var olan bir alanın değeri veya alanın tamamı silinir.

Düzenleme Eylemi 

Mesajın, başlık, parametre ya da gövdesindeki değeri değiştirmek için kullanılır.

Bu eylem seçildiğinde mesajda eklenmek istenen değerin olduğu varsayılır, bulunamaması durumunda politika hata verir. Kuralın koşul kısmında buna dikkat edilmelidir.


Düzenleme eylemi konfigürasyonu için kullanılan alanlar aşağıdaki tabloda görülmektedir.

AlanAçıklama

Değişkeni Değiştir

(Modify Variable)

Mesajın hangi öğesi değiştirileceğini belirtmek için değişken seçilir.

Değişken Veri Tipini

(Variable Data Type)

Değişken değerinin, hangi veri tipinde olduğu belirtilir. Aşağıdaki tabloda detayları yer almaktadır.

Operatör

(Operator)

Veri tipinde hangi işlemin uygulanacağı seçilir. Aşağıdaki tabloda detayları yer almaktadır.

Değer Kaynağı

(Target Value Source Type)

Değer kaynağının nereden alınacağını seçilir.

  • Değeri Belirtin (Specify the Value): Bu seçenek seçildiğinde, kaynağın değeri manuel olarak girilir.

Değer

(Value)

Değiştirilecek öğenin değeri yazılır.

Hedefteki değer kaynağı için değişken

()

Değiştirilecek öğenin değeri değişkenden seçilir.


Veri tipi (Variable Data Type) ve bu veri tiplerine ait işlemler (Operator) şunlar olabilir:

Veri TipiEylemAçıklama
Numerik




Ekleme

Değiştirilecek olan değer ile hedef değeri toplayarak değiştirir.

SilmeDeğiştirilecek olan değerden hedef değeri silerek değiştirir.
ÇarpmaDeğiştirilecek olan değer ile hedef değeri çarparak değiştirir.
BölmeDeğiştirilecek olan değer ile hedef değeri bölerek değiştirir.
Mod AlmaDeğiştirilecek olan değerin hedef değere göre modunu alarak değiştirir.
Üssünü Alma:Değiştirilecek olan değerin hedef değer kadar üssünü alarak değiştirir.
Metin










Concat

Değiştirilecek olan değerin sonuna hedef değeri bitiştirir.

Decode Base64Değiştirilecek olan değeri Base64 şifre çözme işlemine tabi tutarak değiştirir.
Encode Base64Değiştirilecek olan değeri Base64 şifreleme işlemine tabi tutarak değiştirir.
Formatjavax.swing.text.MaskFormatter sınıfında belirtildiği özellikler ile değeri maskeleyerek değiştirir.
InsertDeğiştirilecek olan değerin belirtilen metin indeksinden itibaren hedef değeri yazarak değiştirir.
MaskDeğiştirilecek olan değeri tamamını ya da metin indeksleri ile belirtilen aralığını maskeleyerek değiştirir.
Replace FirstDeğiştirilecek olan değerde belirtilen değiştirme verisinin ilk eşleşenini hedef değer ile değiştirir.
Replace Değiştirilecek olan değer içindeki belirtilen değiştirme verisinin tüm eşleşenlerini hedef değer ile değiştirir.
Replace WithDeğiştirilecek olan değeri hedef değer ile tamamen değiştirir.
SubstringDeğiştirilecek olan değerin belirtilen metin indeksleri kısmının dışında kalan alanları silerek değiştirir.
TransformDeğiştirilecek olan değeri XSLT veya JOLT işlemine tabi tutarak değiştirir.
TrimDeğiştirilecek olan değerin başındaki ve sonundaki boşlukları kaldırır.
ZamanEklemeDeğiştirilecek olan değere belirtilen zaman birimi ve miktarını ekler.
SilmeDeğiştirilecek olan değere belirtilen zaman birimi ve miktarını siler.

Silme Eylemi 

Mesajın, başlık, parametre ya da gövdesindeki değeri silmek için kullanılır.

Bu eylem seçildiğinde mesajda silinmek istenen değerin olduğu varsayılır, bulunamaması durumunda politika hata vermez, diğer işlemlere devam edilir.

Mesajın neresinin silineceği değişken ile belirtilir.


Koşullar ve Hata Mesajı Özelleştirme panellerinin açıklamasını görüntülemek için Politikalar (Policies) sayfasını ziyaret edebilirsiniz.