Ana içeriğe geç

1.5.5. JPA Data Provider#

Authorization ve tercih edildiğinde authentication uygulamaları için database işlemlerinin yapılabilmesini sağlayan multi module kütüphanedir.

İçerisinde :

  1. Authority : Yetki ve etiket ile ilgili işlemleri yapıldığı modüldür.
  2. Profile : Kullanıcının keysisteki profil işlemlerinin olduğu modüldür.
  3. Proxy : Vekalet işlemlerinin olduğu modüldür.
  4. Role : Yetki, rol ve rol atayıcısına ait işlemlerin olduğu modüldür.
  5. Tenant : Çok kiracılı(multi tenant) uygulamalar ile ilgili işlemlerin yapıldığı modüldür.
  6. User : Kullanıcı ile ilgili işlemlerin yapıldığı modüldür.

Starter kütüphanelerinde olduğu gibi istenildiği taktirde özelleştirilebilir.

Kütüphane#

Gradle Dependencies

compile (
    [group: 'tr.com.havelsan.framework.oauth' , name: 'hvl-oauth-jpa-data-provider' , version: 'güncel versiyon repositoryden bakılmalıdır.' ]
)

Servis Tanımı#

Servis Kullanımı

@Autowired
private HvlOAuthProfileGroupManager profileGroupManager;
HvlOAuthProfileGroupManager.java

public interface HvlOAuthProfileGroupManager {

    /**
     * Find profile id by uuid.
     *
     * @param uuid the uuid
     * @return an Optional id
     */
    Optional<Long> findIdByUuid(
            @NotBlank @Size(min = HvlPersistableDataConstraint.UUID_SIZE, max = HvlPersistableDataConstraint.UUID_SIZE) String uuid);

    /**
     * Find id by uuid or else throw long.
     *
     * @param uuid the uuid
     * @return the long
     */
    Long findIdByUuidOrElseThrow(
            @NotBlank @Size(min = HvlPersistableDataConstraint.UUID_SIZE, max = HvlPersistableDataConstraint.UUID_SIZE) String uuid);
   ...
}