Skip to content

Latest commit

 

History

History
108 lines (96 loc) · 6.17 KB

Readme.adoc

File metadata and controls

108 lines (96 loc) · 6.17 KB

IsyFact jQAssistant Plugin

Dieses Plugin enthält Architekturregeln und Programmierkonventionen der IsyFact in Form von Regeln für jQAssistant.

Verwendung

Um den Regelsatz zu verwenden wird in der Anwendung ein zusätzliches Maven-Plugin eingerichtet:

<plugin>
    <groupId>com.buschmais.jqassistant</groupId>
    <artifactId>jqassistant-maven-plugin</artifactId>
    <version>1.8.0</version>
    <executions>
        <execution>
            <id>default-cli</id>
            <goals>
                <goal>scan</goal>
                <goal>analyze</goal>
            </goals>
            <configuration>
                <ruleParameters>
                    <rootPackage>ROOT-PACKAGE-DER-ANWENDUNG</rootPackage>
                    <patternNameGeschaeftsobjekt>.*Daten</patternNameGeschaeftsobjekt>
                    <patternNameBatchklassen>.*Batch</patternNameBatchklassen>
                </ruleParameters>
                <groups>
                    <group>
                        isyfact:Verbindlich
                    </group>
                    <group>
                        isyfact:Empfohlen
                    </group>
                </groups>
                <scanProperties>
                    <xml.file.include>
                        /resources/spring/*
                    </xml.file.include>
                </scanProperties>
            </configuration>
        </execution>
    </executions>
    <dependencies>
        <dependency>
            <groupId>de.bund.bva.isyfact</groupId>
            <artifactId>isyfact-jqassistant-plugin</artifactId>
            <version>1.9.0</version>
        </dependency>
    </dependencies>
</plugin>

Vor der Verwendung müssen folgende Parameter konfiguriert werden:

  • rootPackage: Das Wurzelpackage der Anwendung.

  • patternNameGeschaeftsobjekt: Regulärer Ausdruck für die Namen von Geschäftsobjekten.

  • patternNameBatchklassen: Regulörer Ausdruck für die Namen von Batchklassen.

Im Abschnitt groups können Untermengen der Regeln ausgewählt werden. Folgende Gruppen sind verfügbar:

Table 1. Regelgruppen für die IsyFact
isyfact:Verbindlich isyfact:Empfohlen

isyfact:batch:Verbindlich

AusfuehrungsBeanDarfKeineTransaktionStarten

isyfact:batch:Empfohlen

NamenskonventionBatchklassen

isyfact:core:Verbindlich

BeanNichtPerNameAuslesen

isyfact:core:Empfohlen

NamenskonventionGeschaeftsobjekt

isyfact:datetime:Verbindlich

AufrufVonNowOderCurrentTimeMillis

isyfact:fehlerbehandlung:Empfohlen

ExceptionsErbenVonPlisException, ServiceExceptionErbtVonPlisToException

isyfact:gui:Empfohlen

ModelBeanSerializable, ModelBeanVerwendetAwkTypen, ModelBeanNameEnthaeltKomponente, ControllerBeanNameEnthaeltKomponente, ControllerBeanErbtVonAbstractGuiController

isyfact:konfiguration:Verbindlich

BenutzeKeineInternenKlassen

isyfact:konfiguration:Empfohlen

SpeichereKeineKonfigurationsParameter

isyfact:layer:Verbindlich

ZugriffAufCoreLayerUeberInterface, UndefinedDependencies,

isyfact:logging:Verbindlich

IsyLoggerMussVerwendetWerden, IsyLoggerMussStatischInitialisiertWerden, IsyLoggerMustBeDeclaredAsConstant

isyfact:package :Verbindlich

AlleJavaKlassenMuessenImWurzelPackageLiegen, WurzelPackageUndMavenKoordinatenStimmenUeberein

isyfact:persistence:Empfohlen

EntitiesLiegenInPackageEntity, EntitiesVerwendenKeineCompositeKeys, DaoImplPackage, DaoVonAbstractDaoAbgeleitet, DaoImplementiertDaoInterface´, KeineBulkQueries, GenerationTypeAuto, KeinePlisDataSource

isyfact:service:Verbindlich

ExceptionAnServiceSchnitstelle, ServiceSchnitstelleMitLoggingKontext, ServiceMethodenEnthaltenAufrufKontext

Für die Regel KeinePlisDataSource müssen die XML-Konfigurationsdateien von Spring gescannt werden. Hierzu ist der Pfad zu den XML-Dateien einzutragen.

<scanProperties>
    <xml.file.include>
        /resources/spring/*
    </xml.file.include>
</scanProperties>