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

ai.platon.pulsar.skeleton.session.PulsarEnvironment.kt Maven / Gradle / Ivy

package ai.platon.pulsar.skeleton.session

import ai.platon.pulsar.common.Systems
import ai.platon.pulsar.common.config.CapabilityTypes.H2_SESSION_FACTORY_CLASS
import ai.platon.pulsar.common.config.CapabilityTypes.PRIVACY_AGENT_GENERATOR_CLASS

class PulsarEnvironment {
    companion object {
        val VITAL_PROPERTIES = mutableMapOf(
            H2_SESSION_FACTORY_CLASS to "ai.platon.pulsar.ql.h2.H2SessionFactory",
            /**
             * Use the random privacy agent generator by default.
             * If the prototype data directory doesn't exist, it acts as a browse in incognito mode.
             * If the prototype data directory exists, it copies and inherits the prototype Chrome browser's
             * user data directory.
             * */
            PRIVACY_AGENT_GENERATOR_CLASS to "ai.platon.pulsar.skeleton.crawl.fetch.privacy.RandomPrivacyAgentGenerator"
        )
    }

    init {
        initialize()
    }

    @Synchronized
    private fun initialize() {
        VITAL_PROPERTIES.forEach { (key, value) -> Systems.setPropertyIfAbsent(key, value) }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy