BLH bir iş nesnesinin iş mantığı katmanından geçerken kullanılacak handler sınıfıdır.

Bu teknoloji sayesinde üründeki BO ya da uyarlanmış bir BO’nun işlem öncesi/sonrası yapabileceklerimizi olanak sağlanır.

Aşağıdaki metodlar override edilerek amacımızı gerçekleyebiliriz. Bu metodların çalışma zamanları ve anlamları kısaca;

  • beforeInsert save işlemi öncesi tetiklenir.
  • afterInsert save işlemi sonrası tetiklenir.
  • afterDelete silme işlemi sonrası tetiklenir.
  • beforeDelete silme işlemi öncesi tetiklenir.
  • beforeUpdate güncelleme işlemi öncesi tetiklenir.
  • afterUpdate güncelleme işlemi sonrası tetiklenir.
  • beforeRead database okuma işlemi öncesi tetiklenir.
  • afterRead database okuma işlemi sonrası tetiklenir.
  • callDeleteHandler silme işlemi anında tetikenir.
  • callInsertHandler save işlemi anında tetiklenir.
  • callReadHandler database okuma anında tetiklenir.
  • callUpdateHandler Güncelleme anında tetiklenir.

Öncelikle projenizde "Business Logic Handler" tanımı yapmamız gerekir. Bunun için aşağıdaki adımları inceleyiniz.

1 - 

  • Proje altında bulunan Definition>bussineslogichandlers dosyası seçiniz.
  • Tanımlama ekranı açılır.
  • Mouse sağ click add diyerek tanımları ekranını açarız.

 


2 -  Açılan "Business logic Handler Definition" ekranından gerekli tanımlamaları yaparız;

  • Name : iş nesnesi handler adı
  • Business Logic Handler Package : paket adı
  • Business Logic Handler : Yeni bir handler sınıfı oluşturulabilir ya da mevcut kullanılabilir.
  • Business Object : handler ile ilişkili iş nesnesi
  • Description : Tanım

  

3 - Sonrasında;

     Tanım yaparken oluşan class içerinde gerekli metotları çağırarak işlemlerimizi gerçekleştiririz.

package com.acme.customization;
import com.lbs.data.factory.BasicBusinessLogicHandler;
import com.lbs.data.factory.FactoryParams;
import com.lbs.data.factory.IBusinessLogicFactory;
import com.lbs.data.objects.BasicBusinessObject;
public class GLLHClass extends BasicBusinessLogicHandler {
    @Override
    public boolean beforeInsert(IBusinessLogicFactory factory,
            FactoryParams params, BasicBusinessObject parentObj,
            BasicBusinessObject obj) {
        
        JOptionPane.showMessageDialog(null,"Test Mesajı");
        
        return super.beforeInsert(factory, params, parentObj, obj);
    }
    
}




Telif HakkıKullanım KoşullarıGizlilik
Copyright © 2018 Logo Yazılım