FMPObject

interface FMPObject

Базовый объект для объектов FMP.

Since

21.04.01

Samples

import ru.fsight.fmp.FMPResource
import ru.fsight.fmp.FMPTable
import ru.fsight.fmp.FMPUser
fun main() { 
   //sampleStart 
   /*
 * Пример копирования объекта без сохранения состояния для корректировки параметров инициализации.
 */
val new_obj: FMPResource = obj.rebuild() // Создать FMPResource.Builder с сохранёнными параметрами конструктора.
	.name("different_resource")            // Изменить название.
	.build()                               // Создать новый FMPResource который отличается только названием. 
   //sampleEnd
}
import ru.fsight.fmp.FMPResource
import ru.fsight.fmp.FMPTable
import ru.fsight.fmp.FMPUser
fun main() { 
   //sampleStart 
   /*
 * Пример сравнения двух объектов.
 * Обращаем внимание, что объекты, созданные от разных объектов FMP никогда не будут равны.
 */
obj1 == obj2 // True если они имеют одинаковые ключевые параметры, например одинаковый username для FMPUser. 
   //sampleEnd
}
import ru.fsight.fmp.FMPResource
import ru.fsight.fmp.FMPTable
import ru.fsight.fmp.FMPUser
fun main() { 
   //sampleStart 
   /*
 * Пример использования toString() на объектах FMP.
 */
"SELECT * FROM $table WHERE $table.user = '$user';" == "SELECT * FROM resource_table WHERE resource_table.user = 'username';" // равны. 
   //sampleEnd
}

Inheritors

Types

Link copied to clipboard
fun interface Builder

Базовый Builder объект для строителей объектов FMP.

Functions

Link copied to clipboard
abstract operator override fun equals(other: Any?): Boolean

Сравнить объекты между собой.

Link copied to clipboard
abstract override fun hashCode(): Int

Хэш-код объектов. В отличие от equals он будет одинаков для объектов с одинаковыми ключевыми параметрами, но созданными от разных объектов FMP.

Link copied to clipboard
abstract fun rebuild(): FMPObject.Builder

Создать копию Builder с параметрами, аналогичными текущему объекту. Полезно для изменения параметров или создания копии без сохранения состояния объекта. Для сохранения состояния текущего объекта используйте copy.

Link copied to clipboard
abstract override fun toString(): String

Получить ключевые параметры объекта в виде строки.