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

org.archguard.linter.rule.layer.LayerRuleSlot.kt Maven / Gradle / Ivy

Go to download

ArchGuard is a architecture governance tool which can analysis architecture in container, component, code level, create architecture fitness functions, and anaysis system dependencies..

There is a newer version: 2.2.0
Show newest version
package org.archguard.linter.rule.layer

import chapi.domain.core.CodeDataStruct
import org.archguard.meta.Coin
import org.archguard.meta.Materials
import org.archguard.meta.OutputType
import org.archguard.meta.Slot
import org.archguard.rule.core.Issue
import org.archguard.rule.core.RuleSet

class LayerRuleSlot : Slot {
    override var material: Materials = listOf()
    override var outClass: String = Issue.Companion::class.java.name

    override fun ticket(): Coin {
        return listOf(CodeDataStruct::class.java.name)
    }

    override fun prepare(items: List): List {
        val ruleSets = listOf(LayerRuleSetProvider().get())
        this.material = ruleSets
        return ruleSets
    }

    override fun process(items: List): OutputType {
        return LayerRuleVisitor(items as List).visitor(this.material as Iterable)
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy