EN · DE · RU · FR · ES

#1112: HibernateSearchUserRightIdTypeBinder.kt

projectforge-business/src/main/kotlin/org/projectforge/business/user/HibernateSearchUserRightIdTypeBinder.kt Type: Kotlin · Role: User Management · Source: projectforge-business/src/main/kotlin/org/projectforge/business/user/HibernateSearchUserRightIdTypeBinder.kt 50 lines · 16 code · 29 comments · 5 blank
Access rights checker for HibernateSearchUserIdTypeBinder operations. Implements PF user right ID checks and determines CRUD permissions per module.

Code Structure

Annotations: author, see, micromata

Classes: HibernateSearchUserRightIdTypeBinder

Supertype(s): TypeBinder

Functions (1): bind

Properties (1): bridge

Imports: 5 packages

Package: org.projectforge.business.user

Source Code (abridged)

package org.projectforge.business.user

import org.hibernate.search.mapper.pojo.bridge.TypeBridge
import org.hibernate.search.mapper.pojo.bridge.binding.TypeBindingContext
import org.hibernate.search.mapper.pojo.bridge.mapping.programmatic.TypeBinder
import org.projectforge.business.common.BaseUserGroupRightsDO
import org.projectforge.business.teamcal.admin.model.HibernateSearchUsersGroupsBridge

/**
 * UserRightId bridge for hibernate search uses the id string of UserRightId for search.
 *
 * https://docs.jboss.org/hibernate/stable/search/reference/en-US/html_single/#_classbridge
 * @author Kai Reinhard (k.reinhard@micromata.de)
 * @see UserRightId.getId
 */
class HibernateSearchUserRightIdTypeBinder : TypeBinder {
    override fun bind(context: TypeBindingContext) {
        context.dependencies().useRootOnly()

        context.indexSchemaElement()
            .field("nummer") { f -> f.asString() }
            .toReference()

        val bridge: TypeBridge<UserRightId> = HibernateSearchUserRightIdBridge()
        context.bridge(UserRightId::class.java, bridge)
    }
}

Git History

868d6abb7 2025 -> 2026
63081666f Source file headers: 2024-> 2025.
b5ffb7cb4 Migration stuff in progress...
e33c8b9c2 Migration stuff in progress...