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

name.remal.gradle_plugins.dsl.artifact.BaseHasEntries.kt Maven / Gradle / Ivy

package name.remal.gradle_plugins.dsl.artifact

import name.remal.isClassResourceName
import name.remal.resourceNameToClassName
import name.remal.toSortedSet

abstract class BaseHasEntries : HasEntries {

    override val classEntryNames: Set by lazy {
        entryNames.stream()
            .filter(::isClassResourceName)
            .toSortedSet()
    }

    override val classNames: Set by lazy {
        classEntryNames.stream()
            .map(::resourceNameToClassName)
            .toSortedSet()
    }

    override val manifestMainAttributes: Map by lazy {
        mutableMapOf().apply {
            readManifest()?.mainAttributes?.forEach { key, value ->
                if (key == null || value == null) return@forEach
                put(key.toString(), value.toString())
            }
        }.toMap()
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy