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

org.toilelibre.libe.domaindrivendesignktrules.DomainDrivenDesignRuleSetProvider.kt Maven / Gradle / Ivy

package org.toilelibre.libe.domaindrivendesignktrules

import com.pinterest.ktlint.core.RuleSet
import com.pinterest.ktlint.core.RuleSetProvider

class DomainDrivenDesignRuleSetProvider : RuleSetProvider {
    override fun get() = RuleSet(
        "domain-driven-design-ktlint-rules",
        NoForeignModelInAnnotatedComponentContract(),
        DataClassNotAnnotated(),
        NoForeignInfraUsageInInfra(),
        NoGenericCatch(),
        ActionOnlyHasOnePublicMethod(),
        NoForOrWhileInActionClass(),
        NoIfInsideIf(),
        NoTemplateUseInActionOrDomainService(),
        GatewayOrRepositoryMustHaveOnlyOneTemplateVariable(),
        NoBreakOrContinue(),
        AllClassMembersMustBePrivateAndImmutable(),
        AllNonForeignDataClassesMembersMustBeImmutable(),
        AClassWithoutFunctionMustBeADataClass(),
        NoPrimitiveObsessionInAnnotatedComponent(),
        NeedsOneCallToAnActionFromAController(),
        EachRoleShouldBeInTheRightPackage(),
        ADataClassCannotUseAMap(),
        AnActionCannotUseAnotherAction(),
        ADataClassCannotUseAComponent(),
        FunctionShouldBeOwnedByValueType()
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy