All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.github.serpro69.kfaker.provider.Barcode.kt Maven / Gradle / Ivy

Go to download

Generate realistically looking fake data such as names, addresses, banking details, and many more, that can be used for testing and data anonymization purposes.

There is a newer version: 2.0.0-rc.7
Show newest version
package io.github.serpro69.kfaker.provider

import io.github.serpro69.kfaker.*
import io.github.serpro69.kfaker.dictionary.*
import io.github.serpro69.kfaker.provider.unique.LocalUniqueDataProvider
import io.github.serpro69.kfaker.provider.unique.UniqueProviderDelegate

/**
 * [FakeDataProvider] implementation for [CategoryName.BARCODE] category.
 */
@Suppress("unused")
class Barcode internal constructor(fakerService: FakerService) : AbstractFakeDataProvider(fakerService) {
    override val categoryName = CategoryName.BARCODE
    override val localUniqueDataProvider = LocalUniqueDataProvider()
    override val unique by UniqueProviderDelegate(localUniqueDataProvider)

    fun ean8() = with(fakerService) { resolve("ean_8").numerify() }
    fun ean13() = with(fakerService) { resolve("ean_13").numerify() }
    fun upcA() = with(fakerService) { resolve("upc_a").numerify() }
    fun upcE() = with(fakerService) { resolve("upc_e").numerify() }
    fun compositeSymbol() = with(fakerService) { resolve("composite_symbol").numerify().letterify() }
    fun isbn() = with(fakerService) { resolve("isbn").numerify() }
    fun ismn() = with(fakerService) { resolve("ismn").numerify() }
    fun issn() = with(fakerService) { resolve("issn").numerify() }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy